c++ 分别对应于uml中的+-#_如何利用UML建模来编写软件需求规格说明?

使用UML工具进行建模,是公认的需求分析的好方法。那它如何与我们实施GJB5000需要编写的软件研制任务书、需求规格说明结合呢?

下面就是建模和编写软件需求规格说明结合的建议。

使用UML可以建立业务模型、概念模型和系统模型。对于软件需求规格说明来说,它所对应的模型应当是系统模型(其中,业务模型对应于业务需求,概念模型对应于关键业务的需求分析)。

与业务模型类似(见《当使用业务模型来编写软件研制任务书》),系统模型也是由用例视图、用例场景、用例规约、业务规则、实现用例、实现场景等组成。

我们在软件需求规格说明中要描述功能需求、性能需求、接口需求,如果使用模型来描述,我们也只需要使用用例视图、用例场景和用例规约即可。

但与业务模型是从用户现实的需求开始建模不同,系统模型的建模是从业务模型那里继承而来,是在业务模型的基础之上开展的需求分析活动的结果。

要把业务需求转换成系统需求,我们所要做的就是先分析业务模型中的用例场景,采用映射、抽象、合并、拆分、演绎等方法,从业务模型的用例场景当中找出了系统用例,再针对系统用例进行建模,给出用例场景和用例规约,即得到了系统需求。

这个从业务需求到系统需求的转换过程如下图所示。

53130538-fd1b-eb11-8da9-e4434bdf6706.jpeg

同样的,以供电系统为例,我们从用户申请永久用电的场景中可以得到一个申请登记的用例,如下图所示:

54130538-fd1b-eb11-8da9-e4434bdf6706.jpeg

针对申请登记的用例,我们要分析出它的用例场景,如下图所示:

56130538-fd1b-eb11-8da9-e4434bdf6706.jpeg

并且给出它的用例规约,如下图所示:

57130538-fd1b-eb11-8da9-e4434bdf6706.jpeg

总之,在建立业务模型的基础之上,分析出系统用例、用例场景和用例规约,完成系统模型的建模,并且将模型中的用例视图、活动图、用例规约融入到软件需求规格说明中,完成的软件需求规格说明的编写,将会使得软件需求规格说明表述更清晰,对用户需求确认也会有很大帮助。

这正是:

业务模型做基础,导出用例和场景

系统模型入文档,需求规格更澄明

参考书目:大象:Thinking in UML(第二版),谭云杰,中国水利水电出版社


作者简介:王小双,长期从事GJB5000推广、实施、评价、改进的工作,创建《软件工程之思》微信公众号,一直在《软件工程之思》分享GJB5000、CMMI、软件工程的知识和感悟。现致力于GJB5000咨询以及软件过程改进、软件工程能力提升的研究工作。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值