我们学习的知识都是有关系的,我们不能把一些的新的东西都要放进自己的脑子里,而是将自己知道的知识拿出来,和书上的对应……
我们大多数都参加了《信息系统开发与管理》这一门自考,其实想想,软件工程和信管真的很像,所以说软工对于我们来说并不是一项新的内容,而是我们熟悉的。
软工视频首先就纠正了我们一个误区:软件不单纯是一个程序,而是程序、数据和相关文档的完整集合。由于多数开发人员只重视开发,不重视维护,所以导致软件在开发和维护过程中遇到了一系列严重问题,称此为软件危机,表现为产品不符合用户的实际需要、软件开发产率速度不能满足用户、质量差、成本高、文档不科学、不完善。为了规范软件的开发过程,提出了软件工程的理论。每个时期都对软件工程有不同的定义,但是思想都是强调软件开发过程中应用工程化原则的重要性。软件工程的定义就是能够用最经济的成本开发出最实用的软件,并且这个软件是正确的。软件工程有三要素:方法、工具和过程。原则:分解、独立性、一致性、确定性。
软件的开发分为6个主要的步骤:制定计划、需求分析、软件设计、程序编写、程序测试、运行和维护。
在软件的生存周期,存在着生存期模型:最常用的瀑布模型、b模型、螺旋模型、喷泉模型、快速原型模型、演化模型、原型等。瀑布模型就是开发的每一步都按照阶段走,每个阶段的依赖性都很强,开发出的软件也比较严格,但是周期较长。
制定计划的内容包括问题的定义和可行性研究。问题定义就是解决“系统是什么,解决什么问题”。定义的内容有所开发软件的性质、范围、与外界的接口、兼容性等。可行性研究主要在经济、技术、法律和操作方面判断此软件是否可行,编写《可行性研究报告》。
需求分析的主要任务是把用户所有的需求进一步细化,深入描述软件的功能和性能,确定软件设计的约束和软件同其他系统元素的接口细节,定义软件的其他有效性需求,解决目标系统的“做什么”的问题。需求分析的过程:1、问题识别 2、分析和综合,就是从数据源和数据结构出发,找出元素之间的联系、接口特性和系统约束,分析他们是否满足用户要求的功能需求,是否合理。具体常用的方法有:SA面向数据流的结构化分析方法、JSD面向数据结构的Jackson方法、OOA面向对象分析方法。3、导出系统的逻辑模型。4、编制需求分析阶段的文档
5、需求分析评审 需求分析的原则:1、必须能够表达和理解问题的数据域和功能域 2、按自顶向下,逐层分解问题 3、要给出系统的逻辑视图和物理视图。
软件设计分为概要设计和详细设计。概要设计是分析总体,将软件需求转变为数据结构和软件的系统结构。详细设计是对结构进行细化,得到详细的数据结构。软件的结构包括:程序的模块结构和数据的结构。
总结:对于知识一定要进行总结,如果不总结,它就是一盘散沙,当我们回过头总结的时候,才慢慢的发现其实知识之间是有一定的联系的,只有大的框架有了,我们才能更好的理解