软件工程学习心得概括

       软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。它在计算机的发展中是有很重要的作用和地位。
      计算机系统在经历4个不同的发展阶段后,“软件危机”却依旧存在。“软件危机”从概括的角度来说一般是:如何开发软件以满足对软件日益增长的需求;如何维护数量不断膨胀的已经有的软件。软件工程简单来说就是为了减少“软件危机”而形成的。
       软件工程一般有以下的本质特征:1.关注大型程序的构造;2.中心课题是控制复杂性;3.经常变化;4.效率很重要;5.和谐的合作是关键;6.存在有效支持的用户;7.具有一种文化背景的人替另一种文化背景的人创造产品。
       当软件规模庞大或对软件需求较为模糊时,往往使用面向对象的方法,这样在提高软件的可重用性的同时,也简化了开发和维护。面向对象方法有一个重要的公式,即:面向对象方法=对象+类+继承+用消息通信。
       软件的生命周期中一般可以划分为:问题定义、可行性研究、需求分析、总体设计、详细设计、编码和单元测试、综合测试、运行维护这几个部分。同时为了高质量的获得软件过程,还会经常使用到软件过程模型。
       软件过程的第二步是可行性研究,可行性研究在一款软件的过程中占据着十分重要的地位,可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否可以解决,而可行性研究的过程主要可以分为:1.复查系统的规模和目标,2.研究正在使用的系统,3.导出新系统的高层逻辑模型,4.进一步定义问题,5.导出和评价供选择的解法,6.推荐行动方针,7.草拟开发计划,8.书写文档提交审查。
在表达中一般会采用系统流程图这一个工具,系统流程图是一个很好的物理数据流图,它描绘组成系统的主要物理单元以及信息在这些元素中的流动以及处理。而数据流图是描绘系统逻辑的工具,通常数据字典和数据流图会共同构成系统的逻辑模型。同时,在可行性研究中,成本/效益分析也在其中占据着很重要的一部分,是客户组织负责人从经济角度判断是否继续投资于这项工程的主要依据。
        在可行性分析之后就是需求分析了,需求分析是软件定义时期的最后一个阶段,它的基本任务是准确回答“系统必须做什么”这个问题。需求分析的过程包括:功能需求,性能需求,可靠性和可用性需求,出错处理需求,接口需求,约束,逆向需求,将来可能提出的要求。
         当然,不管是在软件的开发过程中还是在一段代码的编写过程中,面向对象的方法一直是一个重要的方面和一种不能被忘记的方法。在代码程序的编写中需要被用到面向对象的编程方法在一款程序的开发过程中,面向对象方法学也是其中一个极其关键的部分。
          面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,使得软件开发的方法和过程尽可能的接近人类认识世界解决问题的方法和过程尽可能保持一致。用面向对象观点建立的系统模型,能够促进和加深对系统的理解,有助于开发出更容易理解、更容易维护的软件。

参考文献:《软件工程导论(第6版)》

posted @ 2021-03-07 23:54  技能点  阅读(74)  评论(0)    收藏  举报