管理信息系统-第6章课件_第1页
管理信息系统-第6章课件_第2页
管理信息系统-第6章课件_第3页
管理信息系统-第6章课件_第4页
管理信息系统-第6章课件_第5页
已阅读5页,还剩30页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1)软件危机:开发进度难以预测、成本难以控制、功能难以满足、质量难以保证、产品难以维护。软件危机的出现使得有效的软件开发方法的研究受到重视。许多软件开发方法被提出,形成了软件工程学。软件工程的核心是用工程的方法来进行软件的开发。研究从开发过程和开发技术两个方面展开,提出了软件开发的过程模型和技术方法。6.1概述11)软件危机:开发进度难以预测、成本难以控制、功能难以满足、第6章管理信息系统开发方法6.1概述

6.2常用开发方法

6.3开发策略与开发方式第6章管理信息系统开发方法6.1概述2

软件的质量保证工作不能等到编码阶段结束之后再进行。这是因为:大部分错误是在编码之前造成的(根据Boehm统计,设计错误占软件错误的63%,编码错误占37%)。错误发现与改正得越晚,所付出的代价也越高。6.1概述3软件的质量保证工作不能等到编码阶段结束之后再进行。这是因为6.1概述2)研究开发方法的原因随着管理信息系统应用程度的深入和应用规模的扩大,出现的问题:手工处理信息过程和方法原封不动地“翻译”成软件程序后,常常失败。大型的应用系统应如何合理地组织人力、物力、财力来协调开发。对一个实体组织应如何着手调查分析。一个大型系统应该如何进行系统化的划分。如何才能合理地协调数据和利用信息资源。如何充分发挥现有计算机和通讯设备的处理能力,更好的解决实际管理问题等。6.1概述2)研究开发方法的原因46.1概述3)开发方法的基本目标使管理信息系统正确反映管理需要,满足用户需求,使所开发的管理信息系统为管理决策提供信息支持;有效地管理系统开发过程,加快软件开发速度,提高软件生产效率,降低费用;增强管理信息系统软件产品的功能,提高软件产品的质量;充分利用软件技术,尽快跟上硬件发展速度,从而最大限度地发挥和挖掘硬件的功能;合理组织和充分利用人力、物力和财力等资源。6.1概述3)开发方法的基本目标5系统选型的重要性系统选型的重要性66.1概述4)开发方法的结构体系主流的系统开发方法,其侧重点各有所不同:强调开发过程的组织、管理和控制,属于系统开发生命周期的范畴;强调开发方法的驱动对象,属于方法论的范畴;支持某种方法论的技术,属于技术范畴;系统开发需要在一定的开发环境下运用开发工具来完成,属于系统开发环境/工具研究的范畴。这些方法在一定层面上,从不同的角度提出,但彼此相互联系、相互支持、相互制约,之间的关系从上图四个层次中体现。开发环境/工具位于最底层,说明其他三个层面均离不开开发环境/工具的支持;技术是组成方法学的基本成分。6.1概述4)开发方法的结构体系76.1概述计算机开发方法结构化SDLC原型法面向过程方法(结构化方法)面向数据方法(信息工程方法)面向对象方法(OO方法)可视化技术计算机辅助软件工程软件复用技术其它技术计算机辅助软件工程软件开发环境集成化的项目/程序支持环境中央资源库计算机信息系统开发环境/工具

技术系统开发生命周期(SDLC)方法学:驱动对象的观点6.1概述计算机开发方法结构化原型法面向过程方法面向数据86.2常用开发方法6.2.1结构化系统开发方法1)基本思想结构化系统开发方法(StructuredSystemAnalysisAndDesign,SSA&D)又称结构化生命周期法,是系统分析员、软件工程师、程序员以及最终用户按照用户至上的原则,自顶向下分析与设计和自底向上逐步实施的建立计算机信息系统的一个过程,是组织、管理和控制信息系统开发过程的一种基本框架。6.2常用开发方法6.2.1结构化系统开发方法96.2常用开发方法2)开发过程系统规划阶段:该阶段的范围是整个业务系统,目的是从整个业务的角度出发确定系统的可行性和优先级。系统分析阶段:

其范围是列入开发计划的单个信息系统开发项目。目的是分析业务上存在的问题,定义业务需求。系统设计阶段:

系统设计的目的是设计一个以计算机为基础的技术解决方案以满足用户的业务需求。总体设计的主要任务是构造软件的总体结构;详细设计包括人机界面设计、数据库设计、程序设计。系统实施阶段:

系统实施的目的是组装信息系统技术部件,并最终使信息系统投人运行。如用户手册等。包括的活动有编程、测试、用户培训、新旧系统之间的切换等。系统运行与维护阶段:

目的是对系统进行维护,使之能正常地运作。6.2常用开发方法2)开发过程10瀑布模型示意图

需求分析7%系统设计6%软件编程7%软件测试13%软件维护67%用户要求分析报告系统设计报告源程序测试报告更改要求UAMATMMPUTPUAMPA系统分析员M项目管理员P程序员T高级程序员U

用户瀑布模型示意图需求分析7%系统设计6%软件编程7%软件测试116.2常用开发方法3)开发原理用户的积极参与:用户积极参与信息系统的开发的全过程,是信息系统开发能否成功的一个关键的、绝对必要的因素。严格按划分的阶段和活动进行系统开发:运用系统处理方法,将系统开发的全过程采取“分而治之的策略,将整个系统的开发过程分为一系列“阶段”,然后再将阶段分为一系列的“活动”,将活动划分为更小的、更易于管理和控制的“作业”。设立检查点:在系统开发的每一个阶段均设立检查点,来评估所开发系统的可行性,避免由于系统开发的失败造成更大的损失。文档的标准化:文档标准化是进行良好通信的基础,是提高软件可重用性的有效的手段。6.2常用开发方法3)开发原理126.2常用开发方法4)优点阶段的顺序性和依赖性。前一个阶段的完成是后一个阶段工作的前提和依据,而后一阶段的完成往往又使前一阶段的成果在实现过程中具体了一个层次。从抽象到具体,逐步求精。从时间的进程来看,整个系统的开发过程是一个从抽象到具体的逐层实现的过程,每一阶段的工作,都体现出自顶向下、逐步求精的结构化技术特点。逻辑设计与物理设计分开。即首先进行系统分析,然后进行系统设计,从而大大提高了系统的正确性、可靠性和可维护性。质量保证措施完备。每一个阶段的工作任务完成情况进行审查,对于出现的错误或问题,及时加以解决,不允许转入下一工作阶段,也就是对本阶段工作成果进行评定,使错误较难传递到下一阶段。错误纠正得越早,所造成的损失就越少。6.2常用开发方法4)优点136.2常用开发方法5)缺点它是一种预先定义需求的方法,基本前提是必须能够在早期就冻结用户的需求,只适应于可以在早期阶段就完全确定用户需求的项目。然而在实际中要做到这一点往往是不现实的,用户很难准确地陈述其需求。未能很好地解决系统分析到系统设计之间的过渡,即如何是物理模型如实反映出逻辑模型的要求,通俗地说,就是如何从纸上谈兵到真枪实弹地作战的转变过程。该方法文档的编写工作量极大,随着开发工作的进行,这些文档需要及时更新。6)适用范围该方法适用于一些组织相对稳定、业务处理过程规范、需求明确且在一定时期内不会发生大的变化的大型复杂系统的开发。6.2常用开发方法5)缺点146.2常用开发方法6.2.2原型法信息系统原型,就是一个可以实际运行、可以反复修改、可以不断完善的信息系统。1)原型法产生的原因运用结构化系统开发生命周期法的前提条件是要求用户在项目开始初期就非常明确地陈述其需求,需求陈述出现错误,对信息系统开发的影响尤为严重,因此,这种方法不允许失败。事实上这种要求又难以做到。人们设想,有一种方法,能够迅速发现需求错误。当图形用户界面(GraphicUserInterface,GUI)出现后,自80年代中期以来,原型法逐步被接受,并成为一种流行的信息系统开发方法。6.2常用开发方法6.2.2原型法156.2常用开发方法2)基本思想原型法(PrototypingMethod)是在系统开发初期,凭借系统开发人员对用户需求的了解和系统主要功能的要求,在强有力的软件环境支持下,迅速构造出系统的初始原型,然后与用户一起不断对原型进行修改、完善,直到满足用户需求。3)开发过程可行性研究确定系统的基本要求建造系统初始原型用户和开发人员评审修改系统原型,反复地进行修改、评审,直到用户满意结束6.2常用开发方法2)基本思想16确定用户基本要求构造初始模型评价、使用系统原型用户满意?系统转换、系统维护与评价修改、完善系统原型YN确定用户基本要求构造初始模型评价、使用系统原型用户满意?系统176.2常用开发方法4)优点对系统需求的认识取得突破,确保用户的要求得到较好的满足。改进了用户和系统开发人员的交流方式。开发的系统更加贴近实际,提高了用户的满意程度。降低了系统开发风险,一定程度上减少了开发费用。5)缺点开发工具要求高。解决复杂系统和大型系统很困难。对用户的管理水平要求高。6.2常用开发方法4)优点186.2常用开发方法6)支撑环境方便灵活的关系数据库系统(RDBS)。与RDBS相对应的、方便灵活的数据字典,它具有存储所有实体的功能。与RDBS相对应的快速查询系统,能支持任意非过程化的(即交互定义方式)组合条件的查询。高级的软件工具(如4GLS或信息系统开发生成环境等等),用以支持结构化程序,并且允许采用交互的方式迅速地进行书写和维护,产生任意程序语言的模块(即原型)。非过程比的报告或屏幕生成器,允许设计人员详细定义报告或屏幕输出样本。6.2常用开发方法6)支撑环境196.2常用开发方法7)适用范围原型法的适用范围是比较有限的,对于小型、简单、处理过程比较明确、没有大量运算和逻辑处理过程的系统。其他原型法:丢弃式原型法(Throw-It-AwayPrototypingMethod演化式原型法(EvolutionaryPrototypingMethod)递增式原型法(IncrementalPrototypingMethod)206.2常用开发方法7)适用范围20丢弃式原型法与生命周期法的结合生命周期法可行性研究需求定义确定基本要求构造原型评审满意否?修改NY初步设计详细设计实施维护与评价原型法丢弃式原型法与生命周期法的结合生命周期法可行性研究需求定义确21演化式原型法的开发过程图系统设计系统实施满意否?YN演化(重新设计、实施)最终系统演化式原型法的开发过程图系统设计系统实施满意否?YN演化(重22递增式原型法的开发过程系统总体设计功能子单元全部实现?实现一个功能子单元NY最终系统递增式原型法的开发过程系统总体设计功能子单元实现一个功能子单236.2常用开发方法6.2.3面向对象方法1)面向对象方法(ObjectOriented)产生的原因面向对象的方法把数据和过程包装成为对象,以对象为基础对系统进行分析与设计,为认识事物提供了一种全新的思路和办法,是一种综合性的开发方法。2)基本思想客观世界是由各种各样的对象组成的,每种对象都有各自的内部状态和运动规律,不同对象之间的相互作用和联系就构成了各种不同的系统。对象(Object)是客观世界中的任何事物或人们头脑中的各种概念在计算机程序世界里的抽象表示。是面向对象程序设计的基本元素。6.2常用开发方法6.2.3面向对象方法246.2常用开发方法3)基本概念客观世界由各种“对象”

组成,任何客观事物都是对象,对象是在原事物基础上抽象的结果。任何复杂的事物都可以通过对象的某种组合结构构成。对象可由相对比较简单的对象以某种方式组成;对象由属性和方法组成。属性反映了对象的信息特征,如特点、值、状态等等;而方法则是用来定义改变属性状态的各种操作;对象之间的联系主要是通过传递消息来实现的,而传递的方式是通过消息模式(Messagepattern)和方法所定义的操作过程来完成的;对象可按其属性进行归类。类有一定的结构,类上可以由超类,类下可以有子类。对象或类之间的层次结构是靠继承关系维系的;对象是一个被严格模块化了的实体,称之为封装。这种封装了的对象满足软件工程的一切要求,而且可以直接被面向对象的程序设计语言所接受。6.2常用开发方法3)基本概念256.2常用开发方法4)开发过程系统调查和需求分析:对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研究,即先弄清要干什么的问题。分析问题的性质和求解问题:在繁杂的问题域中抽象地识别出对象以及其行为、结构、属性、方法等。一般称之为面向对象的分析,即OOA。整理问题:对分析的结果作进一步的抽象、归类、整理,并最终以范式的形式将他们确定下来。一般称之为面向对象的设计,即OOD。程序实现:用面向对象的程序设计语言将上一步整理的范式直接映射(即直接用程序设计语言来取代)为应用软件。一般称之为面向对象的程序,即OOP。6.2常用开发方法4)开发过程266.2常用开发方法5)评价OO方法直接反映了人们对客观世界的认知模式。人类认识客观世界有两个基本过程:一个是从特殊到一般的归纳过程,另一个是从一般到特殊的演绎过程。从应用设计到解决问题的方案更加抽象化并具有极强的对应性。在设计中容易与用户沟通。把数据和操作封装到对象之中。设计中产生各式各样的部件,然后由部件组成框架,以至于整个程序。应用程序具有较好的重用性、易改进、易维护和易扩充。6)适用范围流行的开发方法,适用面很广。6.2常用开发方法5)评价276.2常用开发方法6.2.4CASE介绍计算机辅助软件工程方法是一种自动化或自动化的系统开发环境,它能够全面支持出系统调查外的给一个开发步骤,使得原来由手工完成的开发过程转变为一自动化工具和支撑环境支持的自动化开发过程。采用CASE工具进行系统开发,还必须结合某种具体的开发方法,如结构化系统开发方法等。计算机辅助软件工程方法的特点解决了从客观对象到软件系统的映射问题,支持系统开发的全过程。提高了软件质量和软件重用性。加快了软件开发速度。简化了系统开发过程的管理和维护。自动生成开发过程中的各种文档资料。6.2常用开发方法6.2.4CASE介绍286.3开发策略与开发方式6.3.1系统开发的基本条件1)系统开发成功的要素合理地确定系统目标组织系统性队伍从总体上对系统开发进行规划2)基本条件有科学的管理基础领导的重视和员工的积极参与有一支高水平的专业技术队伍有较雄厚的物资基础6.3开发策略与开发方式6.3.1系统开发的基本条296.3开发策略与开发方式6.3.2开发策略根据系统的特点和开发工作的难以程度或者风险的大小,实际开发过程中,开发的过程策略可分为:自上而下:从整体上协调和规划,由全局到局部,由长远到近期,从探索合理的信息流出发来设计系统。自下而上:从现行系统的业务状况出发,先实现各项业务的具体功能,逐步由底层到高层,直至最后形成整个系统。6.3开发策略与开发方式6.3.2开发策略306.3开发策略与开发方式6.3.3开发方式对企业而言,获得管理信息系统的过程就是管理信息系统的开发过程,获得管理信息系统的方式就是管理信息系统的开发方式。管理信息系统的开发方式整体外包购买成熟软件/部分定制/二次开发委托开发合作开发自行开发6.3开发策略与开发方式6.3.3开发方式31各种开发方式的比较

方式比较点整体外包购买成熟软件/部分定制/二次开发委托开发合作开发自行开发见效时间快快较慢较慢较慢费用高较低高较高较低企业自身开发能力不需要需要一点需要一点需要非常需要可维护性好不好不太好好

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论