软件工程资料自我整理(自动保存的).doc_第1页
软件工程资料自我整理(自动保存的).doc_第2页
软件工程资料自我整理(自动保存的).doc_第3页
软件工程资料自我整理(自动保存的).doc_第4页
软件工程资料自我整理(自动保存的).doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。产生于软件发展的第二阶段(软件系统阶段)末期。软件工程-定义1& 软件工程是指导计算机软件开发和维护的工程学科。它采用工程的概念、原理、技术和方法来开发与维护软件& 把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来软件工程-目标 付出较低的开发成本; 达到要求的软件功能; 取得较好的软件性能; 易于移植 需要较低的维护费用; 能按时完成开发工作,及时交付使用; 开发软件质量指标高; 统一为“如何提高软件生产率”软件生存期技术定义的软件过程过程元素之间的关系标准软件过程体系结构图软件生命周期它是指一个软件从提出开发要求开始到该软件报废为止的整个时期(生存过程)。从时间角度,把整个周期划分为若干个阶段(步骤),每个阶段有明确的任务,然后再逐步完成每个阶段的任务软件从孕育、诞生、成长、成熟、衰亡的生存过程软件生存期各阶段一般可分为六个步骤/阶段 :1.制定计划(Planning)2.需求分析和定义(Requirement Analysis and Definition)3.软件设计(Software Design)4.程序编写(Coding/Programming)5.软件测试(Testing)6.运行/维护(Running/Maintenance)线性顺序模型瀑布模型瀑布模型-特点q 优点:q 提供了软件开发的基本框架,比靠“个人技艺”开发好的多。q 严格活动序列,严格阶段成果评审,有利于大型软件开发过程的人员的组织和管理q 缺点:对用户需求变更的响应较困难。q 初始阶段较长,用户极大的耐心,需求的不确定性;q 后期阶段时,需求错误、设计及实现错误才出现q 适用:需求明确、大型的项目。快速应用开发模型RAD1快速应用开发模型RAD2RAD模型-特点优点:开发时间短缺点:多团队开发协调困难;了解需求困难;不注意小细节原型模型1原型模型2原型模型-特点l 优点:l 成品的用户满意度高。用户参与,需求不断完善l 缺点l 软件的“临时版本”,未考虑性能需求l 进度控制、质量检验较难,技术方案未必最优,会导致开发过程的不可收敛性l 系统结构通常较差,连续的变更损坏了系统的结构l 适用:l 中小规模、生存期短的系统,知识型系统l 用户定义了一组一般性目标,但不能标识出详细的输入、处理及输出需求l 开发者可能不能确定算法的有效性、操作系统的适应性或人机交互的形式l 当你的客户有一个合理的需求,但对细节则没有任何线索时,先开发一个原型系统是一个好的选择l 渐增模型l 以尽早占领市场为目的,逐步发布版本; l 可有计划地管理技术风险l 螺旋模型l 不同版本、不同形式的不断进化;l 需要高水平的风险评估技术l 并发开发模型l 由用户要求、管理决策和评审结果驱动;l 每一个软件工程活动触发活动网络的状态变迁;RUP(Rational Unified Process)Rational统一过程近30年的发展和实际运用每一次软件开发过程定义了九个核心规程六个技术规程业务建模规程、需求工程、分析和设计规程、实现规程、测试规程、部署规程三个管理规程配置和变更管理规程、项目管理规程、环境规程 开发周期的四个阶段初始阶段、细化阶段、构造阶段、移交阶段可行性研究的任务& 定义 研究软件项目是否值得开发、关键技术、难点、能否解决、怎样达到目标& 主要任务 社会/法律可行性 技术可行性 经济可行性 (成本估计 效益分析 )可行性研究的步骤& 系统定义 目标、性质、范围、规模、约束和限制& 对现行系统进行分析研究 & 导出新系统逻辑模型 & 设计方案 & 推荐可行的方案& 编写可行性研究报告 UML的基本图有静态图-类图,对象图,构件图,部署图动态图-顺序图,协作图,状态图,活动图,用例图作用和定义:是对象管理组织(OMG)制定的一个通用的、可视化的建模语言标准,可以用来可视化(visualize) 、描述(specify)、构造(construct)和文档化(document)软件密集型系统的各种工件活动图-推荐的使用场合 理解牵涉多个用例的工作流 分析用例 处理多线程应用活动图对工作流建模步骤1. 识别要对工作流描述的类或对象,找出负责工作流实现的业务对象,可以是领域实体,也可是一种抽象的概念或事物,建立泳道2. 确定工作流的初始状态和终止状态,明确工作流的边界细化3. 对动作状态或活动状态建模4. 对动作流建模:先处理顺序动作,在处理分支与合并等条件行为,再处理分叉与汇合等并发行为5. 对对象流建模:找出与工作流相关的重要对象,连到相应的动作状态或活动状态6. 对建立的模型进行精化或细化需求工程 需求获取 需求分析与协商 系统建模 需求规约 需求确认 需求管理 准确需求的重要性& 研究分析: 项目失败最重要的8个原因中的5个与需求有关 & 需求阶段产生的错误将扩散到其他阶段& 以需求为基础的设计与编码阶段对错误的检测与发现很困难& 后期发现的需求错误的修正费用很高(图示)& 软件项目的成本与时间超支,大多是需求分析不准确造成需求分析定义l 需求分析是前面需求获取阶段的继续,通过对所获取的信息进一步加工获得对系统的更精确描述,成为转换成需求规格说明的直接信息元。需求分析任务需求分析过程图示需求分析方法l 结构化分析l 面向对象分析顺序图(时序图)类图 类图描述的是对象之间的结构静态关系,用于软件系统的静态建模。 类图是显示一组类、接口、协作以及它们之间关系的图。用于对系统静态设计视图建模。 类图通常包含下述内容:类; 接口; 协作; 关联关系; 依赖 ; 泛化类的设计与类图缺陷池 这种方法中,我们将使用两个池,例如池X 和池Y来跟踪缺陷 现在,让池X 中的缺陷数为Dx,池Y 中的缺陷数为Dy 软件中发现的唯一缺陷总数如下: 唯一缺陷总数= Dx + Dy - 在X 和Y 中发现的缺陷数 软件中的缺陷总数可以估计为: 缺陷总数= (Dx*Dy) / 在X 和Y 中发现的缺陷数 X池-475错误 Y池-370错误 有125个缺陷同时出现在X、Y池中 唯一缺陷总数=475+370-125=720 缺陷总数=475*370/125=1406 可能剩余缺陷=1406-720=686 隐藏缺陷 686/1406=48.79%软件项目规划中的具体内容是什么 估计 风险分析 时间安排 采购决策 重新设计 组织规划1可行性研究有哪些步骤?1) 确定项目规模和目标;2)研究现行系统(如果存在);3)建立系统的高级逻辑模型,用系统流程图或数据流图(DFD图)描述;4)提高实现高层逻辑模型的 各种方案,并对各方案进行评价;5)推荐可行的方案;6)编写可行性报告;2什么是软件生存周期?软件生存周期模型有哪些? 答:软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。 主要模型包括:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型。 3软件质量保证措施有那些?1) 以客户对于质量的需求为基础,对项目开发周期的各个阶段,建立质量目标;2) 定义质量度量以衡量项目活动的结果,协助评价有关的质量目标是否达到;3) 确定质量活动;4) 执行已经确定的质量活动;5) 评价质量4什么是软件开发方法?有哪些主要方法?答:软件开发方法是一种使用早已定义好的技术集及符号表示习惯来组织软件生产过程的方法,其方法一般描述成一系列的步骤,每一个步骤都与相应的技术和符号相关。主要方法有:1) 结构化开发方法2) 面向数据结构的开发方法3) 原型化开发方法4) 面向对象的开发方法5结构化分析的步骤有哪些?1) 建立当前系统的具体模型2) 抽象出当前系统的逻辑模型3) 建立目标系统的逻辑模型4) 为了对目标系统进行完整的描述,考虑人机界面和其他一些问题6什么是软件维护?它有哪些类型?软件维护是指软件系统交付使用以后,为了改正软件运行错误,或者因新的需求而加入新功能的修改软件的过程。它的类型有:完善性维护,适应性维护,纠错性维护,预防性维护。7软件测试的步骤有哪些?1单元测试,分别完成每个单元的测试任务,以确保每个模块能正常工作2集成测试,把已测试的模块组装起来,进行集成测试3确认测试,完成集测试以后,要对开发工作初期制定的确认准则进行检验4系统测试,完成确认测试以后,给出的应该是合格的软件产品,为了检验能否与系统的其他部分协调工作,需要进行系统测试5验收测试,检验软件产品质量的最后一道工序是验收测试8试述用户界面设计应考虑的因素。答:(1)可实用性。要求使用简单,用户界面中所用术语的标准化和一致性,具有help功能。快速的系统响应和低的系统成本,具有容错能力。 (2)灵活性。考虑用户的特点,能力,知识水平;提供不同的系统响应时间,提供根据用户需求制定和修改界面,(3)界面的复杂性与可靠性9评价模块分割好坏的标准有哪些?模块分割好坏的标准有2个定性准则:藕合性和内聚性。耦合性用于描述模块之间联系的紧密程度;内聚性用于描述模块内部联系的紧密程度。模块分割时耦合越松越好,内聚性愈强愈好10 UML有那些图? 答:用例图:从用户角度描述系统功能,并指出各功能的操作者静态图:表示系统的静态结构,包括类图,对象图,包图行为图:描述系统的动态模型和组成对象间的交互关系,包括状态图,活动图交互图:描述对象间的交互关系,包括顺序图,合作图实现图:用于描述系统的物理实现,包括构件图,部件图5、原型模型与演化模型的异同分析(5分)答:原型模型优点: 成品的用户满意度高。用户参与,需求不断完善缺点: a 软件的“临时版本”,未考虑性能需求b 进度控制、质量检验较难,技术方案未必最优,会导致开发过程的不可收敛性c 系统结构通常较差,连续

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论