Let's Teach Architecting High Quality Software

Linda M. Northrop
{"title":"Let's Teach Architecting High Quality Software","authors":"Linda M. Northrop","doi":"10.1109/CSEET.2006.23","DOIUrl":null,"url":null,"abstract":"Summary form only given. Quality software is software that is fit for its intended purpose. High quality software meets business goals and user needs, which means it has the right features and the right attributes. Building quality software requires using disciplined processes and a carefully designed software architecture. The architecture part of this quality equation has often been ignored in software engineering education. Too often we teach only low-level code design. Yet, the software architecture is the first design artifact that addresses key quality attributes such as affordability, reliability, security, modifiability, and performance. The quality of a system emanates in large part from the software architecture. The software architecture provides the most fundamental basis for communicating design decisions and establishing effective work breakdown structures. The software architecture is the reusable, transferable abstraction that is the basis for software product lines. Architecture represents an enormous risk in a software development project; the wrong architecture leads to poor quality software and very often to project failure. It's time that all software engineering students know the principles of software architecture and how to use effective architecture practices. Every facet of our society depends on software. To ensure high quality software we need to teach our students to architect high quality software.","PeriodicalId":250569,"journal":{"name":"Conference on Software Engineering Education and Training","volume":"12 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2006-04-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Conference on Software Engineering Education and Training","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CSEET.2006.23","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7

Abstract

Summary form only given. Quality software is software that is fit for its intended purpose. High quality software meets business goals and user needs, which means it has the right features and the right attributes. Building quality software requires using disciplined processes and a carefully designed software architecture. The architecture part of this quality equation has often been ignored in software engineering education. Too often we teach only low-level code design. Yet, the software architecture is the first design artifact that addresses key quality attributes such as affordability, reliability, security, modifiability, and performance. The quality of a system emanates in large part from the software architecture. The software architecture provides the most fundamental basis for communicating design decisions and establishing effective work breakdown structures. The software architecture is the reusable, transferable abstraction that is the basis for software product lines. Architecture represents an enormous risk in a software development project; the wrong architecture leads to poor quality software and very often to project failure. It's time that all software engineering students know the principles of software architecture and how to use effective architecture practices. Every facet of our society depends on software. To ensure high quality software we need to teach our students to architect high quality software.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
让我们来教架构高质量的软件
只提供摘要形式。高质量的软件是适合其预期目的的软件。高质量的软件满足业务目标和用户需求,这意味着它具有正确的特性和属性。构建高质量的软件需要使用规范的过程和精心设计的软件架构。在软件工程教育中,这个质量等式的体系结构部分经常被忽略。我们常常只教底层的代码设计。然而,软件体系结构是处理关键质量属性(如可负担性、可靠性、安全性、可修改性和性能)的第一个设计工件。系统的质量在很大程度上取决于软件架构。软件架构为沟通设计决策和建立有效的工作分解结构提供了最基本的基础。软件架构是可重用的、可转移的抽象,是软件产品线的基础。架构在软件开发项目中代表着巨大的风险;错误的架构会导致低质量的软件,并经常导致项目失败。是时候让所有软件工程专业的学生都知道软件架构的原理以及如何使用有效的架构实践了。我们社会的方方面面都依赖于软件。为了确保高质量的软件,我们需要教我们的学生构建高质量的软件。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Grading code quality of programming assignments based on bad smells Panel on the role of graduate software and systems engineering bodies of knowledge in formulating graduate software engineering curricula Agile methods in Thai higher education and beyond Using games in software engineering education to increase student success and retention Can we make software engineering education better by applying learning theories?
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1