版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1《程序員》第六期全程建模之軟件設計指南——管理類軟件示例撰稿高展摘要:本文在上期需求分析基礎上,闡述如何使用“全程建?!狈椒ㄟM行軟件的總體設計與詳細設計,力求全面利用業(yè)務分析、需求定義的成果,推導軟件設計方案,大幅度減少設計差錯,全面提高軟件設計自動化水平。一軟件設計,燙手的山芋1現(xiàn)象自從人類步入工業(yè)文明以來,無論哪一個行業(yè)都躲不開產品設計必要環(huán)節(jié)??尚Φ氖?,中國軟件開發(fā)在方面無論從觀念上還是在行動上落后了230年。1772年,著名社
2、會學家亞當.斯密在《國富論》(thewealthofthenations)中指出,分工分工是工業(yè)文明高度發(fā)達的根本原因。以建筑業(yè)為例,天才建筑大師貝律明設計的北京香山飯店,堪稱凝固的音樂,可是泥瓦匠活還是由普普通通的民工組成的工程隊來干,建筑業(yè)的成功充分地體現(xiàn)了各種資源的有效組合的結果。反觀軟件行業(yè),沒人專做需求分析,沒人專做軟件設計,沒人專做軟件測試,……,幾乎成為軟件公司上上下下的“共識”,大家有一千個理由專注于編程。后果是軟件開發(fā)
3、強烈依賴發(fā)揮(實際上是發(fā)散),質量得不到有效的控制,各種資源極大浪費。如果說軟件公司一點設計工作沒做是有點冤枉:一張粗糙的軟件系統(tǒng)框架,一幅馬馬虎虎的接口關系圖,寥寥幾頁的程序流程圖。究竟誰在糊弄誰,誰也不想搞明白,反正最后是費了牛勁才能把軟件拼湊出來,能否蒙混過關只有天曉得。2原因我們可以以下三個方面分析為什么沒人愿意踏踏實實坐下來把軟件設計做好。首先從社會大環(huán)境來看,中國工業(yè)化進程緩慢,封建意識濃厚,從國民整體意識上就缺乏分工協(xié)作的
4、基本常識;其次從個體小環(huán)境來看,中國的高等教育做的是知識灌輸?shù)墓ぷ?,缺乏職業(yè)教育精神,沒有工程化教育的目標,培養(yǎng)的人才往往是四體不勤,五谷不分;最后從具體運作來看,軟件公司或者搭草臺班子唱戲應付差事,或者占山為王打打殺殺不亦樂乎,很難靜下心來考慮設計軟件這種“苦累”差事。3出路全程建模提倡軟件設計由需求分析推導而來,而用戶對軟件的需求則緊密結合業(yè)務活動本身,這一點深刻反映了開發(fā)管理軟件的根本理念:源于管理、用于管理。全程一體化建模的原理
5、可以總結成下面的鏡子模型:需求功能過程數(shù)據(jù)管理制度組織結構業(yè)務流程業(yè)務數(shù)據(jù)管理軟件軟件結構軟件流程軟件數(shù)據(jù)實物鏡子鏡像圖1鏡子模型在這種全程鏡像一體化建模思想指導下,軟件設計自動化變得切實可行。從實際效果來看,對定制軟件來說,直接根據(jù)實際企業(yè)模型得到的總體設計自動化程度為90%,詳細設計為70%,對產品軟件來說,首先要假設一個標準的企業(yè)模型,在此基礎上,總體設計自動化程度將能達到80%,詳細設計將能達到60%。另外,毫不夸張地講,無論多
6、么大軟件系統(tǒng),如果不包括可行性論證過程,需求定義只需幾個小時就可以填空方式完成。二軟件設計的要點1主要內容從開發(fā)過程來看,軟件設計包括總體設計、詳細設計這兩大部份,其中總體設計主要包括系統(tǒng)結構設計、系統(tǒng)流程設計、系統(tǒng)接口設計、全局數(shù)據(jù)結構設計、硬件配置設計、集成測試設計,詳細設計包括模塊設計、本地數(shù)據(jù)結構設計、報表設計、屏幕設計。3客戶總經理查詢子系統(tǒng)A1業(yè)務管理子系統(tǒng)A2供應商財務管理子系統(tǒng)A3當前層次業(yè)務工作種類:1.銷售2.采購3
7、.財務核算訂貨訂單發(fā)貨發(fā)貨清單采購采購清單供貨供貨清單交貨款訂單發(fā)貨清單了解采購情況了解銷售情況提供收款憑證銷售發(fā)票上報采購情況采購日報上報銷售情況銷售日報交發(fā)貨單發(fā)貨單(財務聯(lián))通知到款了解財務狀況上報財務狀況客戶小型進銷存系統(tǒng)A0供應商對外業(yè)務工作種類:1.銷售2.采購訂貨訂單發(fā)貨發(fā)貨清單采購采購清單供貨供貨清單交貨款訂單發(fā)貨清單提供收款憑證銷售發(fā)票圖3系統(tǒng)級流程3系統(tǒng)級接口設計軟件開發(fā)發(fā)生混亂的很大一部分原因是系統(tǒng)之間的接口含混不
8、清:需要的信息沒人給,送出的信息不知道誰要。全程建模使用“數(shù)據(jù)匯總圖”描述系統(tǒng)接口,建模工具PlayCASE自動從事件流圖提取事件攜帶的數(shù)據(jù)形成數(shù)據(jù)匯總圖,從而使系統(tǒng)間的接口清晰明了,準確無誤。圖4描述了“總經理查詢子系統(tǒng)”、“業(yè)務管理子系統(tǒng)”、“財務子系統(tǒng)”之間的數(shù)據(jù)接口的關系:客戶供應商總經理查詢子系統(tǒng)A1業(yè)務管理子系統(tǒng)A2財務管理子系統(tǒng)A3發(fā)貨單(財務聯(lián))訂單發(fā)貨清單訂單發(fā)貨清單銷售發(fā)票供貨清單采購清單采購日報銷售日報圖4系統(tǒng)級接
9、口4全局數(shù)據(jù)結構設計對于管理軟件來說,全局數(shù)據(jù)是各個應用子系統(tǒng)共享的基礎數(shù)據(jù),這些數(shù)據(jù)絕大部分由大型DBMS來管理。全局數(shù)據(jù)結構設計主要指的是全局數(shù)據(jù)庫設計,主要包括基表設計、視圖設計、存儲過程設計、觸發(fā)器設計等,其中基表和視圖可由PlayCASE自動生成具體的SQL語句:基表DDL(數(shù)據(jù)定義語言)由構件生成,視圖的DDL由計算鏈生成。這里的基表、視圖首先直接來源于業(yè)務分析得到的構件,根據(jù)這些原始的構件的內容及其之間的關系,先進行基表設
10、計,包括數(shù)據(jù)庫范式設計(消除多對多關系、確保達到第三范式)、關鍵字設計、字段類型設計、字段長度設計、取值范圍設計等;視圖設計使用計算鏈進行,包括字段引用設計、字段運算關系設計、字段約束關系設計等。PlayCASE能夠自動生成有關基本表的字典——“實體屬性表”。視圖“銷售日報”設計:=======================訂單.商品代碼發(fā)貨單.發(fā)貨日期FROM訂單發(fā)貨單WHEREJoinedConditions(訂單.商品代碼=發(fā)貨
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 世行第六期扶貧項目
- 南京第六期個人課題
- 經濟金融時訊第六期
- 黨支部學習資料第六期
- 第六期法治知識競答題
- 某小區(qū)第六期監(jiān)理例會紀要
- 西北師范大學第六期
- 上半軟件設計師(高程序員)上午試題
- 環(huán)保部公報2010第六期
- 農村環(huán)境綜合整治簡報第六期
- 第六期校領導午餐會策劃-
- 2018年第六期上饒好人事跡
- 寧夏大學新華學院分黨校第六期
- 重慶特檢黨建工作第六期doc
- 公共資產管理中心2013年第六期國有房屋
- 金華區(qū)第六期在職職工醫(yī)療互助保障服務
- 第六期關愛在校留守兒童活動簡報
- 第六期關愛在校留守兒童活動簡報
- 第六期沖刺浙江名校暨滑雪冬令營
- 第六期沖刺浙江名校暨滑雪冬令營
評論
0/150
提交評論