1、罗洁论文修改中国科学技术大学网络教育学院毕 业 实 习 报 告实 习 题 目: 学 生 姓 名: 专 业: 层 次: 学 号: 实习起止时间: 年 月 日至 年 月 日指 导 教 师: 实 习 单 位: 完成交稿时间: 年 月 日 目 录 管理信息系统的开发方法初议罗洁摘要: 管理信息系统的开发是一个复杂的系统工程,它涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,要受到多方面条件的制约,至今没有一种统一完备的开发方法。在MIS建设的长期实践中,已形成了多种系统开发的方式和方法。在系统开发的早期,由于缺乏系统开发思想,没能形成工程的概念,以至于60年代出现了所谓“软
2、件危机”,也促使了一门新科学“软件工程”的诞生。关键字 一、 概述管理信息系统的开发是一个复杂的系统工程,它涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,要受到多方面条件的制约,至今没有一种统一完备的开发方法。在MIS建设的长期实践中,已形成了多种系统开发的方式和方法。在系统开发的早期,由于缺乏系统开发思想,没能形成工程的概念,以至于60年代出现了所谓“软件危机”,也促使了一门新科学“软件工程”的诞生。管理信息系统工作者对信息系统的开发提出了许多开发方法,但是,每一种开发方法都要遵循相应的开发策略。任何一种开发策略都要明确以下问题:1、系统要解决的问题,如采取何种
3、方式解决组织管理和信息处理方面的问题,对企业提出的新的管理需求该如何满足等。2、系统可行性研究,确定系统所要实现的目标。通过对企业状况的初步调研得出现状分析的结果,然后提出可行性方案并进行论证。系统可行性的研究包括目标和方案卸可行性、技术的可行性、经济方面的可行性和社会影响方面的考虑。 3、系统开发的原则。在系统开发过程中,要遵循领导参与、优化创新、实用高效、处理规范化的原则。4、系统开发前的准备工作,作好开发人员的组织准备和企业基础准备工作。5、 系统开发方法的选择和开发计划的制定。针对己经确定的开发策略选定相应的开发方法,是结构化系统分析和设计方法,还是选择原型法或面向对象的方法。开发计划
4、的制定是要明确系统开发的工作计划、投资计划、工程进度计划和资源利用计划。为了保证系统开发工作的顺利进行,应该根据所开发系统的规模大小、技术的复杂程度、管理水平的高低、技术人员的情况、资金与时间要求等各个方面的不同要求采用不同的开发方式与方法,确保以较小的投入取得最优的效果。MIS开发的要遵循以下基本原则: 实用性原则系统必须满足用户管理上的要求,既保证系统功能的正确性又方便实用,需要友好的用户界面、灵活的功能调度、简便的操作和完善的系统维护措施。 系统性原则在MIS的开发过程中,必须十分注重其功能和数据上的整体性、系统性。 符合软件工程规范的原则MIS的开发是一项复杂的应用软件工程,应该按软件
5、工程的理论、方法和规范去组织与实施。 完善,逐步发展的原则MIS的建立不可能一开始就十分完善和先进,而总是要经历一个逐步完善、逐步发展的过程。在这些原则的指导下,形成了管理信息系统开发的几种开发方法。MIS的开发方法主要有结构化生命周期开发方法、原型法、面向对象的开发方法、CASE方法,及其他一些处于尝试阶段的开发方法。二、开发方法2.1结构化生命周期法1. 结构化的生命周期法是把管理信息系统的生命周期分为系统规划、系统分析、系统设计、系统实施、系统运行与评价5个阶段,每个阶段都有各自的工作任务和工作内容(见图7.2.2),强调用系统的思想、系统工程的方法严格区分上述工作阶段来完成信息系统的整
6、个开发过程,在整个开发过程中强调文档的规范化与标准化。结构化的生命周期法的开发策略是“自顶向下”地完成管理信息系统的规划、分析与设计工作,然后“自底向上”地实现。结构化的生命周期法注重开发过程的整体性和全局性。该方法强调区分每个工作阶段 ,尽量避免各阶段工作的重叠,即在没有进行系统规划之前,不允许进行系统的详细调查研究,没有进行详细的调查研究与分析之前就不允许进行系统设计工作,在没有完成系统详细设计之前就不急于编程序。对其每一阶段规定它的任务、工作流程、管理目标及要编制的文档,使开发工作易于管理和控制,形成一个可操作的规范。1. 结构化生命周期法的主要优点缺点(1) 优点: 建立面向用户的观点
7、 严格区分工作区间 设计方法结构化 文件标准化和文献化 系统维护与评价阶段 (2)缺点: 开发周期长 繁琐,使用工具落后 不能充分预料可能发生的情况及变化 不直观,用户最后才能看到真实模型2 2原形法 1. 严格定义和预先说明的结构化生命周期法的理论基础是严密的,是一种有效而且成熟的方法,它对软件生产实现工程化起了重要的推动作用。但是该方法的前提条件是必须准确地确定系统的需求,只有这样才能得到预期的正确结果。这就要求系统开发人员和用户在系统开发初期对整个系统的功能有全面、深刻的认识,并制定出每一阶段的计划和说明书。然而,对于MIS来讲,由于其问题空间十分庞大,不论开发者在系统分析时采用何种严格
8、的方法描述用户需求,力争准确,但等系统完成后,用户使用时常常会说:“这系统不是我们所需的”,“系统功能仍不完善”,“系统功能上是当时的设想,现在已不适应了”等等。究其根本原因在于需求本身具有模糊性,在系统没有开发到一定程度,用户对系统的理解达不到一定的程度是无法准确地理解用户需求的,这并不是说用户需求捉摸不定,只是说用户需求随着他对系统的理解和加深,是不断完善与变化的。而且采用结构化生命周期法开发管理信息系统周期较长,而当今一些信息系统要求开发快、成本低,且信息系统使用环境经常发生变化,用户需求开发初期难以完全确定,为了解决需求的模糊性、变化性,和缩短系统开发周期,便产生了另一类系统开发方法,
9、即原型法(prototying),又称快速原型法,是随着开发工具软件不断强大及人们希望克服上述不足的背景下产生的与结构化生命周期法思路完全不同的信息系统开发方法。原型(Prototype)是指一个信息系统(或其部分)的工作模型,此模型强调系统的某些特定方面。 此定义的核心是模型这个概念。原型与模型的区别在于定义中的工作二字。一个原型不仅是表示在纸面上的系统,而且是一个在计算机上实现的可操作的模型。 原型法(Prototyping)是指一种达成系统需求的定义的策略,其特征为具有高度的迭代性,在开发进程中有用户的密切参与并且大量使用原型。与传统的结构化的生命周期法相比,快速原型法摒弃了严格区分管理
10、信息系统生命周期各个阶段的方式,而是一开始就凭借开发人员对用户需求的理解,利用强有力的开发工具,实现一个实实在在的系统模型(称为原型),即开发一个不太完善,也不一定完全符合用户需求的管理信息系统(或整个系统的一部分),这个模型表达开发人员对用户要求的理解和他认为系统实现后的形式。然后开发人员和用户一起对这个模型进行评价,并以用户为主对这个模型的不足之处提出改进意见。根据评价结果,开发人员对模型进行修改。如此反复直到用户完全满意为止。 2.原型法的开发过程 : 确定用户的基本需求 开发初始原型 征求用户对原型的改进意见 修正和改进原型 图1.2原型法开发过程 3. 原型法的类型 (1) 丢弃式原
11、型法:丢弃式原型法把原型系统作为用户和开发人员之间进行通讯的媒介,并不打算把它作为实际系统运行。原始系统只是从外观、功能上“像”实际系统。开发这类原型的目的是为了对最终系统进行研究,使用户和开发人员借助这个系统进行交流,共同明确新系统的需求。(2) 演化式原型法:演化式原型法认为用户的要求及系统的功能都无时不在发生着变化,不先花大力气去弄清楚用户的需求,而是先按照基本需求开发出一个系统,让用户先使用起来,有问题随时修改。 (3)(递增(进化)式原型: 递增(进化)式原型是按较准确的用户需求,产生完整的系统,然后不断的修改、完善,直到用户满意,最终完善的原型就是最终系统。这种原型开始时系统有一个
12、总体框架,各功能单元的结构和功能较清楚,但没有具体实现。在以后的开发过程中一个一个的完善这些模块,用递增式方式对各功能模块进行原型法开发,可用于解决需要集成的复杂系统的设计问题。采用递增式原型的前提是系统的组织结构不发生变化,模块的外部功能不发生变化。4.原型法的优点与缺陷 (1)优点: 减少开发时间,提高系统开发效率 改进用户与系统开发人员的信息交流方式 用户满意程度高 应变能力强 (2)缺点: 开发工具要求高 对大型系统或复杂性高的系统不适用 管理水平要求高1.2.3面向对象的开发方法 1.前面讲述的结构化方法等管理信息系统构建方法都是从功能和信息(数据)的角度对系统进行分析和设计,它们最
13、大的缺点是忽略了数据与程序之间不可分割的内在联系,并由此引发了软件危机。面向对象方法(OO,Object Oriented)是从对象的角度对系统进行分析和设计的的方法,是近年来受到关注的一种系统开发方法。面向对象的系统开发方法的基本思想是基于所研究的问题,对问题空间进行自然分割,识别其中的实体及其相互关系,将客观世界抽象地看成是若干相互联系的对象,建立问题空间的信息模型,然后根据对象和方法的特性研制出一套软件工具,使之能够映射为计算机软件系统结构模型和进程,从而实现信息系统的开发。面向对象法与原型方法的设计与实现有一定的共同之处。不同的是,面向对象法是一种从系统调查分析之后就开始面向对象进行分
14、析的开发方法。它强调系统设计之前的系统分析,强调以系统中的数据或信息为主线,全面、系统、详尽地描述系统的信息,建立系统的信息模型,指导系统的设计。面向对象法按系统开发的一般过程分为面向对象分析(OOA)、面向对象设计(OOD)、面向对象编程(OOP)。OOA试图利用对象(Object)概念,来描述系统做什么;OOD则试图描述怎么做。在OOA和OOD中主要采用了类图/模板(Class Diagram /Template)、对象图(Object Diagram)、状态图(Status Diagram)三种工具。OOP利用类(Class)、对象(Object)、数据封装(Data Encapsula
15、tion)等概念及面向对象语言的继承性、多态性等特性进行程序的编制和调试。 2.面向对象的概念和术语 对象: 对象的本质是数据与操作的封装 类 : 类是具有相同属性的对象的集合 消息:消息是为完成某些操作而向对象发送的命令和命令说明 继承:继承是指一个类因承袭而具有另一类的能力和特征的机制 封装:封装把对象及对象的方法、操作的实现封闭在一起 3.面向对象法的开发过程 (1): 系统调查和需求分析对系统面临的具体管理问题以及用户对系统开发的需求进行调查研究,即先弄清要干什么。(2): 分析问题的性质和求解问题在繁杂的问题域中抽象地识别出对象以及其行为、结构、属性、方法等,即面向对象分析OOA。O
16、OA分析方法是建立在对处理对象客观运行状态的信息模拟(实体关系图和语义数据模型)和面向对象程序设计语言的概念基础之上,用OOA分析一个事物时,遵循五个基本步骤:a) 确定对象(object)和类(class):对象是对数据及其处理方式的抽象,反映了系统保存和处理现实世界中某些事物的信息的能力。类是多个对象的共同属性和方法集合的描述,它包括如何在一个类中建立一个新对象的描述。b) 确定结构(structure):结构是指问题域的复杂性和连接关系。类成员结构反映了泛化特化关系,整体部分结构反映整体和局部之间的关系。 c) 确定主题(subject):主题是指事物的总体概貌和总体分析模型。d) 确定
17、属性(attribute):属性就是数据元素,可用来描述对象或分类结构的实例,可在图中给出,并在对象的存储中指定。e) 确定方法(method):方法是在收到消息后必须进行的一些处理方法:方法要在图中定义,并在对象的存储中指定。(3): 面向对象的设计(OOD)面向对象的设计是对分析的结果作进一步地抽象、归类、整理,并最终以范式的形式将它们确定下来,即面向对象设计OOD。OOD是OO方法中的一个中间过渡环节,其主要作用是对OOA分析的结果作进一步的规范化整理,以便能够被OOP直接接受,主要的工作有:a) 对象定义规格的求精过程根据面向对象的概念模型整理分析所确定的对象结构、属性、方法等内容,改
18、正错误的内容,删去不必要和重复的内容等;进行分类整理,以便于下一步数据库设计和程序处理模块设计的需要。整理的方法主要是进行归类,对类-&-对象、属性、方法和结构、主题进行归类。b) 数据模型和数据库设计数据模型设计需要确定类-&-对象属性的内容、消息连接方式、系统访问数据模型的方法等。最后每个对象实例的数据都必须落实到面向对象的库结构模型中。c) 优化从另一个角度对分析结果和处理业务过程的整理归纳,优化包括对象和结构的优化、抽象、集成。(4):面向对象的编程(OOP)用面向对象的程序设计语言将上一步整理的范式直接映射为应用程序软件,即面向对象编程OOP。面向对象的分析和设计是面向对象编程的补充
19、。面向对象编程解决问题的思路是从对象入手,因此面向对象编程需要相应的面向对象的分析和设计方法。 4. 面向对象方法的优点缺点:(1).优点:面向对象法的主要优点是:缩短了开发周期,解决了从分析和设计到软件模块多次转换的繁杂过程。(2).缺点: 面向对象法的主要缺点是:需要有一定的软件基础支持才可以应用,对大型的系统可能会造成系统结构不合理、各部分关系失调等问题。 1.2.4 CASE方法 1. CASE工具是在高级程序设计语言的基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、成文和管理各方面,对软件开发者提供各种不同程度帮助的一类新型的软件环境。 2. CASE的基本功能:1)
20、认识与描述客观系统 协助开发人员认识软件工作的环境与要求、合理地组织与管理系统开发的工作过程。2) 存储及管理开发过程中产生的信息 系统开发中产生大量的信息,结构复杂,数量众多,由工具提供一个信息库和人机界面,有效的管理这些信息。3) 代码的编写或生成 通过各种信息的提供,使用户在较短时间内,半自动地生成所需的代码段落,进行测试、修改。4) 文档的编制或生成 包括文字资料、各种报表、图形。(文档编写是系统开发中十分繁重的工作,费时、费力、很难保持一致。)5) 软件项目的管理 项目管理包括:进度、资源与费用、质量管理3. CASE的一般结构: 图1.3 CASE的一般结构4.CASE方法的优点如
21、下:1) 解决了从客观对象到软件系统的直接映射问题,强有力地支持软件/信息系统开发的全过程。2) 使结构化方法更加实用。3) 自动检测的方法大大提高了软件的质量。4) 使原型化方法和OO方法付诸于实施。5) 简化了软件的管理和维护。6) 加速了系统的开发过程。7) 实现分析设计图表和程序编写自动化,使开发者从繁杂的分析设计图表和程序编写工作中解放出来。8) 使软件的各部分能重复使用。9) 产生出统一的标准化的系统文档。10) 使软件开发的速度加快而且功能进一步完善。总 结系统开发方法是影响系统开发成功的关键因素之一。目前国内外流行的开发方法主要有前面讲述的结构化的生命周期法、快速原型法、面向对
22、象开发方法等,但是无论哪一种方法,都具有其各自的特点与不足,对于开发MIS这样的大型、复杂的系统,严格地按照某一种开发方法是不可取的。实践证明,由于企业的具体情况不同,选用开发方法时不能死搬硬套。有些开发人员在开发的过程中遇到困难和问题时,往往想要寻求一种“最好”的方法,好像有了这种“法宝”就可以抛弃其它方法而一举成功。不管哪种MIS开发方法都有一个分析、设计、实施的过程,这些常用开发方法在一定意义上具有开发过程的统一性。开发人员不论运用哪种方法于实践,只要明白它们具有的一般共性和各自的特性,就能把握系统的开发,工作起来就应心得手了。参考文献: 王知强 清华大学出版社 出版日期:2005-8-1 应玉龙,施庆平 主编 中国水利水电出版社 2006-8-1 彭志忠 山东大学出版社 【书 号】 7560729460 2005 年3月 【版 次】1-1程学先;宋克振;阳亮;程传慧 清华大学出版社 出版日期:2008-2-1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1