全球旧事资料 分类
三大块内容:软件危机与软件工程传统软件开发方法面向对象方法
一、软件危机与软件工程:软件、软件危机、软件生存期、软件开发模型、软件管理1、软件:软件是能够完成预定功能和性能的可执行的计算机程序使程序正常运行所需要的数据描述软件开发过程及其管理、程序的操作和使用的有关文档。文档:分开发、管理、用户、维护文档,作用是记录及解决不可视性、通信与交流、管理与维护、用户服务2、软件危机a表现:软件成本高、难于控制开发进度、软件工作量估计困难、软件质量低、软件修改维护困难b原因:需求问题描述不精确、理解不一致、管理问题、方法和工具问题、软件本身的特点3、软件生存期:a三个时期:定义时期软件计划、需求分析开发时期软件设计、编码实现、测试使用和维护时期维护b六个阶段:软件计划需求分析设计编码测试使用与维护c生命周期方法特点:顺序性、依赖性,推迟程序的物理实现、质量保证的观点利于尽早发现错误,如阶段文档、评审4、软件开发模型a瀑布模型:文档驱动i阶段划分、分而治之、控制开发过程的复杂性ii自顶向下、由抽象到具体,顺序进行优点:规范管理开发过程、文档驱动缺点:初期系统的需求难以完全确定、文档驱动、周期长b原型模型:i针对:软件开发初期需求难以确定ii基本思想:快速建立原型,完善用户需求iii优点:用户参与、快速iv缺点:快速弱功能、对开发环境要求高c螺旋模型风险驱动d增量模型模块、功能驱动e迭代模型f喷泉模型5、软件管理a区别于其他工业产品生产管理的特点b主要内容:开发计划与进度管理、文档管理、人员组织管理、成本管理、质量管理
f二、传统软件工程方法:
a软件计划i问题定义ii可行性研究1经济可行性2技术可行性3法律可行性
b需求分析i结构化分析SAii面向数据流的分析方法1DFD四个组成部分表示方法、命名2DFD作图:需求描述DFD3层次分解法保持父图和其子图的平衡4数据字典符号
c软件设计i总体设计1模块独立性:高内聚2作用域是控制域的子集3单入单出4规模、深度、宽度、扇入、扇出适当ii传统设计方法1面向数据流的设计方法数据流图a结构化设计SD对应有SD结构化需求分析、SP结构化实现bDFD软件结构层次图i变换设计ii事务设计c优缺点2面向数据结构的设计方法aJackso
方法bJackso
图i三种元素间的逻辑关系:顺序、选择、重复ii可描述两种数据结构数据结构、程序结构cr
好听全球资料 返回顶部