《管理信息系统的开发.ppt》由会员分享,可在线阅读,更多相关《管理信息系统的开发.ppt(70页珍藏版)》请在金锄头文库上搜索。
1、管理信息系统管理信息系统3-1第三章第三章 管理信息系统的开发管理信息系统的开发管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发第三章第三章 管理信息系统的开发管理信息系统的开发2-2q管理信息系统开发的条件与原则管理信息系统开发的条件与原则 q管理信息系统的开发方法管理信息系统的开发方法 q管理信息系统开发的过程管理管理信息系统开发的过程管理管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发开发管理信息系统时,首先要选择适宜的开发管理信息系统时,首先要选择适宜的开发方式、合理的结构模式,充分满足开开发方式、合理的结构模式,充分满足开发管理信息
2、系统的基本条件,分析开发过发管理信息系统的基本条件,分析开发过程可能要遇到的各种问题。其次要重视建程可能要遇到的各种问题。其次要重视建立开发机构,开发人员分工明确,责任到立开发机构,开发人员分工明确,责任到人。人。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发信息系统开发失败的原因信息系统开发失败的原因 1、没有建立信息系统开发的目标体系:、没有建立信息系统开发的目标体系: 仅仅想以计算机系统代替人工系统。仅仅想以计算机系统代替人工系统。 2、缺少、缺少“用户至上用户至上”观点:观点: 仅仅作为一个技术系统开发,而不是一个管仅仅作为一个技术系统开发,而不是一个管
3、理应用系统。理应用系统。 3、开发人员与用户无法有效沟通:、开发人员与用户无法有效沟通: 专业背景不同及无有效的沟通工具。专业背景不同及无有效的沟通工具。 4、开发过程没有明确的阶段与分工:、开发过程没有明确的阶段与分工: 信息系统是一个涉及面广,技术复杂的系统。信息系统是一个涉及面广,技术复杂的系统。 一着手马上开始编程。一着手马上开始编程。 5、不留开发文档:、不留开发文档: 导致系统修改维护工作无法进行。导致系统修改维护工作无法进行。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发使管理信息系统正确反映管理需要,满足用户需使管理信息系统正确反映管理需要,满足用户
4、需求,使所开发的管理信息系统为管理决策提供信求,使所开发的管理信息系统为管理决策提供信息支持;息支持; 有效地管理系统开发过程,加快软件开发速度,有效地管理系统开发过程,加快软件开发速度,提高软件生产效率,降低费用;提高软件生产效率,降低费用; 增强管理信息系统软件产品的功能,提高软件产增强管理信息系统软件产品的功能,提高软件产品的质量;品的质量; 充分利用软件技术,尽快跟上硬件发展速度,从充分利用软件技术,尽快跟上硬件发展速度,从而最大限度地发挥和挖掘硬件的功能;而最大限度地发挥和挖掘硬件的功能; 合理组织和充分利用人力、物力和财力等资源。合理组织和充分利用人力、物力和财力等资源。开发方法的
5、基本目标开发方法的基本目标 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.1 管理信息系统开发的管理信息系统开发的组织实施组织实施2-6q 领导的重视与业务部门的支持领导的重视与业务部门的支持领导的重视和员工的积极参与。领导最领导的重视和员工的积极参与。领导最熟悉清楚自己面临的问题,最能合理地确熟悉清楚自己面临的问题,最能合理地确定系统目标,拥有实现自己目标的人、财、定系统目标,拥有实现自己目标的人、财、物的调配权,能够决定投资、调整机构,物的调配权,能够决定投资、调整机构,确定应用程度等。员工是信息系统建设不确定应用程度等。员工是信息系统建设不可缺少的力量,他
6、们的业务水平、工作习可缺少的力量,他们的业务水平、工作习惯、对新系统的积极性直接影响效果。惯、对新系统的积极性直接影响效果。 管理信息系统开发的条件管理信息系统开发的条件管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发2-7管理工作程序化管理工作程序化 管理业务标准化管理业务标准化基础数据管理制度化基础数据管理制度化 报表文件统一化报表文件统一化 数据资料代码化数据资料代码化q 建立一支专业队伍建立一支专业队伍项目领导者的培训项目领导者的培训开发人员的学习和培训开发人员的学习和培训使用人员的培训使用人员的培训q 具备一定的资金能力具备一定的资金能力 q 具有一定科学管
7、理工作基础具有一定科学管理工作基础: :组织中所应用的管理理论组织中所应用的管理理论与方法与组织的实际结合;组织有合理的管理体制和科学与方法与组织的实际结合;组织有合理的管理体制和科学的管理方法、完善的规章制度、管理工作标准化、稳定的管理方法、完善的规章制度、管理工作标准化、稳定的作业秩序、完整准确的原始数据。的作业秩序、完整准确的原始数据。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.1 管理信息系统开发的管理信息系统开发的组织实施组织实施2-8管理信息系统开发的原则管理信息系统开发的原则创新原则创新原则 面向用户原则面向用户原则整体性原则整体性原则 相关性
8、原则相关性原则 动态适应性原则动态适应性原则 工程化、标准化原则工程化、标准化原则 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-9系统开发方法的演变系统开发方法的演变q 7070年代年代开发环境:开发环境:=第三代语言(COBOL)用于编程=已有数据库管理系统用于数据管理=联机处理和批处理混合使用=主要针对主干机开发=只由专业程序员进行程序开发=利用标准符号来说明过程=用户只在定义需求阶段和安装阶段介入开发=企图用结构化的程序设计方法和自动化的项目管理开发方法:开发方法:系统需求系统需求软件需求软件需求初步设
9、计初步设计详细设计详细设计编程调试编程调试测试运行测试运行运行维护运行维护著名的著名的“瀑布模型瀑布模型”“瀑布模型瀑布模型”说明需求、说明需求、设计、实现设计、实现和测试要不和测试要不断循环进行断循环进行管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-10系统开发方法的演变系统开发方法的演变q 8080年代初年代初开发环境逐渐成熟,出现了面向问题的第四代语言(开发环境逐渐成熟,出现了面向问题的第四代语言(4 4GLGL),),也产生了另一种开发方法,即原型法(也产生了另一种开发方法,即原型法(prototypi
10、ngprototyping)。)。生命周期法是在开发前,完全定义好需求,然后经过生命周期法是在开发前,完全定义好需求,然后经过分析、设计、编程和实施,一次全面的完成目标。分析、设计、编程和实施,一次全面的完成目标。(是单次的)(是单次的)原型法是在未定义好全局前,先抓住局部设计实现,原型法是在未定义好全局前,先抓住局部设计实现,然后不断修改,达到全面满足要求。(多重循环的)然后不断修改,达到全面满足要求。(多重循环的)进行原型法开发要求语言具有很强的交互能力。进行原型法开发要求语言具有很强的交互能力。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统
11、的管理信息系统的开发方法开发方法2-11q 8080年代末年代末-90-90年代初年代初 计算机辅助软件工程(computer aided software engineering , CASE)和面向对象(object- oriented , OO)的开发方法得到很大发展。 面向对象的方法在80年代初已用于计算机科学,80年代末开始用于企业系统。90年代初,面向对象的分析与设计和面向对象的语言开始实际应用。 客户/服务器(client/server)的时代,或基于Web 的开发时代。客户大多买现成的软件部件,自己或请顾问公司把它们集成起来,这就是系统集成或基于部件的开发。90年代中后期这种趋
12、势越来越明显。q 90 90年代年代q 8080年代末年代末-90-90年代初年代初系统开发方法的演变系统开发方法的演变管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发系统开发方法体系系统开发方法体系系统开发方法体系系统开发方法体系结构图结构图结构图结构图计算机辅助软件工程计算机辅助软件工程技术技术计算机开发方法计算机开发方法生命周期法生命周期法(LC)原型法原型法面向过程方法面向过程方法(结构化方法)(结构化方法)面向数据方法面向数据方法(信息工程方法)(信息工程方法)面向对象方法面向对象方法(OO方法)方法)计算机信息系统开发环境计算机信息系统开发环境 / 工具工
13、具系统开发生命周期系统开发生命周期方法学驱动方法学驱动可视化技术可视化技术计算机辅助软计算机辅助软件工程件工程软件复用技术软件复用技术其他技术其他技术软件开发环境软件开发环境集成化的项目集成化的项目/ 程序支持环境程序支持环境中央资源库中央资源库管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-13结构化系统开发方法结构化系统开发方法( (SSA&D ) 结构化系统开发方法是自顶向下的结构化方法、工结构化系统开发方法是自顶向下的结构化方法、工程化的系统开发方法和生命周期法的结合。是迄今为止程化的系统开发方法和生命周
14、期法的结合。是迄今为止开发方法中应用最普遍、最成熟的一种。开发方法中应用最普遍、最成熟的一种。 (structured system analysis and design ) 用系统工程的思想和工程化的方法,按用户至上用系统工程的思想和工程化的方法,按用户至上的原则,结构化,模块化,自顶向下地对系统进行分的原则,结构化,模块化,自顶向下地对系统进行分析与设计。就是先将整个信息系统开发过程划分出若析与设计。就是先将整个信息系统开发过程划分出若干相对独立的阶段,如系统规划、系统分析、系统设干相对独立的阶段,如系统规划、系统分析、系统设计、系统实施等。计、系统实施等。q 基本思想基本思想管管理理信
15、信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-14结构化系统开发方法结构化系统开发方法( (SSA&D ) (structured system analysis and design )q 系统开发的生命周期系统开发的生命周期用结构化系统开发方法开发一个系统,将整个开发过程用结构化系统开发方法开发一个系统,将整个开发过程划分为首尾相连接的若干个阶段,称为系统开发的生命划分为首尾相连接的若干个阶段,称为系统开发的生命周期(周期(life cyclelife cycle)。)。一般将其划分为三阶段、四阶段、五阶段或六阶段。
16、一般将其划分为三阶段、四阶段、五阶段或六阶段。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-15结构化系统开发方法结构化系统开发方法( (SSA&D ) (structured system analysis and design )(1 1)三阶段划分)三阶段划分 原原 系系 统统 新系统新系统系统分析系统分析系统设计系统设计系统实施系统实施系统分析报告系统分析报告系统设计报告系统设计报告可运行系统可运行系统 用户手册用户手册任务书任务书SPSASDSPSASDSPSASDq 系统开发的生命周期系统开发的生命
17、周期管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-16结构化系统开发方法结构化系统开发方法( (SSA&D ) (structured system analysis and design )q 系统开发的生命周期系统开发的生命周期开发开发请求请求系统系统评价评价初步初步调查调查可行可行性性研究研究审批审批详细详细调查调查逻辑逻辑设计设计审查审查总体总体设计设计详细详细设计设计审查审查编程编程调试调试系统系统转换转换验收验收系统系统维护维护系统规划系统规划系统分析系统分析系统设计系统设计系统实施系统实施系统运行
18、于维护系统运行于维护(2 2)五阶段划分)五阶段划分 系统规划系统规划系统分析系统分析系统设计系统设计系统实施系统实施系统运行与维护系统运行与维护管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-17 (structured system analysis and design )(3 3 3 3)六阶段划分)六阶段划分)六阶段划分)六阶段划分 阶阶 段段 基基 本本 任任 务务总体设计(模块、硬件配置设计)总体设计(模块、硬件配置设计)详细设计详细设计( (代码代码. .数据库数据库. .输入输入. .输出输出.
19、 .处理过程处理过程) ) 初步调查初步调查 系统开发的可行性研究系统开发的可行性研究 编写可行性报告编写可行性报告 审批立项审批立项 制定开发计划制定开发计划程序模块测试程序模块测试 功能模块测试、子系统调试功能模块测试、子系统调试系统联调系统联调 系统测试系统测试 试运行试运行可行性研究可行性研究与开发计划与开发计划系统设计系统设计系统实施系统实施系统分析系统分析系统运行系统运行系统调试系统调试与测试与测试 详细调查详细调查 分析用户环境分析用户环境. .需求需求. .流程流程. .数据结构数据结构 确定系统目标与功能确定系统目标与功能 开发新系统逻辑模型开发新系统逻辑模型完成程序编制完成
20、程序编制移交运行移交运行 硬件软件维护硬件软件维护 系统评价系统评价结构化系统开发方法结构化系统开发方法( (SSA&D )q 系统开发的生命周期系统开发的生命周期管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发2.3 管理信息系统的管理信息系统的开发方法开发方法2-18q 结构化系统开发方法的优缺点结构化系统开发方法的优缺点(1 1)优点)优点n开发过程阶段清楚,任务明确,并有标准的图、表、说明等开发过程阶段清楚,任务明确,并有标准的图、表、说明等组成各阶段的文档资料。组成各阶段的文档资料。n吸收用户单位的管理人员和业务人员参加,每个阶段的成果吸收用户单位的管理人员
21、和业务人员参加,每个阶段的成果都经用户审批。都经用户审批。n采用系统观点和系统工程方法,自顶向下进行分析与设计并采用系统观点和系统工程方法,自顶向下进行分析与设计并自下而上进行实施,强调系统的整体性。自下而上进行实施,强调系统的整体性。n逻辑设计与物理设计分开。逻辑设计与物理设计分开。(2 2)缺点)缺点n 起点低,开发周期长起点低,开发周期长n 文档规格说明难以完善文档规格说明难以完善n 用户需求模糊,易变用户需求模糊,易变结构化系统开发方法结构化系统开发方法( (SSA&D )管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发结构化系统开发方法结构化系统开发方法(
22、(SSA&D )开发原理用户的积极参与:用户积极参与信息系统的开发的全过用户的积极参与:用户积极参与信息系统的开发的全过程,是信息系统开发能否成功的一个关键的、绝对必要程,是信息系统开发能否成功的一个关键的、绝对必要的因素。的因素。严格按划分的阶段和活动进行系统开发:运用系统处理严格按划分的阶段和活动进行系统开发:运用系统处理方法,将系统开发的全过程采取方法,将系统开发的全过程采取“分而治之(分而治之(Divide and conquer)的策略,将整个系统的开发过程分为一)的策略,将整个系统的开发过程分为一系列系列“阶段(阶段(Phases)”,然后再将阶段分为一系列,然后再将阶段分为一系列
23、的的“活动(活动(Activities)”,将活动划分为更小的、更,将活动划分为更小的、更易于管理和控制的易于管理和控制的“作业(作业(Task)”。设立检查点(设立检查点(Check point):在系统开发的每一个阶):在系统开发的每一个阶段均设立检查点,来评估所开发系统的可行性,避免由段均设立检查点,来评估所开发系统的可行性,避免由于系统开发的失败造成更大的损失。于系统开发的失败造成更大的损失。文档的标准化:文档标准化是进行良好通信的基础,是文档的标准化:文档标准化是进行良好通信的基础,是提高软件可重用性的有效的手段。提高软件可重用性的有效的手段。管管理理信信息息系系统统第第三三章章 管
24、管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-20原型法原型法q 原型法的基本思想原型法的基本思想 系统开发者在初步了解用户需求的基础上,快速构造系统开发系统开发者在初步了解用户需求的基础上,快速构造系统开发的初步模型原型。这个原型可能是粗糙的、不完善的,经用户的初步模型原型。这个原型可能是粗糙的、不完善的,经用户和开发人员共同研讨、改进和完善,提出修改方案。开发人员根据和开发人员共同研讨、改进和完善,提出修改方案。开发人员根据修改方案对原型进行修改,得到新的原型,再去征求用户意见,反修改方案对原型进行修改,得到新的原型,再去征求用户意见,反复多次直
25、到取得满意的原型为止。复多次直到取得满意的原型为止。 在建筑学和机械设计中,在建筑学和机械设计中,“原型原型”指的是其结构、大小和功能指的是其结构、大小和功能都与某个物体相类似的模拟该物体的原始模型。在管理信息系统开都与某个物体相类似的模拟该物体的原始模型。在管理信息系统开发中,用发中,用“原型原型”来形象地表示系统的一个早期可运行版本,它能来形象地表示系统的一个早期可运行版本,它能反映新系统的部分重要功能和特征。反映新系统的部分重要功能和特征。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发原型法适应的系统原型法适应的系统1、预先指定的系统:、预先指定的系统:系统的
26、需求比较稳定而系统的需求比较稳定而且能够预先指定且能够预先指定2、用户驱动系统:用户驱动系统:系统的需求是模糊的或随系统的需求是模糊的或随时间变化的,通常在安装运行之后,还会时间变化的,通常在安装运行之后,还会由用户驱动对需求进行动态修改。由用户驱动对需求进行动态修改。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-22原型法原型法q 原型法的工作流程原型法的工作流程用户提出要求用户提出要求识别归纳问题识别归纳问题开发系统原型开发系统原型分析评价分析评价不满意不满意修改原型修改原型运行系统原型运行系统原型不可行不
27、可行运行管理运行管理满意满意q 原型法开发的条件原型法开发的条件开发周期必须短且成本低开发周期必须短且成本低要求用户参与评价原型要求用户参与评价原型原型必须是可运行的原型必须是可运行的原型要易于修改原型要易于修改管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-23原型法原型法q 原型法的软件支持环境原型法的软件支持环境方便灵活的关系数据库系统(方便灵活的关系数据库系统(RDBS);与与RDBS相对应的、方便灵活的数据字典描述工具;相对应的、方便灵活的数据字典描述工具;与与RDBS相对应的快速查询系统;相对应的快速
28、查询系统;用以支持结构化程序的软件工具;用以支持结构化程序的软件工具;非过程化的报告或屏幕生成器;非过程化的报告或屏幕生成器;自动文档编排功能。自动文档编排功能。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发原型法的模型原型法的模型1 1研究探索原型研究探索原型这种途径关心的基本问题是这种途径关心的基本问题是如何进行系统开发如何进行系统开发人员与用户之间的交流合作人员与用户之间的交流合作。特别在软件开发。特别在软件开发的早期这是很有用的。的早期这是很有用的。通常,开发人员对应用领域了解很少,而用户通常,开发人员对应用领域了解很少,而用户对计算机能为他们干些什么也毫无
29、概念。在这对计算机能为他们干些什么也毫无概念。在这种情况下,用一次实际演示来表演可能实现的种情况下,用一次实际演示来表演可能实现的系统功能,可以促使大家提出积极的意见,并系统功能,可以促使大家提出积极的意见,并导致参加的各方进行建设性的合作。这样的一导致参加的各方进行建设性的合作。这样的一次演示不应当排斥任何一种特定的方案,而应次演示不应当排斥任何一种特定的方案,而应能表示出不同方案的特点,进而对其优缺点进能表示出不同方案的特点,进而对其优缺点进行讨论。行讨论。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发2实验性原型这种方法通常是根据针对用户的问题的某种方这种方法
30、通常是根据针对用户的问题的某种方案做出原型以供实验评估。案做出原型以供实验评估。 实验性原型方法有以下几种可供选择的不同实验性原型方法有以下几种可供选择的不同策略方案:策略方案: (1) 人机接口模拟。人机接口模拟。 (2) 全功能模拟。全功能模拟。 (3) 框架程序设计。框架程序设计。 (4) 基本机器构造基本机器构造 (5) 部分功能模拟。部分功能模拟。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发 3 3演进性原型方法演进性原型方法 对演进性原型方法来说,一方面它是最强有力的原型化对演进性原型方法来说,一方面它是最强有力的原型化方法,另一方面也是最脱离原型方法
31、本意的。方法,另一方面也是最脱离原型方法本意的。 有人认为不该把它看作原型方法,而应看成按版本开发。有人认为不该把它看作原型方法,而应看成按版本开发。 演进型方法是建立在以下经验基础上的:与交互式应用演进型方法是建立在以下经验基础上的:与交互式应用系统有关的机构是逐渐形成的,因此就不断产生新的用户需系统有关的机构是逐渐形成的,因此就不断产生新的用户需求求; 一旦使用交互式应用系统之后,就改变了自身的使用环一旦使用交互式应用系统之后,就改变了自身的使用环境,因而本身也提出新的需求。境,因而本身也提出新的需求。 按循环发生的程度,分为以下两种形式:按循环发生的程度,分为以下两种形式: (1) 增式
32、系统开发。这种开发形式是通过对基本系统原型增式系统开发。这种开发形式是通过对基本系统原型的逐步扩充而获得对复杂问题的解决。的逐步扩充而获得对复杂问题的解决。 (2)演进式系统开发。这种方法把软件开发在总体上看演进式系统开发。这种方法把软件开发在总体上看成一系列循环,即重新设计、重新实现、重新评估。成一系列循环,即重新设计、重新实现、重新评估。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-27原型法原型法q 原型法的特点原型法的特点从认识论的角度看,原型方法更多地遵循了人们认从认识论的角度看,原型方法更多地遵循了
33、人们认识事物的规律,因而更容易为识事物的规律,因而更容易为 人们所普遍接受;人们所普遍接受;原型方法将模拟的手段引入系统分析的初期阶段,原型方法将模拟的手段引入系统分析的初期阶段,沟通了人们的思想,缩短了用户和系统分析人员之沟通了人们的思想,缩短了用户和系统分析人员之间的距离,解决了结构化方法中最难以解决的一环。间的距离,解决了结构化方法中最难以解决的一环。充分利用了最新的软件工具,摆脱了老一套工作方充分利用了最新的软件工具,摆脱了老一套工作方法,使系统开发的时间、费用大大地减少,效率、法,使系统开发的时间、费用大大地减少,效率、技术等方面都大大地提高。技术等方面都大大地提高。管管理理信信息息
34、系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-28原型法原型法q 原型法的适用方式原型法的适用方式探索型:针对开发目标模糊,用户和开发人员都缺乏经验。探索型:针对开发目标模糊,用户和开发人员都缺乏经验。实验型:大规模开发和实现之前的考核、验证。实验型:大规模开发和实现之前的考核、验证。演化型:易于变化,可不断改变原型。演化型:易于变化,可不断改变原型。(1)对于大型系统,若不经过系统分析进行整体性划分,而直接对于大型系统,若不经过系统分析进行整体性划分,而直接用屏幕来一个一个地模拟是很困难的。用屏幕来一个一个地模拟是很困难的。
35、(2)对于大量运算的、逻辑性较强的程序模块,原型法很难构造)对于大量运算的、逻辑性较强的程序模块,原型法很难构造出模型来供人评价;出模型来供人评价;(3)对于原基础管理不善、信息处理过程混乱的问题,是拥有一)对于原基础管理不善、信息处理过程混乱的问题,是拥有一定的困难。定的困难。(4)对于一个批处理系统,其大部分是内部处理过程,用原型法)对于一个批处理系统,其大部分是内部处理过程,用原型法有一定的困难。有一定的困难。q 原型法的适用原型法的适用范围和局限性范围和局限性管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2
36、-29面向对象的方法面向对象的方法(Object Oriented, OO )q 基本思想基本思想 基于所研究的问题,对问题空间(软件域)进行自然分割,识别基于所研究的问题,对问题空间(软件域)进行自然分割,识别其中的对象及其相互关系,建立问题空间的信息模型,在此基础上进其中的对象及其相互关系,建立问题空间的信息模型,在此基础上进行系统设计,用对应对象和关系的软件模块构造系统。使系统的开发行系统设计,用对应对象和关系的软件模块构造系统。使系统的开发过程能像过程能像硬件组装硬件组装那样,由那样,由“软件集成块软件集成块”来构筑。来构筑。对象:对象: 当设计和实现一个信息系统时,如能在满足需求的条
37、件下,把系当设计和实现一个信息系统时,如能在满足需求的条件下,把系统设计成由一些不可变的(相对固定)部分组成的最小集合,这个设统设计成由一些不可变的(相对固定)部分组成的最小集合,这个设计就是最好的。它把握了事物的本质,因而不再会被周围环境(物理计就是最好的。它把握了事物的本质,因而不再会被周围环境(物理环境和管理模式)的变化以及用户没完没了的需求变化所左右。这些环境和管理模式)的变化以及用户没完没了的需求变化所左右。这些不可变的部分就是所谓的对象。不可变的部分就是所谓的对象。 客观世界是由各种各样的对象组成的,对象是一个独立存在的客观世界是由各种各样的对象组成的,对象是一个独立存在的实体,从
38、外部可以了解它的功能,但其内部细节是实体,从外部可以了解它的功能,但其内部细节是“隐蔽隐蔽”的,它的,它不受外界干扰。每种对象都有各自的内部状态和运动规律,不同的不受外界干扰。每种对象都有各自的内部状态和运动规律,不同的对象之间相互作用和联系构成了各种不同的系统。对象之间相互作用和联系构成了各种不同的系统。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-30面向对象的方法面向对象的方法(Object Oriented, OO )q 面向对象方法的进一步解释 (1)客观事物都是由)客观事物都是由对象对象组成的组成的
39、(任何复杂的事物都可以通过对象的某种组合构成 ) (2)对对象象由由属属性性和和方方法法组组成成(属性反映了对象的信息特征,如:特点、值、状态等,方法则是用来定义改变属性状态的各种操作 ) (3)对对象象之之间间的的联联系系通通过过传传递递消消息息来来实实现现( 传递消息的方式是通过消息模式和方法所定义的操作过程来完成的) (4)对对象象可可按按其其属属性性进进行行归归类类(类有一定的结构,类上可以有超类,类下可以有子类,这种对象或类之间的层次结构是靠继承关系维系着的) (5)对对象象是是被被封封装装的的实实体体(封装指严格的模块化。这种封装了的对象满足软件工程的一切要求,而且可以直接被面向对
40、象的程序设计语言所接受 )管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法 面向对象的概念对象对象对象对象(Object)(Object)(Object)(Object) 类类类类(ClassClassClassClass)消息消息消息消息(Information)(Information)(Information)(Information)多态性多态性多态性多态性(Polymorphism)(Polymorphism)(Polymorphism)(Polymorphism)继承继承继承继承(InheritanceI
41、nheritanceInheritanceInheritance)永久对象永久对象永久对象永久对象(Persistent object)(Persistent object)(Persistent object)(Persistent object)管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-32面向对象系统的开发过程面向对象系统的开发过程 q 面向对象的系统开发生命周期面向对象的系统开发生命周期(1)分析阶段()分析阶段( Object Oriented Analysis ,OOA) 从问题域中选出词汇,建
42、立类和对象的模型世界。从问题域中选出词汇,建立类和对象的模型世界。(2)设计阶段()设计阶段(Object Oriented Design, OOD) 对问题域的行为进行关键抽象再分解的过程。对问题域的行为进行关键抽象再分解的过程。(3)演化阶段演化阶段 面向对象程序设计(面向对象程序设计( Object Oriented Programming , OOP )、测试和集成组合在一起的阶段。)、测试和集成组合在一起的阶段。 (4)维护阶段维护阶段 是系统提交运行之后的变更活动。是系统提交运行之后的变更活动。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信
43、息系统的管理信息系统的开发方法开发方法2-33面向对象方法的评价面向对象方法的评价 特点:特点:q需要一个详细的需求分析报告需要一个详细的需求分析报告 q从小到大,自下而上的分析过程从小到大,自下而上的分析过程 q完成从对象客体的描述到软件结构之间的转换完成从对象客体的描述到软件结构之间的转换 q必须与其他方法综合运用才能充分发挥其优势必须与其他方法综合运用才能充分发挥其优势 面向对象方法的出发点和所追求的基本目标是使分析、设计面向对象方法的出发点和所追求的基本目标是使分析、设计和实现一个系统的方法尽可能接近人们认识一个系统的方法,和实现一个系统的方法尽可能接近人们认识一个系统的方法,也就是使
44、描述问题的问题空间和解决问题的方法空间在结构也就是使描述问题的问题空间和解决问题的方法空间在结构上尽可能一致。上尽可能一致。使设计出的软件尽可能直接地描述现实世界,构造出模块化使设计出的软件尽可能直接地描述现实世界,构造出模块化的、可重用的、应变能力和维护性好的软件,并达到控制软的、可重用的、应变能力和维护性好的软件,并达到控制软件的复杂性和降低开发维护费用的目的件的复杂性和降低开发维护费用的目的。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发1 1 1 1、获取用户基本需求、获取用户基本需求、获取用户基本需求、获取用户基本需求用用户户与与开开发发者者之之间间进进
45、行行充充分分交交流流,常常用用User User casecase来来收收集集和和描描述述用用户户的的需需求求。即即先先标标识识使使用用该该系系统统的的不不同同的的行行为为者者(actor)(actor)。 OOA的分析过程获取用户基本需求获取用户基本需求获取用户基本需求获取用户基本需求标识类和对象标识类和对象标识类和对象标识类和对象定义类的结构和层次定义类的结构和层次定义类的结构和层次定义类的结构和层次表示类表示类表示类表示类( ( ( (对象对象对象对象) ) ) )间的关系间的关系间的关系间的关系为对象行为建模为对象行为建模为对象行为建模为对象行为建模 行为者所提出的每个使用场景(或功能
46、)称为一个用例,行为者所提出的每个使用场景(或功能)称为一个用例,所有的用例则构成完整的系统需求。所有的用例则构成完整的系统需求。OOA分析过程管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发2 2 2 2、标识类和对象、标识类和对象、标识类和对象、标识类和对象标标标标识识识识类类类类与与与与对对对对象象象象是是是是一一一一致致致致的的的的。在在确确定定系系统统的的用用例例后后,可可标标识识类类及类的属性和操作。及类的属性和操作。确定最终对象确定最终对象确定最终对象确定最终对象 可可可可根根根根据据据据以以以以下下下下原原原原则则则则确确确确定定定定:需需需需要要要要
47、保保保保留留留留的的的的信信信信息息息息,需需需需要要要要的的的的服服服服务务务务,具有多个属性,具有公共属性及操作。具有多个属性,具有公共属性及操作。具有多个属性,具有公共属性及操作。具有多个属性,具有公共属性及操作。从问题域或用例描述入手从问题域或用例描述入手从问题域或用例描述入手从问题域或用例描述入手,发现对象。发现对象。发现对象。发现对象。 对对象象可可能能的的形形式式有有:外外部部实实体体 、事事物物、发发生生的的事事件件、角角色、组织单位、场所、构造物等。色、组织单位、场所、构造物等。标识属性标识属性标识属性标识属性 从从从从本本本本质质质质上上上上讲讲讲讲,属属属属性性性性定定定
48、定义义义义了了了了对对对对象象象象。可可可可从从从从问问问问题题题题的的的的陈陈陈陈述述述述中中中中或或或或通通通通过对类的理解而标识出属性。过对类的理解而标识出属性。过对类的理解而标识出属性。过对类的理解而标识出属性。定义操作定义操作定义操作定义操作 操操操操作作作作定定定定义义义义了了了了对对对对象象象象的的的的行行行行为为为为并并并并以以以以某某某某种种种种方方方方式式式式修修修修改改改改对对对对象象象象的的的的属属属属性性性性。操作分为:对数据的操作,计算操作,控制操作。操作分为:对数据的操作,计算操作,控制操作。操作分为:对数据的操作,计算操作,控制操作。操作分为:对数据的操作,计算
49、操作,控制操作。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3 3 3 3、定义类的结构和层次、定义类的结构和层次、定义类的结构和层次、定义类的结构和层次类的结构有类的结构有类的结构有类的结构有: 一般一般特殊特殊 ( (generalization - specialization) )结构结构 整体整体部分部分( (whole-part) )结构结构构成类图的元素所表达的模型信息,构成类图的元素所表达的模型信息,分为分为三个层次三个层次三个层次三个层次: 对象层对象层对象层对象层给出系统中所有反映问题域给出系统中所有反映问题域和和系统责任的对象。系统责任的对象
50、。 特征层特征层特征层特征层给出类(对象)的内部特征,给出类(对象)的内部特征,即类的属性和操作。即类的属性和操作。 关系层关系层关系层关系层给出各类(对象)之间的关给出各类(对象)之间的关系,包括继承、系,包括继承、组装、一般组装、一般特殊特殊 、整整体体部分、属性的静态依赖关系,操作的部分、属性的静态依赖关系,操作的动态依赖关系。动态依赖关系。对象层对象层特征层特征层关系层关系层 OOA基本模型基本模型管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发 用用“对象对象- -关系模型关系模型”描述了系统的静态结构。描述了系统的静态结构。5 5 5 5、建立对象建立对象
51、建立对象建立对象- - - -行为模型行为模型行为模型行为模型 描述了系统的动态行为。描述了系统的动态行为。4 4 4 4、建立类、建立类、建立类、建立类( ( ( (对象对象对象对象) ) ) )间的关系间的关系间的关系间的关系管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发 面向对象的设计面向对象的设计面向对象的设计面向对象的设计OOD(Object-Oriented Object-Oriented DesignDesign)是面向对象方法在软件设计阶段应用与扩展是面向对象方法在软件设计阶段应用与扩展是面向对象方法在软件设计阶段应用与扩展是面向对象方法在软件设计阶
52、段应用与扩展的结果的结果的结果的结果。 是将是将是将是将OOAOOA所创建的分析模型转换为设计模型,解所创建的分析模型转换为设计模型,解所创建的分析模型转换为设计模型,解所创建的分析模型转换为设计模型,解决如何作的问题。决如何作的问题。决如何作的问题。决如何作的问题。OODOOD与与与与OOAOOA没有明显的分界,采用没有明显的分界,采用没有明显的分界,采用没有明显的分界,采用相同的符号。相同的符号。相同的符号。相同的符号。 面向对象的设计管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发OODOOD步骤步骤步骤步骤1 1、系统设计、系统设计、系统设计、系统设计 将分析
53、将分析模型划分为若干子系统,子系统应该具有良好的模型划分为若干子系统,子系统应该具有良好的接口,子系统内的类相互协作。标识问题本身的并发性,接口,子系统内的类相互协作。标识问题本身的并发性,为子系统分配处理器。为子系统分配处理器。2 2 2 2、对象设计、对象设计、对象设计、对象设计 为每个类的属性和操作进行详细设计,包括它们的数据为每个类的属性和操作进行详细设计,包括它们的数据结构和实现算法。结构和实现算法。3 3 3 3、消息设计、消息设计、消息设计、消息设计 设计连接类与它的协作者之间的消息规约设计连接类与它的协作者之间的消息规约( (specification of the messa
54、ges) )。 4 4 4 4、复审复审复审复审管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发面向对象实现面向对象实现 面向对象实现主要包括两项工作:把面向对面向对象实现主要包括两项工作:把面向对象设计结果翻译成用某种程序语言书写的面象设计结果翻译成用某种程序语言书写的面向对象程序;测试并调试面向对象的程序。向对象程序;测试并调试面向对象的程序。面向对象程序的质量基本上由面向对象设计面向对象程序的质量基本上由面向对象设计的质量决定,但是,所采用的程序语言的特的质量决定,但是,所采用的程序语言的特点和程序设计风格也将对程序的生成、可重点和程序设计风格也将对程序的生成、
55、可重用性及可维护性产生深远影响。用性及可维护性产生深远影响。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-41信息工程方法信息工程方法自顶向下按四个开发阶段逐步进行:(1 1)信息战略规划阶段;)信息战略规划阶段;(2 2)业务分析阶段;)业务分析阶段;(3 3)系统设计阶段;)系统设计阶段;(4 4)系统制作阶段)系统制作阶段 信息工程方法的开发过程与结信息工程方法的开发过程与结构化生命周期法类似,也是分阶段构化生命周期法类似,也是分阶段进行的,该方法引入了知识库的概进行的,该方法引入了知识库的概念,从业务分
56、析到系统制作的每一念,从业务分析到系统制作的每一个过程都离不开知识库的支撑。个过程都离不开知识库的支撑。信息工程方法的开发阶段信息工程方法的开发阶段信息战略规划信息战略规划业务分析业务分析初步设计初步设计原型法设计原型法设计详细设计详细设计硬件设计硬件设计程序自动生成程序自动生成测试测试运行维护运行维护知知 识识 库库管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法2-42信息工程方法信息工程方法q 信息战略规划阶段信息战略规划阶段 该阶段的目的是使所开发的信息系统能支持企业领导的经营管该阶段的目的是使所开发的信息系
57、统能支持企业领导的经营管理及其决策,能支持企业经营管理的方针和策略,保证系统在统一理及其决策,能支持企业经营管理的方针和策略,保证系统在统一的目标和要求下按计划开发。具体工作包括:的目标和要求下按计划开发。具体工作包括: (1 1)调研分析。)调研分析。初步调查企业的内外环境、优势和劣势、经初步调查企业的内外环境、优势和劣势、经营方针、目标,明确实现方针、目标的条件及关键要素。营方针、目标,明确实现方针、目标的条件及关键要素。 (2 2)信息战略规划。)信息战略规划。根据初步调查和分析,决定系统开发根据初步调查和分析,决定系统开发的目的和开发规划、总体框架及体系结构、企业基本模型、数据基本的目
58、的和开发规划、总体框架及体系结构、企业基本模型、数据基本模型、业务处理模型、技术规范、系统开发的优先次序、人员、开发模型、业务处理模型、技术规范、系统开发的优先次序、人员、开发进度等。进度等。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息系统的管理信息系统的开发方法开发方法2-43信息工程方法信息工程方法q 业务分析阶段业务分析阶段 该阶段的工作内容是从知识库中取出规划阶段存入的信息,对业该阶段的工作内容是从知识库中取出规划阶段存入的信息,对业务处理的数据和处理过程进行分析,总结出详细的数据模型和处理模务处理的数据和处理过程进行分析,总结出详细的数据
59、模型和处理模型及两者之间的关系存入知识库中。型及两者之间的关系存入知识库中。q 系统设计阶段系统设计阶段 从知识库中取出分析阶段存入的有关信息,进行数据流程、数据从知识库中取出分析阶段存入的有关信息,进行数据流程、数据结构、输入结构、输入/ /输出设计,并将结果存入知识库中。输出设计,并将结果存入知识库中。q 系统制作阶段系统制作阶段 从知识库中取出设计阶段存入的有关信息,用程序生成器自动从知识库中取出设计阶段存入的有关信息,用程序生成器自动生成程序代码,并进行调试和测试。生成程序代码,并进行调试和测试。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理信息
60、系统的管理信息系统的开发方法开发方法2-44计算机辅助开发(计算机辅助开发(CASECASE)方法方法(Compute Aided Software Engineering) CASE方法解决问题的基本思路是:在前面所介绍方法解决问题的基本思路是:在前面所介绍的任何一种系统开发方法中,如果自对象系统调查后,的任何一种系统开发方法中,如果自对象系统调查后,系统开发过程中的每一步都可以在一定程度上形成对应系统开发过程中的每一步都可以在一定程度上形成对应关系的话,那么就完全可以借助于专门研制的软件工具关系的话,那么就完全可以借助于专门研制的软件工具来实现上述一个个的系统开发过程。来实现上述一个个的系
61、统开发过程。这些系统开发过程中的对应关系包括:结构化方法中的这些系统开发过程中的对应关系包括:结构化方法中的业务流程分析业务流程分析数据流程分析数据流程分析功能模块设计功能模块设计程序实程序实现;业务功能一览表现;业务功能一览表-数据分析、指标体系数据分析、指标体系-数据数据过程分析过程分析-数据分布和数据库设计数据分布和数据库设计-数据库系统数据库系统等等;等等;OO方法中的问题抽象方法中的问题抽象-属性、结构和方法定义属性、结构和方法定义-对象分类对象分类-确定范式确定范式-程序实现等等。程序实现等等。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.3 管理
62、信息系统的管理信息系统的开发方法开发方法2-45计算机辅助开发(计算机辅助开发(CASECASE)的特点的特点在实际开发一个系统时,在实际开发一个系统时,CASE环境的应用必须环境的应用必须依赖于一种具体的开发方法。如结构化方法、依赖于一种具体的开发方法。如结构化方法、原型法、原型法、OO方法等。方法等。 CASE只是一种辅助的开发方法。它主要在于帮只是一种辅助的开发方法。它主要在于帮助开发者产生出开发过程中的各类图表、程序助开发者产生出开发过程中的各类图表、程序和说明性文档。和说明性文档。CASE出现从根本上改变了我们开发系统的物质出现从根本上改变了我们开发系统的物质基础,主要体现在考虑问题
63、的角度、开发过程基础,主要体现在考虑问题的角度、开发过程的做法、实现系统的措施。的做法、实现系统的措施。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发CASE的部件绘图工具绘图工具语句校对程序语句校对程序原型工具原型工具信息知识库信息知识库代码生成器代码生成器开发方法开发方法项目管理工具项目管理工具管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发CASE环境 提供一种机制,使环境中的所有工具可以共享软提供一种机制,使环境中的所有工具可以共享软件工程信息。件工程信息。 每一个信息项的改变,可以追踪到其他相关信息每一个信息项的改变,可以追踪到其
64、他相关信息项。项。 对所有软件工程信息提供版本控制和配置管理。对所有软件工程信息提供版本控制和配置管理。 对环境中任何工具,可进行直接的、非顺序的访对环境中任何工具,可进行直接的、非顺序的访问。问。 在标准的分解结构中提供工具和数据的自动支持。在标准的分解结构中提供工具和数据的自动支持。 使每个工具的用户,共享人机界面所有的功能。使每个工具的用户,共享人机界面所有的功能。 收集能够改善过程和产品的各项度量指标。收集能够改善过程和产品的各项度量指标。 支持软件工程师们之间的通信。支持软件工程师们之间的通信。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发CASE的工具及
65、其分类的工具及其分类 工具类型工具类型CASE工具例子工具例子支持的开发过程支持的开发过程/阶段阶段编辑工具编辑工具字处理器、文本编辑器、图表编辑器字处理器、文本编辑器、图表编辑器 软件开发全过程软件开发全过程 编写文档工具编写文档工具页面输出程序、图像编辑器页面输出程序、图像编辑器 软件开发全过程软件开发全过程 规划与估算工具规划与估算工具PERT工具、估算工具、电子表格工具工具、估算工具、电子表格工具 软件开发全过程软件开发全过程 变更管理工具变更管理工具 需求跟踪工具、变更控制系统需求跟踪工具、变更控制系统 软件开发全过程软件开发全过程 方法支持工具方法支持工具 设计编辑器、数据字典、代
66、码生成器设计编辑器、数据字典、代码生成器 描述、设计描述、设计原型建立工具原型建立工具 高端语言、用户界面生成器高端语言、用户界面生成器 描述、测试、有效性验证描述、测试、有效性验证 语言处理工具语言处理工具 编译器、解释器编译器、解释器 设计、实现设计、实现 配置管理工具配置管理工具 版本管理系统、细节建立工具版本管理系统、细节建立工具 设计、实现设计、实现 程序分析工具程序分析工具 交叉索引生成器、静态交叉索引生成器、静态/动态分析器动态分析器 实现、测试、有效性验证实现、测试、有效性验证 测试工具测试工具 测试数据生成器、文件比较器测试数据生成器、文件比较器 实现、测试、有效性验证实现、
67、测试、有效性验证 调试工具调试工具 交互式调试系统交互式调试系统 实现、测试、有效性验证实现、测试、有效性验证 再工程工具再工程工具 交叉索引系统、程序重构系统交叉索引系统、程序重构系统 实现实现管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发CASE工具的优势工具的优势自动完成许多手工的系统开发任务自动完成许多手工的系统开发任务在一种方法下促进标准化在一种方法下促进标准化在开发项目中促进连贯和协作在开发项目中促进连贯和协作为系统生成大部分文档,包括数据流程图、为系统生成大部分文档,包括数据流程图、数据模型、结构图或其它数据模型、结构图或其它管管理理信信息息系系统统第
68、第三三章章 管管理理信信息息系系统统的的开开发发CASE工具不能完成的工作工具不能完成的工作自动提供功能上相关的系统。利用自动提供功能上相关的系统。利用CASE工具工具开发好、坏系统的难易程序相同开发好、坏系统的难易程序相同利用数据库和第四代生成语言容易形成用户利用数据库和第四代生成语言容易形成用户界面界面自动强制使用已有的或新创造一种不存在的自动强制使用已有的或新创造一种不存在的开发方法开发方法根本上改变系统的分析设计过程根本上改变系统的分析设计过程管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.2 管理信息系统的管理信息系统的开发方法开发方法快速应用开发(快速
69、应用开发(RADRAD)是一个增量型的软件)是一个增量型的软件开发过程模型,强调极短的开发周期。开发过程模型,强调极短的开发周期。RADRAD模型是线性顺序模型的一个模型是线性顺序模型的一个“高速高速”变变种,通过使用构件的建造方法赢得了快速种,通过使用构件的建造方法赢得了快速开发。开发。RADRAD过程强调的是复用,复用已有的或开发过程强调的是复用,复用已有的或开发可复用的构件。可复用的构件。实际上实际上RADRAD采用第四代技术。采用第四代技术。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发管理信息系统的管理信息系统的开发方法开发方法一. 业务建模 业务功能信息
70、流建模二. 数据建模 形成一组支持该业务所需的数据对象,标识出每个对象特征,并定义对象间的关系三. 过程建模 创建过程描述以增加、修改、删除或检索一个数据对象。四. 应用生成 使用自动化工具辅助软件建造五. 测试及反复 强调复用,对新的构件及其接口进行测试管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发增量模型增量模型分析分析 设计设计 编码编码测试测试 分析分析 设计设计 编码编码测试测试 分析分析 设计设计 编码编码测试测试 分析分析 设计设计 编码编码测试测试 增量增量1 1增量增量2 2增量增量3 3增量增量n n 增量增量1 1交付交付客户客户 增量增量2
71、2交付交付客户客户 增量增量3 3交付交付客户客户 增量增量n n交付交付客户客户日历时间日历时间.管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发过程渐进性:每次提交一个满足用户需求子集的增过程渐进性:每次提交一个满足用户需求子集的增量构件;量构件;增量模型强调每一个增量均发布一个可操作的产品。增量模型强调每一个增量均发布一个可操作的产品。能在短时间内向用户提交可使用的软件;能在短时间内向用户提交可使用的软件;软件系统的体系结构必须具有高度的开放性和可扩软件系统的体系结构必须具有高度的开放性和可扩充性;充性;在逐步增加产品功能的过程中有充裕的时间学习和在逐步增加产品
72、功能的过程中有充裕的时间学习和适应新的功能。适应新的功能。增量模型的特点增量模型的特点管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发增量模型的示例增量模型的示例第一个增量基本的文件管理、编辑和文第一个增量基本的文件管理、编辑和文档生成功能(最核心)档生成功能(最核心)第二个增量完善的编辑和文档生成能力第二个增量完善的编辑和文档生成能力第三个增量实现拼写和文法检查功能第三个增量实现拼写和文法检查功能第四个增量完成高级的页面布局功能第四个增量完成高级的页面布局功能管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发 基于构件的开发基于构件的开发基于
73、构件的开发模型融合了螺旋模型的许多特征。基于构件的开发模型融合了螺旋模型的许多特征。它本质上演化型,要求软件创建的迭代方法。它本质上演化型,要求软件创建的迭代方法。利用预先包装好的软件构件(或称类)来构造应利用预先包装好的软件构件(或称类)来构造应用的。用的。它导致软件复用。它导致软件复用。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发缺点:缺点:1 1、只能用于信息系统。、只能用于信息系统。2 2、对于较大的项目需要足够的人力资源去建、对于较大的项目需要足够的人力资源去建造足够的造足够的RADRAD组。组。3 3、开发者和客户必须在很短的时间完成一系、开发者和客户
74、必须在很短的时间完成一系列的需求分析,列的需求分析, 任何一方配合不当都会导致任何一方配合不当都会导致RADRAD项目失败。项目失败。4 4、这种模型对模块化要求比较高,如果有哪、这种模型对模块化要求比较高,如果有哪一功能不能被模块化,那么建造一功能不能被模块化,那么建造RADRAD所需要的构件所需要的构件就会有问题。就会有问题。5 5、技术风险很高的情况下不适合这种模型。、技术风险很高的情况下不适合这种模型。优点:优点:1 1、开发速度快,质量有保证。、开发速度快,质量有保证。2 2、对信息系统特别有效。、对信息系统特别有效。管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的
75、开开发发UML统一建模语言统一建模语言 UML统一建模语言(统一建模语言(Unified Modeling Language)是一种建模语言。是第三代用来为面向对象)是一种建模语言。是第三代用来为面向对象开发系统的产品进行说明可视化和编制文档的方法。开发系统的产品进行说明可视化和编制文档的方法。 UML取代目前软件业众多的分析和设计方法取代目前软件业众多的分析和设计方法(Booch Coad Jacobson Odell Rumbaugh Wirfs-Brock等)成为一种标准,这是软件界的第一次有了一个等)成为一种标准,这是软件界的第一次有了一个统一的建模语言。它是面向对象分析与设计的一种标
76、准表统一的建模语言。它是面向对象分析与设计的一种标准表示。它不是一种可视化的程序设计语言,而是一种可视化示。它不是一种可视化的程序设计语言,而是一种可视化的建模语言。不是工具或知识库的规格说明,而是一种建的建模语言。不是工具或知识库的规格说明,而是一种建模语言规格说明,是一种表示的标准。不是过程也不是方模语言规格说明,是一种表示的标准。不是过程也不是方法,但允许任何一种过程和方法使用它法,但允许任何一种过程和方法使用它管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发RUP RUP(Rational Unified Process,统一软件开发过程),统一软件开发过程)
77、具有很多长处:提高了团队生产力,在迭代的开发过程、具有很多长处:提高了团队生产力,在迭代的开发过程、需求管理、基于组件的体系结构、可视化软件建模、验证需求管理、基于组件的体系结构、可视化软件建模、验证软件质量及控制软件变更等方面,针对所有关键的开发活软件质量及控制软件变更等方面,针对所有关键的开发活动为每个开发成员提供了必要的准则、模板和工具指导,动为每个开发成员提供了必要的准则、模板和工具指导,并确保全体成员共享相同的知识基础。并确保全体成员共享相同的知识基础。 它建立了简洁和清晰的过程结构,为开发过程提供它建立了简洁和清晰的过程结构,为开发过程提供较大的通用性。但同时它也存在一些不足:较大
78、的通用性。但同时它也存在一些不足: RUP只是一只是一个开发过程,并没有涵盖软件过程的全部内容,例如它缺个开发过程,并没有涵盖软件过程的全部内容,例如它缺少关于软件运行和支持等方面的内容;此外,它没有支持少关于软件运行和支持等方面的内容;此外,它没有支持多项目的开发结构,这在一定程度上降低了在开发组织内多项目的开发结构,这在一定程度上降低了在开发组织内大范围实现重用的可能性。可以说大范围实现重用的可能性。可以说RUP是一个非常好的开是一个非常好的开端,但并不完美,在实际的应用中可以根据需要对其进行端,但并不完美,在实际的应用中可以根据需要对其进行改进并可以用改进并可以用OPEN和和OOSP等其
79、他软件过程的相关内容等其他软件过程的相关内容对对RUP进行补充和完善。进行补充和完善。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发形式化方法是软件工程师能通过应用一个严格的、形式化方法是软件工程师能通过应用一个严格的、数学的符号体系来规约、开发和验证基于计算机数学的符号体系来规约、开发和验证基于计算机的系统。的系统。形式化方法模型的缺陷:形式化方法模型的缺陷:形式化模型的开发目前还很费时和昂贵。形式化模型的开发目前还很费时和昂贵。因为很少有软件开发者具有使用形式化方法所需因为很少有软件开发者具有使用形式化方法所需的背景知识,所以尚需多方面的进行培训。的背景知识,
80、所以尚需多方面的进行培训。难以使用该模型作为与对其一无所知的用户进行难以使用该模型作为与对其一无所知的用户进行通信的机制。通信的机制。形式化方法模型形式化方法模型管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.4 管理信息系统开发的管理信息系统开发的过程管理过程管理2-61管理信息系统的开发方式管理信息系统的开发方式1自行开发自行开发优优点点:易易于于协协调调,可可以以保保证证进进度度;开开发发人人员员熟熟悉悉企企业业情情况况,可可以以较较好地满足用户的需求;方便运行与维护;可以满足特殊需要等。好地满足用户的需求;方便运行与维护;可以满足特殊需要等。缺点:缺点:开
81、发周期较长;成功率低;系统的技术水平和规范程度往往开发周期较长;成功率低;系统的技术水平和规范程度往往不高。不高。2委托开发委托开发3合合作作开开发发 主主要要问问题题是是企企业业如如何何选选择择合合适适的的开开发发伙伙伴伴,它它应应该该有有技技术术实实力力,有有类类似似企企业业的的开开发发经经历历,熟熟悉悉行行业业特特点点,一一般般多多为为大大专院校和科研院所。专院校和科研院所。4咨询开发咨询开发 以企业自己的力量为主,外请专家进行咨询的方式。以企业自己的力量为主,外请专家进行咨询的方式。5外购商品化软件外购商品化软件管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发
82、各种开发方式比较各种开发方式比较管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发2.4 管理信息系统开发的管理信息系统开发的过程管理过程管理2-63管理信息系统开发的计划与控制管理信息系统开发的计划与控制q 进度计划与控制进度计划与控制q 阶段性评审阶段性评审 在在总总体体规规划划阶阶段段就就应应制制定定系系统统开开发发大大致致的的进进度度计计划划,随随着着系系统统分分析析、系系统统设设计计的的不不断断深深入入,再再制制定定系系统统详详细细的的开开发发进进度度计计划划,并并指指定定专专人人负负责责。在在今今后后执执行行过过程程中中,项项目目负负责责人人要要对对各各项项
83、任任务务进进行行定定期期检检查查。系系统统开开发发的的进进度度计计划划以以甘甘特特图图的的形形式式表示,按计划定期检查,确保系统按计划进行。表示,按计划定期检查,确保系统按计划进行。 系系统统各各阶阶段段完完成成后后,要要进进行行评评审审,审审核核各各阶阶段段的的工工作作,然然后后进进入入后后一一阶阶段段工工作作。尤尤其其要要做做好好系系统统分分析析阶阶段段的的评评审审工工作作,把好质量关,为系统的成功开发打下基础。把好质量关,为系统的成功开发打下基础。某企业管理信息系统开发进度安排2-64 1 总体规划总体规划 分析设计组分析设计组 张洪涛张洪涛 可行性研究报告可行性研究报告 2 系统分析系
84、统分析 系统分析组系统分析组 王王 哲哲 系统分析说明书系统分析说明书 3 系统设计系统设计 系统设计组系统设计组 李宏伟李宏伟 系统设计说明书系统设计说明书 4 硬件安装调试硬件安装调试 硬件组硬件组 硬件测试报告硬件测试报告 9 人员培训人员培训 分析软件组分析软件组 人员培训计划人员培训计划序序号号完完 成成 者者 进度安排进度安排 2002年年 2003年年6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12工工 作作 项项 目目负责人负责人 提交的文档提交的文档10 系统总调系统总调 各小各小组组 测试报告测试报告 12 系统评价系统评价 各小各小组
85、组 总结总结 11 系统试运行系统试运行 各小各小组组 运行结果运行结果 5 经营子系统开发经营子系统开发 程序组程序组 程序说明书程序说明书 6 物资子系统开发物资子系统开发 程序组程序组 程序说明书程序说明书 7 生产生产子系统开发子系统开发 程序组程序组 程序说明书程序说明书 8 财务财务子系统开发子系统开发 程序组程序组 程序说明书程序说明书管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.4 管理信息系统开发的管理信息系统开发的过程管理过程管理2-65管理信息系统开发的组织管理信息系统开发的组织q 系统开发领导小组系统开发领导小组 提出建立新系统的目标、规
86、划总的开发策略;提出建立新系统的目标、规划总的开发策略; 保证满足企业不同部门对新系统的需求;保证满足企业不同部门对新系统的需求; 对对开开发发工工作作进进行行监监督督与与控控制制,对对开开发发项项目目的的目目标标、预预算算、进进度度、工工作作质质量量进进行行监监督督与与控控制制,审审查查和和批批准准系系统统开开发发各各阶阶段段的的工工作作报报告告,组织阶段验收,提出继续开发或暂停开发的建议;组织阶段验收,提出继续开发或暂停开发的建议; 协调系统开发中有关的各项工作;协调系统开发中有关的各项工作; 向上级组织报告系统开发工作的进展情况;向上级组织报告系统开发工作的进展情况; 组织系统的验收;组
87、织系统的验收; 负责主要成员的任用和规定各成员的职责范围等。负责主要成员的任用和规定各成员的职责范围等。q 系统开发工作小组系统开发工作小组开发方法的选择;各类调查的设计和实施;调查结果的分析;撰写可行性开发方法的选择;各类调查的设计和实施;调查结果的分析;撰写可行性报告;系统的逻辑设计;系统的物理设计;系统的具体编程和实施;制定报告;系统的逻辑设计;系统的物理设计;系统的具体编程和实施;制定新旧系统的交接方案;监控新系统的运行;如果需要,协助组织进行新的新旧系统的交接方案;监控新系统的运行;如果需要,协助组织进行新的组织机构变革和新的管理规章制度的制定。组织机构变革和新的管理规章制度的制定。
88、 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发管理信息系统开发的项目管理管理信息系统开发的项目管理1.1.项目管理概念项目管理概念 项目:具有明确规定的开始和结束日期、项目:具有明确规定的开始和结束日期、特定的工作范围、预期要达到特定目标特定的工作范围、预期要达到特定目标的一次性的、多任务的工作。的一次性的、多任务的工作。项目管理:对那些为达到项目目标必须项目管理:对那些为达到项目目标必须执行的活动进行计划、调度和控制,是执行的活动进行计划、调度和控制,是相对于持续的业务运作管理而言的。相对于持续的业务运作管理而言的。管管理理信信息息系系统统第第三三章章 管管理理
89、信信息息系系统统的的开开发发3.4 管理信息系统开发的管理信息系统开发的过程管理过程管理2-672 2、管理信息系统开发的项目管理的内容、管理信息系统开发的项目管理的内容1计划管理计划管理主主要要内内容容:制制定定总总体体计计划划;制制定定阶阶段段计计划划;工工程程计计划划执执行行情情况况检检查查,对对计划做出相应调整。计划做出相应调整。2技术管理技术管理主要内容:标准化管理;安全管理。主要内容:标准化管理;安全管理。3质量管理质量管理主主要要内内容容:贯贯彻彻系系统统开开发发过过程程质质量量管管理理原原则则;确确定定系系统统质质量量管管理理指指标标体体系系;保保证证系系统统的的可可使使用用性
90、性、系系统统的的正正确确性性、系系统统的的适适用用性性、可可维维护护性性以以及文档完整性;系统开发周期内的质量管理。及文档完整性;系统开发周期内的质量管理。4资源管理资源管理 主要内容:人员管理;软件资源管理;硬件资源管理;资金管理。主要内容:人员管理;软件资源管理;硬件资源管理;资金管理。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3、项目管理的主要方法n进度控制方法甘特图和项目计划表计划评审技术PERTn质量管理方法全面质量管理及其相关方法n成本控制方法作业成本法n综合平衡方法管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.4
91、管理信息系统开发的管理信息系统开发的过程管理过程管理2-69系统开发的有关人员及分工系统开发的有关人员及分工1企企业业高高层层领领导导 组组织织中中的的高高层层领领导导必必须须是是系系统统开开发发小小组组的的领领导导成成员员,并且要在把握大方向时切实地投人时间和精力。并且要在把握大方向时切实地投人时间和精力。 2项项目目主主管管 主主持持整整个个系系统统开开发发,确确定定工工作作目目标标以以及及确确定定实实现现目目标标的的具体方案。具体方案。 3系系统统分分析析员员 系系统统分分析析员员的的主主要要任任务务是是研研究究用用户户对对信信息息系系统统的的需需求求,进进行行可可行行性性研研究究;进进
92、行行系系统统分分析析与与设设计计;负负责责对对新新系系统统的的安安装装、测测试试和和技术文件的编写。技术文件的编写。 4程程序序设设计计员员 按按照照系系统统分分析析员员所所提提出出的的设设计计方方案案编编制制程程序序、调调试试程程序、修改程序,直到新系统投入运行。序、修改程序,直到新系统投入运行。 5企业管理人员企业管理人员 前期要把需求非常准确和全面地提供给系统分析员,前期要把需求非常准确和全面地提供给系统分析员,在与计算机工作人员进行沟通时,要把业务流程和系统功能阐述得很透在与计算机工作人员进行沟通时,要把业务流程和系统功能阐述得很透彻。后期系统的雏形出来之后,能够根据系统的功能,对系统进行客观彻。后期系统的雏形出来之后,能够根据系统的功能,对系统进行客观的评价,找出系统改进方向。的评价,找出系统改进方向。 管管理理信信息息系系统统第第三三章章 管管理理信信息息系系统统的的开开发发3.4 管理信息系统开发的管理信息系统开发的过程管理过程管理2-70系统开发的系统开发的关键要素关键要素应该是:应该是: 先进的思想先进的思想 不同人员的配合协调不同人员的配合协调 科学的组织管理科学的组织管理 现代化的系统开发方法现代化的系统开发方法