《系统分析与设计复习总结》由会员分享,可在线阅读,更多相关《系统分析与设计复习总结(8页珍藏版)》请在金锄头文库上搜索。
1、第一章系统分析员:使用信息技术的商业专业人员,利用分析与设计技术解决商业问题。需要具备的基本知识与技能:1.技术知识与技能 2.商业知识与技能 3.人的知识与技能 4.诚实与道德系统分析员在系统开发中的职责范围:程序分析员、商业系统分析员、系统联络员、最终用户分析员、商业顾问、系统顾问、系统支持分析员、系统设计师、软件工程师、系统结构设计师。第二章系统开发生命周期的阶段划分:项目计划阶段、分析阶段、设计阶段、实施阶段、支持阶段。项目计划阶段、分析阶段、设计阶段的主要活动1.项目计划阶段:定义问题、确认项目的可行性、制定项目的进度表、为项目安排人员、启动项目2.分析阶段:收集信息、确定系统需求、
2、建立需求发现的原型、划分需求的优先级、产生并评估可替换方案、与管理人员一起审查建议3.设计阶段:设计并集成网络、设计应用程序结构、设计用户界面、设计系统界面、设计并集成数据库、设计细节的原型化、设计并集成系统控制项目开发队伍的人员组成(图2-4 系统开发项目的参加人员)在项目计划阶段,项目组仅由少数人员组成,基本上包括一个项目经理和一两个有经验的系统分析员。分析阶段要求项目组成员有良好的分析技能和扎实的问题域知识。设计是较专业化的活动,需要补充有专业技术的人员。在实施阶段,通常增加许多编程人员和质量控制人员,项目组在实施阶段通常是最大的。项目可行性分析的要素:1.经济可行性2.组织上和文化上的
3、可行性3.技术可行性4.进度表可行性5.资源可行性PERT/CPM:基于单个任务或活动对项目进行规划的一种方法。 图 2-15 客户支持项目的部分PERT图甘特(Gantt)图:以条形图代表项目进度表的任务和活动。 图2-16 客户支持项目的甘特图第三章:方法、技术、模型、工具以及它们之间的相互关系系统开发方法:提供完成系统开发生命周期每一步的详细指导,包括具体的模型、工具和技术。技术:帮助分析员完成系统开发活动或任务的一组方法。模型:现实世界某些重要方面的表示。工具:帮助生成项目中所需模型或其他组建的软件支持。相互关系:图3-4 方法中个组件之间的关系结构化方法与面向对象方法的比较图3-5
4、结构化编程的三种结构:顺序结构、选择结构、循环结构。第四章需求调查的对象:用户,即每天实际使用系统的人;客户,即支付和拥有系统的人;技术人员,即确保系统在组织的计算机环境下运行的人。需求调查的方法:向系统相关者分发和收集调查表复查现有的报表、表格和过程描述主持与用户的面谈和讨论观察商业过程和工作流建立原型主持联合应用程序社街(JAD)会议需求调查的结果系统需求:系统所提供功能的详细定义。功能需求:描述系统必须支持的功能和过程的系统需求。技术需求:描述操作系统环境和性能目标的系统需求。通常把系统需求分为两类:功能需求和技术需求。功能需求用于说明新系统必须支持的基本商业功能,而技术需求则包括系统性
5、能目标、操作环境以及其他非功能性问题。第五 七章:系统分析模型的分类:包括数学模型、描述模型和原图模型。数学模型:描述系统技术方面的一系列公式,用来表示系统精确的方面,这些部分最适合用公式或数学符号表示。描述模型:描述系统某一方面的描述性的备忘录,报表或列表。图形模型:图表和系统某些方面的示意性表示。图形模型有助于理解那些很难用语言来描述的复杂关系。事件的分类:外部事件,临时事件和状态事件。外部事件:系统之外发生的事件,通常都是由外部实体或动作参与者触发的。临时事件:由于到达某一时刻所发生的事件。状态事件:当系统内部发生了需要处理的情况时所引发的事件。事件表:以各个事件为行,各个事件的关键信息
6、为列。图5-15事物之间的关联关系:只能一个(强制)、0或多个(可选)、1或多个(强制)0或1个(可选) 图 5-21 图5-22 关系的基数符号实体-联系图:传统的系统开发方法都把重点集中在新系统的数据存储需求上。数据存储需求包括数据实体、数据实体的属性以及它们之间的关系。用来定义数据存储需求的模型被称为实体-联系图(ERD)。图 5-21 一个简单的实体-联系图 图 5-22 关系的基数符号图 5-23 显示了属性的扩展ERD图 图 5-25 大学课程注册ERD图(含有多对多关系)图 5-26 细化的大学课程注册ERD图(包含关联实体)图 5-27 RMO客户支持系统的实体-联系图(ERD
7、)(图中未显示有关属性)图 5-31 类图符号图 5-32 银行账目类图图 5-33 落基山运动用品商店类图数据流程图:是一种图形化的系统模型,它在一张图中展示信息系统的主要需求,即:输入、输出、过程和数据存储。外部实体:在系统边界之外的个人或组织,它提供数据输入或接受数据输出。过程:在DFD中的一个符号,它代表从数据输入转换到数据输出的算法或程序。数据流:在DFD中的箭头,它表示在过程、数据存储和外部实体之间的数据移动。数据存储:保存数据的地方,以便将来由一个或多个过程来访问这些数据。图6-2 数据流程图的符号关联图:是指描述系统最高层结构的DFD。 图 6-5 大学课程注册系统的关联图DF
8、D片段:用一个过程符号表示系统响应一个时间的DFD。 图 6-7 课程注册系统的DFD片段决策表:一种处理逻辑的表格表示方法,其中包括决策变量、决策变量值、参与者或公式。 图 6-22 计算运输费用决策表决策树:使用像树枝一样的线条对过程逻辑进行图形化的描述。图 6-23 计算运输费用决策树数据流定义:数据流内容和内部结构的文本描述。 数据流是数据元素的集合,所以数据流定义将列出所有的数据元素。第七章 面向对象的需求描述类图、用例图、顺序图、协作图、状态图当我们讨论系统开发的时候,通常把系对新系统的描述分成两部分:结构化信息和行为化信息。系统的组成部分我们称之为结构,而这些组成部分的执行逻辑我
9、们称之为行为。类图提供了对系统组成部分的定义,而其它图,即用例图、顺序图、协作图和状态图,这些图的重点都集中在系统所完成的活动上。换句话说,它们描述的是新系统的行为方面。因此,类图说明系统的组成部分是什么,而其他图说明这些组成部分干什么。类图:用例图:一种用以显示不同的用户角色和这些用户角色如何来使用系统的图。 用例图的目的是识别新系统的“使用”,或用例,换句话说,就是识别如何使用系统。用例图本质上是事件表的延伸。用例图是一个记录系统必须支持功能的简便方法。顺序图:一种用以显示用例对象之间消息顺序的图。 顺序图更详细地显示了协作图中所表达的信息,只是显示方式有些差异。顺序图以图形化的方式强调消
10、息间的顺序,而非协作对象。画顺序图的目的是用过在页面上标出位置来图形化地表示消息的顺序。执行次序从上到下执行。协作图:一种用以显示对象如何被协调在一起以执行用例的图。消息:用例内部的对象之间的通信。协作图的目的是识别协作完成给定业务功能的对象。比如说,一个RMO的系统的商业用途之一是“记录客户订单”,那么协作表将会识别所有涉及到的对象。为了记录客户订单需要一个客户对象,一些库存对象和一个新订单对象等。一个独立的协作图用以识别对象,并展示这些对象的相互作用及对象之间发送的用于执行功能的消息。交互图:显示对象之间交互的图,它或者是一个协作图,或者是一个顺序图。协作图和顺序图统称交互图。状态图:一种
11、用以现实对象在各个阶段中的生命和转换的情况的图。最后一种被用来描述应用需求的图称状态图。一个状态图表(或简单地称之为状态图)描述了每个对象的状态和行为。每一个对象类都含有一个状态图表。在状态图的内部是动作描述,这些动作描述在最终的系统中都变成了逻辑。每个类中的逻辑组件称为方法。OO需求=事件表+类图+用例图+顺序图+协作图+状态图表。7.4 系统行为:面向对象的用例/场景视图用例:由系统为使用给系统的用户完成的一个单一用途或功能。参与者:系统用户扮演的一个角色。图 7-2 有一个参与者的简单用例场景:在用例中活动的一个特定顺序;一个用例有可能有多个不同的场景。图 7-4 带系统边界的用例图图
12、7-5 客户支持系统用例图举例(通过子系统)图 7-6 与客户相关的所有用例图 7-7 包含用例的一个例子7.5 对象交互:顺序图与协作图协作图和顺序图包含有相同的信息,但它们的侧重点稍有不同。协作图强调对象交织在一起以支持一个用例,而顺序图把重点放在消息本身的细节上。顺序图展示对象之间的交互顺序,这些交互是指在场景或用例的事件流中发生的。在顺序图中共有四个基本符号:1.参与者符号,由一个小人图形表示;2.对象符号,由一个名字带下划线的方框表示;3.生命线符号,由虚线或狭窄的竖直方框表示;4.消息符号,由带消息描述的方向箭头表示。图7-9 顺序图的符号图7-10 对象和类名生命线:在顺序图中的
13、一个对象下面的竖线,用以显示这个对象的时间阶段。激活生命线:在顺序图中的垂直窄长方框,用以强调一个对象只有在一个场景的部分中处于活动状态。消息:由于面向对象系统通过每个对象向其他对象发送消息来工作,因此在一个场景内由事件流定义的内部事件就变成了在对象和参与者或其他对象之间的消息。消息符号由两部分组成:方向箭头和消息描述器。消息描述器的语法如下: true/false条件 返回值:= 消息名(参数列表)True/false条件用于验证这个消息是否可以发送。它象一个决定点或程序余亚种的if语句。如果这个条件计算后返回true,则发送这个消息,否则不发送。消息是从一个参与者或对象向另一个参与者或对象
14、的需求。开发顺序图的一个有效方法及其步骤如下:1.识别出所有与场景有关的对象和参与者。只使用在用例图中表示过的参与者,只适用在类图中标识过的对象。2.基于活动流,识别出每一个需要用于完成场景的消息。同时标识消息的源对象或参与者和目的对象或参与者。3.下一步决定每一个消息是总发送还是有条件的发送。4.正确地为这些消息排序并给它们加上合适的参与者或对象生命线。5.给消息加上形式化的语法以描述条件、消息名和要传递的参数。6.如果你愿意,加上响应消息和通信以使顺序图完整。图 7-12 “查询可用项目”的顺序图图 7-13 “创建新订单”用例的电话订购场景顺序图协作图:协作图主要应用是快速浏览相互协作、
15、用来支持一个特定场景的所有对象。协作图的参与者、对象和消息都使用了顺序图中的符号。生命线的符号没有使用,但是,也使用了一个不同的符号:链接符号。图7-14在一个典型的协作图中显示了这四种符号。协作图信息描述符的语法如下:用数字顺序标号来显示每一个消息的顺序。true/false条件 顺序编号:返回值:= 消息名(参数列表)在对象之间或在参与者与对象之间的连线表示链接。在一个协作图中,链接表示两个对象共享一个消息一个发送消息一个接收消息。图7-15 “查询可用项目”的协作图图7-16 “创建新订单”电话订购场景的协作图7.6 对象行为:状态、状态转换和状态图表在开发功能需求时,最后一类需要的信息是每个对象的内部逻辑。这些信息是对对象本身执行动作的描述。顺序图给出了对象行为的一个客观的分析。它标识了对象发送和接收的消息。状态图的目标是描述对象的内部工作。图7-17 OO模型中的关系。状态图是从类图和