程序員第六期全程建模之軟件設(shè)計(jì)指南 -管理類軟件示例 4_第1頁
已閱讀1頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1《程序員》第六期全程建模之軟件設(shè)計(jì)指南——管理類軟件示例撰稿高展摘要:本文在上期需求分析基礎(chǔ)上,闡述如何使用“全程建?!狈椒ㄟM(jìn)行軟件的總體設(shè)計(jì)與詳細(xì)設(shè)計(jì),力求全面利用業(yè)務(wù)分析、需求定義的成果,推導(dǎo)軟件設(shè)計(jì)方案,大幅度減少設(shè)計(jì)差錯(cuò),全面提高軟件設(shè)計(jì)自動化水平。一軟件設(shè)計(jì),燙手的山芋1現(xiàn)象自從人類步入工業(yè)文明以來,無論哪一個(gè)行業(yè)都躲不開產(chǎn)品設(shè)計(jì)必要環(huán)節(jié)??尚Φ氖牵袊浖_發(fā)在方面無論從觀念上還是在行動上落后了230年。1772年,著名社

2、會學(xué)家亞當(dāng).斯密在《國富論》(thewealthofthenations)中指出,分工分工是工業(yè)文明高度發(fā)達(dá)的根本原因。以建筑業(yè)為例,天才建筑大師貝律明設(shè)計(jì)的北京香山飯店,堪稱凝固的音樂,可是泥瓦匠活還是由普普通通的民工組成的工程隊(duì)來干,建筑業(yè)的成功充分地體現(xiàn)了各種資源的有效組合的結(jié)果。反觀軟件行業(yè),沒人專做需求分析,沒人專做軟件設(shè)計(jì),沒人專做軟件測試,……,幾乎成為軟件公司上上下下的“共識”,大家有一千個(gè)理由專注于編程。后果是軟件開發(fā)

3、強(qiáng)烈依賴發(fā)揮(實(shí)際上是發(fā)散),質(zhì)量得不到有效的控制,各種資源極大浪費(fèi)。如果說軟件公司一點(diǎn)設(shè)計(jì)工作沒做是有點(diǎn)冤枉:一張粗糙的軟件系統(tǒng)框架,一幅馬馬虎虎的接口關(guān)系圖,寥寥幾頁的程序流程圖。究竟誰在糊弄誰,誰也不想搞明白,反正最后是費(fèi)了牛勁才能把軟件拼湊出來,能否蒙混過關(guān)只有天曉得。2原因我們可以以下三個(gè)方面分析為什么沒人愿意踏踏實(shí)實(shí)坐下來把軟件設(shè)計(jì)做好。首先從社會大環(huán)境來看,中國工業(yè)化進(jìn)程緩慢,封建意識濃厚,從國民整體意識上就缺乏分工協(xié)作的

4、基本常識;其次從個(gè)體小環(huán)境來看,中國的高等教育做的是知識灌輸?shù)墓ぷ?,缺乏職業(yè)教育精神,沒有工程化教育的目標(biāo),培養(yǎng)的人才往往是四體不勤,五谷不分;最后從具體運(yùn)作來看,軟件公司或者搭草臺班子唱戲應(yīng)付差事,或者占山為王打打殺殺不亦樂乎,很難靜下心來考慮設(shè)計(jì)軟件這種“苦累”差事。3出路全程建模提倡軟件設(shè)計(jì)由需求分析推導(dǎo)而來,而用戶對軟件的需求則緊密結(jié)合業(yè)務(wù)活動本身,這一點(diǎn)深刻反映了開發(fā)管理軟件的根本理念:源于管理、用于管理。全程一體化建模的原理

5、可以總結(jié)成下面的鏡子模型:需求功能過程數(shù)據(jù)管理制度組織結(jié)構(gòu)業(yè)務(wù)流程業(yè)務(wù)數(shù)據(jù)管理軟件軟件結(jié)構(gòu)軟件流程軟件數(shù)據(jù)實(shí)物鏡子鏡像圖1鏡子模型在這種全程鏡像一體化建模思想指導(dǎo)下,軟件設(shè)計(jì)自動化變得切實(shí)可行。從實(shí)際效果來看,對定制軟件來說,直接根據(jù)實(shí)際企業(yè)模型得到的總體設(shè)計(jì)自動化程度為90%,詳細(xì)設(shè)計(jì)為70%,對產(chǎn)品軟件來說,首先要假設(shè)一個(gè)標(biāo)準(zhǔn)的企業(yè)模型,在此基礎(chǔ)上,總體設(shè)計(jì)自動化程度將能達(dá)到80%,詳細(xì)設(shè)計(jì)將能達(dá)到60%。另外,毫不夸張地講,無論多

6、么大軟件系統(tǒng),如果不包括可行性論證過程,需求定義只需幾個(gè)小時(shí)就可以填空方式完成。二軟件設(shè)計(jì)的要點(diǎn)1主要內(nèi)容從開發(fā)過程來看,軟件設(shè)計(jì)包括總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)這兩大部份,其中總體設(shè)計(jì)主要包括系統(tǒng)結(jié)構(gòu)設(shè)計(jì)、系統(tǒng)流程設(shè)計(jì)、系統(tǒng)接口設(shè)計(jì)、全局?jǐn)?shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、硬件配置設(shè)計(jì)、集成測試設(shè)計(jì),詳細(xì)設(shè)計(jì)包括模塊設(shè)計(jì)、本地?cái)?shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、報(bào)表設(shè)計(jì)、屏幕設(shè)計(jì)。3客戶總經(jīng)理查詢子系統(tǒng)A1業(yè)務(wù)管理子系統(tǒng)A2供應(yīng)商財(cái)務(wù)管理子系統(tǒng)A3當(dāng)前層次業(yè)務(wù)工作種類:1.銷售2.采購3

7、.財(cái)務(wù)核算訂貨訂單發(fā)貨發(fā)貨清單采購采購清單供貨供貨清單交貨款訂單發(fā)貨清單了解采購情況了解銷售情況提供收款憑證銷售發(fā)票上報(bào)采購情況采購日報(bào)上報(bào)銷售情況銷售日報(bào)交發(fā)貨單發(fā)貨單(財(cái)務(wù)聯(lián))通知到款了解財(cái)務(wù)狀況上報(bào)財(cái)務(wù)狀況客戶小型進(jìn)銷存系統(tǒng)A0供應(yīng)商對外業(yè)務(wù)工作種類:1.銷售2.采購訂貨訂單發(fā)貨發(fā)貨清單采購采購清單供貨供貨清單交貨款訂單發(fā)貨清單提供收款憑證銷售發(fā)票圖3系統(tǒng)級流程3系統(tǒng)級接口設(shè)計(jì)軟件開發(fā)發(fā)生混亂的很大一部分原因是系統(tǒng)之間的接口含混不

8、清:需要的信息沒人給,送出的信息不知道誰要。全程建模使用“數(shù)據(jù)匯總圖”描述系統(tǒng)接口,建模工具PlayCASE自動從事件流圖提取事件攜帶的數(shù)據(jù)形成數(shù)據(jù)匯總圖,從而使系統(tǒng)間的接口清晰明了,準(zhǔn)確無誤。圖4描述了“總經(jīng)理查詢子系統(tǒng)”、“業(yè)務(wù)管理子系統(tǒng)”、“財(cái)務(wù)子系統(tǒng)”之間的數(shù)據(jù)接口的關(guān)系:客戶供應(yīng)商總經(jīng)理查詢子系統(tǒng)A1業(yè)務(wù)管理子系統(tǒng)A2財(cái)務(wù)管理子系統(tǒng)A3發(fā)貨單(財(cái)務(wù)聯(lián))訂單發(fā)貨清單訂單發(fā)貨清單銷售發(fā)票供貨清單采購清單采購日報(bào)銷售日報(bào)圖4系統(tǒng)級接

9、口4全局?jǐn)?shù)據(jù)結(jié)構(gòu)設(shè)計(jì)對于管理軟件來說,全局?jǐn)?shù)據(jù)是各個(gè)應(yīng)用子系統(tǒng)共享的基礎(chǔ)數(shù)據(jù),這些數(shù)據(jù)絕大部分由大型DBMS來管理。全局?jǐn)?shù)據(jù)結(jié)構(gòu)設(shè)計(jì)主要指的是全局?jǐn)?shù)據(jù)庫設(shè)計(jì),主要包括基表設(shè)計(jì)、視圖設(shè)計(jì)、存儲過程設(shè)計(jì)、觸發(fā)器設(shè)計(jì)等,其中基表和視圖可由PlayCASE自動生成具體的SQL語句:基表DDL(數(shù)據(jù)定義語言)由構(gòu)件生成,視圖的DDL由計(jì)算鏈生成。這里的基表、視圖首先直接來源于業(yè)務(wù)分析得到的構(gòu)件,根據(jù)這些原始的構(gòu)件的內(nèi)容及其之間的關(guān)系,先進(jìn)行基表設(shè)

10、計(jì),包括數(shù)據(jù)庫范式設(shè)計(jì)(消除多對多關(guān)系、確保達(dá)到第三范式)、關(guān)鍵字設(shè)計(jì)、字段類型設(shè)計(jì)、字段長度設(shè)計(jì)、取值范圍設(shè)計(jì)等;視圖設(shè)計(jì)使用計(jì)算鏈進(jìn)行,包括字段引用設(shè)計(jì)、字段運(yùn)算關(guān)系設(shè)計(jì)、字段約束關(guān)系設(shè)計(jì)等。PlayCASE能夠自動生成有關(guān)基本表的字典——“實(shí)體屬性表”。視圖“銷售日報(bào)”設(shè)計(jì):=======================訂單.商品代碼發(fā)貨單.發(fā)貨日期FROM訂單發(fā)貨單WHEREJoinedConditions(訂單.商品代碼=發(fā)貨

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論