软件构造:开发高质量的软件系统
什么是“软件构造”?
这门课的目的在于在高级语言程序设计的基础上,认识软件构造的质量标准与目标,学习软件 构造的基本过程,从而具备面向质量目标的复杂软件构造方法与能力,深入学习抽象数据类型ADT 与面向对象编程OOP,初步掌握面向关键质量目标(可理解性、可维护性、可复用性、健壮性、时 空性能)的软件构造基本技术,了解软件代码重构和面向更复杂软件系统的高级构造技术
软件构造课:软件系统=构造复杂数据结构+对复杂数据结构的组合使用
这门课的目标:
程序设计与实现能力
1.了解软件开发过程中应考虑哪些质量目标
2.掌握面向关键质量目标的软件基本构造技术
3.形成面向质量目标的软件开发思维模式
系统设计与实现能力
1.掌握“面向抽象编程”的核心思想和面向对象软件开发的基本过程
2.能够对实际应用问题进行抽象和建模
3.利用模型与开发者和用户进行有效表达和沟通
系统分析与评价能力
1.从关注单一开发环节到关注全开发过程的转换
2.根据用户期望质量特性进行全生命周期系统分析与评价
3.发现系统设计的缺陷并做出优 化和改进
利用现代软件构造工具的能力
1.了解复杂软件系统相对于简单程序的本质差异
2.初步掌握利用各类软件开发工 具进行编码、测试和质量保障
3.利用现代软件构造工具进行高质量和高效率软件开发
典型的软件设计过程
1.讨论需要编写的软件
2.写一些代码
3.测试代码以识别缺陷
4.调试以找出缺陷的原因
5.修复缺陷
6.如果没有完成,返回步骤1
三大重点
设计目标使设计评估成为可能
设计原则是描述最佳实践的启发式方法
设计模式将重复的经验、共同的解决方案编纂成法典