持环境,如若没有相应的快速原型工具,就不可能采用快速原型方法;以及技术支持,
如软件工程规范、软件工程管理经验、软件人员的技术基础和经验等。
软件的开发可以选用开发方法中的一种,也可以选用几种方法的结合。考虑到本
考试系统由 JBuilder 开发,使用面向对象的开发语言 Java 语言实现,所以本系统主要
采用了面向对象的软件开发方法。在开发的部分阶段,还使用了原型化方法,这两种
方法的结合既具有稳定性好、可复用性和可维护性的优点又方便了系统开发者和最终
用户的沟通。
2.1.2 软件工程活动的阶段
软件工程活动的定义是:生产一个达到工程目标并且满足用户需求的软件产品所
需要的步骤,主要包括需求分析、设计、实现、确认以及维护等活动。随着软件工程
思想的普及,大家认识到软件开发必须以软件工程活动中定义的步骤指导软件开发,
采用工程的概念、原理、技术和方法开发和维护软件,提高软件开发的效率,减少软
件开发和维护中的问题。
系统开发的过程一般包括:1.需求阶段建立系统模型,是软件开发人员和客户之间
合同约定的基础,是下一步设计阶段的基本输入;2.设计阶段定义实现需求所需的软件
结构;3.实现阶段将软件设计转换为代码;4.验证是一项评估活动,贯穿于整个开发过
程;5.维护指软件发布之后所进行的修改,包括对发现错误的修正,环境变化后进行的
必要调整等
[23]
。
软件开发生存周期模型用来描述软件从项目需求定义开始到开发成功投入使用一
直到维护,软件生命周期结束。随着软件工程学的发展,相继提出了演化模型、螺旋
模型、快速原型化模型、快速应用开发模型、增量模型、喷泉模型等。
本考试系统采用面向对象的软件开发方法,开发步骤遵循面向对象软件开发的四
个阶段:
1.面向对象分析 Object-Oriented Analysis(OOA)。系统分析员对将要开发的系统的
定义和分析,主要描述工具是用例图,这个阶段的目的是建立系统提出问题领域的模
型。这一阶段的模型产品是用例图。
2.面向对象设计 Object-Oriented Design(OOD)。将 OOA 的结果转化为适合于程序
设计语言的具体描述,主要描述工具是各类静态和动态模型图,这个阶段的目的是设
计实现的类和方法,以及类之间的联系,以满足系统的功能要求和质量要求。OOA 的
重点是做什么,而 OOD 的重点是如何做。这一阶段的模型产品是静态图和动态图。