第四章管理信息系统开发概述第一节管理信息系统开发的概念第二节管理信息系统开发方法第三节管理信息系统开发方式本章小结管理信息系统开发方法结构化系统开发方法原型法面向对象方法CASE方法敏捷开发方法教学重点:诺兰阶段模型、结构化方法和快速原型法。教学难点:开发方法各自的基本思想、优缺点比较、适用环境。管理信息系统开发方式自行开发委托开发合作开发购买商品化软件等建立信息系统的原因必须建立(法律,政策,上级)•支持商业目标•作为抗衡竞争对手类似系统的手段•支持管理决策•维护现有系统•用户提高效率需求•新的领域(引入新技术)风险管理(StandishGroup成功因素:权重1.用户参与:192.高层领导支持:163.明确的需求说明书:154.适当的计划编制:115.切实实际的预期:106.更小的项目里程碑:97.胜任的工作人员:88.信息所有权:69.清晰的前景和目标:310.努力工作、专注的工作人员:3系统成功和失败的主要原因信息系统发展的阶段论1.信息系统发展的阶段论诺兰阶段模型诺兰在1973年首次提出了信息系统发展阶段理论,到1980年,诺兰又把阶段模型完善扩展为6个阶段,分别是:初装、蔓延、控制、集成、数据管理、成熟初装蔓延控制数据管理成熟诺兰阶段模型集成信息系统发展过程中的六种增长要素计算机硬软件资源、应用方式、计划控制、MIS在组织中的地位、领导模式、用户意识3.1第一节管理信息系统开发的概念管理信息系统开发是指根据管理信息系统要求,在原系统基础上,加上计算机系统的处理限制和用户习惯,建立一个基于计算机的人机系统的过程。管理信息系统开发是实施组织变革、发展与创新,实现组织目标的战略措施。。管理信息系统开发?管理信息系统开发的概念信息系统开发管理策略战略步骤:一步到位?分步走?突破口:自上而下?自下而上?效益点?核心作用:效率?效益?竞争力?开发方式:自行?合作?委托?购置?应用外包?技术选择:大型?小型?高档?低挡?旧技术?新技术?新老系统切换:并行?直接?试验?分段?运营方式:集中?分散?管理重心:技术?功能?流程重组?创新?3.1管理信息系统开发的概念管理信息系统开发策略用系统的思想和系统工程的方法,按照用户至上的原则结构化、模块化,自顶向下(Top__Down)对系统进行分析与设计,自底向上(Bottom__Up)对系统进行编码和测试。一般来说,管理信息系统开发主要有“自顶向下”策略和“自底向上”策略。管理信息系统开发的生命周期规划分析设计编码测试实施维护3.1管理信息系统开发的概念其中结构化方法开发管理信息系统的过程包括系统分析、系统设计和系统实施三个阶段的工作。系统验收通过并交付使用标志着整个系统开发工作的结束。规划规划是管理信息系统开发生命周期的第一个阶段和首要任务。规划是指为拟开发的管理信息系统制定一个可靠的规划。规划阶段的任务主要是分析企业内部和外部的环境,并整体把握企业的愿景、使命、战略、绩效指标及关键成功要素(CriticalSuccessFactors,CSF)。在此基础上,对企业的信息需求架构进行规划,再依据信息需求架构来规划企业的整体信息系统架构和数据管理架构,然后再决定信息技术的基础设施,同时也根据对企业经营管理战略的重要性来决定系统开发先后顺序,并规划相关系统项目开发的时间安排以及资源的配置。3.1管理信息系统开发的概念分析管理信息系统开发生命周期的分析阶段是通过对原有系统存在的问题进行分析,找出解决这些问题的各种方案,评价每种方案的可行性,提出可行性分析报告和用户需求报告。在分析阶段,用户和信息技术专家对原系统进行详细的调查,通过交谈、观察原系统的运行过程,收集各种报告、表格和文档,以及发调查问卷等多种形式,分析并确定系统的优点、缺点和问题,以及用户有哪些信息需求必须被满足。3.1管理信息系统开发的概念系统分析是系统调查的延伸•利用分析工具对系统的信息需求和功能需求作深层的研究•包括:–组织分析–现行系统分析–功能需求分析设计管理信息系统开发生命周期的设计阶段要构建一个如何运行拟开发系统的技术框架。在分析阶段,用户和信息技术专家从逻辑观点出发形成拟开发系统的业务需求,但是没有考虑支持系统的技术或技术框架。在设计阶段,项目小组在接受分析阶段产生的业务需求的基础上,从物理或技术的观点设计系统的技术框架。系统设计工作应该自顶向下地进行,包括总体设计和详细设计两个方面。3.1管理信息系统开发的概念系统设计•用户界面–简单、清晰、合理•数据库设计–实体,属性,E-R图•过程设计–处理流程合理化–代码设计、输入设计、输出设计、模块功能和处理过程设计•系统详细文档说明–子系统划分–设备配置与机器选型–用户界面、数据库设计、过程设计编码在管理信息系统开发生命周期的编码阶段,主要任务是把设计阶段完成的设计报告转换成软件的程序代码。系统分析与设计人员要同程序员一起共同完成每个程序的程序说明书,根据这些说明书,程序员再写出相应的程序代码。程序说明书中要说明每个程序的功能、所使用的编程语言、输入输出的内容与格式、处理的过程与顺序以及必要的控制等。该阶段的标志是从逻辑设计转化到物理实现。3.1管理信息系统开发的概念测试管理信息系统开发生命周期中,测试阶段的主要任务是验证新系统在技术上和业务功能上的正确性。测试是关键的。实施系统测试时,必须进行多种不同类型的测试。一些较为常用的测试方法包括:单元测试:测试独立的代码模块。系统测试:测试代码模块是否正确地集成到整个系统。集成测试:检验独立的系统能否一起工作。客户验收测试:确定系统是否满足业务需求并能使系统用户正确工作。3.1管理信息系统开发的概念实施管理信息系统开发生命周期的实施阶段是指将系统交付给用户使用。当系统投入使用后,用户与系统技术专家要对系统进行全面的评审,以确定新系统是否达到了预想的目的,是否需要一些修正和改进。实施阶段主要包括为用户提供培训、系统转换等项内容。3.1管理信息系统开发的概念维护维护是管理信息系统开发生命周期的最后一个阶段。在系统使用的过程中,由于外在需求的改变、系统效率的不良、系统的错误等原因,都需要对系统进行不定期的修改和维护,以维持系统正常的运行。经过一段时间的维护后,会发现为进一步提高效率,更好地满足用户的要求,要对系统做大量的改造。3.1管理信息系统开发的概念管理信息系统开发方法3.2管理信息系统开发方法在管理信息系统长期建设中,形成了多种具有代表性的系统开发方法。20世纪60—70年代是结构化开发方法(StructuredDevelopmentMethodology,SDM)的时代。80年代初是原型法(PrototypingMethod)时代,80年代末是计算机辅助软件工程方法(ComputerAidedSoftwareEngineering,CASE)和面向对象方法(Object-OrientedMethod)的时代。90年代后,出现了以敏捷开发为代表的新的系统开发方法。管理信息系统开发方法结构化系统开发方法原型法面向对象方法CASE方法敏捷开发方法结构化开发方法结构化开发方法,又称生命周期法(SystemDevelopmentLifeCycle,SDLC),是最老的系统开发方法之一。结构化开发方法按工序将问题化简,将功能实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。3.2管理信息系统开发方法结构化系统开发方法(StructuredSystemAnalysisAndDesign,SSA&D,)又称结构化生命周期法,是在生命周期法基础上发展起来的,是系统分析员、软件工程师、程序员以及最终用户按照用户至上的原则,自顶向下分析与设计和自底向上逐步实施的建立计算机信息系统的一个过程,是组织、管理和控制信息系统开发过程的一种基本框架。1.系统分析提出MIS的逻辑模型,并提交系统分析报告。2.系统设计在逻辑模型基础上建立系统的物理模型,提出系统设计说明书。3.系统实施包括程序设计及调试、新旧系统转换和系统运行与评估等。结构化方法的优缺点结构化方法的优点:阶段的顺序性和依赖性;逐步求精的结构化方法,是一个从抽象到具体的分层实现过程;其开发策略是自顶向下地系统规划、分析与设计和自底向上逐步实施。逻辑设计与物理设计分开,大大提高了系统的正确性、可靠性和可维护性;开发过程标准规范化,文档资料标准化,文档是开发工作的依据,也是维护阶段的重要支持信息;结构化方法的缺点:结构化方法是一种预先定义需求的方法,在实际中,由于用户难以准确地确定并陈述其需求,要做到预先定义需求往往很困难,不现实开发周期长,错误发现越晚,对整个系统的影响就越严重。不直观,用户最后才能看到真实的系统模型,开发人员只能通过技术文档与用户交流。不能较大范围地适应外部环境变化。结构化方法适合大型系统的开发或用户需求非常清晰明确、用户业务流程相对稳定不变的系统。如银行系统业务较成熟、定型,结构化方法被广泛应用于银行系统的开发中。原型法原型法(PrototypingMethod)是20世纪80年代计算机软件技术发展到一定阶段的产物。与结构化开发方法不同,原型法不注重对管理系统进行全面、系统的调查与分析,而是本着系统开发人员对用户需求的理解,利用系统快速生成工具,先快速实现一个原型系统,然后通过反复修改来实现管理信息系统。3.2管理信息系统开发方法原型化开发过程原型法的基本思想原型法的开发过程原型法的特点原型法的思想传统的信息系统开发过程中,一直采用的是严格定义和预先说明的生命周期法。该方法要求系统开发人员和用户在系统开发初期就要对整个系统的功能有全面、深刻的认识,并制订出每一阶段的计划和说明书,以后的工作便围绕这些文档进行。即在系统开发初期(系统建成之前),就可以预先知道用户的最终要求,然后,围绕这一需求进行下一步的分析与设计。若用户的需求不能被预知或被错误的理解了,那么以后的工作就无意义了。目前,许多公司的结构和经营项目在不断变化,这对信息系统提出了更高的要求,即信息系统的开发要快且系统要有灵活性。于是产生了一种新的信息系统开发方法—原型法。原型法的思想基础是:用户和开发人员之间总是存在着这样和那样的隔阂,用户自己不清楚系统的最终需求,或者由于交流上的障碍无法把自己的意图向开发人员完全表达出来。用户只有看到一个具体的系统,才能清楚地了解到自己的需要和系统的缺点。这说明并非所有的需求都能预先定义。因此,系统不能满足用户的要求是常有的事。在系统开发的过程中,大量的反复是必要的、不可避免的,也是使系统具有更强的适应性所要求的。原型法基本思想:是在系统开发初期,凭借系统开发人员对用户需求的了解和系统主要功能的要求,在强有力的软件环境支持下,迅速构造出系统的初始原型并运行之,然后与用户一起不断对原型系统进行修改、扩充、完善,直到完全满足用户需求原型法的开发过程利用原型法开发管理信息系统大致要经过下面几个阶段。可行性研究确定系统的基本要求建造一个原始系统用户和开发人员一起评审用户是否满意是最终产品或作为初步设计参考(文档)否开发人员修改原始系统重新评审可行性研究。确定系统的基本要求。建造系统初始原型。用户和开发人员评审。修改系统原型。开发人员在对原始系统进行修改后,又与用户一起就完成的系统进行评审,如果不满足要求,则要进行下一轮循环,如此反复地进行修改、评审,直到用户满意。完成并交付使用。特点优点原型是动态的,有助于开发人员与用户友好方便交流;有助于发现需求的误解和检验候选方案;能早些提供使用,使用户需求的定义更直观、简单;减少了开发时间,大大提高了系统开发效率;采用“自下而上”的开发策略,易被用户接受。缺点缺乏对系统全面、系统的认识;反复修改要花费人力、物力,若与用户合作不好,盲目修改,会拖延开发过程。原型法适合小型系统开发。面向对象方法面向对象方法(Object-OrientedMethod)是从20世纪80年