思考题(二)
1、软件过程:
软件生存周期中的一系列相关过程所涉及的活动。过程是活动的集合。活动是任务的集合。任务是将输入转换为输出的操作。
软件生存周期:软件也有一个从生到死的过程,这个过程一般称之为软件的软件生存周期或生命周期。软件生存周期可划分为定义、开发和运行三个时期,每个时期又细分为若干个阶段。把整个软件生存周期划分为若干阶段,使得每个阶段有明确的任务,使规模大,结构复杂和管理复杂的软件开发变的容易控制和管理。软件生存周期包括可行性分析、项目计划、需求分析、软件设计、编码与测试、运行与维护等阶段,每个阶段又包含一系列的活动。
软件过程模型:一个包括软件产品开发、运行和维护中有关过程、活动和任务的框架,覆盖了从系统的需求定义到系统的使用终止。软件生存周期模型是一种软件过程的抽象表示,也称为软件开发模型。软件生存周模型一般使用直观的图形标识软件开发的过程,主要根据软件的类型、规模,特别是软件的开发方法、开发环境等多种因素确立过程模型。
2、软件过程不是软件开发过程:软件过程是一个为建造高质量软件所需完成的任务的框架,即形成软件产品的一系列步骤,包括中间产品、资源、角色及过程中采取的方法、工具等范畴。软件过程是指软件整个生命周期,从需求获取,需求分析,设计,实现,测试,发布和维护一个过程模型。一个软件过程定义了软件开发中采用的方法,但软件过程还包含该过程中应用的技术——技术方法和自动化工具。过程定义一个框架,为有效交付软件工程技术,这个框架必须创建。软件过程构成了软件项目管理控制的基础,并且创建了一个环境以便于技术方法的采用、工作产品(模型、文档、报告、表格等)的产生、里程碑的创建、质量的保证、正常变更的正确管理。
软件开发过程:软件开发流程即软件设计思路和方法的一般过程,包括对软件先进行需求分析,设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编码和调试、程序联调和测试以及编写、提交程序等一系列操作以满足客户的需求并且解决客户的问题,如果有更高需求,还需要对软件进行维护、升级处理,报废处理
3、两个常见软件过程模型:瀑布模型和原型模型
理解:
瀑布模型( Waterfall Model )将软件生命周期划分为软件计划、需求分析和定义、设计、实现、测试、运行和维护这6个阶段,规定了它们自上而下、相互衔接的固定次序,如同瀑布流水逐级下落。从本质来讲,它是一个软件开发架构,开发过程是通过一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈。
原型模型( Prototyping Model )利用原型法技术尽可能快地构造一个实际系统的简化模型。
比较:
瀑布模型:它是一个软件开发架构,开发过程是通过一系列阶段顺序展开的。
每个阶段都会产生循环反馈。
各个阶段产生的文档是维护软件产品时必不可少的,没有文档的软件几乎是不可能维护的。
瀑布模型是一种文档驱动的过程模型。
软件生存周期的末期才能看到开发成果,风险大,错误代价大,能很好的适应需求变化
原型模型:
能够快速实现系统初步模型
便于开发人员和用户交流,明确需求
通过逐步求精使原型逐步完善
符合人类认知过程和思维活动
适用于不能预先确切定义需求的软件项目
4、瀑布模型和其他常见模型关联与区别:
瀑布模型是一种线性模型,文档驱动的模型。
增量模型采用一系列的增量方式开发系统。
螺旋模型结合瀑布模型和快速原型,是一种风险驱动的开发模型
构件集成模型利用模块化方法将整个系统模块化,复用构件库中的软件构件,通过组合手段提高应用软件系统过程的效率和质量。
统一过程模型是以用例驱动的,以架构为中心,迭代和增量的过程。
5、根据团队目前项目,我更倾向于瀑布模型和原型模型相结合,因为他们两个之间可以很好的互补。
浙公网安备 33010602011771号