软件工程概念(6页).doc
《软件工程概念(6页).doc》由会员分享,可在线阅读,更多相关《软件工程概念(6页).doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-软件工程概念-第 6 页 软件工程概念 第一章:软件定义1.软件( Software):计算机系统中与硬件相互依存的另一部分,它是包括程序(Program) ,数据(Data)及其相关文档( Document)的完整集合。2.软件的特征:逻辑复杂,开发复杂,成本高,风险大,维护困难。3.按软件功能分类:系统软件,支撑软件,应用软件。系统软件:操作系统,数据库管理系统,设备驱动程序,通信处理程序等。支撑软件:文本编辑程序,文件格式化程序,程序库系统等应用软件:商业数据处理软件,工程与科学计算软件,计算机辅助设计制造软件,系统仿真软件,智能嵌入软件,医疗、制药软件,事务管理、办公自动化软件。按软
2、件规模分类:微型,小型,中型,大型,甚大型,极大型。按软件工作方式分:实时处理软件,分时软件,交互式软件,批处理软件4.软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题5.软件危机主要是两个问题:1.如何开发软件,以满足对软件的日益增长的需求?2.如何维护数量不断膨胀的已有软件?5.软件危机的表现:1.成本高,开发成本估计不准确2.软件质量不高、可靠性差3.进度难以控制4.维护非常困难5.用户不满意6. 由于软件质量问题导致失败的软件项目非常多。:1.与软件本身的特点有关 2.与软件开发与维护的方法不正确有关.软件工程学的目的:以较低的成本研制具有较高质量的软件软件工程技术的
3、两个明显特点:1.强调规范化2. 强调文档化软件工程的基本原理(7条)8.软件工程方法学包含3个要素:方法、工具和过程9.软件生命周期:软件定义(问题定义,可行性研究,需求分析),软件开发( 总体设计,详细设计,编码和单元测试,集成测试),运行维护 ( 持久满足用户需求)10.软件过程模型:瀑布模型,快速原型模型,增量模型 ,螺旋模型,喷泉模型。11.软件过程模型RUP:初始阶段,细化阶段,构造阶段,移交阶段 第二章:可行性研究的任务1.可行性研究的五个方案:技术可行性,经济可行性,操作可行性,法律可行性,社会效益2.可行性研究过程:3.系统流程图:用来描述物理系统的工具。4.系统流程图表达:
4、是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程。即:系统流程图程序流程图。 5.系统流程图的基本思想:用图形符号以黑盒子形式描绘组成系统的每个部件6.系统流程图元素:处理,输入输出,连接,换页连接,数据流。7.数据流图:用来描述逻辑系统的工具。数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换,即数据流图描绘数据在软件中流动和被处理的逻辑过程。:数据加工/处理/变换,数据源点或终点 (外部实体),数据存储,数据流。:数据流,数据流分量(数据元素),数据存储,处理。:顺序,选择,重复,可选。 第三章:需求分析1.需求分析:软件定义时期
5、的最后一个阶段,2.需求分析的基本任务:不是确定系统怎样完成它的工作,而是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。3.软件需求的组成:业务需求, 用户需求,系统需求。4.需求分析方法:面向数据流的结构化分析方法 (SA),面向对象的分析方法 (OOA) 等5.逻辑模型:数据流图(DFD),数据字典(DD),实体-关系图(ERD),状态转换图(STD)6.物理模型:系统流程图,7.需求分析的基本思想:“自顶向下,逐步求精”,抽象和分解8.需求分析;功能模型数据流图,数据模型实体-关系图,行为模型状态转换图9.实体-关系图(ERD):描述数据对象及数据对象之间的
6、关系10.数据流图(DFD):描述数据在系统中如何被传送或变换,以及描述如何对数据流进行变换的功能(子功能)11.状态转换图(STD):描述系统对外部事件如何响应,如何动作模型的核心是数据字典 12.实体-联系图(ER)组成::数据对象(实体)、数据对象的属性及数据对象彼此间相互连接的关系。联系:一对一联系,一对多联系,多对多联系。通常用矩形框代表实体;用连接相关实体的菱形框表示关系;用椭圆形或圆角矩形表示实体(或关系)的属性;并用直线把实体(或关系)与其属性连接起来。13.数据规范化目的是:1.消除数据冗余,即消除表格中数据的重复;2.消除多义性,使关系中的属性含义清楚、单一;3.使关系的“
7、概念”单一化,让每个数据项只是一个简单的数或字符串,而不是一个组项或重复组;4.方便操作。使数据的插入、删除与修改操作可行并方便;5.使关系模式更灵活,易于实现接近自然语言的查询方式。14.状态转换图(简称为状态图):通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。此外,状态图还指明了作为特定事件的结果,系统将做哪些动作(例如,处理数据)。15.状态:初态:一个,终态:0或多个,中间状态16. 验证软件需求:一致性,完整性,现实性, 有效性。 第五章:总体设计1.总体设计(概要设计):将软件需求转化为数据结构和软件的系统结构2.数据库设计包括三个步骤:模式设计,子模式设计,存储模
8、式设计。3.软件设计原理:模块化,抽象,逐步求精,信息隐藏与信息局部化,模块独立4.模块:是由边界元素限定的相邻程序元素(例如,数据说明,可执行的语句)的序列,而且有一个总体标识符代表它。C、C+和Java语言中的 . 对过程、函数、子程序和宏等面向对象方法学中的对象是模块,对象内的方法也是模块模块化是好的软件设计的一个基本准则5.模块独立的含义:模块完成独立的功能,符合信息隐藏和信息局部化原则,模块间关连和依赖程度尽量小。6.独立性的度量:耦合、内聚。7.耦合是对一个软件结构内不同模块之间互连程度的度量。8.耦合的强弱取决于模块间接口的复杂程度,进入或访问一个模块的点以及通过接口的数据 9.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 概念
限制150内