第六章办公信息系统开发方法_第1页
第六章办公信息系统开发方法_第2页
第六章办公信息系统开发方法_第3页
第六章办公信息系统开发方法_第4页
第六章办公信息系统开发方法_第5页
已阅读5页,还剩104页未读, 继续免费阅读

下载本文档

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

文档简介

1、一、系统生命周期o系统生命周期分为五个阶段:n系统规划n系统分析n系统设计n系统实施n维护与评价二.系统规划系统规划的任务o提出一个初步的系统设想。n确定系统目标n业务流程调查n设定系统功能n配置硬件o可行性分析n技术可行性n经济可行性系统规划的步骤o初步调查:(以功能为单位)n机构调查、工作流程调查、数据调查o业务流程分析:n流程合理化、明确管理功能o数据分析:n数据关联性、数据存储和传输量o硬件配置:n网络布局、服务器、计算机、外设、o投资预算:三. 系统规划示例示例 (1.系统目标)o背景:某企业生产汽缸套,因材料涨价等原因,产品成本连年上升,市场价格又不断下降,使得企业利润大幅度下降。

2、o从1996年开始,企业领导为了有效地降低成本,提出了化小核算单位、分级核算的方案,并用信息系统完成全企业的各级核算工作。o目标:n完成全企业成本核算工作。n有效地控制成本。示例 (2. 组织结构调查)厂长人事科供应科生产科技术科财务科动力科采购仓库1仓库2一车间二车间三车间半成品维修运输设计所科研所材料动力综合副厂长示例 (4. 业务流程调查 - 各个车间)统计员车间统计工资核算动力核算材料核算车间成本核算劳资科动力科供应科财务科一车间二车间三车间示例 (4. 业务流程调查 - 供应科 )采购日常库存(1)库存控制二车间财务科供应科一车间二车间三车间生产科一车间三车间采购日常库存(2)采购日

3、常库存(5)二车间一车间三车间材料核算总经济师厂长有关人员供应科示例 (5. 各个科室信息关联图 )一车间二车间三车间动力科财务科供应科销售科劳资科设备科示例 (7. 编写子系统和功能说明书 )XXXXXX子系统说明书1. 1. 子系统结构:子系统结构:2. 2. 功能说明:功能说明:(1)xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(2)xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

4、xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx示例 (8. 网络布局方案)示例 (9. 硬件配置-(1)o网络:n服务器、通讯线路、器材等(远程、局部)o数据箱:n大容量硬盘、光盘塔、磁带机、磁带、光盘o主机:n监控室电脑、各个工作站电脑o输入/输出设备:n打印机、投影仪、扫描仪、绘图仪示例 (9. 硬件配置-(2)o电源:n中心电源、各个工作站电源。o机房:n房间装修、空调设备、办公室、数据室、n软件室、值班室、安全屏蔽设施。示例 (10. 软件配置)o选择系统软件:n服务器操作系统nWindows NTnUni

5、xn终端操作系统nWindows 98nDos示例 (10. 软件配置-(2))o选择数据库系统:n服务器端运行的大型数据库系统:nSQL Server nInformixnOrical示例 (10. 软件配置-(3))o选择系统开发平台:nOricalnVisual FoxpronPowerBuldernDilphi示例 (11. 投资预算)o硬件费用:设备、设施o软件费用:操作系统、开发工具、应用软件o开发费用:委托开发费用:调研、分析、 设计、编程o辅助设施:机房、网络施工o维护运行:人员工资、消耗材料、维修o其他费用:培训费用、出差费用、办公费用 其他不可预见费用。示例 (12. 可行

6、性分析-(1)o系统的必要性研究:n企业是否有必要使用该系统?n企业是否有条件使用系统?n达成目标的程度?o技术可行性:n硬件的支持上n软件的实现上(操作系统、开发工具、 数据库)n技术人员示例 (13. 可行性分析-(2)o经济可行性:n资金来源n风险o经济合理性:n经济效益的计算n投资回收期n社会效益示例 (14. 可行性分析-(3)o安全性:n系统安全性:n数据安全性:n安全制度、人员培训示例 系统总体方案-(1)o1. 系统结构报告n系统流程几说明。n系统结构图n子系统结构及功能说明o2. 系统配置报告n网络结构n硬件配置清单n操作系统n开发工具n应用软件示例 系统总体方案-(2)o3

7、. 投资预算报告n硬件投资预算n软件投资预算n开发费用预算o4. 可行性分析报告n技术n经济n安全n技术指标四. 系统分析1、系统分析的任务o详细调查用户的信息需求。o详细调查业务过程。o详细描述数据流程。2、系统分析的步骤o详细调查业务过程(见教材)o数据流程调查分析(结构化分析方法)o分析整理数据流程o建立数据词典n数据描述n处理说明3、结构化分析方法o(1)确定系统范围o(2)调查系统界面上的数据来往o(3)将系统分解成几个部分o(4)再分析各个部分界面上的来往信息。o(5)反复做(3)(4),直到分解到最基本的操作为止。4、结构化分析方法的示意图顶层1231.11.31.21.43.1

8、3.23.33.43.51.4.11.4.41.4.31.4.51.4.2结构化分析示例-(1. 组织结构)o调查分析某企业财务科数据流程:财务科工资组成本组材料组综合组车间费用动力成本计算厂长结构化分析示例-(2. 顶层图)财务核算车间车间车间上级总会计师仓库车间仓库动力动力仓库仓库仓库仓库结构化分析示例-(3. 零层图)3. 成本核算4. 综合分析2. 工资核算1. 材料核算结构化分析示例- 4. 一层图-(1)1.1 核对1.3 材料分配1.2 按部门汇总结构化分析示例- 业务流程分析现行系统系统目标管理职能流程优化企业环境信息需求新系统模型结构化分析示例- 业务流程分析内容o1. 增加

9、新的处理内容o2. 整理处理的逻辑顺序o3. 去除多余的处理o4. 合并琐碎的处理过程o5. 提炼出计算机可以处理的过程5、编制数据词典o数据词典是对流图中的“处理”和“数据”进行的文字描述和记录。数据词典包括:n数据描述n处理过程描述(1) 数据描述o描述流图中发生的每个数据:n数据名称n数据来源n流向n流量n数据结构n(例)(2) 处理过程描述o描述流图中发生的每个处理过程:n处理的名称n输入数据n输出数据n处理逻辑n(例)五. 系统设计1、系统设计的任务o系统设计阶段要完成:n处理流程设计(模块设计)n代码设计n数据库设计n输入/输出设计(1) 处理流程设计(划分模块)输入模块ABABC

10、D(3)代码设计o对处理对象进行编码。o实现:n鉴别功能n分类功能n排序功能n专用含义代码种类o顺序码o自检码o层次码(4)输入/输出设计o输入/输出设计:n输入/输出格式n输入/输出方式n输入/输出内容n输入/输出介质o原则:n最少量n不重复六、系统实施系统实施的主要任务o硬件、软件的准备o人员培训o数据准备o编写程序o系统调试o系统转换(1)硬件、软件的准备o按照要求购置硬件设备和软件:n直接采购n招标方式o组织专门人员验收设备和软件测试o落实设备和软件的服务项目:n具体服务内容n落实专门人员负责o软件的知识产权问题:(2)人员培训o开发人员培训o管理人员培训o数据维护人员培训o操作人员培

11、训(业务人员)o辅助人员培训(资料员、值班员、清洁工)(3)数据准备o准备各种基础数据o安装数据库o录入基本数据资料o数据的校对o数据库运行测试(4)编写程序o选定编程语言o标准模块化管理o原程序统一管理o程序员个性化限制o程序测试(模块)n保证模块内部逻辑正确(5)系统调试o系统模块调试n保证模块之间调用正确n保证各个子系统调用正确o系统联调n保证系统各个部分连接正确n保证各个部分工作协调(6)系统转换老系统新系统老系统新系统老系统新系统试运行老系统新系统七、生命周期法的特点与局限性1. 特 点o(1)它非常强调计划性,排斥不确定性。o(2)强调分工,从设计到生产各个阶段都有严格的划分。o(

12、3)强调合作。o(4)强调标准化与规范化,排斥个性化与自由发挥。2. 适 应 于 .o适合软件的社会化大生产,大型项目的开发。o适合于开发那些能够很好定义其需求、结构化程度又比较高的大型事务处理系统(TPS)和管理信息系统(MIS)。o适合于开发包含复杂技术的系统,如航空管制、航天系统等。o不适合于小系统的开发。3. 主要缺点.(1)过于耗费资源。(2)缺乏灵活性。(3)不适用于开发那些需求不明确的系统(1)识别基本需求)识别基本需求(2)构造初始原型)构造初始原型(3)使用和验证原型)使用和验证原型(4)修正和改进原型)修正和改进原型(5)判断原型完成)判断原型完成(6)生成文档并交付使用)

13、生成文档并交付使用丢弃式原型丢弃式原型进化式原型进化式原型在于描述和说明系统的需求作为开发人员和用户在于描述和说明系统的需求作为开发人员和用户之间的通信工具之间的通信工具不作为实际系统运行不作为实际系统运行原始系统只是从外观上、功能上象原始系统只是从外观上、功能上象“实际系统实际系统” 进化式原型开发思想与丢弃式完全相反进化式原型开发思想与丢弃式完全相反按照基本需求开发出一个系统,让用户先使用起按照基本需求开发出一个系统,让用户先使用起来,随时修改来,随时修改原系统的一部分或几部分不适用,需要重新设计、原系统的一部分或几部分不适用,需要重新设计、实施和安装实施和安装演变式系统开发演变式系统开发

14、递增式系统开发递增式系统开发开始时系统有一个总体框架,各功能单元的结构和开始时系统有一个总体框架,各功能单元的结构和功能十分清楚功能十分清楚功能还没有具体实施功能还没有具体实施以后开发中逐步完善模块以后开发中逐步完善模块系统开发效益高系统开发效益高系统适用性强系统适用性强系统可维护性好系统可维护性好系统可扩充性好系统可扩充性好易学易用易学易用原型化方法适用于用户需求不清,管理及业务处原型化方法适用于用户需求不清,管理及业务处理不稳定,需求常常变化理不稳定,需求常常变化规模小,不太复杂,而且不要求集中处理的系统规模小,不太复杂,而且不要求集中处理的系统有比较成熟借鉴经验的系统开发有比较成熟借鉴经

15、验的系统开发用于开发信息系统中的最终用户界面用于开发信息系统中的最终用户界面原型法的最大优点是能提高用户满意度原型法的最大优点是能提高用户满意度使用原型法开发系统周期短,成本低使用原型法开发系统周期短,成本低 原型化方法不适于开发大的系统原型化方法不适于开发大的系统原型化方法开发的时候,测试和文档工作常常容易原型化方法开发的时候,测试和文档工作常常容易被忽略被忽略原型化方法的另一个缺点是运行的效率可能会比较原型化方法的另一个缺点是运行的效率可能会比较低低 面向对象方法的产生面向对象方法的产生q 面向对象的概念面向对象的概念q 面向对象方法在开发系统过程中的阶段面向对象方法在开发系统过程中的阶段

16、q 面向对象方法的特点面向对象方法的特点q 面向对象方法与结构化方法的比较面向对象方法与结构化方法的比较q 面向对象的分析与设计语言面向对象的分析与设计语言UML传统开发方法存在的问题传统开发方法存在的问题问题空间与求解空间的不一致问题空间与求解空间的不一致 系统分析到系统设计转换困难系统分析到系统设计转换困难处理模型和数据模型分别建立处理模型和数据模型分别建立 忽视信息系统的行为特征忽视信息系统的行为特征 对象是面向对象系统运行过程中的基本实体对象是面向对象系统运行过程中的基本实体既包括属性,也包括作用于属性的行为既包括属性,也包括作用于属性的行为传统语言的操作数据是被动地等待相应的操作去处

17、传统语言的操作数据是被动地等待相应的操作去处理,但对象是一个主动的数据实体,其中封装了一理,但对象是一个主动的数据实体,其中封装了一组对该数据的操作,所以对组对该数据的操作,所以对“对象对象”和传统的和传统的“数数据据”的使用方法也不同的使用方法也不同 消息是对象之间进行通讯的一种数据结构消息是对象之间进行通讯的一种数据结构对象之间是通过传递消息来进行联系的对象之间是通过传递消息来进行联系的消息用来请求对象执行某一处理或提供某些信息的消息用来请求对象执行某一处理或提供某些信息的要求,控制流和数据流统一包含在消息中要求,控制流和数据流统一包含在消息中 程序的执行是靠对象间传递消息来连接的程序的执

18、行是靠对象间传递消息来连接的 消息传送与函数调用的区别消息传送与函数调用的区别 函数调用可以带或不带参数,但是消息至少带一个参数,函数调用可以带或不带参数,但是消息至少带一个参数,它表明接收消息的对象它表明接收消息的对象消息操作名类似于函数名,但它们之间的本质区别在于:消息操作名类似于函数名,但它们之间的本质区别在于:函数名代表一段可执行的代码,但消息操作名具体功能的选函数名代表一段可执行的代码,但消息操作名具体功能的选取还取决于接收消息的对象本身取还取决于接收消息的对象本身函数调用是过程式的(如何做),消息传送是说明式的函数调用是过程式的(如何做),消息传送是说明式的(做什么),具体如何做,

19、由对象根据收到的消息自行确定(做什么),具体如何做,由对象根据收到的消息自行确定 类是对一组对象的抽象类是对一组对象的抽象将该组对象所具有的共同特征(包括操作特征和存将该组对象所具有的共同特征(包括操作特征和存储特征)集中起来,以说明该组对象的能力和性质储特征)集中起来,以说明该组对象的能力和性质 继承指对象继承它所在类的结构、操作和约束继承指对象继承它所在类的结构、操作和约束也指一个类继承超类或子类继承父类的结构、操作也指一个类继承超类或子类继承父类的结构、操作或约束。继承是自动共享类、子类和对象中的方法或约束。继承是自动共享类、子类和对象中的方法和数据的机制和数据的机制 封装是一种信息隐藏

20、技术封装是一种信息隐藏技术所谓所谓“封装封装”是指把对象的属性和操作方法同时封是指把对象的属性和操作方法同时封装在定义对象中装在定义对象中用操作集来描述可见的模块外部接口,从而保证了用操作集来描述可见的模块外部接口,从而保证了对象的界面独立于对象的内部表达对象的界面独立于对象的内部表达对象的操作方法和结构是不可见的,接口是作用于对象的操作方法和结构是不可见的,接口是作用于对象上的操作集的说明,这是对象唯一的可见部分对象上的操作集的说明,这是对象唯一的可见部分 实例就是由某个特定的类所描述的一个具体的对象实例就是由某个特定的类所描述的一个具体的对象类是对具有相同属性和行为的一组相似的对象的抽类是

21、对具有相同属性和行为的一组相似的对象的抽象象类在现实世界中并不能真正存在类在现实世界中并不能真正存在 所谓多态即一个名字具有多种语义所谓多态即一个名字具有多种语义对象的多态是指在一般类中定义的属性或服务被特对象的多态是指在一般类中定义的属性或服务被特定类继承之后,可以具有不同的数据类型或表现不定类继承之后,可以具有不同的数据类型或表现不同的行为同的行为多态引用表示可引用多个类的实例多态引用表示可引用多个类的实例 o1.系统调查和需求分析 对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研究,既弄清干什么的问题.o2.分析问题的性质和求解问题 在复杂的问题域中抽象地识别出对象及其结构

22、,属性,方法等.即面向对象的分析(OOA)o3.整理问题 对分析的结构作进一步的抽象,归类,整理.即面向对象的设计(OOD)o4.程序实现 利用面向对象程序设计语言将上一步的成果直接映射为应用程序软件.即面向对象程序设计(OOP)基本步骤:o标识对象o标识属性o标识方法o标识结构o标识主题OOD分为四个部分:o问题空间部分的设计o人机交互部分的设计o任务管理部分的设计o数据管理部分的设计以对象为基础,利用特定的软件模块,完成从对象以对象为基础,利用特定的软件模块,完成从对象客体的描述到软件结构之间的转换客体的描述到软件结构之间的转换避免了其它方法在开发过程中的不一致性和复杂性避免了其它方法在开

23、发过程中的不一致性和复杂性 系统的开发具有简单性、统一性系统的开发具有简单性、统一性开发周期短,费用低开发周期短,费用低(1 1)对问题空间的理解更直接,更符合人们认识客观事物的)对问题空间的理解更直接,更符合人们认识客观事物的思维规律。思维规律。 结构化方法把现实世界映射成数据流和加工,但它把数结构化方法把现实世界映射成数据流和加工,但它把数据流和控制流分开讨论,二者有时难以统一,而且数据流方据流和控制流分开讨论,二者有时难以统一,而且数据流方法主要构造的还是过程模型,它描述数据结构的能力仍然很法主要构造的还是过程模型,它描述数据结构的能力仍然很弱,一般还需要另外使用诸如弱,一般还需要另外使

24、用诸如E-RE-R图之类的工具来建立数据的图之类的工具来建立数据的逻辑模型,造成了过程和数据的分离。逻辑模型,造成了过程和数据的分离。 而面向对象方法把二者统一于对象内部,加工过程映射而面向对象方法把二者统一于对象内部,加工过程映射为对象的操作,数据映射为对象的属性,任何数据和与这些为对象的操作,数据映射为对象的属性,任何数据和与这些数据相关的过程都是与相关的对象共同生存的,这样增强了数据相关的过程都是与相关的对象共同生存的,这样增强了模型的一致性和准确性模型的一致性和准确性。 (2 2)系统分析和系统设计使用同一模型,不存在)系统分析和系统设计使用同一模型,不存在过渡困难。过渡困难。 结构化

25、方法的另一个主要问题是从分析过渡结构化方法的另一个主要问题是从分析过渡到设计有双重负担,一是构造方法的转换;一是到设计有双重负担,一是构造方法的转换;一是添加实施细节。添加实施细节。 而在面向对象方法中,从分析到设计使用相而在面向对象方法中,从分析到设计使用相同的基本表示,对象模型是整个开发过程中的一同的基本表示,对象模型是整个开发过程中的一个统一的表示工具。好处不仅是减少了各个阶段个统一的表示工具。好处不仅是减少了各个阶段模型之间的转换,较好地支持模型到代码的正向模型之间的转换,较好地支持模型到代码的正向工程及代码到模型的逆向工程,而且可以使需求工程及代码到模型的逆向工程,而且可以使需求的变

26、化较为容易地同步到模型和代码中。的变化较为容易地同步到模型和代码中。(3 3)开发出来的信息系统从本质上具有更强的生)开发出来的信息系统从本质上具有更强的生命力。需求的不断变化是我们不得不接受的事实。命力。需求的不断变化是我们不得不接受的事实。 结构化方法基于功能分析与功能分解,而用结构化方法基于功能分析与功能分解,而用户的需求变化往往是功能或流程的变化,因此开户的需求变化往往是功能或流程的变化,因此开发出来的系统是不稳定的。发出来的系统是不稳定的。 而问题空间的对象最稳定,它们对潜在变化而问题空间的对象最稳定,它们对潜在变化最不敏感。面向对象方法使代表共性的对象稳定最不敏感。面向对象方法使代

27、表共性的对象稳定下来,而把不稳定的东西隐藏起来。这样可避免下来,而把不稳定的东西隐藏起来。这样可避免增加复杂性,系统对环境的适应和应变能力也随增加复杂性,系统对环境的适应和应变能力也随之增强。之增强。(4 4)维护成本降低。)维护成本降低。 采用结构化方法开发出来的系统是模块层次结构的,采用结构化方法开发出来的系统是模块层次结构的,而模块的划分具有随意性,不同的开发人员可能分解成不而模块的划分具有随意性,不同的开发人员可能分解成不同的软件结构。这样的系统维护工作相当困难同的软件结构。这样的系统维护工作相当困难 。 面向对象方法中的类是更理想的模块机制,其独立性面向对象方法中的类是更理想的模块机

28、制,其独立性好,类对外的接口设计好后,类内部的修改不会影响到其好,类对外的接口设计好后,类内部的修改不会影响到其他类。他类。 o UML(Unified Modeling Language, UML(Unified Modeling Language,统统一建模语言一建模语言) )统一了面向对象建模的基本统一了面向对象建模的基本概念、术语及其图形符号,为不同领域的概念、术语及其图形符号,为不同领域的人员提供一个交流的标准人员提供一个交流的标准. .o 就像数据流图作为结构化分析的建模就像数据流图作为结构化分析的建模语言,模块结构图作为结构化总体设计的语言,模块结构图作为结构化总体设计的建模语言

29、一样,建模语言一样,UMLUML是面向对象的系统分是面向对象的系统分析与设计的建模语言,不要将它理解为一析与设计的建模语言,不要将它理解为一种方法论或是一种开发过程。种方法论或是一种开发过程。 oUML是用来描述模型的,它是用来描述系统的结构或静态特征,行为或动态特征.它从不同的视角为系统架构建模,形成系统的不同视图,包括:o用例视图用例视图,强调从用户的角度看到的或需求的功能o逻辑视图逻辑视图,展现系统的静态或结构最成及特征o并发视图并发视图,体现了系统的动态或行为特征o组件视图组件视图,体现了系统实现的结构和行为特征o展开视图展开视图,体现了系统实现环境的结构和行为特征o每种UML的视图都

30、是由一个或多个图组成,一个图就是系统架构再某个侧面的表示,它与其他图是一致的,所有的图一起组成了系统完整的视图.oUML包括以下若干图:o1.用例图 用例实际上就是从用户的角度去定义具有交互过程的系统功能。每个功能与一个或多个参与者(actor)相连接。参与者是指处于系统之外,需要使用用例的人或事物。对系统开发人员来书,用例是很有实用价值的,可以帮助其从用户的观察角度收集可靠的系统需求,这对建立人机交互式系统极为重要.我们需求分析阶段的用例模型就是开发者和用户反复讨论的结果,表明了开发者和用户对需求规格达成共识.o2.类图 类图描述类和类之间的静态关系.与数据模型不同,类图不仅显示了信息的结构,同时还描述了系统的行为.类图为开发人员提供了模仿现实世界的表达方式,它允许分析员使用客户采用的术语与其交流,促使客户提出所要解决问题的相关细节.o3.对象图 对象图可以看作是类图的一个实例,对象之间的链接是类之间的关联的实例.o4.状态图 在任何一个时刻,一个对象总处于某一特定的状态.一个状态图就包括一系列的状态以及状态间的转移.o5.时序图 在一个运行的系统中,对象之间要发生交互,且这些交互要经历一定的时间阶段.时序图所表达的则是这种对象之间的基于时间的动态交互关系,着重体现对象间消息传递的时间顺序.o6.活动图 活动图用于反映一个连续的活动流,相对于描述活动流来说,活动图常用于描述

温馨提示

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

评论

0/150

提交评论