软件工程复习比较完善.ppt
《软件工程复习比较完善.ppt》由会员分享,可在线阅读,更多相关《软件工程复习比较完善.ppt(144页珍藏版)》请在三一办公上搜索。
1、软件工程-原理、方法与应用,课程安排,理论内容:基本原理、方法和技术形式:讲授、自学、讨论实践内容:构造一个应用系统(包括分析、设计、编码、测试)形式:分组、分阶段文档、编码、集成,软件工程的主要内容,软件工程的基本概念软件开发模型软件开发各阶段的任务、技术、方法传统方法、面向对象方法软件工程管理软件质量保证软件工程环境,第一章 绪论,软件与软件危机软件工程学传统软件工程和面向对象软件工程软件工程的应用=,1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?1-2 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?1-3 简述结构化范型和面向对象范型的要点,并分析它们的
2、优缺点。1-4 什么是软件过程?它与软件工程方法学有何关系?,软件,程序、软件与软件产品独唱-小合唱-合唱-万人大合唱|简单程序 较复杂程序 软件软件定义:软件=程序+数据+文档程序:按事先设计的功能和性能需求执行的指令序列数据:是程序能正常操纵信息的数据结构文档:与程序开发、维护和使用有关的图文材料,软件的特征,软件是逻辑的,而不是物理的软件开发与人关系密切软件开发成本大软件生产是简单的拷贝软件不会磨损和老化软件受环境影响大软件维护易产生新的问题,软件开发的发展过程,计算机应用发展,软件数量多规模大,软件成本高质量低,个体化软件开发方法,软件维护困难,软件危机,软件工程,软件危机,定义计算机
3、软件的开发和维护过程所遇到的一系列严重问题 表现对软件开发成本和进度的估算很不准确用户很不满意质量很不可靠没有适当的文档软件成本比重上升供不应求:软件开发生产率跟不上计算机应用迅速深入的趋势,硬件/软件成本变化趋势,100%,0%,1955,1970,1985,软件技术进步落后于需求增长,软件危机,原因客观:软件本身特点逻辑部件规模庞大主观:不正确的开发方法忽视需求分析错误认为:软件开发=程序编写轻视软件维护,软件危机,解决途径组织管理工程项目管理方法技术措施软件开发技术与方法软件工具,软件工程学的范畴,软件工程学指导计算机软件开发和维护的工程学科 工程管理+开发技术软件开发技术软件开发方法学
4、软件工具软件工程环境软件工程管理软件管理学软件经济学软件度量学,两种程序设计方法,程序设计的两次飞跃结构化程序设计程序=数据结构+算法面向对象程序设计程序=对象+消息,面向过程和面向对象的编码,两类软件工程方法,传统软件工程软件分析 总体设计 详细设计 面向过程的编码 测试 面向对象软件工程软件分析与对象抽取 对象详细设计 面向对象的编码 测试,软件工程的应用,软件工程指导中小型软件软件工程指导大型软件软件工程的成就软件工程的局限,第二章 软件开发模型,2-1 什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用范围。2-2 什么是面向对象方法学
5、?它有哪些优点?2-3什么是“对象”?它与传统的数据有何异同?2-4 什么是“类”?2-5 什么是“继承”?2-6什么是模型?开发软件为何要建模?,第二章 软件开发模型,传统开发模型瀑布模型(waterfall model)快速原型模型(rapid prototype model)演化开发模型增量模型(incremental model)螺旋模型(spiral model)面向对象开发模型构件集成模型(component integration model)形式化开发模型转换模型(transformational model)净室模型(cleanroommodel),软件生存周期,计划时期问题
6、定义可行性分析开发时期需求分析软件设计编码测试运行时期软件维护,瀑布模型,计划时期,开发时期,运行时期,瀑布模型,特点阶段的顺序性和依赖性推迟实现的观点质量保证存在问题不适合需求模糊的系统,快速原型模型,快速原型模型,特点快速开发工具循环低成本种类渐进型抛弃型,增量模型,规格说明,设计,实现和集成,交付客户,规格说明,设计,实现和集成,交付客户,规格说明,设计,实现和集成,交付客户,规格说明,设计,实现和集成,交付客户,增量1,增量2,增量3,增量n,增量模型,增量小而可用的软件特点在前面增量的基础上开发后面的增量每个增量的开发可用瀑布或快速原型模型迭代的思路,螺旋模型,螺旋模型,特点瀑布模型
7、+快速原型+风险分析迭代过程一个螺旋式周期 确定目标,选择方案,选定完成目标的策略 风险角度分析该策略 启动一个开发阶段 评价前一步的结果,计划下一轮的工作,构件集成模型,构件集成模型,特点面向对象基于构件库融合螺旋模型特征支持软件开发的迭代方法 软件重用,面向对象的基本概念,对象Object类Class继承Inheritance消息Message 面向对象对象+类+继承+消息通信,对象Object,客观世界中的实体状态(静态属性 Attributes)操作(动态行为 Methods)对象:=IdentifierMethod SetData StructureMessage Interface
8、,对象的特点,以数据为中心对象是主动的实现数据封装本质上有并行性模块独立性好,类Class和实例Instance,类相同属性和行为的对象的抽象实例特定类所描述的一个具体对象,子类直接继承父类的数据和操作继承的传递性,单继承、多重继承,继承(Inheritance),家具,桌子,椅子,衣柜,床,椅子的实例,多态性Polymorphism,概念不同类层次共享一个方法名相同的参数特征和返回值类型多种不同实现C+中虚函数实现动态联编,重载Overloading,函数重载同一作用域多个名字相同的函数参数特征不同静态联编运算符重载,消息Message,对象间的交互手段形式:Message:dest,op,
9、paraDestination ObjectOperationParameters,转换模型,转换模型,特点形式化软件开发方法 形式化需求规格说明 变换技术程序自动生成技术 确保正确,净室模型,需求收集,盒结构规约,形式化设计,统计性使用测试,正确性证明,代码生成与检查,测试计划,认证,需求收集,盒结构规约,形式化设计,统计性使用测试,正确性证明,代码生成与检查,测试计划,认证,需求收集,盒结构规约,形式化设计,统计性使用测试,正确性证明,代码生成与检查,测试计划,认证,增量1,增量2,增量n,净室模型,净室思想在分析和设计阶段消除错误在“洁净”状态下实现软件制作形式化盒结构表示分析和设计正确
10、性验证增量模型,小结,软件开发模型是不断发展的各种软件开发模型各有优缺点选用时不必拘泥与某种模型可组合多种模型也可根据实际创建新的模型,第三章 软件需求分析,3-1 为什么要进行需求分析?通常对软件系统有哪些需求?3-2 怎样与用户有效地沟通以获取用户的真实需求?,第三章 软件需求分析,3-3 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系
11、统计算利息并印出利息清单给储户。请用数据流图描绘本系统的功能,并用实体-联系图描绘系统中的数据对象。,第三章 软件需求分析,3-4 分析习题2第3题所述的机票预订系统。请用实体-联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能。,需求分析的任务和步骤,需求分析的任务建立分析模型 编写需求说明 需求分析的步骤需求获取 需求提炼 需求描述 需求验证,需求获取的常用方法,联合分析小组 用户代表、领域专家和系统分析员客户访谈 充分准备,寻找共同语言 循循序渐进、逐步逼近 问题分析与确认 多个来回,分析建模,结构化分析模型面向对象分析模型分析模型描述工具DFD、DD和PSPEC CFD、CSPE
12、C和STD E-R图 用例图,对象-关系图,对象-行为图,结构化分析模型,面向对象分析模型,第3章 需求分析 3-1 为什么要进行需求分析?通常对软件系统有哪些需求?3-2 怎样与用户有效地沟通以获取用户的真实需求?3-3 银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。请用数据流图描绘本系统的功能,并用实体-
13、联系图描绘系统中的数据对象。3-4 分析习题2第3题所述的机票预订系统。请用实体-联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能。,分析模型描述工具,结构化分析工具DFD、DD和PSPEC CFD、CSPEC和STD E-R图 面向对象分析工具用例图,类对象图对象-关系图对象-行为图,数据流图DFD,描述系统逻辑模型信息在系统中的流动和处理用途交流信息的工具结构化分析和设计的工具,数据流图DFD,组成符号圆框代表加工箭头代表数据流向方框代表源点和终点双杠表示数据文件或数据库分层从高层到低层分解前后的数据流必须一致命名数据流处理,领书单 进书通知,购书单 缺书单,DFD练习售书系统,领
14、书单 进书通知,进书通知,购书单缺书单,DFD练习售书系统,F1教材存量表,F2缺书登记表,数据字典DD,DFD中所有元素的定义的集合内容数据流数据流分量数据存储处理(一般不用DD描述),数据字典DD,定义数据的方法自顶向下分解数据数据元素的组合方式顺序:A+B选择:A|B重复:1A5可选:(A),数据字典DD,DD的用途分析阶段的交流工具包含控制信息数据库设计的基础例子P41例3.6,加工说明,加工说明PSPEC说明DFD中的每个加工描述工具结构化语言判定表判定树,加工说明例子,结构化语言P42-43,例3.7,3.8判定树P44,例3.9判定表P44,例3.9,CFD和CSPEC,适合实时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 复习 比较 完善
链接地址:https://www.31ppt.com/p-5635883.html