常用的系统开发方法有:
结构化系统开发方法
原型法
面向对象方法
计算机辅助软件工程方法
下面一一为大家详细介绍:
1.结构化系统开发方法
结构化系统开发方法(Structured System Analysis And Design,SSA&D,)又称结构化生命周期法。
是系统分析员、软件工程师、程序员以及最终用户按照用户至上的原则,自顶向下分析与设计和自底向上逐步实施的建立计算机信息系统的一个过程,是组织、管理和控制信息系统开发过程的一种基本框架。
开发过程分为:
1、系统规划阶段
2、系统分析阶段(可行性分析、需求分析)
3、系统设计阶段(总体设计、详细设计)
4、系统实施阶段
5、系统运行与维护阶段
特点
l自顶向下整体性的分析与设计
l自底向上逐步实施的系统开发过程
l用户至上
l深入调查研究
l严格区分工作阶段
l充分预料可能发生的变化开发过程工程化.
2.原型法
原型法的基本思想与结构化方法不同,原型法认为在很难一下子全面准确地提出用户需求的情况下,首先不要求一定要对系统做全面、详细的调查、分析,而是本着开发人员对用户需求的初步理解,先快速开发一个原型系统,然后通过反复修改来实现用户的最终系统需求。
原型应具备的特点:
(1)实际可行。(2)具有最终系统的基本特征。(3)构造方便、快速,造价低。
原型分为两类:
l抛弃型原型(Throw-It-Away Prototype),此类原型在系统真正实现以后就放弃不用了。
l进化型原型(Evolutionary Prototype),此类原型的构造从目标系统的一个或几个基本需求出发,通过修改和追加功能的过程逐渐丰富,演化成最终系统。
特点
在于原型法对用户的需求是动态响应、逐步纳入的,系统分析、设计与实现都是随着对一个工作模型的不断修改而同时完成的,相互之间并无明显界限,也没有明确分工。系统开发计划就是一个反复修改的过程。适于用户需求开始时定义不清、管理决策方法结构化狂度不高的系统开发,开发方法更宜被用户接受;但如果用户配合不好,盲目修改,就会拖延开发过程。
3.面向对象(OO)方法
面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界、解决问题的方法与过程。
由于客观世界的问题都是由客观世界中的实体及实体相互间的关系构成的,因此我们把客观世界中的实体抽象为对象(Object)。
持面向对象观点的程序员认为计算机程序的结构应该与所要解决的问题一致,而不是与某种分析或开发方法保持一致,他们的经验表明,对任何软件系统而言,其中最稳定的成分往往是其相应问题论域(problem domain)中的成分。
“面向对象”是一种认识客观世界的世界观,是从结构组织角度模拟客观世界的一种方法。一般人们在认识和了解客观现实世界时,通常运用的构造法则:
l区分对象及其属性,例如区分台式计算机和笔记本计算机;
l区分整体对象及其组成部分,例如区分台式计算机组成(主机、显示器等);
l不同对象类的形成以及区分,例如所有类型的计算机(大、中、小型计算机、服务器、工作站和普通微型计算机等)。
面向对象分析与其它分析方法一样,是提取系统需求的过程。
面向对象分析的关键是识别出问题域内的对象,并分析他们相互间的关系,最终建立起问题域的正确模型。面向对象分析过程从分析陈述用户需求的文件开始。
需求陈述的内容包括:
问题范围
功能需求
性能需求
应用环境及假设条件等。
需求陈述应该阐明 “做什么”而不是“怎样做”。它应该描述用户的需求而不是提出解决问题的方法。
在利用面向对象开发方法时,书写需求陈述要尽力做到语法正确,而且应该慎重用名词、动词、形容词和同义词。
接下深入理解用户需求,抽象出目标系统的本质属性,并用模型准确地表示出来。
面向对象分析大体上按照下列顺序进行:
l建立功能模型、
l建立对象模型、
l建立动态模型、
l定义服务
4.CASE
即计算机辅助软件工程,简称CASE。
20世纪80年代,计算机图形处理技术和程序生成技术的出现,缓和了系统开发过程中的系统分析、系统设计和开发“瓶颈”,即主要靠图形处理技术、程序生成技术、关系数据库技术和各类开发工具为一身的CASE(Computer Aided Software Engineering,计算机辅助软件工程法)工具代替人在信息处理领域中的重复性劳动。
CASE是一套方法和工具,可使系统开发商规定的应用规则,并由计算机自动生成合适的计算机程序。CASE工具分成"高级"CASE和"低级"CASE。
l高级CASE工具:用来绘制企业模型以及规定应用要求,
l低级CASE工具:用来生成实际的程序代码。
CASE工具和技术可提高系统分析和程序员工作效率。其重要的技术包括应用生成程序、前端开发过程面向图形的自动化、配置和管理以及寿命周期分析工具。
采用CASE工具辅助开发并不是一种真正意义上的方法,它必须依赖于某一种具体的开发方法,如结构化方法、原型方法、面向对象方法等,一般大型的CASE工具都可以支持。
CASE方法解决问题的基本思路
在前面所介绍的任何一种系统开发方法中,如果自对象系统调查后,系统开发过程中的每一步都可以在一定程度上形成对应关系的话,那么就可以借助于专门研制的软件工具来实现上述一个个的系统开发过程。
这些系统开发过程中的对应关系包括:
结构化方法中的业务流程分析
数据流程分析
功能模块设计
程序实现;
业务功能一览表
数据分析、指标体系
数据/过程分析
数据分布和数据库设计
数据库系统等;
OO方法中的问题抽象
属性、结构和方法定义
对象分类
确定范式
程序实现等。
特点
l解决了从客观世界对象到软件系统的直接映射问题,强有力地支持软件/信息系统开发过程的全过程;
l使结构化方法更加实用;
l自动检测的方法大大在提高了软件的质量;
l使原型化方法和OO方法付诸于实施;
l简化了软件的管理和维护;
l加速了系统的开发过程;
l使开发者从繁杂的分析设计图表和程序编写工作中解放出来;
l使软件的各部分能重复使用;
l产生出统一的标准化的系统文档;
l使软件开发的速度加快而且功能进一步完善;