系统分析与设计—hw2

【简答题】

1.用简短的语言给出对分析、设计的理解。

分析就是对用户给出的软件功能等方面的需求进行系统的研究,识别出主号问题,确定待开发软件的功能、性能、接口、数据、界面等具体的细节要求。
设计就是基于需求分析中得到的需求,构造出目标系统的逻辑模型,最终得到一个可供编码过程参考的设计模型文档。

软件分析不是发现更多的功能与需求,而是确认有效的功能与需求,去伪存真不断满足客户需要。软件设计也不是追求最先进技术,而是控制变化附加的成本,使得软件生产的预算、时间等能在掌控之中。


2.用一句话描述面向对象的分析与设计的优势。

面向对象的分析与设计能够通过分析现实世界中存在的问题,并构建相对应的问题模型,保持了他们的结构、关系和行为模式,具有易理解和易维护的特性。


3.简述 UML(统一建模语言)的作用。考试考哪些图?

UML(Unified Modeling Language)用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品。 它可以将面向对象分析(OOA)和面向对象设计(OOD)使用统一定义的符号表示出来,并将对象自身的属性、对象与对象之间的关联关系可视化,提升项目结构的可读性。

考试的重点图形:

图形化的表示机制,十多种视图,分4类:

- 用例图:用户角度:功能、执行者

- 静态图:系统静态结构

    - 类图:概念及关系

    - 对象图:某种状态或时间段内,系统中活跃的对象及其关系

    - 包图:描述系统的分解结构

- 行为图:系统的动态行为

    - 交互图:描述对象间的消息传递

        - 顺序图:强调对象间消息发送的时序

        - 合作图:强调对象间的动态协作关系

    - 状态图:对象的动态行为。状态-事件-状态迁移-响应动作

    - 活动图:描述系统为完成某功能而执行的操作序列

- 实现图:描述系统的组成和分布状况

    - 构件图:组成部件及其关系

    - 部署图:物理体系结构及与软件单元的对应关系

4.从软件本质的角度,解释软件范围(需求)控制的可行性

软件的本质包括复杂性、一致性、可变性和不可视性。基于IEEE中给出的软件特点:

  • Software requirements are prone to frequent change
  • In many cases, requirements allocated to software must be renegotiated and reprioritized
  • Small changes to software can have large negative effects(There are no small software changes)

对于软件的需求可能会因为不一致、不可使、易于变化的环境而更改,需求的更改会带来软件的改动,这就可能会产生巨大的负面影响,包括开发难度的增加,开发周期的增长等。为了尽可能避免以上情况的发生,我们必须对软件需求进行范围的划定和控制。即在需求分析与设计的过程中,我们必须在给定的范围内围绕软件开发的成本进行调控,允许范围内、不造成巨大影响的需求变更和迭代,最终保证软件开发周期和成本是可控的,在约定的时间内交付出可满足客户的软件成品。因此,软件范围需求控制是可行且必须的。


###【看板使用练习】
AmZyQJ.jpg
AmZvY8.md.png

###【UML绘图工具练习】

图选自 《UML和模式应用(中文第三版)》 P193

图16-16 UML中的关联类
AmVzrR.jpg

图16-17 表示单实例类
AmZSq1.jpg

文章目录
  1. 1. 【简答题】