MIS系统需求说明书中的UML图--和空海一起去看海

来源:百度文库 编辑:神马文学网 时间:2024/03/29 20:46:18
UML,对大家来说越来越熟悉了,随着我们对项目管理的日益重视,UML作为统一建模语言支撑着“统一软件开发过程”(RUP)。编写需求说明书,几乎每一个商业软件中都必须经历的过程,虽然有国家标准,但是还是因为各个系统不一样,写需求说明书的人不一样,需求说明书写得也是各式各样。在这里我不想详细描述UML(有很多书您可以去看,一定比我写得好)或者是讲解如何写需求说明书,我只是总结一下我在MIS项目的需求说明书的撰写过程中关于画UML图的一点经验。
在《软件需求说明书编写规范》中,已经给我们搭好了一个不错的框架。作为系统分析人员,只要根据实际情况向这个骨架里填肉就可以了。在这里我们可能用到的UML图有如下几种:模型管理图、对象图、部署图、部署和构建组合图、用例图、活动图和顺序图。如果你对这几个图还比较陌生,建议你还是先了解一下,因为这几个图各有特点,从不同的角度说明问题,只有你对他们有一定的了解才能应用自如J
下面我们就来看看如何在需求说明书中使用他们:
对于需求说明书前面和结尾的那些死板的套话我们就不用费神了,让我们直接来看“具体需求”,在这里才是UML图的用武之地。
到这一步,《软件需求说明书编写规范》中直接就进入了一个个“功能需求”的条目,但是我认为作为MIS系统,首先应该将即将开发的系统的整体印象呈现给读者,而且MIS系统,大多是多客户端的分布式应用,所以在这里用UML中的部署图将系统实现环境的硬件进行建模,让读者一目了然系统将要运行的环境。如果调研做得好的话,我们可以更深入一层,用UML中的部署和构建组合图,用它来反映软件之间的通信和硬件平台之间的连接关系。当然这要有相当的经验。
完成了总体印象,我们还是不应急于进入“功能需求”中。MIS系统中用户常常会分为很多级别,信息流也就在这几级用户间传来传去。我们系统的目的也通常是为了让几条重要的信息流方便快捷的传递。所以不管什么“功能需求”都是为了这几条信息流服务的。所以很有必要把几条重要的信息流弄清楚。在这里用UML中的顺序图是个不错的选择,它的作用是用来表现随着时间推移发生在对象之间的交互情况,它的好处是表现范围比较窄,可以描绘一个典型用例的场景,突出重点,让用户知道你是否抓住了主要矛盾。这显然是一个项目成败的关键。
前面都是比较贴近于实际环境,距离我们的系统软件部分稍远了一点,那么我们现在就把思路向回拉一拉。描述一下“系统的功能分布”,这可以说是马上要写的“功能需求”的总体概括。用UML中的模型管理图,在这里把各个功能模块之间的依赖关系表现出来应该是个不错的选择。
好了,前面的铺垫做完了,我们可以心安理得的进入“功能需求”了。这里可是真正反映系统分析员功底的时候了。如何用UML图来配合功能模块的IPO(输入、处理、输出)描述,我想各位大侠可以各显神通,从不同的角度多方位勾勒。在这里再次强调需求调研一定要认真仔细,不然在这里,只能对着电脑屏幕空想,对自己的每次决定都会问:“这能行吗?”相信你做好了充分的准备。那么让我们开始吧!用例图在这里可是不可缺的,它描述了参与者与系统之间的交互,展现用户的需求。在“功能需求”的一开始用用例图作一个概括。后面更详细的叙述就交给活动图来完成。由于活动图来源于流程图,读者更容易接受。我们可以利用活动图细致得刻画出用户在某一活动中的操作,也可以叙述系统在某一处理中的流程。最好再用对象图来为问题领域模型建立一个例子,对于需求结束后的设计会有很大的帮助,而且对象图还可以作为测试的用例,真是好处多多。但是要想画出好的对象图可不是一件容易的事,你必须对要描述的领域有很明白的认识,对相关对象的重要属性有很好地把握。
OK,在“功能需求”中这些图就足够了,至于《软件需求说明书》中其他地方用UML图就由你视情况灵活使用了。UML图我们可以大胆的用,总之,我的原则就是在遵守规则的基础上只要能说明问题就行。说了这么多,仅供大家参考,本人水平有限,望多多指教。