系统开发方法和当前发展趋势.doc

上传人:罗晋 文档编号:6060951 上传时间:2020-09-03 格式:DOC 页数:5 大小:26KB
返回 下载 相关 举报
系统开发方法和当前发展趋势.doc_第1页
第1页 / 共5页
系统开发方法和当前发展趋势.doc_第2页
第2页 / 共5页
系统开发方法和当前发展趋势.doc_第3页
第3页 / 共5页
系统开发方法和当前发展趋势.doc_第4页
第4页 / 共5页
系统开发方法和当前发展趋势.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《系统开发方法和当前发展趋势.doc》由会员分享,可在线阅读,更多相关《系统开发方法和当前发展趋势.doc(5页珍藏版)》请在三一文库上搜索。

1、系统开发方法和当前发展趋势朱晓铭 103789103780239 情报学所谓系统开发方法,就是提供完成系统开发生命周期每一步的详细指导,包括具体的模型、工具和技术。按时间过程来分,开发方法分为生命周期法和原型法,实际上还有许多处于中间状态的方法。原型法又按照对原型结果的处理方式分为试验原型法和演进原型法。试验原型法只把原型当成试验工具,试了以后就抛掉,根据试验的结论做出新的系统。演进原型法则把试好的结果保留,成为最终系统的一部分。按照系统的分析要素,可以把开发方法分为三类:面向处理方法(Processing Oriented ,简称PO)。 面向数据方法(Data Oriented ,简称DO

2、)。 面向对象的方法(Object Oriented ,简称OO)。 PO就是指系统分析的出发点在于搞清系统要进行怎样的处理,分为两种:一种是面向功能,由企业的职能出发;一种是面向过程,由企业运营流程出发,划分成一些过程进行处理分析。而DO首先分析企业的信息需求,建立企业的信息模型,然后建立全企业共享的数据库。OO是先分析企业的一些对象,把描述对象的数据和对对象的操作放在一起,如果多个对象共享某些数据和操作,共享的数据和操作就构成了对象类。 现在十分流行的面向过程的系统分析方法,在概念上它是把功能与数据结合,从本质上可以认为是面向对象的方法。如果把面向对象的方法和面向过程的系统分析结合,将会对

3、系统开发的方法注入新的活力。一、常用系统开发方法 1. 基于自顶向下、结构化、生命周期思想的开发方法所谓结构化的设计技术,就是使用结构化的编程,结构化分析和结构化设计技术的系统开发方法。它是一种面向数据流的传统软件开发方法,以数据流为中心构建软件的分析模型和设计模型。结构化系统开发的主要思想是功能分解并逐步求精,当一些任务十分复杂以至无法描述时,可以将它拆分为一系列较小的功能部件,直到这些自完备的子任务小到易于理解的程度。结构化系统开发方法是面向过程的程序设计的方法,是强调开发方法的结构合理性以及所开发软件的结梅合理性的软件开发方法。结构是指系统内各个组成要素之同的相董联系、相互作用的框架。结

4、构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,结构化系统开发方法最先提出了将管理信息系统的开发划分为系统分析、系统设计和系统实施3个阶段。1)系统分析旧的系统(手工或计算机系统)如果不再适应发展变化的环境,就可能提出开发新系统的要求。并做出新系统的开发规划。系统分析是开发工作的第一个阶段,它以开发规划中提出的目标为出发点,包括进行初步的系统调查(包括对开发新系统的可行性进行论证)和详细的系统调查,进行系统化的分析,建立信息系统的逻辑模型。系统分析阶段应写系统分析报告作为下一开发阶段的工作基础。2)系统设计系统设计阶段是为了

5、在系统分析提出的逻辑模型的基础上设计系统的物理模型,其主要包括:代码设计、信息系统流程图设计、数据库设计、处理流程圈设计和编写程序设计说明书。3)系统实施在系统设计阶段建立了系统的物理模型之后,就进入到了系统的实施阶段在系统实施阶段中主要包括程序设计及调试、系统转换及系统运行与评估等环节。这一阶段的成果除了最终实现的管理信息系统外,还包括有关的技术文档(如程序说明书、使用说明书等。这样整个管理信息系统的开发就基本完成。目前的结构化设计方法主要有: 1) 结构化分析设计技术(structured analysis design technique);2) 约当(E. Yourdon)结构化系统开

6、发方法;3) 企业系统规划法(BSP);4) 詹姆斯.马丁(James Martin) 提出的战略数据规划法;5) 我国专家提出的映射模型设计法(RMDM)和信息系统设计工程综合分析法(IDEA);6) 杰克逊提出的JSP(Jackson structured program)和JSD(Jackson system development);7) 哈兰.米尔斯(Harlan D. Mills)提出的系统开发的黑箱(black box)理论及其相应的分析设计方法等。结构化法是基于系统的思想,系统工程的方法,以用户至上为原则,采用结构化、模块化等手段对信息系统进行分析、设计和实施。在实际开发过程中

7、,对应于系统开发的一般过程(见图1),主要应用的结构化设计方法有结构化分析(Structured Analysis),结构化设计(Structured Design),结构化编程(Structured Program)。结构化分析(SA),是一种面向数据流的分析方法,采用结构化分析解决问题主要通过“分解”和“抽象”两种方式。在这一阶段采用了诸如数据流程图(DFD)、数据字典(DD)、处理逻辑表达(PL)、数据存储规范化(NF)及数据立即存取图(DIAD)等工具或理论。通过SA过程就能得到一个系统的抽象的逻辑模型。结构化设计(SD)是对SA阶段提出的逻辑模型进行计划性的设计。通过SD工作过程,尽

8、可能提高系统的运行效率、可变性、可控性和工作质量。SD的工作主要包括代码设计、文件/数据库设计、I/O设计、模块功能设计和处理过程设计。SD提供了一整套设计工具、设计原则和设计策略,采用影射思想由DFD图得到SC图。这样就得到了一个可实施的系统的逻辑模型。结构化程序设计(SP)是采用一些基本的控制结构(IFELSEENDIF、DO WHILEENDDO、DO CASECASEENDDO等)工具,采用自顶向下地扩展、模块化、逐步求精原则从事程序代码设计,以得到一个现实的物理模型。2 原型法原型法基于新一代的系统开发工具和快速开发方法, 主要包括:1) 原型方法及其分支(如瀑布型和快速型方法);2

9、) 计算机辅助软件工程(CASE方法);3) 为建立专用的信息系统开发生成工具的环境,用于定义和生成实际系统的方法。传统的生命周期法(Life Cycle, LC)是指:进行系统分析与设计时,将系统开发过程划分为系统请求、规划、分析、设计、实施、运行等几个阶段,每个阶段首尾相连,形成系统的一个生命周期。 而原型法按过程而言分为以下两种:演进原型法(Evolution,EV): 从一个初型系统不断改进,最后成为一个最终的应用系统。 实验原型法(Expriment Prototyping, EP): 建立真实系统的模型,由局部模型不断实验改进,最后得到整个系统的模型。原型法与传统的生命周期法LC相

10、比摈弃了一步步周密细致地调查、分析、整理文档、再进行逻辑设计、物理设计等繁琐过程而快速构造系统的物理原型。但是,并不能说开发人员用原型法就没有一个分析、设计、实施的过程。实际上开发人员在运用原型法时有意识或无意识地对系统进行了一个分析、设计、比较的过程,才能快速构造一个原型系统,这个原型系统蕴含着开发人员分析、设计、比较的思路,只不过开发人员直接用物理模型表达了对系统的理解,而省却了结构化法中的大量的文档资料。3. 面向对象法的系统开发方法面向对象法(OO)是近年来发展起来的一种系统开发方法, 它与原型方法的设计与实现有一定的共同之处。 不同的是,面向对象法是一种从系统调查分析之后就开始面向对

11、象进行分析的开发方法。它强调系统设计之前的系统分析,强调以系统中的数据或信息为主线,全面、系统、详尽地描述系统的信息,建立系统的信息模型,指导系统的设计。面向对象法按系统开发的一般过程分为面向对象分析(OOA)、面向对象设计(OOD)、面向对象编程(OOP)。OOA试图利用对象(Object)概念,来描述系统做什么;OOD则试图描述怎么做。在OOA和OOD中主要采用了类图/模板(Class_Chart/Template)、对象图(Object_Chart)、对象状态图(Object_Status_Chart)三种工具。OOP利用类(Class)、对象(Object)、数据封装( Data En

12、capsulation )等概念及面向对象语言的继承性、多态性等特性进行程序的编制和调试。二系统开发的发展趋势1. 传统的结构化方法存在的问题传统的软件设计方法往往是用于解决面向过程语言系统的设计问题,主要是基于功能分解或数据分析基础上的结构化方法。这种设计下的系统在7O年代或8O年代早期还可以适应,但在越来越复杂的非数值计算型的软件开发中,在广泛应用图形界面的交互式应用中,在控制要求非常突出的系统中,需求经常适应变动的条件下,传统的软件设计方法往往暴露出了严重的不适应性。例如:和人的自然思维不一致:修改困难;在系统中模块之间的控制作用有重要影响时,容易造成信息传递路径过长,效率低,易受干扰,

13、甚至出错;系统难以维护等。2. 面向对象的开发是当前的主流方法自面向对象程序设计语言Smalltalk一80问世以来,己经成为当今软件开发的主流方法。它是一种新的软件工程方法,新的程序设计范型,其基本技术是使用对象、类、继承、封装和消息等基本概念进行程序设计和实现,基本思想是尽可能地运用人类的自然思维方式来构造软件系统,基本观点是客观世界是由对象组成的。任何客观的事物或实体都是对象,复杂的对象可以由简单的对象组成;具有相同数据和相同操作的对象可以归并为一个类,对象是对象类的一个实例。从一个对象类可以产生许多对象,类可以派生出子类,子类继承父类的全部特性(数据和操作),又可以有自己的新特性。子类

14、和父类之间形成类的层次结构;对象之间通过消息传递相互联系。类具有封装性,它的数据与操作等对于外界是不可见,外界只能通过消息请求进行某些操作,提供所需要的服务。因此, 软件工程学家Coad和Yourdon认为:面向对象= 对象+类+继承+通信。面向对象方法的主要优点:(1) 与人类习惯的思维方法一致。面向对象方法以对象为核心,是按照人们习惯的思维方式建立问题域的模型,这样就能够开发出尽可能直观、自然的表现求解方法的软件系统。(2) 稳定性好。面向对象的软件系统的结构是根据问题领域的模型建立起来的,当对系统的功能需求变化时并不会引起软件结构的整体变化,仅需要作一些局部性的变化。(3) 可重用性好。

15、由于面向对象方法中的对象所固有的封装性和信息隐藏等机理,使得对象内部的实现与外界隔离,具有较强的独立性。因此,对象类提供了比较理想的模块化机制和比较理想的可重用的软件成分。(4) 可维护性好。面向对象的软件系统稳定性比较好,也比较容易理解和修改,而且对面向对象的软件系统进行维护,主要通过从已有类派生出一些新类来实现,所以面向对象的软件系统的可维护性是比较好的。3. 信息系统开发方法发展趋势1)系统开发的自动化信息系统开发时间长、维护工作量大,在开发时可以选用第四代语言,目前的发展方向是采用CASE开发工具。2)系统开发的商品化近年来,软件系统自我开发的工作正在逐步减少,软件系统专业化、商品化的

16、趋势在增加。应当尽量采用成熟的商品化软件,例如采用有关的应用软件、工具软件等,如Oracle公司的Develop/2000、Powersoft的PowerBuilder等。3)混合方法的应用混合方法的基本思想是改善各类工具和技术使其融合在一起。把新思想、方法、工具扩展到其他应用成功的系统中,并不断改进,使其成为一种通用的方法。4)数据库系统将向分布式的方向发展目前使用的数据库大多为集中式,它们终将被用户界面更友好,引入人工智能,采用启发式、自动推理等功能的分布式DB所代替。三结束语首先,从整体架构上来说,人们形象地把结构化系统开发方法比喻为“瀑布模型”是因为它的不可逆性,系统开发的每一个阶段都

17、是在上一个阶段真正完成的基础上才开始下一个阶段的开发的,每一个阶段都是不能违背这个原则,否则在系统开发的过程中就会出现问题,是系统开发无法顺利地完成。而针对面向对象系统开发方法,玻姆(Boehm)在1988年提出了螺旋开发模型,它正是在“瀑布模型”的基础上继承和发展起来的。螺旋开发模型是一个结合了宏观和微观视角(macromicroview)的模型从宏观包括3个阶段:一是分析发现和识别对象;二是设计发明和设计对象;三是实施创建和实现对象。而每个宏观阶段都包含一些微观迭代活动。从问题模型开始,然后是识别对象、不断细化的过程。它从本质上就是迭代的和渐增的,快速原型和反馈环路是必需的标准结构,开发过

18、程就是一次次的迭代反复过程,随着迭代的进行,系统的功能不断完善。其次,从不同的思想方法来构建系统,面向对象系统开发方法相对于结构化系统开发方法有了更符合人类认知的发展,由原来的从过程的模块化角度出发转向从对象也就是客观实体关系的角度出发来开发管理信息系统。人们开始认识世界时,眼里落入的就是各式各样的实体,而我们区分它们主要依靠就是事物各式各样的特征,包括事物不同的结构和特定的行为,而结构化设计方法试图通过信息流及其转换来认识系统,这天生造成了某种障碍。相比之下,面向对象方法则和我们所熟悉的认识世界的方式相吻合,更加的自然。在结构化设计中模块和模块之间的关系,被紧紧局限于信息流,这限制了对模块之

19、间众多关系的表达,也无法体现模块和模块之间其他的众多关系,包含各种各样的结构、行为、依赖、包含(在结构化设计巾这种关系隐含在分层中)、继承、关联关系等。它仅仅解决了模块在封装和信息隐藏方面的问题。而面向对象设计方法。充分挖掘了“关系”的表达方式,可以尽可能地将事物之间复杂的关系予以体现,而这些关系是实现设计的关键。再次,虽然面向对象开发方法是一种实用有效的系统开发方法,但不可否认的是,传统结构化方法依然有其可取之处,功能分解在把握系统整体一局部功能中是其他方法无可代替的,因此应有效吸取传统方法之长处,弥补面向对象开发方法之短处,使面向对象开发方法更合理、更完善,更好地应用于系统开发之中。参考文

20、献:【1】缪淮扣,高晓冒,李刚.结构化方法、面向对象方法和形式方法的比较与结合J. 计算机工程与科学:1999,21(4)【2】李剐,朱关铬,童颊.形式方法与面向对象方法的结合探讨J.计算机工程:1998,24(1)【3】王博,晓龙.面向对象的建模设计拉术与方法M.北京:学苑出版社,1993【4】美Ivar Jacobson,Grady Booch,James Rumbaugh著.周伯生,冯学民,樊东平译.统一软件开发过程.机械工业出版社,2002【5】张莉,周伯庄,葛科,杨顺样,王 云.标准建模语言UML及其支持环境.北京航空航天人学软件工程研究所,2000【6】张维明.信息系统原理与工程M.北京:电子工业出版社,2002【7】(印度)Jibitesh Mishra等.现代信息系统设计方法M.北京:电子工业出版社,2002

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1