目录
一、需求工程、需求获取、需求分析的概念
1、需求工程:需求工程是介于系统工程和软件设计之间的重要桥梁。一方面,需求工程以系统规约作为基本出发点,并从软件角度对他们进行检查和调整;另一方面,需求规约又是软件设计,实现,测试直至维护的主要基础。
2、需求获取:需求获取是需求工程中后续活动(分析,规范化等)的基础,需求工程又是后续软件开发活动的基础。所以,需求获取对于软件项目的成败具有决定性影响。
3、需求分析:需求分析活动是在需求获取的工作成果的基础上展开的,其输入制品与需求获取活动的输出制品相同,在这些输入制品中,用例模型最重要。需求分析的输出制品主要是软件需求的分析模型,该模型是需求规约的主要组成部分,同时也是后续软件设计、构造和测试活动的工作基础。
二、需求的三个层次:业务需求、用户需求、系统需求
1、业务需求:是组织或客户对于系统的高层次目标要求,定义了项目的远景和范围,即确定软件产品的发展方向,功能范围,目标客户和价值来源
2、用户需求:从用户角度描述的系统功能需求与非功能需求,通常只涉及系统的外部行为,而不涉及系统的内部特性。
3、系统需求:更加详细的描述系统应该做什么,通常包括许多不同的分析模型:用例图,交互图,分析类图,状态图
三、需求的两大分类:功能需求、非功能需求
1、功能性需求:描述系统应该提供的功能或服务,通常涉及用户或外部系统与该系统之间的交互,一般不考虑系统的实现细节。
2、非功能性需求:从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求,例如相应时间,数据精度,可靠性,开发过程的标准等。
四、怎样画用例图
用例图的节点有执行者和用例两种。用例图的边表示执行者与用例之间,两个用例之间,两个执行者之间的关系。
(1)执行者与用例之间的关系
执行者与用例之间的关系在用例图中表示为它们之间的连接边,其意义为执行者触发用例的执行,向用例提供信息或者从用例获取信息。触发用例执行的执行者称为主动执行者,仅从用例获取信息的执行者称为被动执行者。执行者与用例之间的连接边通常为无向边。对有向边的使用应当慎之又慎,因为用例模型的阅读者往往误以为有向边代表信息传递的方向。仅在以下两种情形下考虑采用有向边。
①当有多个执行者与用例相连时,