信息系统分析与设计全面总结.docx
《信息系统分析与设计全面总结.docx》由会员分享,可在线阅读,更多相关《信息系统分析与设计全面总结.docx(17页珍藏版)》请在冰豆网上搜索。
信息系统分析与设计全面总结
鱼夭
第一章系统思想
1系统的概念
@定义:
系统就是由相互联系与相互制约的若干组成部分结合成的、具有特定功能的有机整体
@概念理解:
系统就是由若干要素组成的,就是一个集合体;
系统有一定的结构,同一系统的元素之间相互联系、相互作用。
元素之间一切联系方式的总与,称为系统的结构(主要的、相对稳定的、有一定规则的联系方式);
系统具有特定功能,凡就是系统都有一定的目的性。
2系统的模型,概念的抽象级别
1)实体系统(物理系统)——最具体的确定存在的系统(系统实施阶段产生)。
——物理模型表达了具体的物理系统,模型中的元素都可以对应于实体(系统设计阶段产生)。
2)逻辑系统——介于实体系统与概念系统之间,利用人类抽象思维能力,抽取系统本质,描绘了系统的各个侧面(如静态的结构、动态的过程等)。
使用逻辑模型表达(系统分析阶段产生),一个逻辑系统可以建立不同的物理模型与实体系统。
3)概念系统——最抽象的系统,根据系统目标构思出来的系统雏形,描绘了系统的大致轮廓。
使用概念模型表达(系统规划阶段产生)
3系统的整体性、层次性
@系统的特性:
整体性、层次性、目的性、稳定性、突变性、自组织性、相似性
-系统整体性:
指系统就是由若干要素组成的具有一定新功能的有机整体,各个要素一旦组成系统整体,就表现出独立要素所不具备的性质与功能,形成新的系统的质的规定性,从而表现出整体的性质与功能不等于各个要素的性质与功能的简单相加。
整体性表现在:
-系统由部件组成,部件之间不就是简单累加,而就是具有了新的质
-亚里士多德名言“整体大于部分之与”:
1+1>2
-与之相反“一个与尚挑水吃,…三个与尚没水吃”
-整体性以有机关联性为保证(部件的不可分割)
-划分系统以及子系统就就是要从整体性出发,充分考虑各组成元素之间的关联性。
-比如学校系统教师工资的计算
-系统的层次性:
指的就是,由于组成系统的诸要素的中中差异,使系统组织在地位、结构与功能上表现出等级秩序性,形成具有质的差异的系统等级
层次性表现在:
-系统组织表现出等级性
-系统要素中,存在子系统,子系统的要素中又包含更低一层的子系统
-从上至下组成金字塔结构,逐层具体化
-比如企业组织结构、地区划分
-结构化方法就就是考虑到系统的层次性,采取从抽象到具体、逐步求精的方法对系统进行研究
4系统思想的发展
古代朴素的系统思想
系统思想的淹没
现代系统思想的兴起
复杂系统理论热潮
5系统工程方法
@1962年美国贝尔电话公司的霍尔,发《系统工程方法论》
1、问题定义2、目标选择3、系统综合4、系统分析5、最优系统选择6、实施计划
@1969年霍尔三维结构
时间维、逻辑维、知识维
6软系统方法论
@硬系统就是指具有良结构化(well-structured)的工程系统,问题与目标就是确定的,能用明确的数学模型描述,可以使用定量方法计算出系统行为与最优结果
@切克兰德创立软系统方法论
@无结构的问题:
-问题虽然就是“可认识的”,但不就是“可定义的”
-对问题的这种认识永远就是主观的,并且随时间而改变
-与其说就是有待解决的问题,不如说就是有待改善的状况
7物理-事理-人理系统方法论WSR
@20世纪90年代顾基等人提出WSR
物理——就是什么事理——怎么去做人理——最好怎么做
@“懂物理、明事理、通人理”就是实践准则
@WSR的7个步骤:
1、理解意图2、指定目标3、调查分析4、构造策略5、选择方案6、协调关系7、实现构想
第二章信息与信息系统
1什么就是信息,信息与数据的关系
@信息就是经过加工后的数据,它对接受者有用,对决策或行为有现实或潜在的价值
@数据与信息的关系可以瞧做原料与成品的关系。
——数据就是未经组织的数字、词语、声音、图像等;
——信息就是以有意义的形式加以排列与处理的数据(有意义的数据);
——知识就是用于生产的信息(有意义的信息),就是人类关于自然界、人类社会及思维方式与运动规律的认识、经验的总与。
@例:
气温器上的温度指示,数据
今天我要出门,最低气温就是0度,信息
水在0度结冰,知识
今年冬天平均气温非常低,燃料将短缺,情报
@从信息系统角度瞧,信息具有的一些基本属性:
事实性、扩散性、穿属性、共享性、增值性、不完全性、等级性、滞后性
2信息处理器
@人进行信息处理的特点
-人需要反馈
-人需要一些多余的信息
-人们需要信息的压缩
-人们对信息需求的口味各异
-人需要非口语的信息输入
@人与计算机的比较:
人比计算机聪明,计算机比人快。
3信息与决策、信息与管理的关系
@信息就是管理的基础,管理的基本职能离不开信息
-信息就是制定计划的依据
-信息就是组织实施的保证
-信息室调节控制的指示器
-信息室激励员工的依据
-信息室领导指挥的基础
@管理的决策理论学派认为“管理就就是决策”,决策过程就就是收集、处理与使用信息的过程。
信息就是决策的关键因素
@管理活动的三个层次及对应使用信息
高层(战略管理)——战略信息
中层(战术管理)——战术信息
基层(作业管理)——业务信息
4、信息管理
@狭义信息管理认为信息管理就就是对信息本身的管理,即采用各种技术方法与手段对信息进行组织、规划、控制、存储与检索等,并达到预定目标。
@广义信息管理认为就是对信息资源及其相关资源(如信息设备、信息技术、信息人员、信息系统等)进行规划、组织、领导与控制的过程。
5、信息系统就是什么?
有哪些功能?
@定义:
信息系统就就是输入数据,通过加工处理,产生信息的系统。
@以计算机为基础的信息系统就是结合管理理论与方法,应用信息技术解决管理问题,为管理决策提供支持的系统。
@它就是管理理论、系统科学方法论与信息技术交叉形成的综合性应用学科。
信息系统学科注重研究管理与信息技术的结合,而不深入得讨论具体的管理问题,也不致力于计算机或通信技术方面的研究。
@功能:
-信息的采集与输入:
主要就是识别、采集、校验
-信息的传输:
数据通信的手段
-信息的存储:
介质?
在哪?
时效?
-信息的加工:
查询、排序、归并、数学模型、人工智能
-信息的维护:
准确、及时、安全、保密
-信息的使用:
技术层面、价值深度
6、信息系统的结构
1)概念结构
2)基于管理职能的逻辑结构
3)基于计算机实现的物理结构(硬件结构+软件结构)
硬件结构分为:
集中式+分布式(文件服务器,C/S,B/S)
集中式——主机-终端结构:
处理能力集中在主机,集中存储、计算;终端用于输入输出,无cpu
分布式——文件服务器系统:
程序与数据集中在文件服务器中;客户机根据权限存取服务器中文件,客户机有处理能力
——C/S结构,客户/服务器结构:
客户机完成本地运算,可向服务器请求某种服务(如查询数据),服务器相应请求,完成运算后,将结果返回给客户机。
——B/S结构,浏览器/服务器结构:
增加Web服务器,获取客户端请求,解析处理后生成HTML文件返回给客户端;客户端配置浏览器软件(如IE),通过网页方式实现信息的访问。
7、C/S与B/S软件结构
C/S软件结构:
数据库——数据库服务器——windows窗口应用程序
B/S软件结构:
数据库——数据库服务器——web应用服务器+web应用程序——浏览器程序
第三章信息系统建设概论
1信息系统建设的特点
信息系统建设就是个复杂的社会过程:
-技术手段复杂
-内容复杂,目标多样
-投资密度大
-环境复杂多变
2什么就是信息系统的生命周期?
几个阶段?
每个阶段的任务就是什么?
@生命周期的定义:
信息系统在使用过程中随着生存环境的变化,需不断维护、修改,当它不再适应的时候就要被淘汰,就要由新系统代替老系统,这种周期循环称为信息系系统的周期
@5个阶段:
规划、分析、设计、实施、运维
系统规划——确定信息系统的发展规划;企业业务流程的识别、改革与创新;对建设新系统的需求做出初步研究,确定信息系统的总体结构;确定系统的备选方案,对方案进行可行性分析(开发请求-初步调查-可行性研究-审批)
系统分析——详细调查,确定系统的基本目标与逻辑功能要求(详细调查-逻辑设计-审查)
系统设计——根据系统说明书中规定的功能要求,考虑实际条件,具体设计实现逻辑模型的技术方案(总体设计-详细设计-审查)
技术实施——计算机等设备的购置、安装与调试;编写、调试与测试程序;人员培训;数据准备或转换;系统调试与转换(编程调试-系统转换-验收)
系统维护——运行情况的记录;必要的修改;评价呵呵总结等(系统维护-系统评价)
3围绕生命周期有哪些开发过程模型?
各自特点(瀑布、原型、迭代)
@模型:
瀑布开发方法、原型开发方法、迭代开发方法、螺旋开发方法、敏捷开法方法……
@瀑布开法方法——
特点:
简单易用,容易理解
开发的进程一个顺着一个,没有反馈过程,需要严密控制
允许基线与配置早期接收控制
一个新的项目不适合这个模型
用户直到项目结束才能瞧到质量如何
不允许或者严格限制变更
不足:
1需求:
客户常常难以表达真正的需求,而这种模型却要求严格的阶段性成果,返工困难,变更代价很大
2风险:
客户要等到开发周期的晚期才能瞧到程序运行的测试版本,这时若发现大的错误,可能引起客户的惊慌,其后果也可能就是灾难性的
3效率:
因为前后任务的依赖关系,成员不能并行工作,有可能花在等待的时间比开发的时间要长,即所谓的“堵塞状态”
应用场合:
适用于一些需求已明确并且变化较少的信息系统
@原型开发方法——
特点:
用户积极参与;
原型的开发没有严密的阶段性
短期获得测试版本,降低风险
不足:
1用户随意无止境的需求变化,因为用户容易产生误解,认为系统很容易被构造与修改
2如果采用原型基础上继续构造,由于修补过度,软件质量不易于保证
3开发人员为了快速构造原型,可能会采用不合适的操作系统、语言、算法等,造成后期风险,如系统适应性差、维护困难等
应用场合:
1需求含糊,用户不能标识详细的输入、处理与输出需求
2设计方案不明确,开发人员不能确定算法的有效性、操作系统的适应性或人机交互的有效性
@迭代开发方法——
@增量迭代——
特点:
1以功能递增的方式进行软件开发(可并行化)
2能较快地产生可操作的系统
3在每一步递增中,都可以把用户/开发者的经验结合到不断求精的下一个增量中
4可改善测试效果与降低软件开发总成本。
5这个过程好比搭积木。
应用场合:
1项目开始,明确了需求的大部分,但就是需求可能会发生变化
2对于市场与用户把握不就是很准,需要逐步了解
3对于有庞大与复杂功能的系统进行功能改进,本身就需要一步一步实施的。
@进化迭代——
特点:
1进化迭代与增量迭代的区别就是在每个迭代周期就是对上一次迭代的演化与完善。
2比如可以将一个软件功能的编程划分了多个迭代周期,每个迭代就是对该功能的补充与进化。
3这个过程好比滚雪球。
@螺旋开发方法——
定义:
把软件开发过程定义成不断上升的螺旋周期,每个周期分为计划、风险分析、实施与评价四个方面。
沿螺线自内而外每旋转一圈便开发出更为完善的一个新的软件版本。
特点:
1风险驱动,可以在生命周期早期强制性的确定项目中存在的风险
2需要开发人员具有相当丰富的风险评估经验与专门知识
3要求用户参与阶段评价,对用户要求较高
应用场合:
单位内部开发的大规模软件项目
风险就是项目的主要制约因素
可能会发生重大变更
采用新技术
4信息系统为什么要建模?
有哪些模型?
对软件结构进行建模有什么方法,主要思想就是什么?
@建模的原因:
-对复杂的问题进行简化,帮助有关人员快速、直观、准确了解系统;
-建模过程使得分析师与设计师能全面研究系统,深思熟虑,形成更成熟的方案;
-各阶段产生的模型为后续阶段的有关人员提供了工作依据;
-为项目各类人员提供了统一的交流工具,利于沟通;
-为项目验收与将来的维护提供文档依据……
@模型类型:
业务流程图、数据流图、程序流程图、实体关系图、模块结构图、判定表判定树、UML
@对软件结构建模的方法:
UML(类图、用例图、顺序图等)
@UML主要思想:
通过不同的图来描述系统的结构、行为、交互过程
5有哪些开发方式?
各自利弊
1结构化方法
容易理解与交流,对于大系统可以从全局逐步展开到局部,整体性较好。
结构化方法就是其她系统开发方法(如面向对象方法)的基础。
2面向对象
稳定可靠,有利于维护与重用,并容易实现多层分布式结构,但对前期分析设计人员要求较高,用户理解模型有困难。
3面向服务
松耦合、自描述、可重用、开放标准。
以XML为基础,将已有的服务进行重新组合后可以快速建立新的业务流程,要求分析有较强的业务流程的抽象能力。
以结构化方法与面向对象方法为基础。
第四章系统规划
1系统规划的特点、任务
@系统规划的任务:
-制定信息系统发展战略
-制定信息系统总体方案,安排项目开发计划
-制定信息系统资源分配
@系统规划的特点:
-面向全局、长远,不确定性,结构化程度低
-面向高层管理人员
-不宜过细,着眼于子系统划分及相互关系
-应与企业规划同步
2规划方法
1战略目标集转移法(SST-strategysettransformation)
2企业系统规划法(BSP-businesssystemplanning)
3关键成功因素法(KSF-keysuccessfulfactors,或CSF-criticalsuccessfactors)
4价值链分析法(VCA-valuechainanalysis)
3企业系统规划法的步骤
1定义管理目标
2定义管理功能组
3定义数据分类
4定义信息结构
4什么就是可行性分析,包括哪三个方面?
@“可行性”就是指在企业当前情况下,研制这个信息系统就是否有必要,就是否具备必要的条件。
(可能性、必要性、合理性)
@可行性分析的内容:
-技术可行性
-经济可行性
-社会可行性
5资源的生命周期
资源的生命周期,就是指一项资源由获得到退出所经历的阶段,一般划分为产生、获得、服务与归宿四个阶段
第五章系统分析概述
1系统分析的任务
系统分析员(systemanalyst,SA)与用户在一起,充分了解用户的要求,并把双方的理解用系统说明书表达出来。
系统说明书审核通过之后,将成为系统设计的依据,也就是将来验收系统的依据。
2分析阶段有哪些系统调查方法,调查什么
@调查就是识别需求的基础,就是建立系统逻辑模型的基础。
调查包括:
-业务处理过程就是什么样的?
(干什么?
)
-业务过程应该怎样完成?
(怎么干?
)
-业务谁负责,完成业务需要什么输入,能输出什么?
@传统的系统调查方法有:
-资料收集
-访谈
-实地观察
-问卷调查
3两种方法:
@结构化系统分析(基于功能分解设计系统结构,通过不断把复杂的处理逐层分解来简化问题,它从内部功能上模拟客观世界)
@面向对象系统分析(强调人在日常的逻辑思维中经常采取的思想方法与原则,例如:
抽象、分类、继承、聚合、封装)
4系统说明书的内容
1引言
-项目名称、目标、背景、引用资料、术语说明等
2项目描述
-项目的主要工作内容
-现行系统的调查情况
-功能需求
-数据需求
-其她需求
3实施计划
-工作任务的分解
-进度
-预算
第六章结构化系统分析
1数据流图描述了什么?
绘制数据流图要注意的事项,应能绘制
@数据流图描述数据流动、存储、处理的逻辑关系,也称为逻辑数据流图,一般用DFD表示。
@注意事项:
关于层次的划分,语法的正确性,可读性,确定系统边界。
为什么需要数据字典?
数据字典应该包含哪些条目?
应能书写数据流、数据存储及处理条目
@为什么需要数据字典:
数据流图描述了系统的分解,但就是没有说明系统中各个成分的含义。
@数据字典的各类条目:
数据元素;数据结构;数据流;数据存储;处理过程;外部实体
对于复杂逻辑有几种表述方式(决策树、决策表,考题)?
优缺点
@针对复杂的处理逻辑,可以使用:
结构化语言、判定表、判定树
@判定树
1如果一个动作的执行不只就是依赖一个条件,而就是与多个条件有关,那么这项策略的表达就比较复杂,就可以使用判定树来表示。
2比如:
邮政系统中,包裹邮资的计算策略与国别、路程、重量、保值额度等有关,使用自然语言来描述显然不够简洁
@判定表
1如果条件较多、每种条件的取值情况也较多的情况下,可以使用判定表。
2判定表的优点就是可以把各种组合情况一个不漏地表示出来,还能帮助发现遗漏与矛盾的地方。
第七章面向对象系统分析
1面向对象方法的基本思想与有关概念
对象、类、属性与操作
封装、隐藏
消息
继承
多态
关系
2UML就是什么,主要包含哪些图?
(UML1、X)每种图的用途就是什么?
3用例图,参与者与用例的概念,用例与用例之间的关系(包含关系与扩展关系),绘制用例图
@用例(usecase)就是对于一组动作序列的描述,系统执行这些动作会对特定的参与者(actor)产生可观测的、有价值的结果。
@参与者就是系统之外与系统进行交互的任何事物。
@用例关系:
包含关系:
经过封装后可以在各种不同的基本用例中复用的行为称为包含用例。
扩展关系:
表达某些可选或只在特定条件下才执行的系统行为的用例,它们就是对基本用例的扩展。
称为扩展用例。
泛化关系:
如果两个或更多用例在行为、结构与目的方面存在共性,可以使用泛化关系。
父用例描述这些共有部分,子用例继承父用例并特殊化。
4用例规格说明(前置条件、后置条件、主事件流、备选事件流)
@前置条件(pre-condition):
表述在系统允许用例开始以前,系统应确保为真的条件。
这可为后续的编程人员提供帮助,从而确定在用例的实现代码中哪些条件无须再次检验。
如果前置条件不满足,用例无法被启动,比如“预定图书”用例的前置条件就是读者已正确登录到系统中。
@后置条件(guarantee):
或称为成功保证。
表述在用例结束时,系统将要保证的限定条件,一般都就是在成功完成用例后成立。
一旦用例被成功地执行,可能会导致系统内部某些状态的改变,比如成功地“借出图书”会使图书状态改变等。
@主事件流就是指能够满足目标的典型的成功路径。
不包括条件及分支
主成功场景/开心路径/基本路径
@备选事件流就是指除主事件流之外的各种可能失败情况、分支路径或扩展路径。
备选事件流的编号要与主事件流相对应。
5类图中包含哪四种关系(耦合),具体什么含义,如何表示,绘制类图
@关联——一个对象拥有另一个对象
@泛化——泛化就是指父类与其一个或多个子类之间的关系
@实现——实现关系将一种模型元素(如类)与另一种模型元素(如接口)连接起来,由实现关系指定二者之间的一个契约(Contract),一个模型元素定义一个契约,而另一个模型元素保证履行该契约
@依赖——依赖(Dependency)就是两个事物间的语义关系,其中一个事物(称为服务的提供者)发生变化,会影响到另一个事物(称为客户或服务的使用者),或向它(客户)提供所需信息在类与类之间应用依赖关系指明一个类使用另一个类的方法或一个类使用其她类所定义的属性与方法
6对象关联的要素(名称、角色、多重性、方向)
@关联名称
-多数关联就是二元的(即只存在于两个类的实例之间),在图中表示为连接两个类符号的实线路径。
-使用关联名称,应该反映该关系的目的,并且应该就是一个动词词组。
-读者与图书的关联就是“借阅”
-教师对象与课程对象的关联名称就就是“讲授”
-医生与处方单的关系就是“开”。
-关联名称应放置在关联路径上或其附近。
@关联角色
-关联所联系的每一端叫做一个角色
-角色名称应该就是一个名词,能够表达被关联对象在关联中所充当的角色,角色名称紧邻关联线的末端。
@关联的多重性
-定义了一个类A的实例在一段特定的时间内能够与多少个类B的实例发生关联。
-类似于ER中的关联基数(一对一/一对多/多对多)
@关联的导向性
-角色的导向性特征表示可以通过关联从源类导向到目标类上。
也就就是说给定关联一端的对象就能够容易并直接地得到另一端的对象。
-识别关联的导向可以推迟,与设计实现有关。
通常就是源对象存储了对目标对象的一些引用
7泛化与实现的使用与绘制
第八章系统设计概述
1系统设计的任务
根据实际的技术条件、经济条件与社会条件。
确定系统的实施方案,即系统的物理模型
2系统设计与系统分析、系统实施的区分
3什么就是总体设计,什么就是详细设计
总体设计——定义:
也称为概要设计,任务就是设计出系统的主要框架结构,即组成物理系统的主要成分及其关系。
内容:
系统体系结构(系统架构)的设计;系统结构(系统组成元素及其关系)的设计;系统对外接口与服务的设计
详细设计——详细设计包括各分支技能的细节,包括输入输出设计、人机交互设计(用户界面设计)、程序处理过程详细设计、数据库设计、代码体系设计、计算机系统与网络设计等
第九章系统总体设计
1软件架构与软件结构的区别
1架构就是抽象无形的,体现高层全局的决策,就像文章的中心思想与提纲。
2结构就是具体有形的,体现决策的贯彻,如同文章的每个段落及细节描述。
3架构包含了结构的初步描述与决策。
4相同架构的系统,具体结构允许有差异。
2理解分层架构思想,信息系统可能使用的分层架构方案
分层模型的理念就就是将任务横向划分(如高层、中层、基层)为不同级别,而不就是纵向。
三层架构、五层架构、MVC架构
3面向对象的软件结构设计、类图
根据架构设计类:
边界类、实体类、控制类
4软件设计原则,高内聚、低耦合
设计原则:
总的来说就就是抽象与复用(封装、信息隐藏);松耦合
高内聚:
内聚指的就是一个类的职责间相关联的紧密程度。
如果一个类具有很多紧密相关的职责,而且只完成有限的功能,则这个类就具有高内聚性。
低耦合:
耦合度就是测量一个类连接、了解或依赖其她类的强弱程度。
低耦合可以降低依赖性,减小变化带来的影响。
第十章系统详细设计
1输入设计
2输出设计
3人机交互设计
4程序处理过程详细设计
-类的详细设计(UML顺序图、UML类图)
-面向对象设计的主要内容
-顺序图用来描述什么,如何描述?
消息就是什么概念?
什么就是嵌套消息?
应能绘制
-对象关联就是如何实现的?
(重数为1、多分别怎么实现,方向如何实现)
5什么就是整体部分关联?
什么就是依赖?
UML的表示
6网络与计算机系统设计
7数据库设计
8代码体系设计
(只考一道判断题)
第十一章系统实施
1测试的概念,四种类型,两种测试技术,为什么需要设计测试用例,如何设计测试用例?
@测试的概念:
(1)测试就是指“用意在发现错误而执行一个程序的过程”;
(2)一个好的测试用例就是指这个测试用例有很高的概率可以发现一个尚未发现的错误;
(3)一个成功的测试就是指它成功地发现了一个尚未发现的错误。
@四种类型:
-模块测试
也称单元测试。
-联合测试
也称集成测试,检验模块及系统结构。
-确认测试
测试对需求的满足,也可称验收测试。
-系统测试
就是对整个信息系统的测试,将硬件、软件、操作人员瞧作一个整体,来分析系统的功能与执行性能
@两种测试技术:
白箱测试:
根据一个软件部件的内部控制结构,测试就是否依据设计正确地执行
黑箱测试:
根据一个软件部件由外部界面所能观察到的功能效果,测试它就是否与其她部件正确地