再谈软件工程
Posted gyboke
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了再谈软件工程相关的知识,希望对你有一定的参考价值。
10周的软件工程导论课程已经接近尾声,10周的学习感触颇多,第一次尝试团队写代码的解决问题的模式。对于一个项目的展开有了理解。之前也自己写过一个关于初学软件工程的感悟,今天就来谈一谈10周的学习过后对于软件工程有了怎样理解。团队里的队员们对于软件工程的理解有重复之处,我们直接挑大家感悟不同的部分来说明。
我们曾经以为程序就是软件,软件就是程序。学习这门课程第一个收获是,知道了二者的不同之处。我想也是程序的不断复杂化导致了软件危机的发生,使得人们不得不探索新的解决方法。经过陈老师的讲解,理解了软件工程,就是一套用于软件的团队开发,以提高软件质量和程序员工作效率为目的的规范。其核心就是, 对于软件开发的5个重要组成部分:需求分析,设计,编码,调试,维护,如何组织这5个部分的工作,以及如何完成每一个工作。 吾生也有涯,而知也无涯,学习永无止境。起初,对软件工程处于一知半解的状态, 分工比较混乱。在划分模块后明确了各自分工,渐渐形成良性循环。软件工程最终是为了实现“软件制造业”的社会化,工业化大生产,提高其劳动生产效率。只有如此,软件业才能实现社会化,工业化大生产,才能“做大做强”。没有管理的设计是失败和混乱的设计,没有设计指导的编程是无序的忙碌的。根据开发的软件的规模,应该适当程度的运用软件工程化的思想,需要灵活,毕竟我们开发的软件大多数是中小型的,大型的并不多见(我是这么认为的)。但只要涉及人员间的交流和沟通,或多或少都要需要软件工程才能更有效率,工作成果更稳定。其实开发软件,就像是解决一个逻辑问题。想想自己平时是怎样写程序的。首先是要有一个想法, 即我写的这个程序是要干什么的;然后就是对要实现的核心功能大概构思一种或多种实现方法,并从中选出一种自认为是较好的;接下来就是将涉及的各种主要或次要功能分成各个模块;最后就是分模块来编码和修改BUG。在我看来,除了第一步外,其余的步骤应该是一个循环的过程。在编码的过程中, 你总是需要不断地回过头来修改原先的模块设计,甚至最初选定的实现算法。
我们在不断完成银行储蓄系统的同时了解了关于软件开发的所有方面,写出的报告也等同于一个软件小型策划案。在每一个部分都出现问题的时候,也是对这一部分加深印象理解的时候,光听老师对于理论的讲解的时候还是一脸迷惑的状态,现在我们已经能对软件开发这个方面的问题给出自己相应的理解,收获良多。
以上是关于再谈软件工程的主要内容,如果未能解决你的问题,请参考以下文章