软件工程概论
第一章
1.软件
软件是计算机程序,规程以及运行计算机系统可能需要的相关文档和数据。从和软件的内容来看,软件像是一种嵌入式的数字化知识,其形成是一个通过交互对话和抽象理解而不断演化的过程。根据软件服务对象的范围不同,分为通用软件和定制软件。
软件的特性有:复杂性、不可见性、不断变化性。
软件的危机:1.软件开发的成本和进度难以准确估计延迟交付甚至取消项目的现象屡见不鲜。2.软件存在着错误多,性能低,不靠谱,不安全等质量问题。3.软件成本在计算机系统的整个成本中所占比例越来越大。4.软件维护极其困难。
2.软件工程
软件工程是将系统化、规范化、可定量的方法应用于软件的开发、运行和维护,即将工程化应用到软件上。软件工程师工程概念在软件领域里的一个特定应用,其涉及软件产业的所有环节。
软件工程以关注软件质量为目标,由过程、方法和工具三个要素组成。软件工程方法有传统的软件开发方法和面对对象方法。
软件工程面临的挑战:遗留系统的问题,高可信软件开发的要求,软件开发方式的变化。
3.软件工程知识体系(SWEBOK)
SWEBOK的组成:软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具与方法、软件质量。
4.软件工程职业道德规范
遵纪守法是软件工程人员应具备的基本素质,服务客户、造福社会是软件工程人员必须牢固树立的观念,诚实信用是软件工程人员职业道德的核心所在。