第一章 系统工程与信息系统基础
1 软件开发方法
(1) 结构化开发
特点:用户至上,自顶而下,逐步分解,严格区分工作阶段,每阶段都有任务和结果,强调系统开发过程的整体性和全局性,系统开发过程工程化,资料文档标准化。
优点:理论基础严密,它的指导思想是在用户需求在系统建立之前就能被充分了解和理解。由此可见,结构化开发方法注重开发过程的整体性和全局性。
缺点:开发周期长,文档,设计说明繁琐,工作效率低。要求在开发之初全面认识系统的信息需求,充分预料各种可能的变化,但这并不十分的现实;若用户参与系统开发的积极性没有充分调动,就会造成系统交接过程不平稳,使系统的运行与维护管理难度加大。阶段固化,不删变化,只适用于需求明确的开发场景。
(2) 原型开发方法
适用于需求不明确的开发场景。按功能分为水平原型(界面)、垂直原型(复杂算法);按最终结果,分为抛弃式原型和演化式原型。原型法的特点在于原型法对用户的需求的动态响应、逐步纳入的,系统分析,设计和实现都是随着对一个工作模型的不断修改而同时完成的,相互之间并不明显界限,也没有明确分工。系统开发计划就是一个反复修改的过程。适用于用户需求开始时定义不清、管理决策方法结构化程度不高的系统开发,开发方法更易被用户接受;但如果用户配合不好,盲目修改,就会拖延项目进度。
(3) 面向对象开发方法
最早起源于仿真领域,其特点是系统的描述及信息模型与客观实体相对应,符合人们的思维习惯,有利于开发过程中用户与开发人员的交流和沟通,缩短开发周期,提供系统开发的准确性和效率。具有更好的复用性,关键在于建立一个全面、合理、统一的模型,分析,设计、实现三个阶段界限不明确。
用面向对象方法开发软件,通常需要建立三种形式的模型:对象模型(描述系统的数据结构),动态模型(描述系统的控制结构),功能模型(描述系统功能)
(4) 面向服务开发方法
以粗粒度、松散耦合的系统功能为核心,强调系统的标准化和构件化,加强了系统的灵活性、可复用性和可演化性。
从概念上讲,SO方法有三个主要的抽象级别:操作,服务,业务流程。
操作:代表单个逻辑工作单元(LWU)的事务。
服务:代表操作的逻辑分组。
业务流程:为实现特定业务目标而执行的一组长期运行的动作和活动
2 信息系统分类
信息系统的分类 | 关键点 |
业务处理系统(TPS) | 早期最初级的信息系统[20世纪50-60年代] 功能:数据输入、数据处理[批处理、OLTP]、数据库维护、文件报表产生 |
管理信息系统(MIS) | 高度集成化的人机信息系统。 金宇塔结构:分多个层级 |
决策支持系统(DSS) | 由语言系统、知识系统和问题处理系统组成。 用于辅助决策、支持决策。 |
专家系统(ES) | 知识 + 推理=专家系统。人工智能的一个重要分支。 |
办公自动化系统(OA) | 有计算机设备、办公设备、数据通信、网络设备、软件系统组成。 |
企业资源计划(ERP) | 打通供应链,集成,整合 |