信息系統(tǒng)項目管理師考試輔導(dǎo)教程第第章軟件工_第1頁
信息系統(tǒng)項目管理師考試輔導(dǎo)教程第第章軟件工_第2頁
信息系統(tǒng)項目管理師考試輔導(dǎo)教程第第章軟件工_第3頁
信息系統(tǒng)項目管理師考試輔導(dǎo)教程第第章軟件工_第4頁
信息系統(tǒng)項目管理師考試輔導(dǎo)教程第第章軟件工_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

“軟件工程”這個概念最早是在1968年召開的一個當時被稱“軟件危機”的會議上提出的。自1968年以來,該領(lǐng)域已經(jīng)取得了長足的進步。軟件工程的發(fā)展已經(jīng)極大地完善了我們的軟件,使我們對軟件開發(fā)活動也有了更深的理解。開發(fā)一個具有一定規(guī)模和復(fù)雜性的軟件系統(tǒng)和編寫一個簡單的程序大不一樣。其間的差別,借用Boodi的比喻,如同建造一座大廈和搭一個狗窩的差別。大型的、復(fù)雜的軟件系統(tǒng)的開發(fā)是一項工程,必須按工程學(xué)的方法組織軟件的生產(chǎn)與管理,必須經(jīng)過計劃、分析、設(shè)計、編程、測試、維t等一系列的軟件生命周期階段。這是人們從軟件危機中獲得的最重要的教益,這一認識促使了軟件工程學(xué)的誕生。軟件工程學(xué)就是研究如何有效地組織和管理軟件開發(fā)的工程學(xué)科。IEEE在1983年將軟件工程定義為:軟件工程是開發(fā)、運行、維護和修復(fù)軟件的系統(tǒng)方法。著名的軟件工程專家Boehm于1983年提出了軟件工程的7條基本原理:(1)用分階段的生命周期計劃嚴格管理;(2)堅持進行階段評審;(3)實行嚴格的產(chǎn)品控制;(4)采用現(xiàn)代程序設(shè)計技術(shù);(5)結(jié)果應(yīng)能清楚地審查;(6)開發(fā)小組的人員應(yīng)該少而精;(7)承認不斷改進軟件工程實踐的必要性。軟件工程方法學(xué)包含3個要素:方法、工具和過程。方法是指完成軟件開發(fā)的各項任務(wù)的技術(shù)方法;工具是指為運用方法而提供的軟件工程支撐環(huán)境;過程是指為獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架。根據(jù)考試大綱,在軟件工程基礎(chǔ)知識方面,要求考生掌握以下知識點:?軟件需求分析與定義;?軟件設(shè)計、測試與維護;?軟件復(fù)用;?軟件質(zhì)量保證及質(zhì)量評價;?軟件配置管理;汪?放軟件開發(fā)環(huán)你境;皆?夫軟件過程管顧理??吮菊轮饕閮B軟件需求抄分析與定義污,軟件設(shè)計栽、測試與維裁護,軟件質(zhì)騎量保證及質(zhì)態(tài)量評價,軟崇件配置管理丸,軟件開發(fā)林環(huán)境和軟件促過程管理方轉(zhuǎn)面的知識,忍有關(guān)軟件復(fù)雹用的知識將追在第3章介略紹。摔2.1軟件型需求分析與尚定義敲根據(jù)Sta兆ndish挺Grou該p對230甚00個項目貸進行的研究勢結(jié)果表明,腦28%的項里目徹底失敗潮,46%的不項目超出經(jīng)謹費預(yù)算或者挑超出工期,嫩只有約26紗%的項目獲列得成功。而踢在這些高達潮74%的不箏成功項目中駛,有約60霞%的失敗是駛源于需求問顏題,也就是僵差不多有一嘉半的項目都見遇到了這個踐問題,這一兇可怕的現(xiàn)象瓜不得不讓我裳們對需求分豪析引起高度銹的重視。寬議軟件需求與傳需求過程晉1.什么是聯(lián)軟件需求捷那么什么是何軟件需求呢抓軟件需求就寄是系統(tǒng)必須臥完成的事,期以及必須具摘備的品質(zhì)具漸體來說,軟氏件需求包括刷功能需求、研非功能需求既和設(shè)計約束作3方面內(nèi)容散。局(1)功能得需求:是指歪系統(tǒng)必須完絹成的那些事躺,即為了向辜它的用戶提川供有用的功翻能,產(chǎn)品必波須執(zhí)行的動裳作。憑(2)非功諷能需求:是遷指產(chǎn)品必須拘具備的屬性普或品質(zhì),如俘可靠性、性踐能、響應(yīng)時疫間、容錯性矩、擴展性等哥?;?3)設(shè)計姿約束:也稱郵限制條件、續(xù)補充規(guī)約,傷這通常是對杠解決方案的渠一些約束說避明搬’若例如必須采塊用國有自主衡知識版權(quán)的罵數(shù)據(jù)庫系統(tǒng)激,必須運行飽在UNIX月操作系統(tǒng)之鳴下等。桌另外,在大也量與需求相撒關(guān)的書籍、怖文章中有一趟些諸如業(yè)務(wù)煉需求、膏?歇用戶需求之困類的詞語,津把很多讀者青搞得術(shù)語混譽淆,下面我筐們一起來看置看這些概念務(wù)。取(1)業(yè)務(wù)國需求(Bu勇sines率sReq賊uirem妻ent):蓋是指反映組帽織機構(gòu)或客首戶對系統(tǒng)、凡產(chǎn)品高層次刃的目標要求睬,通常問題者定義本身就辭是業(yè)務(wù)需求扎。凍(2)用戶弄需求(Us同erRe摩quire璃ment)歌:是指描述狀用戶使用產(chǎn)某品必須要完墾成什么任務(wù)訓(xùn),怎么完成吐的需求,通獅常是在問題父定義的基礎(chǔ)削上進行用戶所訪談、調(diào)查系,對用戶使塊用的場景進袍行整理,從辨而建立從用費戶角度的需隆求。駐(3)系統(tǒng)廟需求(Sy插stem恩Requi庭remen蘿t):是從跑系統(tǒng)的角度蛇來說明軟件盈的需求,它右包括用特性北說明的功能捏需求、質(zhì)量網(wǎng)屬性,以及鬼其他非功能憑需求,還有垮設(shè)計約束。援也就是說,梳這分別對應(yīng)駕于需求的3研個不同的層旺次,從目標磨到具體,從灘整體到局部暖,從概念到巖細節(jié)。這些系不同層次、怖不同類型的畜需求描述之拍間的關(guān)系如敞圖2-1所療示。嶼2.需求工泳程板需求工程是蔽一個包括創(chuàng)勁建和維護系如統(tǒng)需求文檔酒所必需的一饒切活動的過界程,通常包色括需求開發(fā)擔(dān)和需求管理文兩大工作???1)需求此開發(fā):包括款需求捕獲、瞎需求分析、投編寫規(guī)格說繭明書和需求費驗證四個階稈段。在這個序階段需要確不定產(chǎn)品所期廣望的用戶類芝型、獲取每犧種用戶類型得的需求、了套解實際用戶聽任務(wù)和目標翁,以及這些廣任務(wù)所支持偽的業(yè)務(wù)需求樓、分析源于絕用戶的信息然、對需求進旨行優(yōu)先級分膠類、將所收炭集的需求編錫寫成為軟件驗規(guī)格說明書撕和需求分析配模型、對需榮求進行評審嶄等工作。劫(2)需求睜管理:通?;グǘx需酬求基線、處煉理需求變更宵、需求跟蹤花等方面的工享作。而對于投需求工程而旬言,最重要授的還是需求拘開發(fā),而需逼求開發(fā)總結(jié)桶起來就是包貴括需求捕獲孔、需求分析身、需求規(guī)格緞化、需求驗仿證4個環(huán)節(jié)舌。需求捕獲興是為了收集樣需求信息,橋需求分析則黨是在需求捕擊獲的基礎(chǔ)上慧進行分析、獲建立模型,通然后將其進止行規(guī)格化形奉成《軟件需詢求規(guī)格說明濤書》,最后演再通過客戶保和管理層進板行驗證。釋需求規(guī)格化鳴的工作就是罩編制《軟件蠶需求規(guī)格說婦明書》,具宗體的方法和愿注意事項請某參考有關(guān)文疼檔編制的相乎關(guān)章節(jié)。而郵需求驗證的熟工作則包括筆組織一個由崇不同代表組效成的小組,畜對需求規(guī)格電說明書和相泉關(guān)模型進行寫審查;以需認求依據(jù)編寫診測試用例,巖確認測試做森好準備;在梳需求的基礎(chǔ)姐上,起草第播一份用戶手闖冊;確定合友格標準,也分就是讓用戶絨描述什么樣精的產(chǎn)品才算進是滿足他們岸的要求和適聲合他們使用圖的。唐喂需求調(diào)查與膀問題定義蒸需求調(diào)查與婆問題定義是越看上去簡單記,做起來難緊的一件事。愿在很多人的裕印象中,需稿求調(diào)查,就夜是找用戶聊缺聊說說,記涂個筆記。其樣實需求調(diào)查以是否科學(xué),蔬準備是否充嶺分,對調(diào)查隸出來的結(jié)果啊影響很大,膊這是因為大切部分客戶無玻法完整地講趴述需求,而秀且也不可能依看到系統(tǒng)的啊全貌。要想祥做好需求調(diào)線查,必須清俗楚地了解3披個問題。知?恨What:隸應(yīng)該搜集什傲么信息。扯?惡Where負:從什么地牽方搜集這些亂信息。漲?揪How:用唱什么機制或殲者技術(shù)來搜訓(xùn)集這些信息薄。懲接下來,我筍們就對這三游個部分的內(nèi)翻容進行一些現(xiàn)更加詳細的瘡說明與描述賄。合1-要捕獲攪的信息州一方面,需字求分析員應(yīng)培該知道,從和宏觀的角度神來看,要捕稱獲的信息包粥括三大類:乖一是與問題安域相關(guān)的信踏息(如業(yè)務(wù)輪資料、組織絕結(jié)構(gòu)圖、業(yè)秒務(wù)處理流程之等);二是家與要求解決店的問題相關(guān)脆的信息;三溉是用戶對系柔統(tǒng)的特別期焰望與施加的蓮任何約束信罰息。這樣才理能夠有的放法矢,不會顧拖此失彼。憐另外一方面命,需求分析士員在開展具掘體需求捕獲惠工作時,應(yīng)編該做到在此今之前明確自侍己需要獲得烘什么信息,壤這樣才有可曠能獲得所需嘉信息,才知摟道工作進展掌是否順利,且是否完成了玩目標。犧2.信息的龜來源敏除了要明確玉地知道我們琴需要什么方宿面的信息,役還要知道它層們可以從哪缸里獲得。通偷常情況下,槽這些需要的臭信息會藏于延客戶、原有餐系統(tǒng)、原有男系統(tǒng)用戶、拳新系統(tǒng)的潛見在用戶、原毅有產(chǎn)品、競踏爭對手的產(chǎn)召品、領(lǐng)域?qū)F始?、技術(shù)法司規(guī)與標準里武。嚷面對這么多徹種可能,在竟具體的實踐裝中該從何下老手呢其實也好很簡單,首竊先從人的角目度來說,應(yīng)侍該首先對涉嬸眾(也就是迎風(fēng)險承擔(dān)人婦、項目干系面人)進行分制類,然后從鬼每一類涉眾傘中找到1?促2名代表;獎而對于文檔扣、產(chǎn)品而言圖,則更容易諸有選擇地查歲閱。背結(jié)合前面講挎述的內(nèi)容,蹦在制訂需求系捕獲計劃的掙時候,不妨自列出一個表解格,左邊寫形上想了解的煙信息,右邊脆跟上認可能盜的來源,這肥樣就能夠建訴立一一對應(yīng)臣的關(guān)系,使甩得需求捕獲惜工作更加有鉤的放矢,也夫更加高效。當3.需求捕碑獲技術(shù)網(wǎng)當我們知道茶需要去尋找拌什么信息,漆并且也找到臟了信息的來擊源地,接下敢來就需要選瀉擇合適的技轉(zhuǎn)術(shù)進行需求軍捕獲了。在轟此,我們列鎮(zhèn)舉出一些最胖常用的需求錯捕獲技術(shù)。跟(1)用戶剖訪談。圈用戶訪談是籍最基本的一剝種需求捕獲狼手段,也是舅最基本的一棋種手段。其譽形式包括結(jié)卷構(gòu)化和非結(jié)煉構(gòu)化兩種,急結(jié)構(gòu)化是指矛事先準備好考一系列問題督,有針對地典進行;而非排結(jié)構(gòu)化則是形只列出一個希粗略的想法餓,根據(jù)訪談弄的具體情況碎發(fā)揮。最有撲效的訪談是晝結(jié)合這兩種游方法進行,臟畢竟不可能召把什么都一暖一計劃清楚乖,應(yīng)該保持建良好的靈活供性。陜準備問題:燈進行用戶訪惰談之前,最慌好先對要詢鎮(zhèn)問的問題進嘩行一些準備瞧。準備的方根法是圍繞著亮想要獲取的慰信息展開,輪設(shè)計一系列機的問題,按貝順序組織起若來。而且還標要預(yù)先準備恭好記錄方式撞,主要包括攤本人記錄、卸第三人記錄聯(lián)或者是錄音此/錄像的形抱式,不過采冷用錄音/錄注像的方式應(yīng)陵該征得被訪吩談?wù)叩耐廛?,而且這種鐮方法雖然看鳥上去比較有習(xí)效,不容易候丟失信息,盲但這也會給賠后面的整理丸工作帶來一城定的工作量鑼和難度。逼訪談時的技曲巧:在訪談?wù)頃r一定要注跨意措辭得當趣,在充分尊漫重被訪談?wù)叩堑幕A(chǔ)上,蘆盡量避免出沈現(xiàn)企“殲我不知你在挨說什么抽”判,岔“俯我是來幫助趟你更好地工趣作滿”用這樣的言語捎,否則將會渡破壞訪談的完氣氛,從而墾使訪談的效上率大打折扣狠。在訪談時皇一定要注意遞保持輕松的欠氣氛,選擇娛客戶有充時鏡間的時段$司行,在說話陜、問問題時有應(yīng)該盡量采丹用易于理解筑、通俗化的尖語言。另外尼,值得注意唐的是,分析恭人員應(yīng)該在考進行訪談之刑前進行一些寒相關(guān)領(lǐng)域的碑知識培訓(xùn),儀充分閱讀相遣關(guān)材料,以何保證自己有請較專業(yè)的理哥解與認識,雷讓被訪談?wù)吡w能夠信任你迅。絮應(yīng)該詢問的等問題:在設(shè)塔計詢問的問客題時,應(yīng)該帝考慮:自己自的問題是否夢相關(guān)回答是堵否正式對方廳是回答這些說問題的合適丈人選嗎是否換問了過多的突問題是否還睛有更多的問淡題要問被訪華者?另外,漆還可以在詢傍問過程中詢竹問被訪者還孝希望自己問責(zé)他什么問題婚,還應(yīng)該見眼哪些人豐總的來說,哨用戶訪談具牌有良好的靈崇活性,有較吼寬廣的應(yīng)用兵范圍,但是番也存在著許掩多困難,諸判如客戶經(jīng)常烈較忙,難以梯安排到時間啦;面談時信捐息量大,記考錄較困難;英溝通需要很喘多技巧,同悲時需要分析脖員有足夠的檔領(lǐng)域知識;柜另外,在訪礙談時會遇到月一些對于組早織來說比較違機密和敏感臣的話題。因素此,這看似絞簡單的技術(shù)喂,也需要分御析人員擁有肺足夠多的經(jīng)鋤驗和較強的齡溝通能力。摧(2)用戶觸調(diào)查。飾正如前面講衫到的,用戶武訪談時最大妙的難處在于凝很多關(guān)鍵的軌人員時間有立限,不容易批安排過多的名時間;而且貞客戶面經(jīng)常來較廣,不可閱能一一訪談技。因此,我您們就需要借例助毅“冊用戶調(diào)查萌”掩這一方法,踢通過精心設(shè)組計要問的問直題,然后下剪發(fā)到相關(guān)的產(chǎn)人員手里,眠讓他們填寫奪答案。這樣籍可以有效地堤克服前面提潑到的兩個問拾題。榴但是與用戶非訪談相比,酒用戶調(diào)查最囑大的不足就返是缺乏靈活距性;而且雙貌方未見面,微分析人員無慢法從他們的抵表情等其他礙動作來獲取證一些更隱性傳的信息;還墓有就是客戶被有可能在心陰理上會不重肝視一張小小揭的表格,不消認真對待從貨而使得反饋狐的信息不全句面?;谏鲜鍪鲈?,因判此較好的做件法是將這兩西種技術(shù)結(jié)合三使用。具體披地講,就是華先設(shè)計問題嶺,制作成用德戶調(diào)查表,飾下發(fā)填寫完施后,進行仔孫細的分組、賭整理、分析天,以獲得基責(zé)礎(chǔ)信息,然軌后再針對這弦個結(jié)果進行餐小范圍的用犬戶訪談,作宮補充。托(3)現(xiàn)場弓觀摩。蒼俗話說得好仁,百聞不如騾一見,對于昆許多較為復(fù)矛雜的流程和雷操作而言,浴是比較難以拖用言語表達澇清楚的,而豈且這樣做也識會顯得很低旦效。針對這車一現(xiàn)象,分吐析團隊可以嫂就一些較復(fù)軌雜、較難理攪解的流程、烏操作采用現(xiàn)剩場觀摩的方冰法來獲取需疏求。逐具體來說,鎖就是走到客針戶的工作現(xiàn)佩場,一邊觀衣察,一邊聽辮客戶的講解逢,甚至可以戲安排人員跟賴隨客戶工作究一小段時間放。這樣就可角以使得分析刷人員更加直涼觀地理解需迷求。解(4)吊?柿文檔考古。勸對于一些數(shù)餃據(jù)流程比較廢復(fù)雜的,工期作表單較多臺的項目,有們時是難以通郊過說,或者翠通過觀察來壁了解需求細疏節(jié)的。這個側(cè)時候就可以董借助于脹“濟文檔考古抽”廉的方法,也贈就是對歷史薄存在的一些蹲文檔進行研洽究,考古一仙詞正是形象秤地說明了其腫主要的工作凍重心是結(jié)合旋已經(jīng)填寫完旅畢的、也就縣是帶有數(shù)據(jù)游的文件、表嶼單、報告,驅(qū)從中獲得所售需的信息。灑不過當你準泰備采用該方域法時,也要晝記住這個方睡法的主要風(fēng)蜂險,那就是篇歷史的文檔首可能與新系年統(tǒng)的流程、封數(shù)據(jù)有一些壽不吻合的地垃方,并且還盟可能承載一庭些原有系統(tǒng)乖的缺陷。要厲想有效地避尺免和發(fā)現(xiàn)這骨些問題,需咐要分析人員閘能夠運用自形己的聰明才蹲智,將其與犯其他需求捕出獲技術(shù)結(jié)合帳對照。還有群一個負面因老素就是,這派些歷史的文落檔中記載的郊信息有可能萌涉及客戶的歸商業(yè)秘密,館因此對數(shù)據(jù)扭信息的保密磚也是分析人額員基本的職泡業(yè)道德。縣(5)聯(lián)合情討論會。到這是一種相騾對來說成本晌較高的需求析獲取方法,大但也是十分區(qū)有效的一種毛。它通過聯(lián)憑合各個關(guān)鍵縫客戶代表、樂分析人員、層開發(fā)團隊代曾表一起,通貓過有組織的賽會議來討論別需求。通常里該會議的參鉗與人數(shù)6?成18人,召脂開時間1?筋5小時。區(qū)在會議之前嫌,應(yīng)該將與乞討論主題相屑關(guān)的材料提果前分發(fā)給所醬有要參加會的議的人。在熊會議開始之憤后,首先應(yīng)盲該花一些時哥間讓所有的僻與會者互相奇認識,以使神交流在更加謝輕松的氣氛富下進行。會速議的最初,倘就是針對所認列舉的問題軌進行逐項專僑題討論,然轎后對原有系腐統(tǒng)、類似系余統(tǒng)的不足進掃行開放性交耍流,第三步酸則是大家在攤此基礎(chǔ)上對冠新的解決方傳案進行一番柿設(shè)想,在過磚程中將這些洞想法、問題艱、不足之處雀記錄下來,止形成一個要縣點清單。第捎四步就是針別對這個要點園清單進行整別理,明確優(yōu)睡先級,并進河行評審。炊這種聯(lián)合討避論會將會起皺到群策群力忙的效果,對加于一些最有貸歧義的問題稅和對需求最定不清晰的領(lǐng)絹域都是十分趴有用的一種齡技術(shù)。而最兄大的難度就創(chuàng)是會議的組秋織,要做到扮言之有物,甚氣氛開放,餓否則將難以越達到預(yù)想的鄭效果。喬4.需求捕字獲的策略眼在整個需求伴過程中,需掙求捕獲、需藝求分析、需懶求規(guī)格化、墻需求驗證4鋼個階段不是啞瀑布式的發(fā)歪展,而是應(yīng)弱該采用迭代妻式的演化過和程。也就是眾說,在進行屆需求捕獲時供,不要期望餐一次就將需蠶求收集完,廳而是應(yīng)該捕估獲到一些信荒息后,進行司相應(yīng)的需求支分析,并針品對分析中發(fā)晌現(xiàn)的疑問和押不足,帶著以問題再進行暗有針對性的栽需求捕獲工叼作?;倏尚行匝芯恐疬M行可行性牲研究,其主砌要的目的是銀回答一個問炊題,即所提激出的項目是榮否可以完成削。需要注意辜的是,可行朗性研究畢竟負不是解決問涌題,而是研械究問題的范納圍,探索這浩個問題是不綢是值得去解服決,根據(jù)現(xiàn)拍有的情況是赤否有能力,竹是否有可能評找到較好的業(yè)、成本效益德合算的解決申方案?,F(xiàn)在乘很多的開發(fā)械團隊把軟件亭的最終開發(fā)戶結(jié)果是否符秩合需求規(guī)格厚說明書作為替項目的成功斷標準,其實閥這是很片面圍的。真正成昏功的項目是話滿足客戶的云目標,客戶緒帶來了預(yù)想丑的價值增長萌。而什么樣解的解決方案滿能夠真正滿脅足客戶的需隱要,實現(xiàn)客階戶的目標呢現(xiàn)這就需要大睡量的需求分第析與可行性峰研究工作。施1.可行性蜻研究工作的蔥基礎(chǔ)堪在可行性研伯究工作開始供之前,系統(tǒng)商分析員應(yīng)該啞協(xié)助客戶一族起完成啊“紙問題定義晴”糾工作,也就瞇是先明確系慶統(tǒng)要做什么如?即Wha墾t問題,也軋就是上一小估節(jié)所解決的慢內(nèi)容。臣問題定義的舍關(guān)鍵是清晰械地界定出問村題的內(nèi)容、餅性質(zhì),以及哪系統(tǒng)的目標哄、規(guī)模等內(nèi)借容,并形成煌完整的書面宋報告。系統(tǒng)洽分析員在這哨個過程中將塵使用各種需排求調(diào)查技術(shù)饑研究問題、盞引導(dǎo)問題,感從而形成完陡整的問題定葉義。記2.可行性漢研究工作的掘任務(wù)蒼可行性研究怨工作的目標欲大家已經(jīng)了歡解,那么具事體要完成什袖么工作,達勝到什么樣的笛目的,也就碰是說從何著點手呢其實可輸行性研究工認作的任務(wù)包醉括以下3個哀方面。落(1)技術(shù)須可行性:現(xiàn)丘有的技術(shù)是蠻否能夠有效拖地解決該問俘題鋤?舅是否有多種諸不同的解決趣方案遮?撿現(xiàn)有的技術(shù)慨力量是否達暴到心?艙(2)經(jīng)濟不可行性:所毀有可能的解迎決方案所需找投入的成本蘇?獅能否超過它境的開發(fā)成本中它的成本效劈益分析結(jié)果宴?捉如何投資回呈報率如何國?胸(3)社會挑可行性:該伍解決方案是謊否符合企業(yè)姨實際情況室?率是否符合員爭工利益沃?薯是否符合相梁關(guān)法規(guī)和行怕業(yè)規(guī)范盈?綱完成可行性象研究工作之壇后,必須將葡這些成果文剖檔化地記錄退下來,形成賀《可行性研曲究報告》。末3.可行性臟研究工作的鳥步驟叨那么具體而聽言,可行性低研究工作包癥括哪些事項辦呢該如何著悟手?都需要帖哪些人參與鉛呢下面我們拾就可行性研當究工作的步訪驟做一個總憲結(jié)性闡述。喘(1)核實搬問題定義與捆目標。瓜開始正式進駕行可行性研堆究工作之前椒,首先要做查的一個工作青,就是對該君項工作的基娘礎(chǔ)一問題定便義再次核實鹽。具體來說域,就是仔細瞞閱讀問題定塔義的相關(guān)材沫料,對該問叛題所涉及的追領(lǐng)域知識進集行學(xué)習(xí)、考探證,然后通筒過走訪相關(guān)片人員進行驗取證與核實。潑這一步驟的竿關(guān)鍵目標是據(jù):使問題定鑼義更加清晰贊、明確、沒惑有歧義性,默并且對系統(tǒng)覽的目標、規(guī)煎模,以及相牧關(guān)約束與限鍋制條件做出處更加細致的匆定義,確保論可行性研究膏小組的所有評成員達成共屯識。子(2)研究給分析現(xiàn)有系筐統(tǒng)。君對現(xiàn)有系統(tǒng)略的仔細分析降與研究是十愈分重要的一忌項工作,因悲它是新系統(tǒng)撐開發(fā)的最好枕參照物,對念其的充分分份析有助于新輩系統(tǒng)的開發(fā)僚。這么說的拜原因,主要質(zhì)是基于以下確幾點考慮:午?悠現(xiàn)有系統(tǒng)已炎實現(xiàn)的功能停通常也是新復(fù)系統(tǒng)要實現(xiàn)錘功能的一部淘分。燕?從新系統(tǒng)一定街是在現(xiàn)有系造統(tǒng)基礎(chǔ)上的掌升華,畢竟瘋?cè)绻f系統(tǒng)棍沒有問題,眼就不會有新炭系統(tǒng)開發(fā)的輸需求。盆?慘另外,現(xiàn)有譯系統(tǒng)的運行乓成本分析的白結(jié)果是衡量榴新系統(tǒng)的經(jīng)秩濟可行性的蜜重要參照物檔。從字面上妥的理解會容咐易產(chǎn)生一個叨常見的誤區(qū)全,就是認為漢現(xiàn)有系統(tǒng)一建定是軟件系皆統(tǒng),其實這梨里的竭“閘現(xiàn)有系統(tǒng)與”鑄不僅包括舊海的軟件系統(tǒng)附,還包括舊治的非計算機托系統(tǒng)。護(3)新系萬統(tǒng)建模?;菰趩栴}定義用和對現(xiàn)有系跪統(tǒng)研究的基察礎(chǔ)上,開始閱對新的系統(tǒng)炕進行建模,義建模的目的趨是為了獲得苗一個對新系淘統(tǒng)的框架認芒識、概念性象認識。通常唇可以采用以剖下幾種技術(shù)口。變?森系統(tǒng)上下文遺關(guān)系范圍圖曲:其實也就娃是DFD(發(fā)數(shù)據(jù)流圖)德的0層圖,置將系統(tǒng)與外權(quán)界實體(可巡能是人、可諒能是外部系撫統(tǒng))的關(guān)系吧(主要是數(shù)承據(jù)流和控制倘流)體現(xiàn)出抹來,從而清堪晰地界定出筍系統(tǒng)的范圍嗚,實現(xiàn)共識勒。妙?舒實體-關(guān)系竟圖(E-R于):這是系漫統(tǒng)的數(shù)據(jù)模賴型,這個階歐段并不需要揀生成完整的渡E-R圖,典而是找到主證要的實體,著以及實體以圾間的關(guān)系即窮可。雪?乎用例模型:師這是系統(tǒng)的保一個動態(tài)模編型,以Ac源tor和u賭se-ca茶se整理出債系統(tǒng)的主要弊功能框架,孔這個階段應(yīng)徑該大部分都兔處于概念級真,每個用例恩也無需花太職多的時間確剪定細節(jié),只夸要能夠勾畫分出系統(tǒng)的雛鴉形即可。調(diào)?狂域模型:采腫用00的歸思想,對于遲系統(tǒng)中主要罵的實體類找沾到,并說明頂實體類的主狡要特征和它素們之間的關(guān)香系???尸IP0表拼:采用傳統(tǒng)餅的結(jié)構(gòu)化思乳想,從輸入剪、處理、輸版出的角度進堵行描述系統(tǒng)淹。再次請大滾家注意,這稀個階段的所次有模型是不民夠精確的,炎只是一個框衫架,要達到功一個宏觀的貸角度,否則都將陷入無休勁止的工作中點。部(4)客戶藍復(fù)核。扇可以這么說聰,在第(3道)步中建立釋起來的系統(tǒng)夏模型是系統(tǒng)微分析員眼里聚的問題定義巨,那么這與叢客戶心目中細的問題是否曾一致呢?因努此,完整的遣系統(tǒng)模型建紗立之后,一繭個十分重要魚的工作就是訓(xùn)與客戶一起大進行復(fù)核??‘斎?,由于忌這個時候模弄型將成討論林和分析的基筑礎(chǔ),因此使染用客戶更容溜易接受的模稅型將顯得十吉分重要。戒如果在這個劍過程中,發(fā)織現(xiàn)模型與客裳戶的目標有快不一致的地高方,就應(yīng)該煤再次通過訪純談、現(xiàn)場觀路摩、對現(xiàn)有譽系統(tǒng)分析等古手段進行了罷解,然后在濁此基礎(chǔ)上修頓改模型。由繩此也可以看江書,(1)然?(4)的鵝步驟是一個焰循環(huán),周而供復(fù)始,直至狼客戶確認了惠新的系統(tǒng)模犯型止。歐(5)提出桂并評價解決筆方案。芒前面的工作扎還是停留在蠻“即系統(tǒng)解決什崖么問題圣”老上,只是更航加清晰地進莫行了定義和系說明。當客狼戶與系統(tǒng)分鑒析員對要解哀決的問題有記了一個清晰諒的共識之后概,接下來的睜工作就是提歸出解決方案抗,這也是系杜統(tǒng)分析員很夠重要的工作痛之一。咐在這個階段徹,應(yīng)該盡量毒列舉出各種鳴可行的解決暑方案,并且育對這些解決粗方案的優(yōu)點痛、缺點做一哀個綜合性的室評價,以便題下一步?jīng)Q策匆。需要注意激的是,對那貼些明顯不可雁行的,如技衛(wèi)術(shù)上還沒有恐相應(yīng)的辦法礎(chǔ)、經(jīng)濟角度村明顯不可行犬的、違背企宣業(yè)或行業(yè)實江際情況的解菠決方案應(yīng)該荷直接過濾掉午。駁(6)確定初最終推薦的患解決方案。叨明確地指出削該項目是否尋可行,如果都可行,什么殺方面是最合煉理的?由于監(jiān)對這兩個問裂題的回答,裙是可行性分鼓析研究工作演的核心目標度。因此在各玻種解決方案溉提出之后,伙接下來應(yīng)該腿從中選中一首個最合理、浙最可行的解菜決方案,更雪加詳細地說拍明理由,并逮且還要對其現(xiàn)進行更加完順善的成本/魚效益分析。姑具體來說,劣成本效益分難析可以分成范兩個部分的艦內(nèi)容。物①梳成本估計。諒對于軟件系屬統(tǒng)而言,主阿要的成本是傲人力資源成師本,另外還越包括一些直遼接的費用、載設(shè)備采購的隸費用等。相桂對而言,硬肅件設(shè)備,以言及其他的一僵些相關(guān)費用譽的評估會比諸較容易一些艦,最難的是門人力資源的陸成本分析。淺因此,對系辛統(tǒng)工作量(向用人月、人瓦年等單位進雪行說明)進目行合理、科她學(xué)的評估,蜻并在此基礎(chǔ)湊上進行計算尊是很必要的蠻。與要想準確地驕估算出工作告量,通??捎嬕越柚墓べe具是歷史數(shù)問據(jù)和經(jīng)驗?zāi)dz型。歷史數(shù)捕據(jù)就是指你驕所在的開發(fā)賴團隊以往從圾事項目的情規(guī)況,可以通艦過以類似系剩統(tǒng)項目做參朱照的方法。幕而經(jīng)驗?zāi)P鸵?guī)則是一些軟蝕件工作量估漢算方面的研范究總結(jié),常擊用的有功能包點分析、C勝OCOMO己分析等。膝通常,可以悠分成以下幾私步進行:幟?搖首先,進行欺工作任務(wù)分貧解,將目標朝細化。狀?部然后,就每量一個工作任撕務(wù)包,與具秤體的開發(fā)團駕隊進行共同駱分析,使用靠功能點分析某法或其他相遺關(guān)的分析法苗進行估算,結(jié)并且將估算摔的結(jié)果與類量似項目的歷周史數(shù)據(jù)進行境比較,做出戰(zhàn)微調(diào)。史?敲使用COC痕OMO分析邪,計算出相秩應(yīng)的人月數(shù)鋒。在這個過用程中,還應(yīng)播該根據(jù)類似緒項目的歷史驢數(shù)據(jù)推出項中目組隊的平鈔均產(chǎn)能,從毛而使估算值廊更有代表性亂。蠅另外,有一紙點是十分重飽要的,在這協(xié)個階段是不菊可能得到精印確的估算值拒的,這個觀受念必須讓開映發(fā)團隊、管個理層和客戶益很清晰地認世識到。否則痕,即使違心炕地給出精確偉的估算值也挖顯得沒有任詞何意義。絮這個階段的翁工作,對于曉系統(tǒng)分析員駝而言,很重跳要的知識技堡能在于軟件仆度量與估算權(quán)方法、技術(shù)追的掌握方面頂。起②雖效益分析。仇有了估算出喉來的開發(fā)成桿本以后,就牌可以進行效萌益分析了。倆在做效益分輛析之前應(yīng)該傅首先對該系去統(tǒng)應(yīng)用之后折,將會帶來舒的直接、間匯接收益,以統(tǒng)及成本降低悉的具體數(shù)額鈴進行量化。進并且通過經(jīng)靜濟學(xué)的相關(guān)狗模型來進行殖分析,這要向求系統(tǒng)分析西人員能夠在蝦該方面有一區(qū)定的知識積移累。通常進寬行效益分析做時要借助以慘下幾個概念傍。裁?釘貨幣的時間表價值:比如姿說現(xiàn)在的1評元錢,與未怖來的1元錢洪,其代表的施價值是不同蒼的。通常是霸使用利率的扯形式來表現(xiàn)功這個價值。修我們用廠代盤表未來的價彈值,P代表兵現(xiàn)在的價值童,那么可以坊總結(jié)為:和穴其中/代表賭年利率,n得代表年數(shù)。裙?太投資回收期我:投資回收糾期的意思就屯是要多少年繞才能夠?qū)⑼恫少Y回收,越敵短越有利。勢?所純收入:衡銷量系統(tǒng)價值鴉的一個很重朝要的指標就霞是純收入,賭而純收入指速的是整個生撲命周期之內(nèi)顧系統(tǒng)的累計浙經(jīng)濟效益(珍折成現(xiàn)值)卻與投資之差咳。司?踐投資回報率劫:當投資額彩、每年預(yù)計棄可獲得的經(jīng)精濟效益這兩炕個數(shù)據(jù)有了優(yōu)的時候,就嘴可以計算投顯資回報率(牌ROI鼓),公式如帆下所示:窗P=F1/義(1+J)罪+F2/(獵1+J)2土+....嶄..+Fn字/(1+襖J詳)"極其中,P代溝表總投資額狗,F(xiàn),揮?登是第粗I驅(qū)年年底的收氧益,熊n藥是系統(tǒng)使用戀壽命,J就斬是投資回報葬率。旁.(7)草走擬開發(fā)計劃懸。晴在上一步,貢我們對主要瘡?fù)扑]的解決割方案進行了戰(zhàn)詳細的成本占效益分析,雞對工作內(nèi)容綱和工作量都俘有了一個詳卡細的了解,面接下來需要甘制訂一個最喇粗略的開發(fā)估計劃,說明會開發(fā)所需的踢資源、人員噴和時間進度孟安排。這也唯將作可行性騾分析的一個說重要依據(jù)和項立項開發(fā)后碌制訂項目計這劃的基礎(chǔ)。釋(8)以書河面的形式提葛交《可行性路分析報告》宣并進行審查愛。促最后就是將惰這些研究的蠟結(jié)果整理成扒文,提交客煤戶和管理層殘,進行審查城通過。在這獻個階段還應(yīng)得該制作一些功相應(yīng)的講義贈,客戶和管割理層做介紹湯和說明。齒欺需求分析渣在細化地說炒明需求分析愿之前,我們羞先溫習(xí)一下涉分析的定義騎:所謂分析賠就是通過對淘問題域的研脆究,獲得對舞該領(lǐng)域特性衡及存在于其腹中(需要解供決)的問題貪特性的透徹劇理解并用文獄檔說明。圣從上面的定挺義中,我們垮可以知道需鄉(xiāng)求分析的關(guān)虧鍵在于對問襖題域的研究勺與理解。為瀉了便于理解裙問題域,現(xiàn)辦代軟件工程址方法所推薦獸的做法是對干問題域進行循抽象,將其視分解若干的辨基本元素,存然后對元素周之間的關(guān)系兼進行建模。泄1.需求分香析的工作任霧務(wù)曾前面對分析乓的定義相對站比較抽象,剝不太易于理蘿解,不太容膏易用來指導(dǎo)噴具體的操作販。其實用更某通俗的話來飲說,需求分李析就是提煉重、分析和仔祖細審查已經(jīng)噴收集到的需違求,以確保黎所有的涉眾身都明白其含蘆義并找出其撫中的錯誤、低遺漏或其他謙不足的地方餅。鑄在Karl羽E.Wie擾gers的斷經(jīng)典名作《喉軟件需求》婦一書中指出倘,需求分析將的工作通常而包括畫以下七個方洗面。畜(1)繪制流系統(tǒng)上下文險范圍關(guān)系圖肝:這種關(guān)系欺圖是用于定慕義系統(tǒng)與系詞統(tǒng)外部實體身間的界限和與接口的簡單棒模型,它可商以為需求確礎(chǔ)定一個范圍形。其實就是袋DFD的0沉層圖,圖2歇-2就是一盯個實例。鮮(2)創(chuàng)建裙用戶接口原晃型:由于用溉戶界面對于盞一個系統(tǒng)來網(wǎng)說是十分重蓬要的,因此腐在需求分析鳥階段通過快鴿速開發(fā)工具業(yè)開發(fā)一"t卡'可拋棄原損型,或者通日過Powe痰rPoin稿t、Aut斷horwa殊re等演示嚼工具制作一均個演示原型威,甚至可以尤用紙筆畫出礎(chǔ)一些關(guān)鍵的液界面接口示唯意圖,這些推都會幫助客吵戶更好地理瑞解所要解決防的問題,更承好地理解需狹求。絕(3)分析飲需求的可行駱性:對所有筍獲得的需求薄進行成本、耽性能、技術(shù)軍實現(xiàn)方面的鐮可行性研究卸,以及這些枝需求項是否彼與其他的需菜求項有沖突匪,是否有對叨外的依賴關(guān)員系等。渾(4)確定議需求的優(yōu)先穴級:這是一順個很重要的采工作,迭代仆開發(fā)已經(jīng)成沫為現(xiàn)代軟件途工程方法論岸的一個基礎(chǔ)濱,而需求的駕優(yōu)先級是制有訂迭代計劃擾的一個最重冬要的依據(jù)。滲對于需求優(yōu)蟲先級的描述愚,可以采用對滿意度/非樂滿意度指標臂進行說明(徹滿意度:取攔值1?5,棚表示當需求蠶被實現(xiàn)時用恭戶的滿意程雕度。不滿意豆度:取值1錘?5,表示霉當需求未被架實現(xiàn)時用戶誼的不滿意程山度。)那(5)為需貴求建立模型坡:也就是建那立分析模型超,這些模型恥的表現(xiàn)形式參主要是圖表刊加上少量的厘文字描述,碌正所謂一圖裝抵千字,圖眼形化地描述滅需求使其更煎加清晰、易修懂。根據(jù)采古用的分析技為術(shù)的不同,辟采用的圖也虧不同,例如盆,00技腸術(shù)下的用例械模型和域模稿型;面向數(shù)料據(jù)分析技術(shù)序下的E-R慈圖;結(jié)構(gòu)化吐分析技術(shù)下詞的數(shù)據(jù)流圖涌等。促(6)創(chuàng)建套數(shù)據(jù)字典:搶數(shù)據(jù)字典是槽對系統(tǒng)用到萍的所有數(shù)據(jù)鉆項和結(jié)構(gòu)進確行定義,以預(yù)確保開發(fā)人咸員使用統(tǒng)一叮的數(shù)據(jù)定義頓。歪(7)使用徹質(zhì)量功能調(diào)勞配(QF舉D):這孤是在需求優(yōu)娘先級基礎(chǔ)上儉的一個升華哪,其原理與押滿意度/非叨滿意度指標權(quán)十分接近。蠶它通過將產(chǎn)碌品特性、屬顧性與對客戶布的重要性聯(lián)步系起來,Q庫FD將需紫求分三類:驅(qū)期望需求,吐即如果缺少障會讓其感到盈不滿意的需雞求;普通需爆求;興奮需姑求:實現(xiàn)了般客戶會感到蜜驚喜,但沒沫有也不會遭逼到責(zé)備。撕2.需求建鋪模槽根據(jù)在需求理方面的權(quán)威繭Alan奸Davis立的見解,僅用僅單一地看仇需求并不能搭提供對需求催的完全理解婦,而是需要余把用文字表福示的需求和忌用圖形表示交的需求結(jié)合劍起來。而用付圖形表示需念求,就是需猾求建模,獲亡得分析模型移。分析模型珍有助于檢測閉需求的不一懷致性、模糊泛性、錯誤及欠遺漏。有一起點需要提醒插讀者注意的舅是,迄今止援,尚未發(fā)現(xiàn)回一種分析建賠模技術(shù)能夠考將所有的內(nèi)丑容涵蓋,我叮們需要根據(jù)披實際情況進奴行有效的組搞合。趁進行需求建繪模時,首先辨應(yīng)該建立一某個概念,那費就是分析模賞型的基礎(chǔ)是昂分析元素,灰而分析元素朋則來源于客革戶所陳述的摔需求。而且墾,我們應(yīng)該如盡可能地利暢用CASE定工具創(chuàng)建、末維護、發(fā)布盼需求模型,弓以保持其可優(yōu)控性。葡吸流行的需求賄分析方法論戰(zhàn)需求分析的能方法可謂種謙類繁多,不小過如果按照住分解的方式喚不同,可以攜很容易地劃朱分覺出幾種大類聾型。我們先畝從分析方法桿發(fā)展的歷史氧,對其建立游一個概要性緣的認識。炮結(jié)構(gòu)化分析示方法(St嗓ructu藥redA脅nalys臟is,SA努):最初的減分析方法都潛不成體系,緒而且幅通常都只包石括一些籠統(tǒng)授的告誡,在病20世紀7考0年代分析拳技術(shù)發(fā)展的牲分水嶺終于融出現(xiàn)了。挑這時人們開鄙始嘗試使用味標準化的方叔法,開發(fā)和朱推出各種名要“值結(jié)構(gòu)化分析禁”徑的方法論,魂TomD將eMacr芒o是這個領(lǐng)類域最有代表眉性和權(quán)威性曬的專家。昏軟系統(tǒng)方法度:這是一個層過渡性的方中法論,并未套真正流行過均,它的出現(xiàn)疊只是證明了轟結(jié)構(gòu)化分析匹方法的一些腎不足。因為止結(jié)構(gòu)化分析麻方法采用的恨相對形式化鏡的模型不僅副與社會斧觀格格不入筋,而且在解尿決蠅“憤不確定性慈”姓時顯得十分洲無力。最有則代表性的軟拒系統(tǒng)方法是騾Check隨land方槽法。燭面向?qū)ο蠓謴奈龇椒ǎ∣粱bject族Orie離nted棟Analy炒sis,O濃OA):在披20世紀9搞0年代,結(jié)規(guī)構(gòu)化方法的該不足在面對弊多變的商業(yè)資世界時,顯自得更加蒼白糠無力,這促灶使了OO摟A的迅速發(fā)展。酸面向問題域擦的分析(P義roble傾mDom戚ainO糠rient刻edAn腫alysi犯s,PDO裙A):隨著工技術(shù)的應(yīng)工用和發(fā)展發(fā)烘現(xiàn)面向?qū)ο蟠胺治龇椒ㄒ矑甏嬖谥芏嗫兊牟蛔?,?yīng)輪運而生了一消些新的方法葬論,鬼PDOA就舟是其中一種挑。不過PD牢OA尚在研鏟究階段,并挽未廣泛應(yīng)用若。光1.結(jié)構(gòu)化綿分析蹦結(jié)構(gòu)化分析擁與面向?qū)ο蠊诜治龇椒ㄖ铋g的最大差承別是:結(jié)構(gòu)耀化分析方法妥把系統(tǒng)看做壁一個過程的宿集合體,包航括人完成的愉和電腦完成晨的;而面向誘對象方法則鼻把系統(tǒng)看成覽一個相互影疏響的對象集聚。結(jié)構(gòu)化分聰析方法的特擊點是利用數(shù)享據(jù)流圖來幫往助人們理解冶問題,對問陵題進行分析嫌。拋結(jié)構(gòu)化分析消一般包括以陡下工具,在懷本節(jié)的隨后粘部分將對它代們一一做簡釀單介紹。舉?雀數(shù)據(jù)流圖(事Data崖Flow姻Diagr花am,DF煤D);侍?曬數(shù)據(jù)字典(粥Data育Dicti哥onary爸,DD);途?胡結(jié)構(gòu)化語言售;?判定表;?判定樹。附結(jié)構(gòu)化系統(tǒng)樹分析方法從懷總體上看是非一種強烈依羅賴數(shù)據(jù)流圖俱的自頂向下杰的建模方法敘。它不僅是滿需求分析技威術(shù),也是完恰成需求規(guī)格嘆化的有效技族術(shù)手段。丹在介紹具體燦的結(jié)構(gòu)化分芝析方法之前嶼,我們先對拐如何進行結(jié)車構(gòu)化分析做吩一個總結(jié)性訪描述,以幫羅助大家更好悅地應(yīng)用該方垃法。么(1)研究刃“鑰物質(zhì)環(huán)境喘”氧。首先,應(yīng)貴畫出當前系而統(tǒng)(可能是萌非計算機系考統(tǒng),或是半淺計算機系統(tǒng)咬)的數(shù)據(jù)流粗圖,說明系住統(tǒng)的輸入、業(yè)輸出數(shù)據(jù)流葉,說明系統(tǒng)治的數(shù)據(jù)流情臂況,以及經(jīng)轉(zhuǎn)歷了哪些處端理過程。在躲這個數(shù)據(jù)流備圖中,可以拍包括一些非軍計算機系統(tǒng)么中數(shù)據(jù)流及歡處理的命名土,例如,部厚門名、崗位砍名、報表名狂等。這個過槽程可以幫助撕分析員有效絹地理解業(yè)務(wù)藝環(huán)境,在與泡用戶的充分簡溝通與交流挺中完成。初(2)建立純系統(tǒng)邏輯模旬型。當物理養(yǎng)模型建立完鬧成之后,接飾下來的工作霞是畫出相對苦真實系統(tǒng)的惡等價邏輯數(shù)羨據(jù)流圖。在恨前一步驟建那立的數(shù)據(jù)流判圖的基礎(chǔ)上團,將所有自短然數(shù)據(jù)流都帖轉(zhuǎn)成等價的癥邏輯流:例證如將現(xiàn)實世落界的報表改扯成存儲在計組算機系統(tǒng)中病的文件里;膜又如工,叔將現(xiàn)實世界柄中拆“窗送往總經(jīng)理爆辦公室女”放改襯“譜報送報表紐”句。文(3)劃清農(nóng)人機界限。炒最后,我們有確定在系統(tǒng)判邏輯模型中慢,哪些將采束用自動化完央成,哪些仍店然保留手工破操作。這樣鮮就可以清晰翻地劃清系統(tǒng)撿的范圍。位2.數(shù)據(jù)流堂圖吳數(shù)據(jù)流圖是虛一種圖形化編的系統(tǒng)模型墳,它在一張搖圖中展示信雨息系統(tǒng)的主候要需求,即羨輸入、輸出饞、處理(過訂程)、數(shù)據(jù)膊存儲。由于攜從DFD中襪可以很容易幫地一眼看出載系統(tǒng)緊密結(jié)遣合的各個部梁分,而且整尤個圖形模式蕉只有五個符紅號需要記憶潤,所以深受騙分析人員的勝喜愛,因而羨廣流行。予正如圖2-三3所示,D巡FD中包括捆以下幾個基床本元素。統(tǒng)?盤過程:一步爹步地執(zhí)行指炸令,完成輸座入到輸出的達轉(zhuǎn)換。態(tài)?寧外部實體:亮系統(tǒng)之外的陷數(shù)據(jù)源或目解的。徑?視數(shù)據(jù)存儲:囑存放數(shù)據(jù)的夫地方,一般勾是文件、數(shù)圍據(jù)庫等形式祝。仍?隔數(shù)據(jù)流:從患一處到另一捏處的數(shù)據(jù)流捐向,如從輸忍入或輸出到芳一個過程的久數(shù)據(jù)流。歷?淋實時連接:臟當過程執(zhí)行的時,外部實鉗體與過程之銷間的來回通辨信。困(1)數(shù)據(jù)徑流圖的層次鳳。正如前面付提到的,結(jié)紛構(gòu)化分析的絨思路是依賴度于數(shù)據(jù)流圖蚊進行自頂而冒下的分析。畢這也是因為正系統(tǒng)通常比四較復(fù)雜,很檔難在一張圖堵上將所有的朝數(shù)據(jù)流和加儲工描述清楚未。因此,數(shù)絞據(jù)流圖提供謀一種表現(xiàn)系搜統(tǒng)高層和低異層概念的機諷制。也就是蓬先繪制一張判較高層次的捧數(shù)據(jù)流圖,喊然后在此基器礎(chǔ)上,對其紗中的過程(耀處理)進行彎分解,分解紋成若干獨立肉的、低層次華的、詳細的釣數(shù)據(jù)流圖,厭而且可以這毛樣逐一地分嫌解下去,直膏至系統(tǒng)被清斷晰地描述出接來。軋(2)Co椅ntext茶圖。Con兵text圖禾,也就是在碗亦節(jié)中提到的敲系統(tǒng)上下文每范圍關(guān)系圖誘。這是描述型系統(tǒng)最高層亭結(jié)構(gòu)的DF抵D圖。它的場特點是,將閉整個待開發(fā)扔的系統(tǒng)表示津為一個過程銀,將所有的認外部實體和傭進出系統(tǒng)的舌數(shù)據(jù)流都畫正在一張圖中旅。曉圖2-3就眼是一個Co孩ntext慧圖的實例,螞只不過在繪村制時做了一唇些處理,使骨得它看上去宗更加直觀易輩懂,圖2-京4也是一個仆Conte朵xt圖的例叫子。穴圖2-4乞Conte改xt圖實例斗Conte見xt圖用來躬描述系統(tǒng)有淋什么輸入、稼輸出數(shù)據(jù)流鄭,與哪些外租部實體直接吳相關(guān),可在以把整個系爹統(tǒng)的范圍勾伯畫出來。牛(3)逐級們分解。當完洽成了Con梅text圖酒的建模后,液就可以在此坦基礎(chǔ)上進行弓進一步分解仗。下面我們甘以圖24翼例,進行再蒙分解,在對晶原有流程了托解的基礎(chǔ)上躺,可以得到坊圖2-5。孩圖2-5爆DFD秒0層圖涉圖2-5是降在Cont懸ext的基稻礎(chǔ)上做的第便一次分解,惑而在Con鐮text只壞有一個過程潔,那就是系梨統(tǒng),我們將菌其編號0。嗎接下來對C明ontex鄰t圖進行分刮解,其實就尚是對這個編雁號0的過程剃進行更細化或的描述,在丈這里引入了墾新的過程、雨數(shù)據(jù)存儲,召為了能夠區(qū)斧分其位于的割級別,在這弓個層次上的懶過程將以1墓、2、3為跳序列進行編英號。喂正是由于這慌是對過程0阻的分解,因廁此也稱之D捧FD0層舒圖。而我們后可以根據(jù)需刺要對DFD槐0層圖上的壩過程(編號磨1、2、3凡)進行如法宣炮制的分解領(lǐng),稱之DF跟D1層圖,蟻DFD1層踢圖中引入的讓新過程,其糖編號規(guī)則就巖是1.1,秀1.2-,評以及2.1蛇,2.2-孔,依此類推客,直到完成校分析工作。口另外,這里冊存在一個很秋關(guān)鍵的要點舒,由于DF序D0層圖是要Conte篇xt的細化勒,因此所有探的輸入和輸難出應(yīng)該與C嗓ontex庭t完全一致異,否則就說礙明存在著錯諸誤。序(4)如何銹畫DFD。激DFD剝的繪制是一黑個自頂向下溉、由外到里擾的過程,通農(nóng)常按照以下吹幾個步驟進沒行。屋?恥畫系統(tǒng)的輸水入和輸出:字在圖的邊緣喉標出系統(tǒng)的占輸入、輸出逗數(shù)據(jù)流。這棍一步其實是段決定研究的破內(nèi)容和系統(tǒng)香的范圍。在齡畫的時候,謀可以先將盡婦可能多的輸?shù)钊?、輸出畫尊出來,然后伯再刪除多余嶺的,增加遺匆漏的。辭?警畫數(shù)據(jù)流圖躁的內(nèi)部:將干系統(tǒng)的輸入仔、輸出用一剛系列的處理駕連接起來,測可以從輸入優(yōu)數(shù)據(jù)流畫向呆輸出數(shù)據(jù)流刮,也可以從變中間畫出去副。類?伯每一個數(shù)據(jù)心流命名:命墓名的好壞與限數(shù)據(jù)流圖的驢可理解性密植切相關(guān),應(yīng)勵避免使用空服洞的名字。獨?敘加工命名:干注意應(yīng)用動槽賓短語。他不考慮初始趨化和終點,料暫不考慮出泳錯路徑等細孕節(jié),不畫控賓制流和控制盾信息。舅3.細化記記錄DFD部駛件莊為了能夠更綢好地描述D拜FD的部件評,結(jié)構(gòu)化分肯析方法還引廟入了數(shù)據(jù)字敵典、結(jié)構(gòu)化監(jiān)語言,以及段決策樹、決雹策表等方法容。通過使用月這些工具,趴能夠?qū)?shù)據(jù)詞流圖中描述市不夠清晰的動地方進行有臉效的補充。樓(1)結(jié)構(gòu)壞化語言。結(jié)獲構(gòu)化語言是絡(luò)結(jié)構(gòu)化編程拉語言與自然諷語言的有機斗結(jié)合,可以肯采用順序結(jié)療構(gòu)、分支結(jié)繭構(gòu)、循環(huán)結(jié)溜構(gòu)等機制,蘆同時還說明具加工的處理捷流程。該技內(nèi)術(shù)通常用來趨描述一些重友要的、復(fù)雜烤的過程的程望序邏輯邏輯物。表2-1擋所示是一個朵使用結(jié)構(gòu)化懷語言描述的親例子。漠表2-1使嫁用結(jié)構(gòu)化語很言描述的例叮子御IF分數(shù)>紛=60T訓(xùn)hen唇IF分數(shù)<鋸80Th愿en成績=CELSE漂IF分數(shù)<塵90Th鹽en成績=BElse成績=AEndlfEndlf'ELSE舍IF分數(shù)>固=50T拾hen成績=DELSE成績=EEndlfEndlf掛(2)決策訴表和決策樹連。決策表是三一種處理邏臺輯的表格表延示方法,其梳中包括決策余變量、決策彎變量值、參糖與者或公式廣。與上例對略應(yīng)的決策表谷示例如表2蕩-2所示。寨表2-2決笑策表示例雞分數(shù)>=6舊0是否惜分數(shù)>=8尊0<80>榆=50<5呢0柄分數(shù)>=9裳0<90削成績AB騎CD壩E睛而決策樹則稅使用像樹枝梅一樣的線條辟對過程邏輯刺進行圖表化納的描述。與若上例相應(yīng)的疼決睡策表如圖2良-6所不。Y成績=B鋸圖2-6決奸策樹不例睜很顯然,應(yīng)屋用這兩種手竿段來描述復(fù)由雜決策邏輯臟,要遠遠優(yōu)未于使用結(jié)構(gòu)膠化語言。而蹄這兩種技術(shù)指也各有優(yōu)劣息,決策表更荷嚴密,而決縱策樹更易讀翼。分析人員率可以根據(jù)自技己的實際需勵要來靈活選素擇應(yīng)用。夾(3)數(shù)據(jù)衰字典。數(shù)據(jù)曲字典技術(shù)是膀一種很實用勺、有效的表俱達數(shù)據(jù)格式般的手段。它量是對所有與弦系統(tǒng)相關(guān)的蜂數(shù)據(jù)元素的去一個有組織頂?shù)牧斜砗途卮_的、嚴格峽的定義,使冠用戶和系統(tǒng)乎分析員對輸斯入、輸出、緣存儲成分和圖中間計算機頌有共同的理爪解。通常數(shù)孝據(jù)字典的每遇一條目中包吼括以下信息壟。播?會名稱:數(shù)據(jù)低或控制項、婦數(shù)據(jù)存儲或臘外部實體的崖主要名稱,園如果有別名襲的還應(yīng)該將朗別名列出來支。攻?傻何處使用/屢如何使用:特使用數(shù)據(jù)或帝控制項的加諸工列表,以卷及如何使用候。汗?絕內(nèi)容描述:消說明該條目蜂內(nèi)容組成,夾通常采用以內(nèi)下符號進行赤說明。輸>=:由泛…巡構(gòu)成。定>+:和,械代表順序連鮮接的關(guān)系。飛>[|]:葉或,代表從份中選擇一個它。袖>{}*:躺n次重復(fù)。肚>C):代示表可選的數(shù)賊據(jù)項。盲>*-*:殼表示特定限奔制的注釋。弓?刪補充信息:嬸關(guān)于數(shù)據(jù)類趴型、默認值揮、限制等信側(cè)息。甜表2-3是考一個數(shù)據(jù)字握典的實例。三表2-3數(shù)曬據(jù)字典的實膜例取客戶基本信濟息=客戶編很號+客戶名巴稱+身份證死號碼+及+小靈通+吊家庭洪客戶編號=哄{0-9}蘋8橋客戶名稱=步丨字蝕”菜身份證號碼趟=[{0.肉..9}1冶5{0齊…粉9}18]待丨邊=^0況-9)4(雖^9}12暮]之小靈通=(擠區(qū)號)+本累地號埋家庭=偉(區(qū)號)+擺本地號絕辦公=冰(區(qū)號)+雀本地號醋區(qū)號={0督…葉9}4騰本地號=[之{0*康“綁9}7{0誤…煉9}8]丨裙4.實體-舞關(guān)系圖松傳統(tǒng)的系統(tǒng)闊開發(fā)方法都溪把重點集中爭在新系統(tǒng)的星數(shù)據(jù)存儲需音求上,包括巴數(shù)據(jù)實體、到數(shù)據(jù)實體的無屬性,以及毫它們之間的被關(guān)系。而描兄述這些東西嫁的最好形式激就是借助實絡(luò)體-關(guān)系圖割(Enti較tyRe刮latio博nship爭Diag兩ram,E瘦-R圖)。娘(1)實體奪。由于所有剝的系統(tǒng)都包壘括數(shù)據(jù),而柴且是大量的尸數(shù)據(jù)。因此扎,我們在開笛發(fā)系統(tǒng)時,恰需要一個概批念來抽象地俘表示一組相收類似的事物敘的所有實例拋,我們稱這紅個概念實體瓣,在E-R流圖中使用一那個圓角的矩至形來表示,毫如圖2-7繪(a)所示罰。從這個概曠念上看,與龜面向?qū)ο蠓趾逦龇椒ㄖ械漠a(chǎn)類有些相似貫。不過,由姻于在這里只專關(guān)心數(shù)據(jù),桑因此實體通壞常是需要存逐儲的數(shù)據(jù)??蹬c類一樣,遞實體也有實營例,表示實皺體的一個具律體值,稱為絹實體實例。訊由于實體是鴨用來存儲數(shù)蔽據(jù)的,因此株需要描述它該具體存儲什剃么數(shù)據(jù),這勁些具體的數(shù)成據(jù)叫做屬性魔,用來描述他實體的性質(zhì)濃或特征,可早以直接在圓啞角矩形中填參入這些屬性胖值,如圖2天-7(b)尖所示。另外掘還應(yīng)該屬性殺定義合法的秘值,這個定糟義包括數(shù)據(jù)言類型、域,廚以及默認值跪,這些描述裕可以直接跟譯在屬性值的奶后面,如圖予2-7(c克)所示。關(guān)插于數(shù)據(jù)類型潛、域的說明漢如表2-4慧所示。頌表2-4數(shù)笑據(jù)類型與域剩說明屈數(shù)據(jù)類型類雜型說明域顆對于整數(shù),儀指定范圍丨辣最大?最小承}銀NUMBE拍R任何數(shù)、案實數(shù)或整數(shù)立對于實數(shù),既指定范圍和熄精度份TEXT一洋個字符串T故EXT(屬幸性的最大長搞度)跳MEMO不盞確定大小的蜓TEXT,媽常用于不定野長的信息無體DATA各跟種格式的曰惡期MMDD窯YYYY或他者MMYY援YY等魔TIME各交種格式的時全間HHMM江T或者HH箭MM等除YES/N杰O布爾型變哲量,是或者慮否{YES償,NO}{將ON,OF舉F}勸{值1,值爬2,貢…咽,值w}陷VALUE馳SET一逗個有值集合欣{代表代碼過及含義的表乎}缺IMAGE炊任何圖形或封圖像無倆另外,為了齒能夠區(qū)別每押一個實體實煩例,經(jīng)常需垂要設(shè)置一個根標志符或鍵滴,而鍵就是庸其中的一個稍或一組屬性現(xiàn),它們對每半個實體實例和具有唯一的揭值,通常在類E-R圖中固的屬性值后沫面加上Pr爪imary勉Key或產(chǎn)Alter英nate澇Key等描社述,如圖2以-7(d)筋所示。ra學(xué)生址名號¥生學(xué)生地姓學(xué)待學(xué)號:Nu崖mber嫁學(xué)號:Nu誘mber橋(Prim樸aryK棵ey)雖姓名:Te羊xt(10趕)t姓名:綠Text(滲10)J近L地ib_扒TeXt(投30}.」闊(c)(d變)卡圖2-7實胞體表示圖例伸(2)關(guān)系蚊。實體和屬皺性都不是孤童立存在的,寨它們各自代跑表的事物互蛇相交互,并竿且互相影響稻,共同支持內(nèi)業(yè)務(wù)任務(wù)?;觋P(guān)系是存在持于一個或多享個實體之間閑的自然業(yè)務(wù)昂聯(lián)系。關(guān)系半可以鏈接實搶體的一個事宏件,也可以填是純粹的邏攤輯關(guān)系。癢通常情況下皇,我們還需既要對關(guān)系的拾多重性進行弟說明,這也誕就是基數(shù)。旅基數(shù)定義了秋一個實體相助對于另一個邁關(guān)聯(lián)實體的恢某個具體值設(shè)的最小和最陶大具體值數(shù)課量。因為所夏有的關(guān)系都游是雙向的,磁因此在兩個遺方向上都需小要定義。基葛數(shù)定義如圖握2-8所示系。蛛結(jié)構(gòu)化分析吵方法為開發(fā)花者和客戶提績供一個直觀珍易懂的模型共,能夠?qū)嵲敩F(xiàn)理解問題揪域這一基本據(jù)的分析目標氧以支持。但臉也存在著很煎多的先天不嚇足:視?燦對問題域的滅研究力度不田夠大;脖?菜分析與設(shè)計施之間缺乏清羊晰的界限;御?順沒有一個真悄正的功能規(guī)款格說明;隱?勾需求實質(zhì)上宇是根據(jù)滿足突該需求的某親一特定系統(tǒng)竹的內(nèi)部設(shè)計走來加以說明崗的;未?杜內(nèi)部設(shè)計的字開發(fā)使用的床則是不可靠鑼的內(nèi)部設(shè)計脂技術(shù)-功能憲分解:織?麗不適用于很宣多類型的應(yīng)爺用。殖可以這么說克,結(jié)構(gòu)化分否析方法在很彼大程度上推口動了分析技智術(shù)的發(fā)展,不但又被更合伶適的技術(shù)逐碎漸取代,不而過,結(jié)構(gòu)化捕分析方法中沸的具體工具挺仍然有很廣腹泛的應(yīng)用空紙間。架5.面向問貫題域的分析汗相對而言,帝面向問題域查的分析是一櫻項很新的技嚴術(shù),還處于口研究階段,設(shè)相關(guān)的文檔榮資料還不多兵。與SA和拜OOA相比多,面向問題捏域的分析更廉多地強調(diào)描圓述,而較少徹強調(diào)建模。汗它的描述大劫致分為以下總兩個部分。倉(1)關(guān)注部問題域:用員一個文檔對濟含有問題域鞋進行相關(guān)的藝描述,并列僚出需在該域能中求解的問脹題列表,即核需求列表。賭只有這個文智檔是在分析膜時產(chǎn)生的。佩(2)關(guān)注蹤解系統(tǒng)的待州求行為:用券一個文檔對達解系統(tǒng)(即蓄系統(tǒng)實現(xiàn))賣的待求行為旗進行描述。塞該文檔將在胞需求規(guī)格說喇明時再完成閘。循在面向問題泛域的分析方振法中,對整綱個過程有著癥一個清晰的芝定義:寄?航搜集基本的蓄信息并開發(fā)反問題框架,么以建立問題魂域的類型;晝?纖在問題框架得類型的指導(dǎo)覺下,進一步帆搜集詳細信畜息并給出一搶個問題域相孝關(guān)特性的描理述。值基于以上兩聰點,收集并舌用文檔說明闊新系統(tǒng)的需蝴求。起從上面的描談述中,我們俯可以看出,竹問題框架是智面向問題域企分析的核心猴元素。問題宿框架是將問厚題域建模成蒙一系列相互蹈關(guān)聯(lián)的子域攻,而一個子掃域可以是那第些可能算是把精選出來的逮問題域的一創(chuàng)部分,也可舉以把問題框下架視為開發(fā)膠Conte廢xt圖,但移不同的是C窄ontex藥t圖的建模倚對象是針對手解系統(tǒng)的,但而問題框架撫則是針對問粥題域的。也徒就是說,問首題框架的目勿標就是大量購地捕獲更多汗有關(guān)問題域吩的信息。益2.2軟件襪設(shè)計設(shè)從功能上的繳劃分來看,沒軟件設(shè)計應(yīng)題該是軟件設(shè)酸計師的工作鎖,但作為一巾名項目管理蛾師,首先自械己必須懂得支軟件設(shè)計的衣基本原則和墨理論,掌握點基本的軟件辟設(shè)計方法,士具有一定的范軟件設(shè)計經(jīng)瓣驗。予測軟件設(shè)計基備本原則書1.信息隱嗎蔽兆在一節(jié)不和麥諧的課堂里川,老師嘆氣繳道:要是減“當坐在后排聊覆天的同學(xué)能滑像中間打牌厘的同學(xué)那么嚴安靜,就不代會影響到前貧排睡覺的同斥學(xué)任”袍。墓這個故事告統(tǒng)訴我們,如櫻果不想讓壞霧事傳播開來只,就應(yīng)該把筑壞事隱藏起窩來,袖“遮家丑不可外修揚唉”牛就是這個道畝理。為了盡妹量避免某個肌模塊的行去姿干擾同一系址統(tǒng)中的其他殿模塊,在設(shè)撐計模塊時就枯要注意信息激隱藏。應(yīng)該窮讓模塊僅僅字公開必須要縮讓外界知道隨的內(nèi)容,而逮隱藏其他一緩切內(nèi)容。澡在軟件設(shè)計伙中同樣有信恰息隱蔽原則鐘。Parn低as提出:涼在概要設(shè)計史時列出將來國可能發(fā)生變垮化的因素,妥并在模塊劃慰分時將這些鄙因素放到個逐別模塊的內(nèi)樂部。也就是駐說,每個模拿塊的實現(xiàn)細鐮節(jié)對于其他像模塊來說是屑隱蔽的,模水塊中所包含坡的信息(包室括數(shù)據(jù)和過東程)不允許賤其他不需要芝這些信息的寫模塊使用。梨這樣,在將油來由于這些宏因素變化而躍需修改軟件跨時,只需修思改這些個別曲的模塊,其睜他模塊不受掀影響。信息博隱蔽技術(shù)不墨僅提高了軟矛件的可維護期性,而且也席避免了錯誤碼的蔓延,改答善了軟件的申可靠性?,F(xiàn)趣在信息隱蔽旗原則已成為龍軟件工程學(xué)槐中的一條重毀要原則。被2.模塊獨列立性柜軟件設(shè)計中范的模塊獨立圾性是指軟件鼠系統(tǒng)中每個僻模塊只涉及勁軟件要求的鐘具體子功能恨,而和軟件督系統(tǒng)中其他革的模塊接口趣是簡單的。敢模塊獨立的雜概念是模塊繭化、抽象、免信息隱蔽和助局部化概念警的直接結(jié)果唉。妥一般采用兩鉗個準則度量胖模塊獨立性刪,即模塊間出耦合和模塊速內(nèi)聚。慚耦合是模塊韻之間的相對功獨立性(互刮相聯(lián)系的緊安密程度)的絨度量。模塊截之間的聯(lián)系撐越緊密,聯(lián)離系越多,耦屬合性就越高右,而其模塊勢獨立性就越端弱。嘉內(nèi)聚是模塊鳥功能強度(芝一個模塊內(nèi)析部各個元素器彼此結(jié)合的肢緊密程度)甩的度量。一變個模塊內(nèi)部五各個元素之變間的聯(lián)系越就緊密,則它巡的內(nèi)聚性就嶺越高,相對憑地,它與其絹他模塊之間聯(lián)的耦合性就雷會減低,而濾模塊獨立性廢就越強。由疤此可見,?;j塊獨立性比溉較強的模塊蜘應(yīng)是高內(nèi)聚澡低耦合的模果塊。覆(1)內(nèi)聚數(shù)。內(nèi)聚是信漫息隱蔽功能診的自然擴展糖。內(nèi)聚的模蝴塊在軟件過追程中完成單妖一違的任務(wù),同辮程序其他部壟分執(zhí)行的過迎程交互很少朗,簡而言之旺,內(nèi)聚模塊邀(理想情況側(cè)下)應(yīng)豎該只完成一夜件事。在設(shè)說計模塊時應(yīng)正盡量爭取高物內(nèi)聚。向一般模塊的央內(nèi)聚性分七粒種,如圖2言-9所示。魯一般認為,鼓巧合(偶然刃)、邏輯和揉時間上的聚胞合是低聚合薄性的表現(xiàn);贈信息的聚合血則葵屬于中等聚惰合性;順序捎的和功能的酸聚合是高聚項合性的表現(xiàn)女。表2-5倍列出了各類舞聚合性與糟模塊各種屬爸性的關(guān)系。尤高*---撓-----匙-----蓮-----岔-----賄-----沖內(nèi)聚性--寫-----乏-----驚-----獵-----顯-----芳-低欲功能內(nèi)聚軟割信息內(nèi)聚俗墨通信內(nèi)聚眠咳過程內(nèi)聚蜘篇時間內(nèi)聚在筋邏輯內(nèi)聚盟繩巧合內(nèi)聚性強*---奏-----造-----狠-----沃-----生---模塊秘獨立性--唱-----復(fù)-----甚-----喜-----燕----弱封功能單一匯-----泰-----利-----破-----哪-----吉-----島-----情-----合-----英-----感--鼻功能分散攤圖2-9模暗塊的內(nèi)聚性餐表2-5各岔類聚合性與昏模塊各種屬漠性的關(guān)系獸尚付內(nèi)部聯(lián)輸揉系清晰性乓河可重用性夸頂可修改性券腰可理解性笨偶然聚合性百酬很差悠卻差扶組則很差丑中償很差徑伴吩很差舞邏輯聚合性獵賊很差丸扁很差座時塑很差宇彈滑很差認奮約差隊時間聚合性囑婆差跑寒偶中斜改上很差編再比中爐嘴凡中灣信息聚合性途山中屬血英好岡做稅差媽詢宇中洋朵滲中顫順序聚合性松倦好灘唱間好康控循中豆該劫好撥始啄好膛功能聚合性襲刮好秀防斜好駁誠畏好版躲闖好漫政蝴好夕?杠功能內(nèi)聚(歪Funct商ional魯Cohe辟sion)船。一個模塊偵中各個部分什都是完成某所一具體功能講必不可少的君組成部分,唯或者說該模福塊中所有部喝分都是為了峽完成一項具管體功能而協(xié)臘同工作,緊恒密聯(lián)系,不親可分割的,削則稱該模塊波功能內(nèi)聚模么塊。它是內(nèi)躲聚程度最高通的,也是模籍塊獨立性最與強的模塊。爹?比信息內(nèi)聚(修Infor星matio謠nalC規(guī)ohesi習(xí)on)。這茫種模塊完成刻多個功能,葵各個功能都限在同一數(shù)據(jù)漫結(jié)構(gòu)上操作負,每一項功冬能有一個唯呈一的入口點攔。這個模塊抬將根據(jù)不同跨的要求,確千定該執(zhí)行哪孤一個功能。眠由于這個模狠塊的所有功娛能都是基于傻同一個數(shù)據(jù)箱結(jié)構(gòu)(符號忠表),因此閘,它是一個愿信息內(nèi)聚的鈔模塊。信息桐內(nèi)聚模塊可垃以看成是多減個功能內(nèi)聚芹模塊的組合嶄,并且達到?jīng)r信息的隱蔽博。即把某個瞧數(shù)據(jù)結(jié)構(gòu)、茶資源或設(shè)備凝隱蔽在一個坊模塊內(nèi),不鬼為別的模塊飛所知曉。齊?前通信內(nèi)聚(宴Commu執(zhí)nicat汁ionC批ohesi北on)。如衫果一個模塊侮內(nèi)各功能部賀分都使用了損相同的輸入斯數(shù)據(jù),或產(chǎn)耍生了相同的劍輸出數(shù)據(jù),賭則稱之通信舅內(nèi)聚模塊。棟通常,通信計內(nèi)聚模塊是柏通過數(shù)據(jù)流術(shù)圖來定義的蠢。填?仿過程內(nèi)聚(躍Proce逐dural封Cohe持sion)睡。使用流程懲圖作為工具屋設(shè)計程序時具,把流程圖晃中的某一部愁分劃出組成競模塊,就得昏到過程內(nèi)聚鈔模塊。例如餅,把流程圖史中的循環(huán)部溪分、判定部少分、計算部并分分成三個客模塊,這三妖個模塊都是沈過程內(nèi)聚模津塊。并?沒時間內(nèi)聚(蔬Class隸ical濱Cohes摸ion)。刪時間內(nèi)聚又狠稱為經(jīng)典內(nèi)網(wǎng)聚。這種模棋塊大多多功咸能模塊,但揮模塊的各個很功能的執(zhí)行溉與時間有關(guān)虎,通常要求粗所有功能必汁須在同一時嫩間段內(nèi)執(zhí)行中。例如,初滔始化模塊和聲終止模塊。霸?閑邏輯內(nèi)聚(坦Logic荒alCo場hesio羨n)。這種核模塊把幾種禾相關(guān)的功能抖組合在一起嗚,每次被調(diào)間用時,由傳案送給模塊的得判定參數(shù)來堡確定該模塊稱應(yīng)執(zhí)行哪一聚種功能。沙?縱巧合內(nèi)聚(諒Coinc暗ident蛋alCo傘hesio洲n)。巧合樣內(nèi)聚又稱偶黨然內(nèi)聚。當驅(qū)模塊內(nèi)各部劑分之間沒有埋聯(lián)系,或者劃即使有聯(lián)系玻,這種聯(lián)系死也很松散,院則稱這種模頁塊巧合內(nèi)聚揉模塊,它是辨內(nèi)聚程度最囑低的模塊???2)耦合諷。耦合是程盛序結(jié)構(gòu)中模浸塊相互關(guān)聯(lián)腦的度量。耦禁合取決于各宜個模塊間接透口的復(fù)雜程市度、調(diào)用模棟塊的方式,垮以及哪些信投息通過接口折。.趙耦合的強度凳依賴于以下填幾個因素:聯(lián)?臟一個模塊對先另一個模塊色的調(diào)用;贈?返一個模塊向歲另一個模塊繡傳遞的數(shù)據(jù)莊量;丙?寶一個模塊施眉加到另一個衰模塊的控制酒的多少;躁?川模塊之間接森口的復(fù)雜程嗚度。甚一般模塊之嘩間可能的連負接方式有7節(jié)種,它們構(gòu)惱成耦合性的議7種類型,活如圖2-1氣0所示。耦停合是影響軟框件復(fù)雜程度象的一個重要逐因素,在軟麻件設(shè)計過程鉛中,應(yīng)盡量孕使用數(shù)據(jù)耦桶合,少用控蔑制耦合,限胞制公共耦合哲的范圍,完停全不用內(nèi)容漂耦合。表2止-6列出了攏各類耦合性舉與模塊各種望屬性的關(guān)系棋。并低----榨-----法-----結(jié)-----擠-----賴----耦凝合性"髙蓬非直接耦合振楊數(shù)據(jù)耦合企哭標記耦合憶菊控制耦合寺勤外部耦合濱約公共耦合可鐮內(nèi)容耦合制強**--調(diào)-----時-----像-----映-----渠---模塊炮獨立性--卸-----探-----囑-----濱-----仍----弱蝴圖2-1株0模塊之間渡的耦合性勉表2-6各增類耦合性與朽模塊各種屬搞性的關(guān)系蟻壟晃對修改的敏盒感性然股可重用性窄筍可修改性裹蔥可理解性跳內(nèi)容耦合本婚很強殿業(yè)泄倦很差啊渡很差和敘很差抗公共耦合冒防強痕洋夫濟很差洲闊中頭累旨很差爆外部耦合郊貌一般替蒸起連很差限貌很差裂鴿中抖控制耦合賊皺一般蛾刮橫錫差亦址維差湖睡爸差民.標記耦合嶼屯不一定冷租未中虛快魂中渣獄中踢數(shù)據(jù)耦合假甜不一定欺撞妖好煤枝慌好磨萍筒好齒?笨非直接耦合棚(Nond榆irect幻iveC鹽oupli偶ng)。如沾果兩個模塊暮之間沒有直啦接關(guān)系,它羊們之間的聯(lián)儀系完全是通賣過主模塊的穴控制和調(diào)用困來實現(xiàn)的,填這就是非直昂接耦合。這鋒種耦合的模摟塊獨立性最匙強。嬸?晚數(shù)據(jù)耦合(痰DataC亭oupli因ng)。如跪果一個模塊裂訪問另一個胞模塊時,彼糞此之間是通掠過簡單數(shù)據(jù)埋參數(shù)(不是嘗控制參數(shù)、筆公共數(shù)據(jù)結(jié)僅構(gòu)或外部變防量)來交換親輸入、輸出撤信息的,則假稱這種耦合盤數(shù)據(jù)耦合。季?籍標記耦合(燥Stamp只Coup吳ling)幸。如果一組笑模塊通過參線數(shù)表傳遞記示錄信息,就瞧是標記耦合膠。這個記錄馬是某一數(shù)據(jù)鋤結(jié)構(gòu)的子結(jié)算構(gòu),而不是比簡單變量。鹽?爛控制稱合(揚Contr收olCo腎uplin淺g)。如果喜一個模塊通戀過傳送開關(guān)留、標志、名毯字等控制信伐息,明顯地沃控制選擇另猴一模塊的功燃能,就是控極制耦合。獅?割外部耦合(蚊Exter取nalC吐oupli露ng)。一積組模塊都訪頁問同一全局派簡單變量而抹不是同一全虛局數(shù)據(jù)結(jié)構(gòu)模,而且不是孟通過參數(shù)表堆傳遞該全局五變量的信息乒,則稱外部兆耦合。為?怨?賭公共稱合(挎Commo卸nCoup皺ling)陣。若一扎■寄組模塊都訪勝問同一個公應(yīng)共數(shù)據(jù)環(huán)境攏,則它們之撕間的耦合就武稱公共耦合艘。公共的數(shù)籮據(jù)環(huán)境可以布是全局數(shù)據(jù)狂結(jié)構(gòu)、共享反的通信區(qū)、滔內(nèi)存的公共漫覆蓋區(qū)等。雁公共耦合的畝復(fù)雜程度隨秘耦合模塊的見個數(shù)增加而牢顯著增加。放若只是兩模蕉塊間有公共誘數(shù)據(jù)環(huán)境,錢則公共耦合菌有兩種情況行。松散公共旁耦合和緊密誕公共耦合。羊?舅內(nèi)容耦合(攔Conte啞ntCo導(dǎo)uplin暗g)。如果娘發(fā)生下列情利形,兩個模睬塊之間就發(fā)暴生了內(nèi)容耦圈合:一個模異塊直接訪問漁另一個模塊長的內(nèi)部數(shù)據(jù)生;一個模塊置不通過正常有入口轉(zhuǎn)到另判一模塊內(nèi)部東;兩個模塊氧有一部分程駱序代碼重疊帖(只可能出沫現(xiàn)在匯編語舅言中);一野個模塊有多探個入口。宿聞結(jié)構(gòu)化設(shè)計鼓方法抹結(jié)構(gòu)化設(shè)計狡方法是基于靜模塊化、自效頂向下逐層門細化、結(jié)構(gòu)村化程序設(shè)計立等程序設(shè)計斑技術(shù)基礎(chǔ)上稍發(fā)展起來的致,該方法實帽施的過程如搭下。病(1)總結(jié)朽出系統(tǒng)應(yīng)有米的功能,對筍一個功能,繡從功能完成炭的過程考慮童,將各個過巾程列出,標背志出過程轉(zhuǎn)論向和傳遞的掛數(shù)據(jù)。這樣稅,可以將所巨有的過程都微畫出來。跡(2)細化繪數(shù)據(jù)流。確杜定應(yīng)該記錄牲的數(shù)據(jù)。言(3)分析閑各過程之間苦的耦合關(guān)系度,合理地進拆行模塊劃分嘆以提高它們躍之間的內(nèi)聚交性。責(zé)實際上,對戚于這個練習(xí)躺,可以使模旅塊具有信息迎內(nèi)聚性。昂1.系統(tǒng)結(jié)渠構(gòu)圖中的模僵塊賴在系統(tǒng)結(jié)構(gòu)羅圖中,不能訪再分解的底暮層模塊稱為竹原子模塊。咱如果一個軟怨件系統(tǒng)的全蠶部實際加工克都由原子模賭塊來完成,獵而其他所有考非原子模塊茫僅僅執(zhí)行控干制或協(xié)調(diào)功犧能,這樣的耳系統(tǒng)就是完掉全因子分解潑的系統(tǒng)。如江果系統(tǒng)結(jié)構(gòu)禾圖是完全因含子分解的,夢就是最好的隔系統(tǒng)。但實移際上,這只夢是力圖達到催的目標,大窄多數(shù)系統(tǒng)做向不到完全因藏子分解。涉一般來說,喜結(jié)構(gòu)圖中可挎能出現(xiàn)如圖浩2-11所帖示的4種類惠型的模塊。陵(a)(b載)(c)(拌d)蒙圖2-11砍4種模塊臘類型極*傳入模塊尋:圖2-1圍1(a),篇從下屬模塊止取得數(shù)據(jù),嗎經(jīng)過某些處殊理,再將其鑒傳送給上級劣模塊。它傳參送的數(shù)據(jù)流火叫做邏輯輸備入數(shù)據(jù)流。洗?欲傳出模塊:哈圖2-11羨(b),從哪上級模塊取音得數(shù)據(jù),進蔥行某些處理毫,傳送給下次屬模塊。它涉?zhèn)魉偷臄?shù)據(jù)話流叫做邏輯朽輸出數(shù)據(jù)流賽。由?怨變換模塊:慌圖2-11嫩(c),從徹上級模塊取君來數(shù)據(jù),進蔥行特定處理練后,送回原判上級模塊。顯它加工的數(shù)境據(jù)流叫做變薯換數(shù)據(jù)流。極?站協(xié)調(diào)模塊:儉圖2-11詢(d),對合其下屬模塊舉進行控制和濱管理的模塊取。在一個好反的系統(tǒng)結(jié)構(gòu)者圖中,協(xié)調(diào)悶?zāi)K應(yīng)在較枕高層出現(xiàn)。竄值得注意的捕是,結(jié)構(gòu)圖殿著重反映的快是模塊間的魔隸屬關(guān)系,糊即模塊間的糧調(diào)用關(guān)系和牽層次關(guān)系。灑它和程序流惜程圖(常稱娘為程序框圖域)有著本質(zhì)濫的區(qū)別。程氧序流程圖著晨重表達的是起程序執(zhí)行的絞順序,以及的執(zhí)行順序所翠依賴的條件斤。結(jié)構(gòu)圖則寨著眼于軟件昏系統(tǒng)的總體陷結(jié)構(gòu),特它并不涉及連模塊內(nèi)部的腸細節(jié),只考是慮模塊的作皮用,以及它勇和上、下級翠模塊的關(guān)系僚。而程序流丟程圖則用來胃表達執(zhí)行程查序的具體算甚法。怎沒有學(xué)過軟退件開發(fā)技術(shù)寧的人,一般披習(xí)慣于使用齒流程圖編寫信程序,往往茶在模塊還未角做劃分,程龍序結(jié)構(gòu)的層季次尚未確定荷以前,便急稈于用流程圖離表達他們對乳程序的構(gòu)想豬。這就像造爬一棟大樓,譜在尚未決定迎建筑面積和珠樓屋有多少擁時,就己經(jīng)告開始砌磚了慨。這顯然是仆不合適的。涼Adele拿Gold矩berg在邪Succe貫eding泳with姐Obje竿cts中敘同述了一位猶頌太教教士在衰新年伊始的殼宗教集會上牽講述的故事校:嶺“柜一位教士登扔上一列火車銹,由于他經(jīng)貍常乘坐這輛按車,因此列罪車長認識他政。教士伸手辣到口袋中掏克車票。但沒瞎有找到,他李開始翻他的村行李。列車環(huán)長阻止了他疲:賣‘攤教士,我知調(diào)道您肯定有斬車票?,F(xiàn)在選別急著找。很等找到后再誓向我出示。酸’燕但教士仍在賓找那張車票判。當列車長雷再次見到他盈時,教士說捐:禮‘集你不明白。打我知道你相出信我有車票宅,但躺……己我要去哪里終呢閱’”昂有太多項目超失敗就是因孤它們沒有明型確的目標就暮開始了。跟在結(jié)構(gòu)化分踩析和設(shè)計技燭術(shù)中,通常依存在著兩種仙典型的問題廈類型,變換顛型問題和事床務(wù)型問題,魔它們的數(shù)據(jù)戀流圖和結(jié)構(gòu)聞圖都有明顯矩的特征。下相面分別討論濕它們的數(shù)據(jù)楚流圖形態(tài)及婚其映射成結(jié)歸構(gòu)圖的過程燒。潑結(jié)構(gòu)圖(S著truct修ured育Chart和s,SC嬌)是準確表驕達程序結(jié)構(gòu)營的圖形表示促方法,它能濫清楚地反映蜻出程序中各為模塊間的層翅次關(guān)系和聯(lián)誦系。與數(shù)據(jù)桐流圖反映數(shù)灘據(jù)流的情況鼓不同,結(jié)構(gòu)涉圖反映的是建程序中控制預(yù)流的情況。厭圖2-12旨某大學(xué)教務(wù)索管理系統(tǒng)的司結(jié)構(gòu)圖。企2.系統(tǒng)結(jié)鑼構(gòu)圖中的主鍋要成分邀結(jié)構(gòu)圖中的馬主要成分有悔四種。姨(1)模塊凝。以矩形框扶表示,框中構(gòu)標有模塊的券名字。對于哀已定義(或燈者已開發(fā))決的模塊,則青可以用雙縱繞邊矩形框表蝴示,如圖2犁-13所示墨。警(2)模塊別間的調(diào)用關(guān)量系。兩個模拉塊,一上一續(xù)下,以箭頭嫂相連,上面秤的模塊是調(diào)界用模塊,箭索頭指向的模叢塊是被調(diào)用箏模塊,如圖底2-14中沈,模塊A調(diào)厲用模塊B。昆在一般情況騾下,箭頭表反示的連線可嘴以用直線代嫌替。猛(3)模塊核間的通信。策以表示調(diào)用熔關(guān)系的長箭維頭旁邊的短型箭頭表示,港短箭頭的方凳向和名字分詳別表示調(diào)用延模塊和被調(diào)折用模塊之間伏信息的傳遞冰方向和內(nèi)容奉。如圖2-償14所示,鉆首先模塊A科將信息C傳腦給模塊B,溫經(jīng)模塊B加徐工處理后的舞信息D再傳渴回給A。脆(4)輔助吐控制符號。赤當模塊A有叫條件地調(diào)用賄模塊B時,軍在箭頭的起刷點標以菱形范。模塊A反常復(fù)地調(diào)用模田塊D時,另委加一環(huán)狀箭候頭。如圖2光-15所示獲。器在結(jié)構(gòu)圖中賢條件調(diào)用所滲依賴的條件薦和循環(huán)調(diào)用怖的循環(huán)控制邁條件通常都忘無需注明。漲3.常用的拋系統(tǒng)結(jié)構(gòu)圖認常用的系統(tǒng)姑結(jié)構(gòu)圖有以路下幾種。翁(1)變換務(wù)型系統(tǒng)結(jié)構(gòu)規(guī)圖。在數(shù)據(jù)中處理問題中五,我們通常熊會遇到這樣淋一類問題,骨即從(程序詠)謎“村外部打”鈔取得數(shù)據(jù)(軟例如從鍵盤詞、磁盤文件既等),對取武得的數(shù)據(jù)進飲行某種變換翠,然后再將西變換得到的除數(shù)據(jù)傳回霜“遙外部腫”塞。其中取得波數(shù)據(jù)這一過伯程稱傳入信批息(數(shù)據(jù))咽流程、變換奇數(shù)據(jù)的過程汁稱變換信息淚(數(shù)據(jù))流封程,傳回數(shù)勤據(jù)過程稱傳絕出信息(數(shù)拘據(jù))流程,已如圖2-1調(diào)6所不。批當數(shù)據(jù)流圖支或其中某一殘段數(shù)據(jù)流表尚現(xiàn)出上述特葵征時,該數(shù)炭據(jù)流圖或該漁段數(shù)據(jù)流圖漢表示的是一李個變換型問叼題。完成數(shù)顏據(jù)變換的處謝理單元叫變毛換中心。變網(wǎng)換型問題數(shù)籮據(jù)流圖基本喂形態(tài)及其對判應(yīng)的基本結(jié)化構(gòu)圖分別如智圖2-17益(a)和(滲b)所示。吹根據(jù)圖2-佩17所示的物基本映射關(guān)男系所得到的噴圖2-16詠所示變換型蔽問題的結(jié)構(gòu)寨圖如圖2-貓18所示。舉“促變換控制壇”降模塊首先獲譜得控制,然符后控制沿著均結(jié)構(gòu)到達底守層的此“鵲傳入A是”秤模塊,物理塘輸入數(shù)據(jù)A桑由纏“剛傳入A嗽”子模塊讀入后潤,從底層逐袋步向上傳送抵。在傳送過誤程中,數(shù)據(jù)肯經(jīng)伯“尾變換A成B跪”評、慈“餐變換B成C消”渡等模塊的預(yù)柄處理,逐漸銹變換成純粹尾的邏輯輸入營C、E。接漿著在條“質(zhì)變換控制學(xué)”石模塊的控制緣下,將邏輯描輸入經(jīng)變換園中心模塊柱“籍變換C和E斧成W芒”剝處理后,變役換成邏輯輸坊出W,再從某頂層逐步向陣下傳送。在委這一傳送過梁程中,數(shù)據(jù)巨經(jīng)楊“存變換W成X炭”賠、明“雄變換X成Y古”雹等模塊的后肺處理,逐漸抹變換成適當覽的輸出形式攀,最后由繳“頃傳出Y名”版模塊完成物委理輸出。棉(2)事務(wù)獄型系統(tǒng)結(jié)構(gòu)邀圖。在實際戴中,我們還盡常常會遇到括另一類問題衛(wèi),即通常在領(lǐng)接受某一項托事務(wù)后,根藥據(jù)事務(wù)的特凈點和性質(zhì),襯選擇分派給厭一個適當?shù)囊滋幚韱卧?,副然后給出結(jié)必果,如圖2商-19所示叮?;爝@類問題就汽是事務(wù)型問閣題。它的特裁點是,數(shù)據(jù)丘沿著接收分燕支把外部信竊息(數(shù)據(jù))君轉(zhuǎn)換成一個四事務(wù)項,然曾后計算該事括務(wù)項的值,悼并根據(jù)它的康值從多條數(shù)剃據(jù)流中選擇賊其中的某一局條數(shù)據(jù)流。舉發(fā)出多條數(shù)譽據(jù)流的處理耳單元叫事務(wù)潤中心。這類斷問題的典型葛結(jié)構(gòu)圖如圖逐2-20所口示。事務(wù)控肆制模塊按所欠取得事務(wù)的盟類型,選擇辣調(diào)用某一個挨處理事務(wù)模驗塊。讀(3)混合憤型系統(tǒng)結(jié)構(gòu)笨圖。在實際汗中,一些大搶型問題往往抬既不是單純添的變換型問預(yù)題,也不是旺單純的事務(wù)斑型問題,而蘿是兩種混合禿在一起的混探合型問題。弄圖2-21現(xiàn)表示的就是喊一個混合型黃問題數(shù)據(jù)流厘圖,圖2-判22是圖2乳-21相應(yīng)膀的結(jié)構(gòu)圖。孕對于這種混西合型問題,醋一般以變換攤型問題為主娛,首先找出秒變換中心,們設(shè)計出結(jié)構(gòu)伶圖的上層;辱然后根據(jù)數(shù)涌據(jù)流圖的各鵲部分具體類舅型分別映射現(xiàn)得到它們的麻結(jié)構(gòu)圖。例觀如,對于如刺圖2-22誤所示混合型技問題,從整柜體上可以將葬其看成是一鈔個從A到M削的變換型問酬題,從D到拍K之間的變柏換是變換中進心;從A到冰D是傳入分領(lǐng)支,具有事阿務(wù)型問題

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論