结构化分析与设计:基本思想是将系统设计成由相对独立、功能单一的模块组成的结构
信息系统开发5阶段:
⑴总体规划阶段:
内容:包括信息系统的开发范围和目标;信息系统的开发的约束条件;组织及其管理的现状;问题的解决方案;信息系统的总体结构;信息系统建设计划;相关的信息技术发展预测;
主要目标:制定出信息系统的长期发展方案,决定信息系统在整个生命周期内的发展方向、规模和发展进程
主要任务:制定信息系统的发展战略;确定组织的主要信息需求,形成信息系统的总体机构方案,安排项目开发计划;制定系统建设的资源分配计划。
步骤:
1、 对当前系统进行初步的调查
2、 分析确定系统目标
3、 分析子系统的组成以及基本功能
4、 拟定系统的实施方案
5、 进行系统的可行性研究
6、 编写可行性报告
总体规划方法:关键成功因素法(CSF)战略目标集转化法(SST)
可行性分析内容:经济可行性;技术可行性;管理上的可行性;开发环境的可行性;
可行性分析报告内容:引言;现行系统调查和分析;新系统建设方案
⑵系统分析阶段:
目的是为系统设计阶段提供系统的逻辑模型,系统设计阶段再根据这个模型进行物理方案设计;
主要任务是将在系统详细调查中所得到的文档资料集中在一起,对系统内部整体管理状况和信息处理过程进行分析,主要解决“作什么”的问题,
步骤:
1、对当前系统进行详细调查,收集数据(组织结构调查,功能体系调查,业务流程调查,数据流程调查)
2、 建立当前系统的逻辑模型(组织结构和业务流程详细调查;业务流程图和系统概况图;业务流程优化与再造)
3、 对现状进行分析,提出改进意见和新系统应达到的目标(系统范围和目标分析;系统组织结构和功能分析;系统性能分析)
4、 建立新系统的逻辑模型(数据流程分析:物资流;事务流;货币流;人员流;机械设备流;数据流;数据流用于控制其他流,而事务流则为被控制的对象)
数据流图:(数据守恒,文件使用;子图父图平衡;加工和数据流命名)
⑴图中不应存在无输入或无输出的加工环节
⑵保持父项内容为对应的子项内容之和
⑶下层数据流图不应出现不属于上层图中的数据流子项的新数据流
⑷数据流必须经过加工环节
数据字典项目描述内容:
数据元素:名称;别名;类型;取值范围和取值的含义;长度
数据结构:
数据流:
来源;去处;组成;流通量;高峰时的流通量
数据存储:
外部实体:
处理:
其他辅助工具:数据字典结构化语言;决策表;决策树
5、 编写系统方案说明书
⑶系统设计阶段:
任务:是在各种技术和实施方法中权衡利弊,精心设计,合理的使用各种资源,最终勾画出新系统的详细设计方案;
内容:是新系统总体结构设计、代码设计、数据库设计、输入输出设计、处理流程及模块功能设计、安全控制点设计
系统结构设计原则:
①分解-协调原则*(按功能分解)
②自顶向下
③信息隐蔽、抽象的原则:各个模块独立,内部结构合理
④一致性原则:统一规范,统一标准,统一文件模式
⑤模块的扇入扇出系数合理(3,4,不超过7)
⑥模块规模适当(1,2页纸)
概要设计
模块的耦合和内聚;
耦合:
数据耦合(通信信息是若干数据项);
控制耦合(通信信息是控制信息);
非法耦合(不经调用直接使用)
内聚:
巧合内聚;
逻辑内聚(模块各组成部分逻辑动作上相似);
时间内聚(模块包含的动作必须在同一时间内执行);
过程内聚(受同一控制流支配,决定他们的执行顺序);
通信内聚(模块内组成部分的处理动作都使用或产生相同数据);
顺序内聚(模块内各组成部分的处理动作有顺序关系,某一成分的输入是另一成分的输出);功能内聚(各组成部分的处理动作都是为了同一个功能而联系在一起的)
详细设计:程序流程图;盒图(NS图);形式语言;决策树;决策表
程序设计方法:
结构化程序设计方法:开发过程不规范,模块划分不细,或者因特殊业务处理的需要模块程序量较大时
快速原型程序开发方法:把带有普遍性的功能模块集中,后寻找有无相应,可用的软件工具,如没有则考虑开发一个能够适合各子系统情况的通用模块,然后用这些工具生成这些程序模块的原型
面向对象程序设计方法:
⑷系统实施阶段:实现系统
⑸系统运行和评估阶段:
纠错性维护21%;适应性维护25%;完整性维护59%;预防性维护4%
系统可维护性:可理解性;可测试性;可修改性;
总体规划
-----
可行性分析报告
—
》系统分析
----
系统方案说明书(系统分析报告)
—
》系统设计
—
系统设计说明书
—
》系统实施
—
用户说明书
—
》系统运行和评估
优点:
1、 结构化分析方法简单,易于掌握和使用
2、 结果用图形表示,如业务流程图,数据流程图
3、 实施步骤是先分析现实环境已存在系统,再构思新的目标系统,大大降低了问题复杂度
缺点:
1、 要求对系统有完整确切的需求定义,实际上非常困难
2、 文档资料数据量大
3、 人机界面表达能力差,
4、 描述的模型仅仅是书面的,只能供人们阅读,不能试用从而及时获得用户的反馈信息
项目管理:主要任务是制定项目实施计划,对人员进行组织,分工,并按照计划进度和成本管理,风险管理,质量管理的要求,进行系统开发并最终实现预期的目标