当前位置:文档之家› 第5讲 结构化生命周期法

第5讲 结构化生命周期法

第5讲结构化生命周期法,快速原型法及其他
快速原型法及其他
设计
板书设计一、快速原型法
二、面向对象的方法
教学过程
课程导入问题讨论:
1、什么是快速原型法?
2、为什么许多管理信息系统开发和应用失败了,原因是什么?
3、面向对象的方法包括哪些?
通过上述问题的讨论,引导学生重视开发方法的学习,对目前各种开发方法从总体上加以了解。

一、快速原型法
信息系统原型,就是一个可以实际运行、可以反复修改、可以不断完善的信息系统。

1、原型法产生的原因
运用结构化系统开发生命周期法的前提条件是要求用户在项目开始初期就非常明确地陈述其需求,需求陈述出现错误,对信息系统开发的影响尤为严重,因此,这种方法不允许失败。

事实上这种要求又难以做到。

人们设想,有一种方法,能够迅速发现需求错误。

当图形用户界面(Graphic User Interface, GUI)出现后,自80年代中期以来,原型法逐步被接受,并成为一种流行的信息系统开发方法。

2、基本思想
原型法(Prototyping Method)是在系统开发初期,凭借系统开发人员对用户需求的了解和系统主要功能的要求,在强有力的软件环境支持下,迅速构造出系统的初始原型,然后与用户一起不断对原型进行修改、完善,直到满足用户需求。

3、开发过程
可行性研究。

对系统开发的意义、费用、时间作出初步的计算,确定系
构成。

对象可由相对比较简单的对象以某种方式组成;
对象由属性和方法组成。

属性(Attribute)反映了对象的信息特征,如特点、值、状态等等.而方法(Method)则是用来定义改变属性状态的各种操作;
对象之间的联系主要是通过传递消息(Message)来实现的,而传递的方式是通过消息模式(Message pattern)和方法所定义的操作过程来完成的;
对象可按其属性进行归类(Class)。

类有一定的结构,类上可以由超类(Superclass),类下可以有子类(Subclass)。

对象或类之间的层次结构是靠继承关系(Inheritance)维系的;
对象是一个被严各模块化了的实体,称之为封装(Encapsulation)。

这种封装了的对象满足软件工程的一切要求,而且可以直接被面向对象的程序设计语言所接受。

4、开发过程
系统调查和需求分析:对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研究,即先弄清要干什么的问题。

分析问题的性质和求解问题:在繁杂的问题域中抽象地识别出对象以及其行为、结构、属性、方法等。

一般称之为面向对象的分析,即OOA。

整理问题:对分析的结果作进一步的抽象、归类、整理,并最终以范式的形式将他们确定下来。

一般称之为面向对象的设计,即OOD。

程序实现:用面向对象的程序设计语言将上一步整理的范式直接映射(即直接用程序设计语言来取代)为应用软件。

一般称之为面向对象的程序,即OOP。

5、评价
OO方法直接反映了人们对客观世界的认知模式。

人类认识客观世界有两个基本过程:一个是从特殊到一般的归纳过程,另一个是从一般到特殊的演绎过程。

从应用设计到解决问题的方案更加抽象化而且具有极强的对应性。

在设计中容易与用户沟通。

把数据和操作封装到对象之中。

设计中产生各式各样的部件,然后由部件组成框架,以至于整个程序。

应用程序具有较好的重用性、易改进、易维护和易扩充。

6、适用范围
流行的开发方法,适用面很广。

三、CASE 介绍
计算机辅助软件工程方法是一种自动化或自动化的系统开发环境,它能够全面支持出系统调查外的给一个开发步骤,使得原来由手工完成的开发过程转变为一自动化工具和支撑环境支持的自动化开发过程。

采用CASE工具进行系统开发,还必须结合某种具体的开发方法,如结构化系统开发方法等。

计算机辅助软件工程方法的特点:
解决了从客观对象到软件系统的映射问题,支持系统开发的全过程。

提高了软件质量和软件重用性。

加快了软件开发速度。

简化了系统开发过程的管理和维护。

自动生成开发过程中的各种文档资料。

CASE是一种开发方法吗?
教学小结系统开发和采用何种开发方法,是管理信息系统开发能否成功的关键。

各种开发方法各有其侧重点,结构化系统开发方法是目前各种开发方法中理论比较严谨、应用比较广泛、成功率比较高的一种开发方法,主要由于其应用了系统的思想和系统工程的工作方式,对于其存在的缺点,可以通过与原型法、面向对象方法结合使用,能够得到较好地克服。

原型法对于了解用户需求、提高用户满意程度、提高开发速度等发面尤其突出的特点,但对于大型复杂系统开发可以作为系统调查分析加以采用。

面向对象方法作为一种全新的开发方法尽管是研究的热点,但在管理实际中如何分析、设计,如何构造对象是相当复杂的一项工作,当前在面向对象的程序方面已经有了长足的进步,难点仍然是面向对象的分析和设计。

其他开发方法有的是针对特定的系统研究出的特殊的开发方法,在实际应用中还广泛,印证其有效性的案例不是很多,CASE严格意义上讲,只是一种自动化的开发技术。

相关主题