系统分析与设计课后习题答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章

1.什么是系统?信息系统一般具有那些特性?

答:系统是一组为实现某些结果相互联系相互作用的部件的集合。

1.可分解性

2.边界性

2.从应用范围来看,信息系统可以分为哪些类型?

答:1.事物处理系统2.管理信息系统3.智能支持决策系统4.办公自动化系统3.信息系统中典型的关联人员有哪些?他们的角色是什么?

答:系统所有者(通常是中层或者高层经理,对于小型系统来说,可能是中层经理或者主管)、用户、分析设计人员(都代表信息系统的技术专家角色)、外部服务者(业务顾问和系统顾问等)以及项目经理(团队的领导者)

4.请解释系统内部用户和外部用户的区别是什么?

答:内部系统用户主要是指系统实际操作人员,这些人员往往专注于信息系统的处理速度和处理事务的正确性。

外部系统用户主要是指系统的直接或者间接使用人员,所有这些外部系统用户最关注的是使用系统的服务操作是否简单易学,方便操作。

5.什么是模型驱动分析?为什么要使用此方法?举例说明。

答:模型驱动分析法强调绘制图形化系统模型来记录和验证现有的或建议的系统。系统模型最终将成为设计和构造一个改进系统的蓝图。结构化分析、信息工程和面向对象分析都是基于模型驱动的分析方法。

6.什么是系统开发生存周期?在项目启动阶段涉及的主要活动有哪些?

答:开发一个完整的系统项目总会经历“目标、计划、分析、设计、实现、维护”这样的过程或步骤,这就是系统开发的生存周期(系统项目启动、业务需求分析、详细系统设计、系统实现与维护)。启动阶段的主要涉及5个活动:定义问题域、制定项目的进度表、确认项目的可行性、安排项目人员、启动项目。

7.为什么引入系统原型开发方法?它的优缺点是什么?

答:采用最经济的方法,尽快设计出一个可以实际运行的系统原型。

优点:提高了用户参与的主动性;系统开放周期短;能更好的适应需求的变化并减少误解,能有效的提高最终系统的质量,特别是用户接受性,为保证将系统提供给用户使用奠定了基础。

缺点:1.系统分析和功能设计贯穿于整个开发过程中,使得系统的总体结构变得不明确;2.原型选取的不确定性可能降低系统开放速度;3.对原型进行分析设计时,依然沿袭结构化方法,自顶向下模块化的设计思想,数据和功能相互分离的缺陷在原型法中依然存在,不利于软件构件的重用;4.开发过程中不断引入用户需求的变化,造成了系统开发的不确定性。

8.解释敏捷方法的基本原理为何能带来加速的系统开发和部署?

答:专注于增量式描述、设计和系统实现的迭代式开发方法,有用户之间参与到开发过程中,由于开发负担的降低,使得快速系统开发成为可能,敏捷方法允许开发团队将主要精力集中在软件本身,而不是设计和编制文档上。

9.在系统开发过程中,为什么要引入项目管理?项目管理涉及的知识领域有哪些?

答:系统项目管理有利于将系统开发人员的个人开发能力转化成企业的开发能力,并使企业的开发能力不断提高和成熟。

九个:1.项目规划管理;2.项目时间管理;3.项目成本管理;4.项目质量管理;5项目人力资源管理;6.项目通信管理;7.项目风险管理;8.项目获取管理;9项目集成管理。

10.什么是计算机辅助软件工程(CASE)?举例说明有哪些常用的CASE工具?

答:在系统分析与设计活动中,系统分析人员按照工程管理的方法和原则借助于计算机及其软件工具的帮助,开发、维护和管理软件产品的过程。

常用的工具:Rational Rose、Sybase PowerDesigner、Microsoft Visio、Microsoft Project、Enterprise Architect、MetaCase、ModelMaker、Visual Paradigm等。

第二章

1.用例和场景之间是什么关系?与协作又是什么关系?

答:用例与场景的关系(脚本与用例的关系)就像类与实例的关系,即用例是场景的抽象,场景是用例的一个实例。

2.请指出用例图的组成元素及其识别方法,并构建自选项目的用例图并给出相关用例的描述。

答:用例的组成元素:参与者、用例、关系。

识别方法:1)参与者:Actor,是与系统交互的实体,包括需要和系统交换信息的一切实体。参与者不是系统的一部分,它们处于系统的外部。参与者可能是人、计算机硬件或设备或外部系统。2)用例:usecase,是对系统行为的动态描述,本质上是用户需求的描述,是一个具体的用户目标。3)用例图中存在三种关系,参与者与用例之间的关系、参与者与参与者之间的关系以及用例与用例之间的关系。

3.聚集与组合有何区别?并请举例说明。

答:聚集是一种特殊形式的关联,表示部分与整体的关系。“部分”可以独立于“整体”而存在,比如,一个学生可以同时是几个社团的成员。聚集使用带空心菱形的实线表示,菱形指向“整体”。举例:计算机与CPU、内存、键盘的关系。组合强调部分与整体具有相同的生命周期,“部分”对象完全依赖于“整体”对象。组合使用带实心菱形的实线表示,菱形指向“整体”。举例:窗口和菜单、列表框和按钮的关系。

5.简述如何在实际工作中发现类,怎样组织类之间的继承关系。

答:用名词识别法识别类。1.找出候选类:采用名词识别法标识系统描述或用例描述中所有名词,得到候选类,然后考察每个候选类,从中去掉不必要的类。2.审查与筛选类:1)删除冗余类;2)去掉无关类;3)删除模糊的类;4)去掉应该是类“属性”的候选类;5)所描述的操作不适应作为类,如果所选名次有动作含义,则描述的操作就不是类;6)实现结构不宜作为类。

7.什么是构件?构件与普通类有哪些相同点和不同点?UML中的构件有哪几种?

答:构件是定义了良好接口的物理实现单元,它是系统中可替换的部分,是由类、接口等逻辑元素打包而形成的物理模块。

构件在许多方面与类相似,二者都有名称;都可以实现一组接口;都可以参与依赖、泛化和关联关系;都可以被嵌套;都可以有实例;都可以参与交互。

构件与类的不同点:抽象方式不同;抽象的级别不同;访问方式不同。(详见P57)构件的分类:在UML中,构件按其作用可以分为部署构件、工作产品构件和可执行构件。

8.构件有哪两种接口,如何表示?叙述它与构件之间的关系。

相关文档
最新文档