Abstraction - is it teachable? 'the devil is in the detail'

J. Kramer
{"title":"Abstraction - is it teachable? 'the devil is in the detail'","authors":"J. Kramer","doi":"10.1109/CSEET.2003.10005","DOIUrl":null,"url":null,"abstract":"Summary form only given, as follows. Abstraction is a key skill for software engineers. It is essential during requirements engineering to elicit the critical aspects of the environment and required system while neglecting the unimportant. At design time, we need to articulate the software architecture and component functionalities which satisfy functional and nonfunctional requirements while avoiding unnecessary implementation constraints. Even at the implementation stage we use data abstraction and classes so as to generalize solutions However, my experience is that abstraction is extremely difficult to teach and learn. How should we go about teaching this skill? Indeed, is it teachable? This talk discusses the difficulties and challenges in learning and using abstraction. In particular, we consider whether or not the standard engineering technique of model construction and analysis can help in this venture. The importance of having associated tool support is also considered.","PeriodicalId":250569,"journal":{"name":"Conference on Software Engineering Education and Training","volume":"441 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2003-03-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"16","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Conference on Software Engineering Education and Training","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CSEET.2003.10005","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 16

Abstract

Summary form only given, as follows. Abstraction is a key skill for software engineers. It is essential during requirements engineering to elicit the critical aspects of the environment and required system while neglecting the unimportant. At design time, we need to articulate the software architecture and component functionalities which satisfy functional and nonfunctional requirements while avoiding unnecessary implementation constraints. Even at the implementation stage we use data abstraction and classes so as to generalize solutions However, my experience is that abstraction is extremely difficult to teach and learn. How should we go about teaching this skill? Indeed, is it teachable? This talk discusses the difficulties and challenges in learning and using abstraction. In particular, we consider whether or not the standard engineering technique of model construction and analysis can help in this venture. The importance of having associated tool support is also considered.
抽象——它是可以教的吗?“细节决定成败”
仅给出摘要形式,如下。抽象是软件工程师的一项关键技能。在需求工程中引出环境和所需系统的关键方面而忽略不重要的方面是必要的。在设计时,我们需要明确软件架构和组件功能,以满足功能性和非功能性需求,同时避免不必要的实现约束。即使在实现阶段,我们也使用数据抽象和类来概括解决方案。然而,我的经验是,抽象是非常难以教授和学习的。我们应该如何着手教授这项技能呢?的确,它是可教的吗?这次演讲讨论了学习和使用抽象的困难和挑战。特别地,我们考虑模型构建和分析的标准工程技术是否能在这一冒险中有所帮助。还考虑了相关工具支持的重要性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信