笔记-信息系统开发基础-信息系统开发方法
信息系统开发方法知识,信息系统开发方法分为:
1、结构化开发方法
2、面向对象开发方法
3、原型化开发方法
4、面向服务的方法
1. 结构化开发方法 (Structured method)
Structured Analysisand Design Technique,SADT,又称生命周期法:是迄今为止最传统、应用最广泛的一种信息系统开发方法。结构化开发方法采用系统工程的思想和工程化的方法,按用户至上的原则,结构化、模块化、自顶向下地对信息系统进行分析与设计。该方法严格按照信息系统开发的阶段性开展设计工作,每个阶段都产生一定的设计成果,通过评估后再进入下一阶段开发工作。
(1)优点:
- 从系统整体出发,强调在整体优化的条件下“自上而下”地分析和设计,保证了系统的整体性和目标的一致性;
- 遵循用户至上原则;
- 严格区分系统开发的阶段性;
- 每一阶段的工作成果是下一阶段的依据,便于系统开发的管理和控制;
- 文档规范化,按工程标准建立标准化的文档资料。
开发目标清晰化、开发工作阶段化、开发文档规范化、设计方法结构化
(2)缺点:
- 用户素质或系统分析员和管理者之间的沟通问题;
- 开发周期长,难于适应环境变化;
- 结构化程度较低的系统,在开发初期难以锁定功能要求。
(3)适用范围:
主要适用于规模较大、结构化程度较高的系统的开发。
补充:
结构化系统分析和设计方法的基本思想是用系统的思想、系统工程的方法,按用户至上的原则,结构化、模块化、自上而下对信息系统进行分析和设计。主要指导原则有以下几点。
(1)请用户共同参与系统的开发。
(2)在为用户编写有关文档时,要考虑到他们的专业技术水平,以及阅读与使用资料的目的。
(3)使用适当的画图工具做通信媒介,尽量减少与用户交流意见时发生问题的可能性。
(4)在进行系统详细设计工作之前,就建立一个系统的逻辑模型。
(5)采用“自上而下”方法进行系统分析和设计,把主要的功能逐级分解成具体的、比较单纯的功能。
(6)采用“自顶向下”方法进行系统测试,先从具体功能一级开始测试,解决主要问题,然后逐级向下测试,直到对最低一级具体功能测试完毕为止。
(7)在系统验收之前,就让用户看到系统的某些主要输出,把一个大的、复杂的系统逐级分解成小的、易于管理的系统,使用户能够尽早看到结果,及时提出意见。
(8)对系统的评价不仅是指开发和运行费用评价,而且还将是对整个系统生存过程的费用和收益的评价。
2. 面向对象开发方法
Object oriented(简写:OO),主张从客观世界固有的事物出发来构造系统,提倡用人类在现实生活中常用的思维方法来认识、理解和描述客观事物,强调最终建立的系统能够映射问题域,也就是说,系统中的对象以及对象之间的关系能够如实地反映问题域中固有事物及其关系。
与现实世界相对应,符合人们的思维习惯,更好的复用性,关键在于建立一个全面、合理、统一的模型,而分析、设计、实现三个阶段界限不明确。
(1)优点:
- 分析、设计中的对象和软件中的对象的一致性
- 实现软件复用,简化程序设计
- 系统易于维护
- 缩短开发周期
补充:
(1)采用全新的面向对象思想,使得系统的描述及信息模型的表示与客观实体相对应,符合人类的思维习惯,有利于系统开发过程中用户与开发人员的交流和沟通,缩短开发周期,提高系统开发的正确性和效率。
(2)系统开发的基础统一于对象之上,各个阶段工作过渡平滑,避免了许多中间转换环节和多余劳动,加快了系统开发的进程。
(3)面向对象技术中的各种概念和特性,如继承、封装、 多态性及消息传递机制等,使软件的一致性、模块的独立性、程序的共享和可重用性大大提高,也与分布式处理、多机系统及网络通信等发展趋势相吻合,具有广阔的应用前景。
(4)许多新型的软件中,采用或包含了面向对象的概念和有关技术,为面向对象的开发方法的应用提供了强大的技术支持,普适于各类信息系统的开发,但不可能适用于任何信息系统开发的全生命周期。
(2)缺点:
不易于大系统的开发
3. 原型化开发方法 (Prototypes)
Prototypes,a method of obtaining early feedback on requirements by providing a working model of the expected product before actually building it.
开发人员对用户提出的问题进行总结,就系统的主要需求取得一致意见后,开发出一个原型并运行之,然后反复对原型进行修改,使之逐步完善,直到用户对系统完全满意为止。原型化开发方法的开发过程中,可以脱离早期构造的软件原型进行独立,原型化方法实际上是一种快速确定需求的策略,对用户的需求进行提取、求精,快速建立最终系统工作是模型的方法。
(1)优点:
- 符合人们认识事物的规律,系统开发循序渐进,反复修改,确保较好的用户满意度;
- 开发周期短,费用相对少;
- 由于有用户的直接参与,系统更加贴近实际;
- 以用户为中心来开发系统,用户积极参与,提高了系统开发的成功率;
- 易学易用,减少用户的培训时间;
- 应变能力强。
(2)缺点:
- 不适合大规模系统的开发;
- 开发过程管理要求高,整个开发过程要经过“修改—评价—再修改”的多次反复;
- 开发环境要求高;
- 用户过早看到系统原型,误认为系统就是就是这个模样,易使用户失去信心;
- 如果用户合作不好,盲目纠错,会拖延开发进度。
- 开发人员易将原型取代系统分析;
- 缺乏规范化的文档资料;
- 管理水平要求高,由于不是一个独立开发方法,注定原型发必须与其他信息系统开发方法相结合使用。
(3)适用范围:
- 适合于
- 处理过程明确、简单系统
- 涉及面窄的小型系统
- 不适合于:
- 大型、复杂系统
- 存在大量运算、逻辑性强的处理系统
- 管理基础工作不完善、处理过程不规范
- 大量批处理系统
4. 面向服务架构
面向服务架构(Service-Oriented Architecture,SOA),可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
面向服务的企业架构为了更能适应多变的业务需求,第一次把开发和运维也纳入到企业架构中,和运行架构一同组成了企业架构,这样就消除了企业中应用的烟囱式结构,取而代之的是服务共享的一体化信息系统体系。这样保证了面向服务的企业架构能发挥出最大的价值,更能从IT需求到上线、维护一体化地实现IT战略的价值。
许多企业在信息化建设过程中出现了诸多问题,如:信息孤岛多,信息不一致,难以整合共享。各应用系统之间、企业上下级之间、企业与上下游伙伴之间业务难以协同;信息系统难以适应快速的业务变化等。为解决这些问题,企业信息化建设采用( )架构已是流行趋势。
A.面向过程
B.面向对象
C.面向服务
D.面向组件
《信息系统项目管理师教程》第三版,信息化和信息系统—面向服务方法—P17:
从应用的角度来看,组织内部、组织之间各种应用系统的互相通信和互操作性直接影响着组织对信息的掌握程度和处理速度。如何使信息系统快速响应需求与环境变化,提高系统可复用性、信息资源共享和系统之间的互操作性,成为影晌信息化建设效率的关键问题,而SO的思维方式恰好满足了这种需求。
面向服务跟面向对象
共同点:可复用
不同点:面向对象易造成结构不合理,关系失调;面向服务容易实现共享,互操作性强。