国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Sawin軟件研發(fā)之窗:一個(gè)軟件設(shè)計(jì)的全過程(基于UML)
 
Sawin
軟件研發(fā)之窗

一個(gè)軟件設(shè)計(jì)的全過程(基于UML)


blueski推薦 [2006-4-21]
出處:www.chengang.com.cn
作者:陳剛
 

前段時(shí)間把一個(gè)界面框架完成了,今天基于這個(gè)框架開發(fā)一個(gè)小模塊,在這里把這個(gè)模塊設(shè)計(jì)的全過程記錄下來,希望大家討論并指正。

一、起因

公司交給我一個(gè)任務(wù),為測試員寫一個(gè)手機(jī)模擬界面,以方便她們的手機(jī)短信測試。過去她們都是用MC4J直接調(diào)用公司服務(wù)器的MBean服務(wù)來模擬進(jìn)行測試,以驗(yàn)證我們整個(gè)系統(tǒng)平臺。這種測試主要是檢查收發(fā)短信是否正常,而我的要做的工作就是,讓她們在測試的時(shí)候更方便更直觀。

二、需求

我和測試員陳MM(也就是軟件的使用者)約定了一個(gè)時(shí)間,大家一起來討論這個(gè)軟件的需求。

1、首先,我大概了解了一下她們的測試工作,知道我要做個(gè)什么東東。

2、然后我回去思考了一下,再次找她詳細(xì)了解其測試的具體步驟,并在一張白紙上以UML用例圖的方式,記錄下需求的功能。用例是什么?用例就是需求,就是你的軟件應(yīng)該具有的功能,當(dāng)然用例圖只是概括性的對功能進(jìn)行了描述。

3、最后,我坐在我的電腦前開始用MagicDraw UML來畫用例圖(我不喜歡用Rose,那玩意太笨重了,界面友好性也不好)。在畫用例圖的時(shí)候,我發(fā)現(xiàn)了一些隱含的功能,這些是陳MM在和我做需求時(shí)沒有考慮到的(注:開發(fā)者應(yīng)該為用戶挖掘隱含需求)。我和陳MM一一確定了這些我新發(fā)現(xiàn)的需求,最后得到如下的用例圖。

(1)手機(jī)前臺測試操作的用例圖(說明:include是指秤美?include)子用例)


  (2)后臺管理

 


 三、界面設(shè)計(jì)

接下來是界面設(shè)計(jì)。既然是手機(jī)模擬,我很自然就拿我的motorola手機(jī)的操作界面來做參考。不過這里應(yīng)該注意到,手機(jī)操作環(huán)境和電腦操作環(huán)境不盡相同(比如說電腦有鼠標(biāo),還有鍵盤可以輸入文字),所以沒有必要唯妙唯肖的完全模枋,還是以使用者操作方便為主。

界面設(shè)計(jì)是很重要的一步,不要一上來就寫程序,一定要先做到心中有個(gè)大概,否則返工的可能性就很大。而且,把界面拿出來給客戶看,客戶也就能做到心中有數(shù),還能盡早提出一些新需求和意見來。千萬不要等到軟件做完了再拿給客戶看,到時(shí)客戶看了如果要修改,那就做太多白費(fèi)工了。

由于軟件界面相對簡單,陳MM基本沒有提修改意見,但這不是個(gè)好兆頭。不過極限編程就是要擁抱變化不是^_^。咱不怕她改,只要大致的界面她能定下來就行了。

界面我喜歡用Visio來畫,當(dāng)然也聽說有人喜歡用VB來快速構(gòu)建界面原型的,看個(gè)人喜好了。整個(gè)界面如下:



 
 這個(gè)是后臺管理界面

 


 四、類圖

類圖反映了軟件的數(shù)據(jù)模型。在設(shè)計(jì)數(shù)據(jù)模型,我參考了界面設(shè)計(jì)圖和用例圖,找出一個(gè)個(gè)的類。然后參照用例圖的一個(gè)個(gè)功能,設(shè)計(jì)出了各類的屬性和方法。設(shè)計(jì)初始的類圖當(dāng)然不可能很詳細(xì),但至少應(yīng)該看到個(gè)大概。有錯(cuò)誤不要緊,后期可以慢慢修正,但大體關(guān)系就算定下來了。

Neil(公司CTO,一個(gè)40歲左右的真正的資深程序員)說:看一個(gè)軟件的設(shè)計(jì)主要看兩個(gè)類:類圖和時(shí)序圖。類圖確定了軟件數(shù)據(jù)模型的靜態(tài)關(guān)型,時(shí)序圖則是數(shù)據(jù)模型的動態(tài)關(guān)系。

類圖如下,看英文大致可以知道類/屬性/方法的含義和作用了,就不一一介紹了。



 五、時(shí)序圖

時(shí)序圖是本文最后一個(gè)圖,時(shí)序圖表明了用例圖中各功能的實(shí)現(xiàn)方案,同時(shí)也反應(yīng)了類圖中各類的交互關(guān)系。以后程序的邏輯和時(shí)序圖基本一致。不過,有些人會去畫得很詳細(xì)的時(shí)序圖,詳細(xì)到都快趕上偽代碼級別了,我覺得這沒必要。我把時(shí)序圖看做反映自己思路的大概過程,所以也就畫個(gè)大概。

我認(rèn)為時(shí)序圖要簡潔易懂,這樣以后你的后繼維護(hù)者,拿到這個(gè)軟件的時(shí)序圖(當(dāng)然也包括用例圖、類圖),就能明白你的大概設(shè)計(jì)思路。另外,畫時(shí)序圖也能整理自己的思路,同時(shí)還可以對類圖的設(shè)計(jì)進(jìn)行驗(yàn)證。在畫這個(gè)時(shí)序圖的過程中,我就糾正了在類圖中的幾處考慮不周的地方。

總結(jié):時(shí)序圖可以(1)整理思路(2)驗(yàn)證類的設(shè)計(jì)(3)是很好的軟件文檔,對維護(hù)者理解代碼很有幫助。

這里僅給出其中幾個(gè)時(shí)序圖(實(shí)際上我也沒有把用例都畫完,有些類似的簡單的,就忽略了)

(1)新增一個(gè)手機(jī)號碼

(2)關(guān)機(jī)
 

(3)開機(jī)
 



?。ǎ矗┌l(fā)送短信
 

 
 到這里設(shè)計(jì)階段就完成了,用時(shí)一天。下一步是編碼,將應(yīng)用TDD先寫測試代碼的方式來寫代碼,下次再介紹了。

 

作者簡介
陳剛,廣西桂林人,著作有《Eclipse從入門到精通》

 

 


 
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
概要設(shè)計(jì)需要哪些設(shè)計(jì)圖?
時(shí)序圖,UML給軟件開發(fā)帶來的唯一好處
用例驅(qū)動設(shè)計(jì),讓你的設(shè)計(jì)更嚴(yán)謹(jǐn)!
UML一篇文章就學(xué)通!
【軟件工程
輕松學(xué)習(xí)UML建模知識,學(xué)會更好的表達(dá)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服