系统分析与设计第4次作业

    xiaoxiao2025-06-04  29

    简答题

    用例的概念

    在软件和系统工程中,用例是一种对系统如何反应外界请求的描述,通常通过用户的使用场景来获取需求。每个用例提供了一个或多个场景,该场景说明了系统是如何和最终用户或其它系统互动,也就是谁可以用系统做什么,从而获得一个明确的业务目标。

    用例和场景的关系?什么是主场景或 happy path?

    关系:每个用例提供了一个或多个场景。其中场景是指使用场景,用来说明系统可以做什么,系统是如何和用户或其他系统交互的,从而获得一个明确的业务目标。

    主场景:也被称为 happy path,每一个用例中都包含一个主场景,主场景对应于系统主要的交互,通常是成功的场景,是最常用的直接地实现用户目标的场景。

    用例有哪些形式?

    简短(高级层次):一段简短的总结,通常是主要成功场景。在早期需求分析期间,快速了解主题和范围。可能只需要几分钟就可以创建。非正式(简便格式):非正式段落格式。涵盖各种场景的多个段落。完全级:所有的步骤和变化都写得很详细,并有支持部分,如前提条件和成功保证。在以简短的格式识别和编写了许多用例之后,然后在第一个需求研讨会期间,详细地编写了一些(例如10%)具有体系结构重要性和高价值的用例。

    对于复杂业务,为什么编制完整用例非常难?

    复杂的业务本身业务流程就很复杂繁琐,而且涉及到的场景非常多,场景与场景之间也有各种各样的关联,编制完整用例需要建模相关知识和熟悉各个业务流程,还要注意用户交互的细节和相对于的支撑。

    什么是用例图?

    用例图是指由参与者(Actor)、用例(Use Case),边界以及它们之间的关系构成的用于描述系统功能的视图,也是外部用户所能观察到的系统功能的模型图。

    用例图的基本符号与元素?

    参与者(Actor): 表示的是一个系统用户,也就是与应用程序进行交互的用户、组织或外部系统。 

    用例(Use Case): 表示的是对系统提供的功能、服务的一种描述。              

                                                         

    包含关系(Include): 表示用例可以简单地包含其他用例所具有的行为,并把它所包含的用例行为作为自身行为的一部分。  

                                                                     

    泛化关系(Generalization): 泛化指的是一个父用例可以被特定化形成多个子用例,而父用例和子用例之间的关系就是泛化关系。

                                                     

    关联关系(Association): 表示的是参与者与用例之间的关系。

                                                                      

    扩展/延伸关系(Extend): 表示在一定条件下,把新的行为加入到已有的用例中,获得的新用例叫做扩展用例,原有的用例叫做基础用例,相当于为基础用例提供一个附加功能。

                                    

     

    用例图的画法与步骤

    对语境建模:

    识别系统外部的参与者。将类似参与者组织成泛化的结构层次。在需要加深理解的地方,为每个参与者提供一个构造型。将参与者放入到用例图中,并说明参与者与用例之间的通信路径。

    对需求建模:

    识别系统的外部参与者来建立系统的语境考虑每一个参与者期望的行为或需要系统提供的行为。把这些公共的行为命名为用例。确定提供者用例和扩展用例。对这些用例,参与者和它们之间的关系建模。用注释修饰用例

    用例图给利益相关人与开发者的价值有哪些?

    用例图是由软件需求分析到最终实现的第一步,它描述人们如何使用一个系统。用例视图显示谁是相关的用户、用户希望系统提供什么样的服务,以及用户需要为系统提供的服务,以便使系统的用户更容易理解这些元素的用途,也便于软件开发人员最终实现这些元素。用例图在各种开发活动中被广泛的应用。

     

    建模练习题(用例模型)

    选择2-3个你熟悉的类似业务的在线服务系统(或移动 APP),如定旅馆(携程、去哪儿等)、定电影票、背单词APP等,分别绘制它们用例图。并满足以下要求: 请使用用户的视角,描述用户目标或系统提供的服务 粒度达到子用例级别,并用 include 和 exclude 关联它们 请用色彩标注出你认为创新(区别于竞争对手的)用例或子用例 尽可能识别外部系统和服务

    然后,回答下列问题:

    1.为什么相似的系统的用例图是相似的?

    因为相似的系统业务相似,为了使降低用户的学习成本会使用相似的交互方式。

    2.如果是定旅馆业务,请对比 Asg_RH 用例图,简述如何利用不同时代、不同地区产品的用例图,展现、突出创新业务和技术?

    充分发挥LBS的优势,通过人工智能对用户数据进行分析,再定点投放。

    3.如何利用用例图定位创新思路(业务创新、或技术创新、或商业模式创新)在系统中的作用?

    在用例图中对创新用例使用某种颜色进行高亮标记。

    4.请使用 SCRUM 方法,选择一个用例图,编制某定旅馆开发的需求(backlog)开发计划表

    IDNameImpEst                              How to Demo            Notes1查找酒店405输入城市,入住日期,退房日期,房间价格即可搜索到相关酒店通过调用GPS的API来确定用户当前的位置2选择酒店505通过选择星级,评价,价格等可以进行结果排序。用户选择酒店后,筛选出想要预定的房间类型,填写个人信息并确定无误后即可下单需要合适的算法对筛选结果进行排序,或者增加足够的筛选因素供顾客选择3支付订单303提供多种支付方式来满足不同类型的人群,包括微信/支付宝支付,银行卡支付,以及到店现金支付通过调用各平台API,接入用户支付借口4评价体验404促使对自己住过的酒店进行评价,打分,以及让用户可以看到其他人对酒店的评价,帮助用户更好地选择酒店对评论分类,并提取有用的数据,对酒店排序提供更加有效的分析

     

    5.根据任务4,参考 使用用例点估算软件成本,给出项目用例点的估算 

    用例业务计算原因UC权重1查找酒店43平均2预定酒店86困难3支付订单32简单4评价体验65平均

     

    最新回复(0)