软件工程学习笔记——软件工程基本原理
美国著名的软件工程专家B.W.Boehm于1983年提出了软件工程的7条基本原理:
- 用分阶段的生命周期计划严格管理
- 这条基本原理意味着:应该把软件生命周期划分成若干个阶段,并相应地制定出切实可行的计划,然后严格按照计划对软件的开发和维护工作进行管理。Boehm认为,在软件的真个生存周期中应该制定并严格执行六类计划:
- 项目概要计划
- 里程碑计划
- 项目控制计划
- 产品控制计划
- 验证计划
- 运行维护计划
- 这条基本原理意味着:应该把软件生命周期划分成若干个阶段,并相应地制定出切实可行的计划,然后严格按照计划对软件的开发和维护工作进行管理。Boehm认为,在软件的真个生存周期中应该制定并严格执行六类计划:
- 坚持进行阶段评审
- 错误发现与改正得越晚,所需付出的代价越高。因此,在每个阶段都应进行严格的评审,一边尽早发现在软件开发过程中所犯的错误。
- 实现严格的产品控制
- 在需求改变的时候,为了保持软件的各个配置成分的一致性,必须实行严格的产品控制,其中主要是实行 基准配置管理 。基准配置管理又称为基线配置,它是经过阶段评审后的软件配置成分(各个阶段产生的文档或程序代码)。肌醇配置又称为基线配置,它是经过阶段评审后的软件配置成分(各个阶段产生的文档或程序代码)。基准配置管理也称为变动控制,一切有关修改软件的建议,特别是涉及基准配置的修改建议,都必须按照严格的规程进行评审,在获得批准以后才能实施修改。
- 采用现代程序设计技术
采用先进的技术既可以提高软件开发的效率,又可以降低软件维护的成本。 - 结果能清楚地审查
为了更好地进行管理,应根据软件开发的总目标及完成期限尽量明确地规定开发小组的责任和产品标准,从而使所得到的结果能够清楚地审查。 - 开发小组的人员应少而精
开发人员的素质和数量是影响软件质量和开发效率的重要因素,应该少而精。这一条基于两点原因:- 高素质开发人员的效率比低素质开发人员的效率要高几倍到几十倍,开发中犯的错误也要少得多;
- 当开发小组有N人时,可能的通信信道为N(N-1)/2。可见,随着人数N的增大,通信开销将急剧增大。
- 承认不断改进软件工程实践的必要性
根据这条原理,用户不仅要积极采纳新的软件开发技术,还要注意不断总结经验,收集进度和消耗等数据,进行出错类型和问题报告统计。这些数据既可以用来评估新的软件技术的小伙,也可以用来知名必须着重注意的问题和应该有限进行研究的工具和技术。