任何事物都有产生、发展、成熟、消亡或更新的过程,信息系统也不例外。信息系统从申请立项、确定功能、设计,到成功开发投入使用,并在使用过程中不断修改、增补和完善,直到它不再适应新的需求被淘汰,被新系统替换,这种周期循环称为生命周期。信息系统的生命周期可以分为系统规划、系统分析、系统设计、系统实施、系统运行和维护等5个阶段。
基于信息系统生命周期的结构化系统开发方法在实践中发展最为成熟,并得到了广泛应用。本课程按照传统的结构化系统开发方法由浅入深、系统地介绍了信息系统的规划、需求分析、设计、实施、运行与维护的全过程;然后还着重介绍了一下当前最为流行的面向对象的信息系统分析与设计方法。
本课程精选了信息系统开发过程中最基本、最实用的知识进行了详细介绍,注重可读性、实用性和可操作性,尽可能让学习者在较短的时间里掌握信息系统分析与设计的最重要、最核心内容。此外,课程内容按照教学规律进行了精心设计,按照循序渐进、由易到难的原则进行了合理编排,从理论到方法,再从方法到实践,重点突出了实例教学。
本课程的培养目标是帮助学习者在较短的时间内熟悉和掌握信息系统的开发流程及常用的方法和工具,建立信息系统开发的总体思路,培养具有开发信息系统的初步能力,为今后从事信息管理和信息系统的使用与开发打下坚实的基础。
信息系统分析与设计课程是信息管理与信息系统等专业的必修主干课。通过本课程的学习帮助大家树立开发信息系统的宏观思想,培养学生掌握信息系统的规划、分析、设计、实施和维护管理的基本方法,为使用和开发信息系统奠定扎实的基础。
第1章 信息系统导论
1.1 信息和系统的概述
1.2 信息系统概述
1.3 信息化、信息社会与信息素质
信息系统导论单元测试
第2章 信息系统开发概论
2.1 信息系统的用户及开发环境
2.2 信息系统的开发规律与生命周期
2.3 信息系统的开发方法
信息系统开发概论单元测试
第3章 信息系统的规划
3.1 信息系统规划概述
3.2 信息系统规划方法
3.3 信息系统的可行性研究一
3.4 信息系统的可行性研究二
系统规划单元测试
第4章 信息系统的需求分析
4.1 需求分析概述
4.2 结构化分析方法:数据流图
4.3 结构化分析方法:数据字典
4.4 加工逻辑的描述工具的介绍
4.5 数据流图的练习
4.6 判定表的练习
需求分析单元测试
数据流图的运用
判定表的使用
第5章 信息系统的设计
5.1 系统设计的基本原理一
5.2 系统设计的基本原理二
5.3 系统设计的优化规则
5.4 总体设计概述
5.5 面向数据流的总体设计方法一
5.6 面向数据流的总体设计方法二
5.7 详细设计概述
5.8 详细设计工具
5.9 人-机界面设计
5.10 详细设计工具的练习
信息系统设计单元测试
详细设计中图形工具的运用
第6章 信息系统的实施
6.1 程序设计语言及选择
6.2 程序的编码风格
6.3 系统测试概述
6.4 系统测试的步骤
6.5 白盒测试法
6.6 黑盒测试法:等价类划分法
6.7 黑盒测试法:边界值分析法与错误推测法
6.8 黑盒测试法:因果图法
6.9 实用综合测试策略和调试
6.10 等价类划分法的练习
信息系统实施单元测试
等价类划分法的使用
第7章 信息系统的运行与维护
7.1 信息系统的运行
7.2 系统维护一
7.3 系统维护二
信息系统运行维护单元测试
第8章 面向对象的信息系统开发基础
8.1 面向对象方法概论
8.2 面向对象建模语言UML
面向对象的信息系统开发基础单元测试
第9章 面向对象的系统分析
9.1 OOA的概述及建立需求模型一
9.2 建立需求模型二
9.3 建立分析模型
9.4 面向对象的需求分析实例
面向对象系统分析的单元测试
第10章 面向对象的系统设计
10.1 面向对象的设计一
10.2 面向对象的设计二
10.3 面向对象系统设计的实例
面向对象的系统设计单元测试
第11章 信息系统项目的管理
11.1 信息系统项目的成本管理
11.2 信息系统项目的风险管理
11.3 信息系统项目的时间管理
11.4 信息系统项目的质量管理
11.5 信息系统项目的人员管理
11.6 信息系统项目的文档管理
信息系统项目管理单元测试
第12章 课程知识大串讲
课程知识大串讲
本课程的先行课:计算机基础、数据结构、高级语言程序设计、数据库原理等。
[1] 杨选辉.信息系统分析与设计(第2版).北京:清华大学出版社,2019
[2] 麻志毅.面向对象分析与设计(第2版).北京:机械工业出版社,2013
[3] 李洪波,邹海林.企业级典型Web信息系统项目实践.北京:清华大学出版社,2015
[4] 薛均晓,李占波等.UML系统分析与设计.北京:机械工业出版社,2016
[5] 胡智喜等.UML面向对象系统分析与设计教程.北京:电子工业出版社,2014
[6] 杨律青.软件项目管理.北京:电子工业出版社,2012
Q: 数据流图的组成符合和数据字典包括的条目的对比。
A: 数据流图有4种基本符号:数据的源点或终点、数据的加工、数据存储和数据流。
数据字典是关于数据流图中各种成分详细定义的信息集合,可将其按照说明对象的类型划分为4类条目,分别为数据流条目、数据项条目、数据文件条目和数据加工条目。
Q: 变换分析和事务分析的区别。
A: 两者前两步一样,根据第三步胡判断后采用不同的分析过程。
变换分析的设计步骤如下:
(1) 复查基本系统模型。
(2) 复查并精化数据流图。
(3) 确定数据流图具有变换特性。
(4) 确定输入流和输出流的边界,从而孤立出变换中心。
(5) 完成“第一级分解”。
(6) 完成“第二级分解”。
(7) 根据系统设计原理和优化规则,精化所得到的系统结构雏形,改良软件质量。
事务分析的设计步骤如下:
(1)复审基本系统模型;
(2)复审和细化系统的数据流图;
(3)确定数据流图中含有变换流特征还是含有事务流特征;
(4)识别事务中心和每一条操作路径上的流特征。事务中心通常位于几条操作路径的起始点上;
(5)将数据流图映射到事务型系统结构图,包括:输入分支、分类事务处理分支(调度)和输出分支;
(6)分解和细化该事务结构和每一条操作路径的结构;
(7) 利用一些优化规则来改进系统的初始结构图。
Q: PDL语言与结构化语言的区别。
A: PDL语言的构成与用于描述加工的结构化语言相似但又有区别:
相似之处:是一种介于自然语言(英语或汉语)和形式化语言之间的半形式化语言。
主要区别在于:由于PDL语言表达的算法是编码的直接依据,因此其语法结构比结构化语言更加严格并且处理过程描述也更加具体详细。
Q: 白盒测试法和黑盒测试法的区别。
A: 一个从内部,一个从外部。
白盒测试方法把测试对象看作一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。逻辑覆盖和基本路径测试是两种常见的白盒测试技术。
黑盒测试是功能测试,因此设计测试用例时,需要研究需求说明和概要设计说明中有关程序功能或输入、输出之间的关系等信息,从而与测试后的结果进行分析比较。黑盒测试技术不能取代白盒测试技术,它是与白盒测试技术互补的方法。黑盒测试很可能发现白盒测试不易发现的其他不同类型的错误。用黑盒技术设计测试用例的方法一般有4种:等价类划分法、边界值分析法、错误推测法和因果图法,
但没有一种方法能提供一组完整的测试用例以检查程序的全部功能,在实际测试中应该把各种方法结合起来使用。
Q: 系统测试与调试的区别。
A: 系统测试是为了发现程序中的错误而执行程序的过程。具体地说,系统测试是根据系统开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例(包括测试的数据和预期的输出结果),并利用测试用例来运行程序,以发现程序错误的过程。
系统调试是指在成功地进行了测试之后,进一步诊断和改进程序中存在的错误过程。它由两部分工作组成:确定存在程序中发生错误的确切的性质和位置;对程序进行修改和排除。
系统测试的目的是尽可能多地发现程序中的错误,而调试则是在进行了成功的测试之后才开始的工作。