系统分析与设计总复习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章
信息系统的生命周期★★
信息系统的生命周期可以大致划分为以下五个阶段:规划、分析、设计、实施、运行与维护。
系统规划,主要进行四个步骤的工作:战略规划、初步调研、可行性分析、资源分配。
系统分析,主要任务就是明确用户的需求,确定新系统的目标和逻辑功能要求,提出新系统的逻辑方案。
系统设计,设计阶段就是回答的“怎么做”,“系统设计说明书”。
系统实施,将设计的系统付诸实施。
系统运行与维护,负责系统运行的组织与管理。
系统规划的任务★★
◆制定信息系统的发展战略
◆进行信息系统总体规划
◆指定系统建设的资源分配计划
系统规划的特点
◆宏观指导
◆服务决策
◆面向高层
◆动态调整
信息系统战略规划的方法: <1>企业系统规划法(BSP)<2>关键成功因素法(CSF)
<3>战略目标集转化法(SST)
<1>企业系统规划法(BSP)★★★
•BSP法主要步骤:
1准备工作2调研3定义业务过程4业务过程重组5定义数据类6定义信息系统总体结构
7确定总体结构中的优先顺序8完成BSP研究报告,提出建议书和开发计划。
系统维护★★
系统维护包括纠错性维护、适应性维护、完善性维护、预防性维护等多种形式。
原型法★★
•所谓“原型”, 在信息系统中,是指一个结构简单但已具备系统的基本功能的应用软件,也就是软件的一个可运行的早期版本。它反映了最终系统的部分重要特性,可由开发人员与用户合作,直接在运行中不断修改尚不够成熟的原型,通过反复试验、评价与修改,最终开发出符合用户要求的信息系统。所以原型可用来确定用户的
需求,验证设计的灵活性,训练最终用户以及创建成功的系统。
•优点
◆系统开发初期只需提出其基本功能,系统功能的扩充和完善是在开发过程中逐步实
现的,因此比较容易适应不断变化的环境。
◆对需求分析采用启发式动态定义,使得需求分析原型逐步深入和不断提高,即使是
模糊需求也会变得越来越清晰,这符合人的认识规律,使系统开发易于成功。
◆快速提供原型的方法使得开发信息反馈速度快,需求分析或系统设计不准确可及时、
方便地得到验证和修改,可大幅度提高系统开发质量,降低维护费用。
◆用户参与信息系统开发的全过程,真正实现了以用户为中心的开发活动,这样可大
大提高系统的实用性和用户的可接受性,同时在开发过程中通过培训提高了用户的使用水平。
•缺点
◆在开发过程中缺乏对信息系统全面、系统的认识,因此它不适用于开发大型的信息
系统。
◆每次反复过程都要花费人力和物力,如果用户合作不好,盲目纠错,就会拖延开发
过程。
◆因强调以“原型演进”代替完整的分析与设计,故系统文档较不完备,程序也可能
较难维护。就短期而言,可能满足用户需求,但对长期来说,系统较易失败。
第四章
•1、面向对象分析 OOA
–概念:抽取和整理用户的需求,按照面向对象的思想来分析问题,最后建立问题域的精确模型的过程。
–分析的结果:文档资料——软件需求规格说明,包括:对象模型、动态模型、功能模型。★★
–问题域和系统责任
–分析的过程就是识别问题域和系统责任,提取系统需求的过程,分析工作包括3项内容,即理解、表达、验证。分析过程得出的最重要的文档资料是软件需求
规格说明,在面向对象分析中,主要由对象模型、动态模型和功能模型组成。
–分析的基本过程:识别问题域中的类和对象、确定结构、确定主题、定义属性、定义服务★★
•2、面向对象的系统分析活动
–获取对象,抽象类★★
面向对象系统分析过程也是这样的,虽然对象是面向对象方法中的核心概念,
也是构成系统的基本单位,但是在OO建模和OOP中,所有的对象都是通过类
来描述的,类是具有相同属性和操作的一组对象的集合。OOA活动的最终目标
是建立所有对象的类。
◆在识别问题域可能有用的候选对象时,可以从以下三个面入手:
➢从问题域方面出发,可以启发分析员发现对象的因素包括:人员、组织、物品、设备、事件、表格、结构等。
➢从系统边界方面出发,应该考虑的因素包括:人员、设备和外部系统,它们是否与所要开发的系统有交互行为,如果有,那么它们就是候选对象。
➢从系统责任出发,对照系统责任所要求的每一项功能,查看是否可以由已找出的对象来完成该功能,在不能满足要求时增加相应的对象,可以使系统分析员
尽可能全地找出所需的各种对象。
➢抽象出对象类的几种常见问题:
(1) 类的属性或服务不适合该类的全部对象(不完全) ;
(2) 出现属性和服务相似的类(冗余) ;
(3) 出现对同一事物的重复描述。
–确定类的属性★★★
–确定属性
–对象的属性是描述对象静态特征的,确定对象属性时要从问题域和目标系统两方面进行。一般说来,确定属性的过程包括分析和选择两个步骤。
–分析,从以下角度去确定对象应具有的属性:
–按一般常识,该对象应具有哪些属性;
–在当前问题论域中,该对象应具有哪些属性;
–根据系统责任的要求,该对象应具有哪些属性;
–建立该对象是为了保存和管理哪些信息;
–对象为了在服务中实现其功能,需要增设哪些属性;
–是否需要增设属性来区别对象的不同状态;
–用什么属性来表示对象的整体-部分联系和实例连接。
–选择,通常有以下几种常见情况:
–误把内部状态当成了属性;如果某个性质是对象的非公开的内部状态,则应该从对象模型中删掉这个属性。
–过于细化;在分析阶段应该忽略那些对大多数操作都没有影响的属性。
–存在不一致的属性;类应该是简单而且一致的。如果得出一些看起来与其他属性毫不相关的属性,则应该考虑把该类分解成两个不同的类。
–
–确定关联:泛化、组合、聚合、关联、依赖★★★★
关系就是事物之间的联系,当两个或多个类之间有相互依赖、相互作用的关系就是关联。一个面向对象的系统中,类之间存在以下四种关系:
–一般——特殊
–一般——特殊结构
–一般——特殊关系又称类属关系,是现实世界中一般对象和特殊对象之间的关系,反映了现实世界中事物之间的分类关系。前者称为父类,后者称为子类,子类继承父类的特性(属性、操作、关联等),同时又拥有自己的特性。
–例如图书借阅管理系统中,对象类“人员”是类“管理员”和“借阅者”类的父类,而子类“管理员”又是类“系统维护人员”和类“一般操作人员”的父类。
–整体——部分
–整体——部分
–对象实例之间的整体——部分关系,反映了现实世界中的事物之间的构成关系。整体——部分关联又可以从两个方面来反映:
–聚合关系