软件工程复习提纲

上传人:hs****ma 文档编号:508326781 上传时间:2022-11-24 格式:DOCX 页数:20 大小:934.54KB
返回 下载 相关 举报
软件工程复习提纲_第1页
第1页 / 共20页
软件工程复习提纲_第2页
第2页 / 共20页
软件工程复习提纲_第3页
第3页 / 共20页
软件工程复习提纲_第4页
第4页 / 共20页
软件工程复习提纲_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《软件工程复习提纲》由会员分享,可在线阅读,更多相关《软件工程复习提纲(20页珍藏版)》请在金锄头文库上搜索。

1、软件工程的复习题纲第一章1、软件工程的生存周期: 制定计划;需求分析;总体设计;详细设计;程序编写;软件测试;运行/维护。2、软件工程的各个生存期模型的特点和适合项目。 (生存期模型有瀑布模型、 V 模型、原型模型、增量式模型和螺旋式模型) (部分是在网上找的,老师说考这些模型的特点,有什么情况下适合用什么来进行开发。 )瀑布模型 的特点 :(1) 阶段间具有顺序性和依赖性。(2)推迟实现的观点。(3) 每个阶段必须完成规定的文(每个阶段结束前完成文档审查, 及早改正错误。 )(4)下一个阶段可以回溯到前面的某个阶段适合于:1.开发阶段需求很少有变化2.分析设计人员对应用领域很熟悉3.低风险项

2、目4.用户使用环境很稳定5.用户除提出需求外,很少参与开发工作类似的项目如:公司的财务系统;库存管理系统;短期项目V 模型 的特点:( 1 )简单易用( 2 )强调测试过程与开发过程的对应性和并行(3)没有反应实际的开发过程。V 模型适合的项目:在项目开始前,项目的需求很明确在项目开始前,解决方案也很明确对系统的性能安全很严格的项目类似的项目如:航天飞机等公司的财务系统原型模型 的特点:( 1 )在需求定义之前,需要快速构建一个系统( 2 )根据构建系统的优缺点,用户给开发人员提出反馈意见( 3 )根据反馈意见修改软件需求规格,以便系统可以更正确的反映用户的需求( 4 )减少各种假设以及风险适

3、合的项目:在项目开始前,项目的需求不明确需要减少项目需求的不确定性类似的项目如:确定显示界面第一次开发的产品,验证可行性增量式模型 的特点:1 .需求多变,可以分阶段提交产品。2 .分析设计人员对应用领域不熟悉,难以一步到位。3 .用户参与整个软件开发工程中,起到对客户起到镇静剂的作用,增量能够有计划地管理技术风险。4 .软件公司自己有较好的类库或构件库5 .增量的内容写入合同,可能会引起客户的不满。6 .融合了瀑布模型的基本成分和原形实现的迭代特征,优点是人员分配灵活,刚开始不用投入大量人力资源,如果核心产品很受欢迎 则可增加人力实现下一下增量。适合的项目:项目开始,明确了需求的大部分,但是

4、需求可能会发生变化对于市场和用户把握不是很准,需要逐步了解对于有庞大和复杂功能的系统进行功能改进,就需要一步一步实施的。螺旋式模式 的特点:(1)是瀑布模型的多次迭代; (2)它将每个阶段进行更细的划分; (3) 可以进行灵活设计;(4)通过风险管理驱动;(5)用户可以更早看到产品;(6)用户可以不 断对产品进行评估;(7)用户可以与开发人员进行紧密的合作; (8)项目的投资不用一次投 入;(9)可以给开发人员更多的反馈信息。适合的项目:风险是主要的制约因素不确定因素和风险限制了项目进度 用户对自己的需求也不是很明确 需要对一些基本的概念进行验证 可能发生一些重大的变更 项目规模很大 项目中采

5、用了新技术喷泉模型的特点:适应于面向对象方法;体现了软件开发过程无间隙和固有的迭代特征。 第二章1、结构化分析方法(会画数据流图、数据字典 ) 数据流图:1 *数据流图中的主要图形元素 0o数据加工(数据变换)I I数据源点或终点(外部实体)数据流匚数据存储文件例:银行计算机储蓄系统的工作过程储户填写的存款单或取款单由业务员键入系统, 如果是存款则系统记录存款人姓名、 住 址(或电话号码卜身份证号码、存款类型、存款日期、到期日期、利率及密码 (可选)等信息, 并印出存单给储户;如果是取款而且存款时留有密码, 则系统首先核对储户密码,若密码正 确或存款时未留密码,则系统计算利息并印出利息清单给储

6、户。答:数据流程图如下:帐卡数据字典:数据字典的内容主要是对数据流程图中的数据项、数据结构、数据流、处理逻辑、数据存储和外部实体等六个方面进行具体的定义。数据字典的数据条目内容:(1)名称与别名:数据流、数据源或外部实体的标识;(2)数据类型;(3)何处使用/如何使用输入流/输出流的加工表;(4)内容描述;(5)补充说明:如,取值范围与缺省值,有关的设计约束等2、面向对象模型(会画用例图、顺序图、活动图、状态图等)用例图:用例(Use case):系统所提供的功能描述角色(Actor):可能使用用例的人或者外部系统用例图中的图符:, CD用例 Q 执行者系统:用于界定系统功能范围,描述该 京兀

7、31能朝用例都置于其中, 而描述外部实隹 的执行者都置于其外。, 关联.连接执行者和用例,表示执行者所代表的系统外部实体与该用例所描述的系统 需求有关m二三黄尸 卷甬由用例A连向用例B,表示用例 A中使用了用网B中的行为或功能. *扩展.由用例A连向用例B,表示用例 R描述了一项基本需求.而用例A则描述了该基 瀛本的特殊情况=, I 3注释体;对UML实体进行文字描述,注释连接:将注释体与要描述的实体连接.说明该注释他是针对该实体所进行的描 述.顺序图:顺序图展示了几个对象之间的动态协作关系,主要用来显示对象之间发送消息的顺序,还显示对象之间的交互,即系统执行某一特定时间点所发生的事。送承st

8、.选课显示开课信思提交选课除思选讲旧求查询开课面屈加入课程者返回磕制I!状态视图:状态图是对类描述的补充, 它说明该类的对象所有可能的状态以及那些事件将导致状态 的改变。它是一个类对象所可能经历的所有历程的模型图 例:对电话工作的行为建模。非法余额不足或 消费完成充值失败(该余额攵【余额不足充彳自成功余额充足购买成交I不变更余就余额充足I图X医院饭堂就餐卡系统状态图活动图:活动图用来描述执行工作流程中涉及的活动,展示了连续的活动流协作图:? 与顺序图作用相同,协作图也是用来描述系统中对象之间的动态协作关系。协作图侧重于描述各个对象之间存在的消息收发关系(交互关系),而不专门突出这些消息发送的时

9、间顺序。? 在协作图中,对象同样是用一个对象图符来表示,箭头表示消息发送的方向,而消 息执行的顺序则由消息的编号来表明(有一道综合题会在 1和2中出)3、需求规划(不知道老师大概要考什么)老师原话:需要规格文档不会考你们的格式,主要是考你们的需要分析的方法,主要是面向对象的方法和结构化的方法,这是重点。一定会出大题的,要认真复习,认真看PPT。第三章1、传统(结构化)的设计方法:模块划分的两种方法:中心变换和事务变换(PPT)中心变换(变换分析设计):根据信息系统的模型, 信息一般是以外部形式进入系统,通过系统处理后,然后离开系统。从其过程可以得出,变换流的数据流图是一个线性结构。变换型的数据

10、流是由输入、变换(或称处理)和输出三部分组成。物理输入换流的设计是将数据流图到程序结构图的转换。当数据流图具有较明显的变换特征时,则按照下列步骤设计。1.确定数据流图中的变换中心、逻辑输入和逻辑输出。2.设计软件结构的顶层和第一层。| H | | put 门I |图$33变换分析法让:坐例事务变换(事务分析设计):基本系统模型意味着变换流。因此,原则上可以讲所有的信息流都可以归结为这一类。事务处理中心 力u路径 O输入流/OO-QJ O事务流的设计是从事务数据流图到程序结构的变换。对于具有事务型特征的数据流图, 则采用事务分析的设计方法。(1)确定数据流图中的事务中心和加工路径。当数据流图中的

11、某个加工具有明显地将一个输入数据流分解成多个发散的输出数据流 时,该加工就是事务中心。从事务中心辐射出去的数据流为各个加工路径。(2)设计软件结构的顶层和第一层。事务处理中心和事务处理路径确定后,就可以确定它们的软件结构。(3)进行事务结构中、下层模块的设计、优化等工作。-O*CC)接受分支*CD) *o *输入流 事务中心加工路径发送分支匚 国口事务层动作层细节层2、面向对象的设计方法:找出类,并对类进行定义(主要定义属性和方法)类图描述了系统中的类及其相互之间的各种关系,其本质反映了系统中包含的各种对象的类型以及对象间的各种静态关系(关联,子类型)。类图中的图符:类:名,表示一个类,其中第

12、一栏是类的第二栏是类的属性,第三栏是类的L135SO-pzf-操作。包:包是一种分组机制,表示一个类图集合,关联:用于表示类的对象之间的关系口其特殊形式有组成关联和聚集关联口, O聚集关联:用于表示类的对象之间的关系是整体与部分的关系。 O组成关联:用于表示类的对象之间的关系:整体拥有各部分,部分与整体共存.如整体 不存在了,部分也会随之消失., 南乏化关联:泛化关系(继承关系)定义了类和包间的一般元素和特殊元素之间的分类关 系依赖关系:有两个类或包元素X,丫,修 改元素X的定义可能会引起对另一个元素丫的定义 的修改,则称元素Y依赖于元素X二类的一个实例口用于表示对象间的关联关系的一个实例.例

13、:mo ; Strins一号rvtinr : Sl.r i ng$t String -sbirlhda/ : Dale -ssfh : Stringskihio : Stfing-bjntj 二 Siring而至脱fF井调班()并学幡异功。#华业。UML类图第四章1、采用什么方式对模块进行描述老师原话:.对模块进行描述,主要是模块内与模块之间的关系来进行描述的。如耦合与内 聚等。模块的耦合:耦合(Coupling)表示软件结构内不同模块彼此之间相互依赖(连接)的紧密程度,是 衡量软件模块结构质量好坏的度量,是对模块独立性的直接衡量指标。耦合强弱取决于模块间接口的复杂程度,进入或访问一个模块的点

14、,以及通过接口的数据。1)数据耦合如果两个模块彼此间通过参数交换信息,而且交换的信息仅仅是数据,那么这种耦合称为数据耦合。数据耦合是低耦合。系统中必须存在这种耦合, 因为只有当某些模块的输出数据作为另 一些模块的输入数据时,系统才能完成有价值的功能。2)控制耦合如果传递的信息中有控制信息,则这种耦合称为控制耦合。控制耦合是中等程度的耦合, 它增加了系统的复杂程度。控制耦合往往是多余的,在把模块适当分解之后通常可以用数据耦合代替它。3)公共环境耦合当两个或多个模块通过一个公共数据环境相互作用时,它们之间的耦合称为公共环境耦合(即公用耦合)。公共环境耦合的复杂程度随耦合的模块个数而变化,当耦合的模块个数增加时复杂程度显著增加。(1) 一个模块往公共环境送数据,另一个模块从公共环境取数据。这是数据耦合的一 种形式,是比较松散的耦合。(2)两个模块都既往公共环境送数据又从里面取数据,这种耦合比较紧密,介于数据耦合和控制耦合之间。4)内容耦合最高程度的耦合是内容耦合。(1) 一个模块访问另一个模块的内部数据;(2) 一个模块不通过正常入口而转到另一个模块的内部;(3) 两个模块有一部分程度代码重叠(只可能出现在汇编程序中);(4) 一个模块有多个入口(这表明一个模块有几种功能)总之,耦合是影响模块

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号