rup与传统软件工程之可行性分析

原创 2005年05月24日 00:40:00


整个软件工程的过程就是由抽象到具体的逐步进化过程。传统软件工程一次进化,而迭代式则是分为迭代过程,每个迭代为一个抽象到具体的进化,整个迭代过程也是抽象到具体的进化。记住,测试是贯穿软件开发始终的。

一.可行性分析:
目的:确定是否立项。
传统的软件工程模式:
系统分析员与客户或领域专家一起分析系统所需的主要功能,评价开发项目的可行性。
通过分析当前系统导出新系统的高层逻辑模型(粗略的数据流图)并列出当前存在的问题新系统所必须解决的问题。
导出用于新系统的解决办法,并对其作出可行性评价,选出一个合适的方案。

输出工件:数据流图,数据字典。

RUP模式:
目的:确定是否立项。
在rup中可行性分析为前景分析,作为需求分析的输入。
它包括系统的概述,用自然语言来描述整个系统的特征和应满足的功能。列出涉众和用户。
涉众代表系统的拥有和提供者,用户代表系统的使用者和管理者。
列出涉众和用户的概念上的要求,以及各自应承担的责任。
列出系统概念上的功能特性和约束以及非功能属性。
所有前景分析被记载在前景文档中,前景文档作为是否立项的依据和需求分析的输入。


二.需求分析:
传统的软件工程模式:
目的:开发者与用户达成对该系统一致的功能需求,对系统的功能作整体上的描述,即分析做什么,而不是如何做。
在可行性分析阶段已经初步定义了系统的基本功能,在需求分析阶段在可行性分析阶段基础上完整,清晰,准确地定义出系统的功能要求,性能要求,运行要求,扩展要求。
分析系统的数据要求,利用其它工具如层次方框图(层次方框图专门针对数据的组成结构),warnier图(是层次方框图的更健壮的形式)对数据字典作必要补充。
开发系统原形,并让用户进行评价。
分析数据处理过程,主要是对可行性分析阶段导出的数据流图作精确分析。分析数据的输入输出,数据元素的组成,基本算法(ipo图)。
对可行性分析阶段的数据流图和数据字典作必要的添加和完善。
细化数据流图,对粗略描述的数据流图作细化分析(即更深入的分层),此时应对数据字典作必要的修改和添加。
书写必要文档(需求规格说明书,数据要求说明,修正计划,初步的用户使用说明),并对上述工作进行评审和验证。
输出工件:改进的数据流图,改进的数据字典,ipo图,ER图,warnier图,层次方框图(描述数据分类及组成),需求规格说明书,数据要求说明,修正计划,初步的用户使用说明。(需求规格说明书里包括了数据流图,ipo图,数据字典)。


RUP模式:
目的:构造出用户认可的用例,开发者与用户达成对该系统一致的功能需求,对系统的功能作整体上的描述,即分析做什么,而不是如何做。
并记载所有已达成共识的需求变更。

基于用例的需求分析主要面向需求较为复杂和不明确,用户较多的系统。
需求分析是前景分析的扩展和进一步的细化(即进一步的具体)。
分析过程:
1.建立基本的用例模型(定义系统)。
捕获通用词汇,建立词汇表(好比数据字典);找到使用和管理该系统的所有用户;根据用户定义基本用例;建立他们之间的关系;根据复杂度及风险对用例排序;复审。

2.细化该模型(精化系统定义)。
定义用户之间的关系(包括用户泛化等),用例间的关系(包含,扩展,使用等);重构用例模型消除冗余;详细描述每个用例(包括名称,简述,事件流,特殊需求,前置后置条件等根据具体需要而定);复审。

3.记载补充规约。
定义在用例模型中无法表述的需求。

三.分析
传统软件工程模式:
在传统软件工程中,分析阶段又叫总体设计阶段。
目的:选取最佳方案,将系统的概念性描述转化为结构化的模块层次(进一步的具体化)。

与需求阶段的定义做什么相反,现在定义如何做。分析阶段主要1.划分组成系统的物理元素(程序,文件,数据库,文档等)。但并不考虑这些元素的细节。2.划分系统的模块,定义这些模块的相互关系。3.复审。

如何选取最佳方案:
以数据流图为出发点,定义系统各个处理模块的边界(部署),根据这些边界来设想各种实现方案。
根据当前情况(包括技术,资金,时间等)来选择数个合适的方案。
开发方和用户方根据上述方案的利弊共同商讨出一个最佳的方案。

划分系统的物理元素:
程序(即下述系统的模块);数据库(如涉及到则需进行数据库设计);制定测试计划(从现在开始,测试将持续到开发结束);书写文档(系统说明
,测试计划,详细的实现计划,数据库设计结果)。

系统模块的设计:
功能的分解,将需求阶段得到的数据流图作进一步的分解,直到每个处理功能都明显易懂为止。
面向数据流图的模块建立,根据数据流图定义出系统的模块结构(层次图),以及每个模块的算法(HIPO图,包括输入,输出,处理)。

层次图是描述模块间调用和被调用关系的图。与层次方框图不同,层次方框图是用来描述实体间的组成关系的图。

未完

软件工程 - 个人博客系统 - 可行性分析与需求分析文档

个人博客系统 --- 可行性分析与需求分析文档 个人博客系统是针对希望个性化使用博客的用户的需求而设计,是可以完成个人博客用户登入、发表、浏览、修改文章以及图片视频、留言、评论甚至个性化设计博客网站页...
  • Ya_da
  • Ya_da
  • 2016年10月17日 10:09
  • 6099

UML简单介绍(二十一)——RUP软件工程模型介绍(下)

1、核心工作流 1)商业建模         软件工程人员与商业工程人员之间的正确交流,使用商业用力来文档化整个商业过程。即领域模型的建立。 2)需求         从领域模型中提取需求,形成专业的...
  • ljtyzhr
  • ljtyzhr
  • 2015年06月24日 22:42
  • 634

软件工程:CMM、RUP、XP总结

软件开发过程学习总结 目的:初步理解CMM、RUP、XP分别是怎样的过程,弄懂其关键步骤,分析其优劣及适应情况。最后综各家之长,给出一个可能较实用可行的软件开发过程体系X Process,以用在项目...

软件工程课程可行性分析

  • 2014年03月24日 12:04
  • 765KB
  • 下载

软件工程-可行性分析.ppt

  • 2012年07月30日 11:42
  • 405KB
  • 下载

【软件工程】机房文档--可行性研究报告

可行性研究报告

软件工程导论 第2章 可行性分析

  • 2012年09月20日 19:04
  • 1.03MB
  • 下载

【软件工程】——可行性研究

在上一篇博客中对软工的知识进行了一个

软件工程可行性分析

  • 2012年12月17日 21:05
  • 78KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:rup与传统软件工程之可行性分析
举报原因:
原因补充:

(最多只允许输入30个字)