快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

澳门24小时0524:TDD开发的全过程之分析建模



一、原由

公司交给我一个义务,为测试员写一个手机模拟界面,以方便她们的手机短信测试。以前她们都是用MC4J直接调用公司办事器的MBean办事来模拟进行测试,以验证我们全部系统平台。这种测试主如果反省收发短信是否正常,而我的要做的事情便是,让她们在测试的时刻更方便更直不雅。

二、需求

我和测试员陈澳门24小时0524MM(也便是软件的应用者)约定了一个光阴,大年夜家一路来评论争论这个软件的需求。

1、首先,我大年夜概懂得了一下她们的测试事情,知道我要做个什么东东。

2、然后我回去思虑了一下,再次找她具体懂得其测试的详细步骤,并在一张白纸上以UML用例图的要领,记录下需求的功能。用例是什么?用例便是需求,便是你的软件应该具有的功能,当然用例图只是概括性的对功能进行了描述。

3、着末,我坐在我的电脑前开始用MagicDraw UML来画用例图(我不爱好用Rose,那玩意太粗笨了,界面友好性也不好)。在画用例图的时刻,我发清楚明了一些隐含的功能,这些是陈MM在和我做需求时没有斟酌到的(注:开拓者应该为用户掘客隐含需求)。我和陈MM逐一确定了这些我新发明的需求,着末获得如下的用例图。

(1)手机前台测试操作的用例图(阐明:include是指某用例包孕(include)子用例) 

(2)后台治理

三、界面设计

接下来是界面设计。既然是手机模拟,我很自然就拿我的motorola手机的操作界面来做参考澳门24小时0524。不过这里应该留意到,手机操作情况和电脑操作情况不尽相同(比如说电脑有鼠标,还有键盘可以输入翰墨),以是没澳门24小时0524有需要唯妙唯肖的完全模枋,照样以应用者操作方便为主。

界面设计是很紧张的一步,不要一上来就写法度榜样,必然要先做到心中有个大年夜概,否则返工的可能性就很大年夜。而且,把界面拿出来给客户看,客户也就能做到胸有定见,还能尽早提出一些新需乞降意见来。切切不要等到软件做完了再拿给客户看,到时客户看了假如要改动,那就做太多白搭工了。

因为软件界面相对简单,陈MM基础没有提改动意见,但这不是个好兆头。不过极限编程便是要拥抱变更不是^_^。咱不怕她改,只要大年夜致的界面她能定下来就行了。

界面我爱好用Visio来画,当然也据说有人爱好用VB来快速构建界面原型的,看小我喜爱了。全部界面如下:

这个是后台治理界面

四、类图

类图反应了软件的数据模型。在设计数据模型,我参考了界面设计图和用例图,找出一个个的类。然后参照用例图的一个个功能,设计出了种种的属性和澳门24小时0524措施。设计初始的类图当然弗成能很具体,但至少应该看到个大年夜概。有差错没紧要,后期可以逐步修正,但大年夜体关系就算定下来了。

Neil(公司CTO,一个40岁阁下的真正的资深法度榜样员)说:看一个软件的设计主要看两个类:类图和时序图。类图确定了软件数据模型的静态关型,时序图则是数据模型的动态关系。

类图如下,看英文大年夜致可以知道类/属性/措施的含义和感化了,就不逐一先容了。

五、时序图

时序图是本文着末一个图,时序图注解了用例图中各功能的实现规划,同时也反映了类图中种种的交互关系。今后法度榜样的逻辑和时序图基础同等。不过,有些人会去画得很具体的时序图,具体到都快遇上伪代码级别了,我感觉这没需要。我把时序图看做反应自己思路的大年夜概历程,以是也就画个大年夜概。

我觉得时序图要简洁易懂,这样今后你的后继掩护者,拿到这个软件的时序图(当然也包括用例图、类图),就能明白你的大年夜概设计思路。别的,画时序图也能收拾自己的思路,同时还可以对类图的设计进行验证。在画这个时序图的历程中,我就矫正了在类图中的几处斟酌不周的地方。

总结:时序图可以(1)收拾思路(2)验证类的设计(3)是很好的软件文档,对掩护者理解代码很有赞助。

这里仅给出此中几个时序图(实际上我也澳门24小时0524没有把用例都画完,有些类似的简单的,就轻忽了。

(1)新增一个手机号码

(2)关机

(3)开机

(4)发送短信

到这里设计阶段就完成了,用时一天。下一步是编码,将利用TDD先写测试代码的要领来写代码。

您可能还会对下面的文章感兴趣: