阅读以下关于软件系统分析与建模的叙述,在答题纸上回答问题1至问题3。
【说明】
某软件公司拟开发一套博客系统,要求能够向用户提供一个便捷发布自已心得,及时有效的与他人进行交流的平台。新用户发布个人博客之前,需要创建一个新的博客账户,以下为新用户注册的操作行为:
(a) 向系统请求创建一个新的博客账户;
(b) 输入个人详细信息;
(c) 使用证件数据库验证个人详细信息:
(d) 选择账户类型:
(e) 身份验证成功,创建新的博客账户;
(f) 用户身份信息验证不成功:
(g) 以电子邮件的方式将账户详细信息发送给用户;
(h) 博客账户申请被拒绝。
【问题1】(6分)
在结构化和面向对象的软件分析过程中,通常会使用到数据流图、活动图和流程多,请分别描述这三种模型的特点和适用场景。
【问题2】(9分)
采用用例图和用例描述建模系统需求,请使用题干给出的(a)~(h),完善“博客账户创建用例描述”中的(1)~(6),如表1-1所示。将正确答案填在答题纸上。
【问题3】(10分)
需求评审是通过将需求规格说明书递交给相关人员检查,以发现其中存在缺陷的过程。在需求工程中,需求评审是一个非常重要的过程。结合题干案例,请用300字以内的文字简要说明需求评审的内容及作用。
【问题1】
数据流图:
特点:通过系统内数据的流动来描述系统功能的一种方法。强调系统中的数据流动。由:数据流,外部实体,加工,数据存储。
适用场景:结构化需求分析,为系统做功能建模。
活动图:
特点:与流程图类似,但可以表现并行执行。
适用场景:面向对象分析与设计建模。
流程图:
特点:能清晰展现业务执行的流程顺序。强调控制流。
适用场景:结构化需求分析与结构化设计,为系统梳理业务流程。
【问题2】
(1)(a)
(2)(d)
(3)(b)
(4)(c)
(5)(g)
(6)(h)
【问题3】
需求评审内容:
(1)SRS正确地描述了预期的、满足项目干系人需求的系统行为和特征。
(2)SRS中的软件需求是从系统需求、业务规格和其他来源中正确推导而来的。
(3)需求是完整的和高质量的。
本例中存在需求描述不完整的情况,如:谁向系统请求?输入个人详细信息要输入哪些?选择账户类型,有哪些账户类型供选择?
(4)需求的表示在所有地方都是一致的。
(5)需求为继续进行系统设计、实现和测试提供了足够的基础。
(6)用例优先级合理度评估
本案例中,未说明用例的优先级。
作用:
1、发现二义性需求
2、发现不确定性用户未达成共识的需求
3、发现遗漏的需求
4、为项目干系人在需求问题上达成共识提供支撑
5、降低风险
6、提高软件质量
【问题1】
数据流图:
特点:通过系统内数据的流动来描述系统功能的一种方法。强调系统中的数据流动。由:数据流,外部实体,加工,数据存储。
适用场景:结构化需求分析,为系统做功能建模。
活动图:
特点:与流程图类似,但可以表现并行执行。
适用场景:面向对象分析与设计建模。
流程图:
特点:能清晰展现业务执行的流程顺序。强调控制流。
适用场景:结构化需求分析与结构化设计,为系统梳理业务流程。
【问题2】
(1)(a)
(2)(d)
(3)(b)
(4)(c)
(5)(g)
(6)(h)
【问题3】
需求评审内容:
(1)SRS正确地描述了预期的、满足项目干系人需求的系统行为和特征。
(2)SRS中的软件需求是从系统需求、业务规格和其他来源中正确推导而来的。
(3)需求是完整的和高质量的。
本例中存在需求描述不完整的情况,如:谁向系统请求?输入个人详细信息要输入哪些?选择账户类型,有哪些账户类型供选择?
(4)需求的表示在所有地方都是一致的。
(5)需求为继续进行系统设计、实现和测试提供了足够的基础。
(6)用例优先级合理度评估
本案例中,未说明用例的优先级。
作用:
1、发现二义性需求
2、发现不确定性用户未达成共识的需求
3、发现遗漏的需求
4、为项目干系人在需求问题上达成共识提供支撑
5、降低风险
6、提高软件质量