系统分析 软件项目与知识团队管理

简答题

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

  • 分析:将用户的需求逐渐拆分的过程,以此确定需要实现的功能和最后的产出的雏形。强调的是对用户需求的调查结果。

  • 设计:根据分析结果对产品的结构和实现功能进行设计,以此达到用户的需求。强调的是产品实现的方法。

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

面向对象的分析与设计的优势:

1、对象易于理解和抽象,方便设计。

2、更强的封装能力。

3、更加容易重用代码。

4、代码易于维护。

5、代码易于阅读。

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

UML的作用:

UML非常方便于软件开发者之间沟通设计思想。UML特别适用于就关键设计思想进行沟通。
  • 需求分析人员(BA)用其可以绘制用例图等,可以用于和业务沟通需求。

  • 软件设计人员(SA)可以用其绘制活动图、顺序图、类图等用于做概要设计、详细设计。

  • 软件开发人员(SE)也需要知道UML,至少要看懂设计人员的设计文档。

    可见UML的使用范围贯穿软件开发流程的主要环节。

考试图:

1、用例图

2、静态图(类图、对象图、包图)

3、行为图(交互图、状态图、活动图)

4、实现图(构件图、部署图)

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

软件的本质:

1、complexity 复杂性

2、conformity 一致性

3、changeability 可变性

4、invisibility 不可视性

从提升客户满意度的角度,了解并控制这四个元素就是 软件项目成功的关键。

  • 工期,软件项目刚性约束。多数情况下,软件的按时投产意味着收益或成本降低

  • 预算,软件项目重要约束。它与工期一样,最容易观察与度量,所以没有特别情况也不宜超预算

  • 质量,软件质量通常是有底线的。一些指标如可靠性、性能等,比较难以商量;另一些指标如易用性似乎相对灵活,但用户满意度对此特别敏感

  • 范围,在多数情况下,客户与开发者能就项目的 20% 内容给出严格的需求约定,80% 的内容都是相对模糊的。因此,围绕客户目标,发现并满足客户感兴趣的内容是最关键的。以 Office 产品为例,早期的版本的功能没有现在版本的 1% ,但这并不会妨碍它的成功。在当年并没人预见到 Office 会有如此多功能,使用者也不会因罗列诸多功能的产品感兴趣,感兴趣的往往是当时背景下最能创造价值的几个特性。


项目管理实践

  • 看板使用练习(提交看板执行结果贴图,建议使用 Git project)
  • 使用截图工具(png格式输出),展现你团队的任务 Kanban
  • 每个人的任务是明确的。必须一周后可以看到具体结果
  • 每个人的任务是1-2项
  • 至少包含一个团队活动任务

UML绘图工具练习(提交贴图,必须使用 UMLet)

  • 请在 参考书2 或 教材 中选择一个类图(给出参考书页码图号)

《UML和模式应用》 P9
原书:
系统分析 软件项目与知识团队管理
仿画:
系统分析 软件项目与知识团队管理