二、软件工程与Rational统一过程
目录
1、什么是软件
软件是计算机系统与硬件相互依存的另一部分,它是包括程序、数据及其相关文档的完整集合
程序是按照事先设计的功能和性能要求执行的指令序列。
数据是使得程序能够适当地操作信息的数据结构。
文档是描述程序的开发、操作和维护的文字或图形资料。
软件所具有的特征:
1、 软件是被开发或设计的,而不是被制造的
2、软件是复杂的
3、软件的开发至今尚未摆脱手工艺的开发方式
4、软件不会“磨损”,但会“退化”
软件的类型:
1、系统软件
2、支撑软件
3、应用软件
软件开发中出现的问题归结如下:
1、软件开发无计划性,进度的执行和实际情况有很大差距
2、软件产品无测评手段
3、软件开发过程中没有统一的规范指导,参与软件开发的人员各行其事
4、软件需求分析阶段工作做的不充分,前期问题不及时解决,造成后期矛盾集中暴露
2、什么是软件工程
软件工程是指:
将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件开发
软件工程相关的工作可以分为三个一般阶段:
1、定义阶段
2、支持阶段
3、开发阶段
软件周期
如同任何事物一样,软件也有一个孕育、诞生、成长、成熟、衰落、死亡的生存过程,这称之为软件的生命周期
软件生命周期可以分为六步:
1、计划
2、需求分析和定义
3、软件设计
4、编码
5、软件测试
6、运行和维护
软件生存期模型
软件生存期模型是从软件项目需求定义直至软件废弃为止,跨越整个生存期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框图
常见的软件生存期模型
1、瀑布模型
2、原型实现模型
3、面向对象软件工程方法
面向对象技术是一个非常实用而强有力的软件开发方法,和传统的软件工程方法相比较,它有许多新特色
面向对象 = 对象 + 类 + 继承 + 通信
面向对象的应用开发过程
1、分析阶段
2、应用的维护
3、组装测试
4、实例化
5、类的开发
6、高层设计
4、Ratioanal统一过程
Ratioanal统一过程(Ratioanal Unified Process RUP)是一种软件工程过程
RUP二维结构图
水平轴代表时间,显示了过程的生命周期,包括初始(inception)、细化(elaboration)、
构造(construction)、移交(transition)四个阶段
竖直轴代表核心过程工作流,包括业务模型(business modeling)、需求(requirements)、
分析和设计(analysis&design)、现实(implementation)、测试(test)、实施(deployment)、
配置和变更管理(configuration &change management)、项目管理(project management)、
环境(environment)
RUP综合的最佳的现代软件开发方法
1、迭代的开发软件
2、配置管理和变更管理
3、不断的验证软件质量
4、建立可视化模型
5、应用基于构件的构架
6、需求管理
RUP包含了四种重要的模型元素
1、开发人员
2、活动
3、制品
4、工作流