软件工程学习的心得体会
作者:互联网
这门课程不单让我从理论上掌握软件工程,更让我从不同的实际案例中体会到课程的核心思想,让理论和实践得到了很好的结合。在我看来软件工程与其说是一门课程,不如说是一门思想,是一个教导学生们如何去分析并且处理问题的过程。或许应该说其范畴已经远远不止局限于该门课程,与其说是一门课程倒不如说是一个思想。成为了一个综合的解决问题的思想集合。
软件工程是把系统的、有序的、可量的方法应用到软件的开发、运营和维护上的过程。它是一门实践性很强的学科,所以在实际的软件研制过程中,人员的素质占据着非常重要的地位。在具体的软件工程项目中,人员的角色定位,任务分配,以及团队内成员之间的协调配合是非常重要的。人员的角色定位以及任务分配,是属于技术层面的资源配置,软件过程的各个环节,都必须有最合适的人选,该环节才能得到最有效的技术资源,而整个团队内成员之间的配合协调,则是属于管理层面的资源整合,通过充分调度软件生产的各个环节,精细安排,整个软件工程项目才能有条不紊地展开,软件生产的理论才能更好地应用于实际。
软件工程对于团队合作有着特别的强调。一个团队有一致的的集体目标,需要一起完成这目标,团队成员有各自的分工,互相依赖合作,共同完成任务。不同的团队对于任务的分工以及各自的完成度,目标等等都不同。一个好的团队需要具备各个领域的擅长着以及一位分配任务的领导者。
在软件工程中,程序员的水平都有所不同。一个一流的程序员是一个普通程序员效率的数倍以致十几倍,领导者可以根据团队贡献率来分配工资。一个团队需要进行交流,磨合,上升到规范,最后达到创造阶段,共同寻找目标,这样团队的效率达到巅峰状态,但是同时也要注意和别的团队交流与合作,这样更能促进提高。
自从1968年提出“软件工程”这一术语以来,研究软件工程的专家学者们陆续提出了100多条关于软件空城的准则或信条。美国著名的软件工程专家巴利·玻姆(Barry Boehm)综合这些专家的意见,并总结了美国天合公司(TRW)多年的开发软件的经验,于1983年提出了软件工程的七条基本原理。
玻姆认为,这七条原理是确保软件产品质量和开发效率的原理的最小集合。它们是相互独立的,是缺一不可的最小集合;同时,它们又是相当完备的。
人们当然不能用数学方法严格证明它们是一个完备的集合,但是可以证明,在此之前已经提出的100多条软件工程准则都可以有这七条原理的任意组合蕴含或派生。下面简要介绍软件工程的四条原理:
1)用分阶段的生命周期计划严格管理
这一条是吸取前人的教训而提出来的。统计表明,50%以上的失败项目是由于计划不周而造成的。在软件开发与维护的漫长生命周期中,需要完成许多性质各异的工作。这条原理意味着,应该把软件生命周期分成若干个阶段,并相应制定出切实可行的计划,然后严格按照计划对软件的开发和维护进行管理。玻姆认为,在整个软件生命周期中应指定并严格执行6类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。
2)坚持进行阶段评审
统计结果显示:大部分错误是在编码之前造成的,大约占63%错误发现的越晚,改正它要付出的代价就越大,要差2到3个数量级。因此,软件的质量保证工作不能等到编码结束之后再进行,应坚持进行严格的阶段评审,以便尽早发现错误。
3)实行严格的产品控制
开发人员最痛恨的事情之一就是改动需求。但是实践告诉我们,需求的改动往往是不可避免的。这就要求我们要采用科学的产品控制技术来顺应这种要求。也就是要采用变动控制,又叫基准配置管理。当需求变动时,其它各个阶段的文档或代码随之相应变动,以保证软件的一致性。
4)采用现代程序设计技术
从六、七十年代的结构化软件开发技术,到最近的面相对象技术,从第一、第二代语言,到第四代语言,人们已经充分认识到:方法大似气力。采用先进的技术既可以提高软件开发的效率,又可以减少软件维护的成本。
遵从上述四条基本原理,就能够较好地实现软件的工程化生产。但是,它们只是对现有的经验和总结和归纳,并不能保证赶上技术不断前进发展的步伐。因此,玻姆提出应把承认不断改进软件工程实践的必要性作为软件工程的第七条原理。根据这条原理,不仅要积极采纳新的软件开发技术,还要注意不断总结经验,收集进度和消耗等数据,进行出错类型和为题报告统计。这些数据既可以用来评估新的软件技术的效果,也可以用来指明必须着重注意的问题和应该优先进行研究和工具和技术。
标签:心得体会,学习,软件工程,计划,原理,软件,团队,玻姆 来源: https://www.cnblogs.com/XuQunShan/p/15920192.html