4.6 本章小结
需求分析是软件开发中最重要的步骤,对软件需求能否完全、准确地理解,很大程度地影响了软件开发工作能否成功。对于面向对象方法来说,需求分析就是建立用例(Use Case)模型。用例图也是UML中用例视图最重要的部分。本章介绍了用例图中两个重要元素——行为者和用例的语法语义,重点分析了用例之间可能的几种关系:依赖、包含、扩展、泛化等。
如何根据系统需求定义最准确合理的用例图是用例建模中的难点,深入分析用户提供的各类场景,特别是找到各种异常的事件流,从而归纳总结出对应的用例,是一个可行的办法。场景能够帮助我们验证用例是否能满足客户提出来的功能需求并驱动测试用例的编写。(https://www.daowen.com)
定义用例时,要合理掌握用例的粒度。粒度太粗,则一个用例可能会包含太多复杂场景,为系统后续开发增加难度;粒度太细,一个场景甚至一个事件流也被定义为一个用例,则导致系统功能支离破碎。
需要特别注意的是,用例图本身并不能足够清楚地描述需求,一个完整的用例模型还必须包括文字说明,即规格说明。一个完整的用例描述包括用例名称、行为者、前置条件、场景和后置条件等。在本书后续的“动态建模”一章中讲述的活动图也常常被用于对用例进行补充说明。