第3篇 設(shè)計工程——概要設(shè)計
第8章 設(shè)計工程概述
????????設(shè)計工程,是基于需求工程的成果進(jìn)行信息系統(tǒng)設(shè)計的部分滔韵。業(yè)務(wù)設(shè)計是設(shè)計工程中以客戶業(yè)務(wù)為中心的設(shè)計部分由境,業(yè)務(wù)設(shè)計的成果決定了客戶信息化的業(yè)務(wù)價值,是后續(xù)所有設(shè)計與開發(fā)的基礎(chǔ)和指南法牲,也是業(yè)務(wù)設(shè)計師需要掌握的核心知識和能力。涉及軟件工程框架圖中兩個部分的概述:設(shè)計工程及業(yè)務(wù)設(shè)計部分琼掠。
????????(1)設(shè)計工程的整體:包括業(yè)務(wù)設(shè)計部分拒垃、應(yīng)用設(shè)計部分、技術(shù)設(shè)計部分瓷蛙。
????????(2)業(yè)務(wù)設(shè)計的部分:包括概要設(shè)計悼瓮、詳細(xì)設(shè)計。
8.1 基本概念
8.1.1 定義與作用
????????1.定義
????????設(shè)計工程艰猬,是運(yùn)用軟件設(shè)計的理論横堡、方法、工具冠桃,對需求工程獲取的需求按照不同的理論和方法進(jìn)行分階段命贴、分層地細(xì)化,給出滿足客戶需求和符合軟件開發(fā)要求的設(shè)計資料食听。
????????①業(yè)務(wù)設(shè)計部分:含概要設(shè)計和詳細(xì)設(shè)計兩個階段套么。業(yè)務(wù)設(shè)計的重點是對業(yè)務(wù)優(yōu)化、業(yè)務(wù)功能以及業(yè)務(wù)價值的設(shè)計碳蛋。成果包括設(shè)計規(guī)范胚泌、業(yè)務(wù)架構(gòu)、業(yè)務(wù)功能等肃弟。
????????②應(yīng)用設(shè)計部分:將業(yè)務(wù)設(shè)計的成果轉(zhuǎn)向系統(tǒng)的架構(gòu)玷室、組件以及應(yīng)用價值的設(shè)計零蓉。成果包括應(yīng)用架構(gòu)、系統(tǒng)機(jī)制穷缤、系統(tǒng)功能等敌蜂,②是①和③的橋梁。
????????③技術(shù)設(shè)計部分:將業(yè)務(wù)和應(yīng)用的設(shè)計成果轉(zhuǎn)換為支持編碼開發(fā)的設(shè)計資料津肛。成果包括語言選擇章喉、基礎(chǔ)框架、數(shù)據(jù)接口身坐、系統(tǒng)部署秸脱、硬件選擇、環(huán)境構(gòu)建等部蛇。由于業(yè)務(wù)設(shè)計的概念使用不廣泛摊唇,定義也比較模糊,有的軟件企業(yè)有“需求設(shè)計”的環(huán)節(jié)涯鲁。這里對業(yè)務(wù)設(shè)計與需求設(shè)計的內(nèi)容做個比較巷查,以幫助理解業(yè)務(wù)設(shè)計的概念。
????????1)需求與業(yè)務(wù)的區(qū)別
????????(1)需求:指的是客戶針對引入“信息系統(tǒng)”所提出來的需要和要求抹腿。
????????(2)業(yè)務(wù):指的是客戶企業(yè)所“從事的工作”(經(jīng)營岛请、管理、生產(chǎn)警绩、銷售等)崇败。
????????2)需求設(shè)計與業(yè)務(wù)設(shè)計的區(qū)別
????????(1)需求設(shè)計:直接設(shè)計的是系統(tǒng)需要的“功能”,包括功能的構(gòu)成及實現(xiàn)方法房蝉。需求設(shè)計的主要對象是“功能的需求”。
????????(2)業(yè)務(wù)設(shè)計:業(yè)務(wù)設(shè)計分為三個層面(架構(gòu)微渠、功能和數(shù)據(jù))搭幻。首先是對客戶的業(yè)務(wù)“流程”進(jìn)行梳理、優(yōu)化逞盆、完善(架構(gòu)層)檀蹋,再對業(yè)務(wù)的“操作”(功能層)進(jìn)行設(shè)計,最后對業(yè)務(wù)的操作“結(jié)果”(數(shù)據(jù)層)進(jìn)行設(shè)計云芦。業(yè)務(wù)設(shè)計的過程是“架構(gòu)→功能→數(shù)據(jù)”俯逾。
????????兩者的設(shè)計理念是不同的:“需求設(shè)計”直接關(guān)注的就是“功能需求”;而“業(yè)務(wù)設(shè)計”首先是對“業(yè)務(wù)”進(jìn)行梳理舅逸、優(yōu)化桌肴。獲得了功能需求,但不熟悉業(yè)務(wù)背景琉历,就是“知其然坠七,不知其所以然”水醋。在充分地理解了業(yè)務(wù)、優(yōu)化了業(yè)務(wù)并確定了未來信息化環(huán)境下業(yè)務(wù)的處理方式的基礎(chǔ)上彪置,再去確定功能需求拄踪,那么才是做到了“知其然,也知其所以然”拳魁。
????????業(yè)務(wù)設(shè)計惶桐,是將“需求”放在“業(yè)務(wù)”這個背景中去思考、設(shè)計的潘懊。明確功能是為業(yè)務(wù)提供信息化支持服務(wù)的姚糊。也就是說,功能需求的真?zhèn)呜宰稹膬?nèi)容叛拷、處理的形式等都是通過對客戶業(yè)務(wù)處理過程的充分理解后才能確定的。
????????基于不同的設(shè)計理念產(chǎn)生的系統(tǒng)會給客戶帶來不同的功能岂却、感受忿薇、價值以及滿意度。
????????2.作用
? ? ? ? 在設(shè)計工程中躏哩,需求工程的成果被設(shè)計師進(jìn)行了進(jìn)一步的理解署浩、闡釋,并融入了設(shè)計師的理念扫尺、思想筋栋,開發(fā)完成的產(chǎn)品必須要符合設(shè)計師和設(shè)計資料的要求(這里設(shè)計師提出的設(shè)計資料已經(jīng)不是需求,而是要求)正驻,它是所有相關(guān)人交流弊攘、工作、檢查的共同語言和標(biāo)準(zhǔn)姑曙。
????????在設(shè)計工程中襟交,業(yè)務(wù)設(shè)計部分的主要工作是優(yōu)化、梳理伤靠、完善業(yè)務(wù)捣域,并在此基礎(chǔ)上確定業(yè)務(wù)功能;應(yīng)用設(shè)計的目的是將業(yè)務(wù)設(shè)計成果轉(zhuǎn)換為系統(tǒng)的功能宴合;技術(shù)設(shè)計部分的目的是實現(xiàn)業(yè)務(wù)設(shè)計和應(yīng)用設(shè)計的成果焕梅。業(yè)務(wù)設(shè)計和應(yīng)用設(shè)計的結(jié)果決定了產(chǎn)品的最高價值。應(yīng)用設(shè)計卦洽,是業(yè)務(wù)設(shè)計部分和技術(shù)設(shè)計部分的融合之處贞言。
8.1.2 內(nèi)容與能力
????????設(shè)計工程篇的作業(yè)內(nèi)容是按照兩個維度進(jìn)行的,即:工程分解維度(X軸)阀蒂,共分為三個階段(概要蜗字、詳細(xì)打肝、應(yīng)用);工作分解維度(Y軸)挪捕,共分為三個層(架構(gòu)粗梭、功能、數(shù)據(jù))
????????根據(jù)分離原理级零,構(gòu)成企業(yè)的內(nèi)容可以分為4個部分断医,即:業(yè)務(wù)、管理奏纪、組織和物品鉴嗤。其中,業(yè)務(wù)設(shè)計和管理設(shè)計分為兩個層面分別進(jìn)行設(shè)計序调,然后再進(jìn)行疊加醉锅,因為業(yè)務(wù)設(shè)計成果是管理設(shè)計的“載體”,因此先做業(yè)務(wù)設(shè)計并將“工程分解/工作分解”作為第一層发绢,將管理設(shè)計作為第二層硬耍,兩者內(nèi)容劃分如下。
????????注:關(guān)于價值設(shè)計的構(gòu)成
????????通常情況下边酒,應(yīng)用類軟件絕大部分的客戶價值是由業(yè)務(wù)設(shè)計階段-業(yè)務(wù)價值经柴、應(yīng)用設(shè)計-應(yīng)用價值兩部分形成,因為這些價值是客戶購買軟件產(chǎn)品的直接目的
????????另外墩朦,因為管理是保障業(yè)務(wù)價值和應(yīng)用價值的實現(xiàn)而存在的坯认,因此不存在管理設(shè)計價值。
8.1.3 思路與理解
????????在進(jìn)行設(shè)計工程的說明前氓涣,還需要再回顧一下分離原理和組合原理牛哺,因為這兩個原理是建立設(shè)計工程體系以及相關(guān)設(shè)計模型的基礎(chǔ)。
????????1.分離原理的應(yīng)用
????????在設(shè)計工程的每個階段中都采用了先將業(yè)務(wù)與管理進(jìn)行分別架構(gòu)劳吠、規(guī)劃引润、設(shè)計,然后再組合在一起協(xié)同工作的方式赴背。采用這樣的設(shè)計方式可以讓設(shè)計師感受到:企業(yè)管理的設(shè)計首先要理清楚業(yè)務(wù)載體的情況以及業(yè)務(wù)處理的標(biāo)準(zhǔn)椰拒,然后再去匹配相應(yīng)的管理方法晶渠,管理是為了業(yè)務(wù)達(dá)到標(biāo)準(zhǔn)而做的保障措施凰荚。
????????1)業(yè)務(wù)設(shè)計
????????業(yè)務(wù)設(shè)計關(guān)注的是按照業(yè)務(wù)處理所必須遵循的目標(biāo)、工藝褒脯、標(biāo)準(zhǔn)等要求便瑟,并設(shè)計出滿足這些要求的信息處理系統(tǒng),在這個設(shè)計過程中番川,暫不關(guān)注如何管理業(yè)務(wù)的處理過程到涂,只集中精力研究業(yè)務(wù)運(yùn)行的事理脊框。
????????2)管理設(shè)計
????????有了業(yè)務(wù)處理形式和對應(yīng)的標(biāo)準(zhǔn)之后再來確定管理方法,以業(yè)務(wù)為載體確定管控的位置并加入管理規(guī)則践啄,確保業(yè)務(wù)處理不出現(xiàn)違反業(yè)務(wù)標(biāo)準(zhǔn)的問題浇雹。
????????2.組合原理/基干原理的應(yīng)用
????????設(shè)計工程在不同的階段、分層中都有不同表達(dá)形式的邏輯圖形屿讽,組合原理的三元素對應(yīng)的內(nèi)容會沿著軟件工程的推進(jìn)方向不斷地發(fā)生變化昭灵。
????????1)要素的變化沿著軟件工程的三個階段推進(jìn),要素在三個層面上的稱呼變化如下(由粗到細(xì))伐谈。
????????(1)需求工程各階段:原始需求(客戶語言)→業(yè)務(wù)分類(業(yè)務(wù)烂完、管理、組織诵棵、物品)抠蚣。
????????(2)設(shè)計工程-架構(gòu)層:用框架圖表達(dá),有系統(tǒng)履澳、子系統(tǒng)嘶窄、模塊、功能等奇昙。
????????(3)設(shè)計工程-功能層:用原型圖表達(dá)护侮,有業(yè)務(wù)領(lǐng)域、業(yè)務(wù)功能储耐、業(yè)務(wù)組件羊初、控件。
????????(4)設(shè)計工程-數(shù)據(jù)層:用數(shù)據(jù)架構(gòu)圖表達(dá)什湘,有全系統(tǒng)长赞、領(lǐng)域、數(shù)據(jù)表闽撤、數(shù)據(jù)得哆。
????????2)邏輯的變化
????????在①需求工程階段,收集到的客戶需求大多都是采用文字以及表單的形式表達(dá)的專業(yè)知識哟旗、業(yè)務(wù)經(jīng)驗以及現(xiàn)實的做法贩据,此時的說明和表達(dá)并不特別強(qiáng)調(diào)邏輯的概念。
????????在②設(shè)計階段中闸餐,貫穿全過程的主線就是業(yè)務(wù)邏輯饱亮,業(yè)務(wù)設(shè)計部分的工作本質(zhì)上是在做理解、解釋舍沙、轉(zhuǎn)換近上,也就是將需求中所包含的專業(yè)知識、業(yè)務(wù)經(jīng)驗拂铡、目標(biāo)期望壹无、痛點難點等內(nèi)容葱绒,通過分析、設(shè)計的一系列轉(zhuǎn)換工作,最終為以“邏輯圖形”為主的表達(dá)方式所替代,這種邏輯表達(dá)方式最為符合軟件設(shè)計和開發(fā)的習(xí)慣帆谍。在②的區(qū)間內(nèi),用知識和經(jīng)驗表達(dá)的內(nèi)容越來越少骚秦,最終絕大部分都由邏輯的表達(dá)方式替代了業(yè)務(wù)知識和經(jīng)驗的表達(dá)方式。
????????在進(jìn)入到③應(yīng)用設(shè)計區(qū)間后璧微,邏輯表達(dá)再被轉(zhuǎn)換為機(jī)制表達(dá)作箍,機(jī)制是邏輯的實現(xiàn)方式,將邏輯轉(zhuǎn)換為機(jī)制也是信息系統(tǒng)具有復(fù)用性前硫、應(yīng)變性的基礎(chǔ)胞得。可以看出屹电,在②的區(qū)間內(nèi)阶剑,代表知識和經(jīng)驗的內(nèi)容漸漸地減少,而代表邏輯的內(nèi)容漸漸增大危号,以至于在接近應(yīng)用設(shè)計區(qū)域的時候幾乎完全替代了知識和經(jīng)驗的內(nèi)容牧愁。
????????這個示意圖說明了:②業(yè)務(wù)設(shè)計的作用是將客戶的業(yè)務(wù)知識、經(jīng)驗轉(zhuǎn)換為用業(yè)務(wù)邏輯表達(dá)外莲,進(jìn)入到④技術(shù)設(shè)計階段后猪半,原則上技術(shù)設(shè)計師的工作不能依據(jù)源于①的業(yè)務(wù)知識、經(jīng)驗表達(dá)的原始需求偷线,而必須依據(jù)通過②和③獲得的設(shè)計資料(需求階段的資料可以作為參考磨确,不能作為依據(jù))。在④技術(shù)設(shè)計區(qū)間內(nèi)声邦,技術(shù)設(shè)計師再將前階段的邏輯和機(jī)制的表達(dá)方式轉(zhuǎn)換為開發(fā)工程師易于理解的形式乏奥。從上述的說明中可以得出如下兩個重要的關(guān)注點。
????????注1:按照軟件工程的要求亥曹,開發(fā)工程師不能直接應(yīng)用需求調(diào)研成果邓了。
????????為什么說開發(fā)工程師直接按照需求工程的成果進(jìn)行開發(fā)是有缺陷的?因為這樣做缺失了設(shè)計工程中對業(yè)務(wù)邏輯的抽提媳瞪、優(yōu)化骗炉,以及向機(jī)制轉(zhuǎn)換的過程,其結(jié)果很可能造成交付的系統(tǒng)邏輯不清材失,達(dá)不到為客戶帶來信息化的預(yù)期價值痕鳍,同時沒有進(jìn)行規(guī)律性的抽提也難讓系統(tǒng)做到復(fù)用和應(yīng)變硫豆。理解這個知識→邏輯→機(jī)制的轉(zhuǎn)變意義和過程非常重要龙巨。
????????注2:業(yè)務(wù)邏輯與業(yè)務(wù)知識的作用區(qū)別
????????業(yè)務(wù)邏輯的主要表達(dá)方式存在于業(yè)務(wù)架構(gòu)圖中笼呆,業(yè)務(wù)邏輯對設(shè)計和開發(fā)的重要性是毋庸置疑的,那么掌握了業(yè)務(wù)邏輯的表達(dá)方法是否就具有了業(yè)務(wù)優(yōu)化的能力了呢旨别?回答是否定的诗赌!業(yè)務(wù)邏輯可以使得優(yōu)化結(jié)果的表現(xiàn)得非常清晰、直觀秸弛,但業(yè)務(wù)優(yōu)化的依據(jù)是“業(yè)務(wù)知識铭若、業(yè)務(wù)經(jīng)驗、管理理論”等內(nèi)容递览,因此叼屠,沒有相應(yīng)的業(yè)務(wù)知識和經(jīng)驗的設(shè)計師是難以正確地進(jìn)行業(yè)務(wù)優(yōu)化的(盡管他可以清晰地表達(dá)優(yōu)化的結(jié)果)。
????????業(yè)務(wù)邏輯:打開架構(gòu)意圖的鑰匙
????????在業(yè)務(wù)架構(gòu)圖中绞铃,“邏輯”是對所有的知識镜雨、經(jīng)驗、想法等內(nèi)容的替代儿捧,業(yè)務(wù)架構(gòu)圖中的“邏輯”表達(dá)的不是思考的過程荚坞,而是思考的結(jié)果。架構(gòu)圖中的“邏輯”會被一直引用(功能設(shè)計菲盾、數(shù)據(jù)設(shè)計颓影、應(yīng)用設(shè)計)直至到編碼開發(fā)的階段。將需求中的業(yè)務(wù)知識轉(zhuǎn)換為用邏輯表達(dá)之后邏輯不再被更改懒鉴,這就使得從設(shè)計到開發(fā)直到測試驗證有了一條“邏輯主線”诡挂,所有的工序都與這個主線對標(biāo),極大地提升了設(shè)計和開發(fā)的質(zhì)量临谱,減少了失誤和失真咆畏。
????????3)模型的變化
????????進(jìn)入了設(shè)計階段,分析模型基本上就不再使用了(因為分析模型的邏輯只適用于做分析)吴裤,設(shè)計階段基本上都是采用架構(gòu)模型(架構(gòu)層)旧找、原型界面(功能層)和數(shù)據(jù)模型(數(shù)據(jù)層)等進(jìn)行設(shè)計結(jié)果的表達(dá)。
8.2 工程分解
????????軟件工程的“工程分解”分為三個階段麦牺,即概要設(shè)計钮蛛、詳細(xì)設(shè)計、應(yīng)用設(shè)計剖膳。其中魏颓,概要設(shè)計和詳細(xì)設(shè)計又構(gòu)成了“業(yè)務(wù)設(shè)計”部分。
8.2.1 工程分解1——概要設(shè)計
????????概要設(shè)計是設(shè)計工程的第一個階段吱晒,設(shè)計的依據(jù)是需求工程的成果——現(xiàn)狀構(gòu)成圖甸饱、功能需求一覽、需求規(guī)格說明書等。概要設(shè)計主要負(fù)責(zé)對系統(tǒng)進(jìn)行以下四大方面的規(guī)劃叹话。
????????(1)規(guī)范:從頂層設(shè)計的視點出發(fā)偷遗,確定目標(biāo)、理念驼壶、主線氏豌、原則、定義热凹、標(biāo)準(zhǔn)等泵喘。
????????(2)架構(gòu):基于目標(biāo)對業(yè)務(wù)進(jìn)行優(yōu)化,確定業(yè)務(wù)架構(gòu)般妙、系統(tǒng)纪铺、子系統(tǒng)、模塊等的劃分碟渺。
????????(3)功能:基于架構(gòu)對業(yè)務(wù)功能進(jìn)行分類霹陡、規(guī)劃,確定功能間的關(guān)系以及功能一覽止状。
????????(4)數(shù)據(jù):基于架構(gòu)和功能對數(shù)據(jù)的范圍烹棉、內(nèi)容進(jìn)行規(guī)劃,確定主數(shù)據(jù)怯疤、數(shù)據(jù)標(biāo)準(zhǔn)等浆洗。
????????概要設(shè)計階段,設(shè)計師關(guān)注的應(yīng)該是大的系統(tǒng)間規(guī)劃集峦、頂層的設(shè)計伏社,不過多地糾結(jié)于細(xì)節(jié)或系統(tǒng)內(nèi)部小模塊之間的關(guān)系,或是某個具體的功能塔淤。概要設(shè)計一般不是一次就能做到位摘昌,而是需要反復(fù)地進(jìn)行調(diào)整的。在概要設(shè)計階段高蜂,應(yīng)最大限度地提取可以復(fù)用的模塊聪黎,建立合理的結(jié)構(gòu)體系,節(jié)省后續(xù)各設(shè)計階段的工作量备恤。
8.2.2 工程分解2——詳細(xì)設(shè)計
????????詳細(xì)設(shè)計是設(shè)計工程的第二個階段稿饰,依據(jù)概要設(shè)計文檔對架構(gòu)、功能和數(shù)據(jù)層面的內(nèi)容進(jìn)行精細(xì)設(shè)計露泊。由于有了概要設(shè)計文檔做總控喉镰,所以在詳細(xì)設(shè)計階段就可以展開由多人協(xié)同并行設(shè)計。在詳細(xì)設(shè)計階段惭笑,每個設(shè)計師面對的都是一個獨立的系統(tǒng)/模塊侣姆,根據(jù)概要設(shè)計約定好的局部任務(wù)和對外接口生真,設(shè)計并表達(dá)出定義、關(guān)系捺宗、算法等內(nèi)容柱蟀。這里要注意,如果發(fā)現(xiàn)有結(jié)構(gòu)調(diào)整的必要偿凭,必須返回到概要設(shè)計階段,將調(diào)整反映到概要設(shè)計文檔中派歌,而不能只解決詳細(xì)設(shè)計問題而不再維護(hù)概要設(shè)計的資料了弯囊。詳細(xì)設(shè)計完成后,形成詳細(xì)設(shè)計規(guī)格書胶果。詳細(xì)設(shè)計工作全部完成后匾嘱,對系統(tǒng)中的業(yè)務(wù)部分的設(shè)計就完成了,后續(xù)設(shè)計中就不能對業(yè)務(wù)部分的內(nèi)容再進(jìn)行任意修改了早抠,如果需要變更霎烙,務(wù)必要取得業(yè)務(wù)設(shè)計師的確認(rèn)。
8.2.3 工程分解3——應(yīng)用設(shè)計
????????應(yīng)用設(shè)計是設(shè)計工程的第三個階段蕊连,主要內(nèi)容是將概要設(shè)計規(guī)格書和詳細(xì)設(shè)計規(guī)格書的設(shè)計成果與系統(tǒng)實現(xiàn)的手法結(jié)合在一起悬垃,給出系統(tǒng)實現(xiàn)后的業(yè)務(wù)處理、管理控制的操作效果甘苍,以及非業(yè)務(wù)的功能設(shè)計部分尝蠕。應(yīng)用設(shè)計可以看成是“業(yè)務(wù)設(shè)計部分”與“技術(shù)設(shè)計部分”的結(jié)合部,它給出了軟件開發(fā)完成后的應(yīng)用效果(包括:布局载庭、操作看彼、規(guī)則等),企業(yè)管理信息化的價值最終體現(xiàn)在這個部分的設(shè)計成果中囚聚。
????????應(yīng)用設(shè)計應(yīng)該是包括業(yè)務(wù)靖榕、技術(shù)、UI顽铸、美工以及體驗等諸方面知識和技術(shù)的集合體茁计。這個部分的設(shè)計需要應(yīng)用設(shè)計師具有跨界的知識和能力,包括一定的客戶的專業(yè)知識谓松、業(yè)務(wù)設(shè)計知識簸淀、技術(shù)開發(fā)知識拧簸、UI設(shè)計和美工設(shè)計知識以及系統(tǒng)上線的經(jīng)驗等。
8.2.4 工程分解4——三個階段的關(guān)系
????????1.三個階段的差異
????????1)三個階段的重點
????????相對于需求分析是站在客戶業(yè)務(wù)的角度理解需求而言:
????????(1)概要設(shè)計的重點:從設(shè)計的角度出發(fā)對需求的定義和解釋畏纲,經(jīng)過一系列粗粒度的規(guī)劃和設(shè)計,讓后續(xù)的設(shè)計師大致了解系統(tǒng)的結(jié)構(gòu)和操作模式屑迂。
????????(2)詳細(xì)設(shè)計的重點:描述業(yè)務(wù)設(shè)計的實現(xiàn)細(xì)節(jié)逻锐、方法盏档、函數(shù)等稚配。
????????(3)應(yīng)用設(shè)計的重點:將前面設(shè)計的內(nèi)容轉(zhuǎn)換為系統(tǒng)的表達(dá)方式立宜。
????????2)三個階段的協(xié)同
????????各個模塊之間是有層次關(guān)系的灯帮,也有先后的邏輯關(guān)系瞪醋。在概要設(shè)計中鸦采,還必須考慮模塊的實現(xiàn)細(xì)節(jié),概要設(shè)計拓提、詳細(xì)設(shè)計和應(yīng)用設(shè)計三個設(shè)計之間需要反復(fù)迭代進(jìn)行西雀。在概要設(shè)計階段,設(shè)計師就要能夠規(guī)劃和確定出詳細(xì)設(shè)計和應(yīng)用設(shè)計的范圍帮哈、深度膛檀,所以對概要設(shè)計擔(dān)當(dāng)人的能力要求是軟件工程全過程中最高的。
????????3)三個階段帶來的不同價值
????????這三個階段完成了系統(tǒng)的絕大部分價值娘侍,它們的設(shè)計讓用戶感受到了業(yè)務(wù)的變化咖刃、工作環(huán)境的變化,感受到了信息化帶來的價值憾筏。
????????(1)概要設(shè)計/詳細(xì)設(shè)計嚎杨,確定系統(tǒng)中業(yè)務(wù)方面的最高價值。
????????(2)應(yīng)用設(shè)計氧腰,確定系統(tǒng)中應(yīng)用方面的最高價值(也可以稱為體驗價值)枫浙。
????????2.三個階段的用語
????????在需求工程階段收集客戶需求時,采用的是客戶使用的“客戶用語”古拴,因為只有用客戶最為熟悉的語言才容易交流箩帚、溝通、表達(dá)黄痪,這個時候的用語是描述客戶行業(yè)知識紧帕、實踐經(jīng)驗、客戶現(xiàn)狀的桅打。
????????1)概要設(shè)計階段/詳細(xì)設(shè)計階段
????????由于業(yè)務(wù)設(shè)計階段的重點是針對業(yè)務(wù)的設(shè)計是嗜,所以使用的表達(dá)語言是“業(yè)務(wù)設(shè)計用語”,它們不是技術(shù)設(shè)計和開發(fā)時使用的技術(shù)用語挺尾,業(yè)務(wù)設(shè)計用語如業(yè)務(wù)架構(gòu)鹅搪、業(yè)務(wù)流程圖、工作分解圖潦嘶、業(yè)務(wù)功能分類涩嚣、管控模型、管理規(guī)則等掂僵。
????????● 此時的重點是對業(yè)務(wù)的優(yōu)化航厚、完善,是找出業(yè)務(wù)價值锰蓬,而不是技術(shù)的實現(xiàn)方法幔睬,因此過度使用技術(shù)用語會影響到干系人對業(yè)務(wù)的理解、表達(dá)芹扭。
????????● 在業(yè)務(wù)設(shè)計階段使用技術(shù)用語表達(dá)也會影響業(yè)務(wù)設(shè)計的正確性麻顶。
????????2)應(yīng)用設(shè)計階段
????????應(yīng)用設(shè)計赦抖,是介于業(yè)務(wù)設(shè)計與技術(shù)設(shè)計之間的轉(zhuǎn)換期,它使用的既不是完全的業(yè)務(wù)用語辅肾,也不是完全的技術(shù)用語队萤,而是介于業(yè)務(wù)和技術(shù)之間的用語,有偏業(yè)務(wù)的用語矫钓,例如要尔,事找人的流程機(jī)制、紅字更正(刪除)新娜、提交檢查赵辕、時限管理、權(quán)限管理等概龄;也有偏技術(shù)的用語还惠,例如,組件私杜、窗體蚕键、界面、權(quán)限等歪今。進(jìn)入技術(shù)設(shè)計階段以后嚎幸,就完全是技術(shù)的表達(dá)方式了(如UML颜矿、編碼語言等)寄猩。在技術(shù)設(shè)計階段如果可以做到少用或基本不用客戶的專業(yè)語言,那就說明前面的每個設(shè)計環(huán)節(jié)都做得非常到位骑疆,沒有遺漏田篇,反之,到了技術(shù)設(shè)計階段還要大量地使用需求階段客戶的專業(yè)用語箍铭,那就說明前面各個階段的轉(zhuǎn)換做得不到位泊柬。
8.2.5 業(yè)務(wù)設(shè)計與技術(shù)設(shè)計的關(guān)系
????????在軟件工程的框架上,業(yè)務(wù)設(shè)計(概要诈火、詳細(xì))與技術(shù)設(shè)計中間隔著應(yīng)用設(shè)計兽赁,兩者沒有發(fā)生直接交付與繼承的關(guān)系。兩者之間有如下的特征(僅供參考)冷守。
????????● 業(yè)務(wù)設(shè)計是以業(yè)務(wù)知識和設(shè)計知識為基礎(chǔ)進(jìn)行設(shè)計刀崖、表達(dá)的方法。
????????● 技術(shù)設(shè)計是以計算機(jī)技術(shù)為基礎(chǔ)拍摇,用技術(shù)設(shè)計特有的方法來轉(zhuǎn)換應(yīng)用設(shè)計的成果亮钦。
????????● 業(yè)務(wù)設(shè)計可以“不知”技術(shù)設(shè)計或技術(shù)開發(fā)的方法,它只關(guān)注業(yè)務(wù)自身的內(nèi)容充活。
????????● 技術(shù)設(shè)計必須要滿足業(yè)務(wù)設(shè)計的要求蜂莉,也就是說蜡娶,技術(shù)設(shè)計依賴于業(yè)務(wù)設(shè)計成果。
????????● 業(yè)務(wù)人員(咨詢映穗、需求窖张、業(yè)務(wù)設(shè)計師)是否懂技術(shù)不是工作的前提條件(但多懂為佳)。
????????● 技術(shù)人員(技術(shù)設(shè)計蚁滋、開發(fā)荤堪、測試)必須要能夠理解業(yè)務(wù)設(shè)計資料,是否懂業(yè)務(wù)知識不是工作的前提條件(但多懂為佳)枢赔。
????????由于各個軟件企業(yè)的組織構(gòu)成澄阳、涉及來源不同,所以業(yè)務(wù)設(shè)計與技術(shù)設(shè)計的劃分也不盡相同踏拜,這里“應(yīng)用設(shè)計”的環(huán)節(jié)設(shè)置與否有著非常大的影響碎赢。
????????● 設(shè)置應(yīng)用設(shè)計環(huán)節(jié),則業(yè)務(wù)設(shè)計和技術(shù)設(shè)計就可以分離得比較大速梗。
????????● 如果不設(shè)應(yīng)用設(shè)計環(huán)節(jié)肮塞,則業(yè)務(wù)設(shè)計和技術(shù)設(shè)計就要發(fā)生直接交互,對業(yè)務(wù)人員和技術(shù)人員的能力要求都會提高姻锁。
8.2.6 工程分解與資料引用
????????由于按照工程化設(shè)計的方法進(jìn)行設(shè)計枕赵,所以軟件工程上的各個階段產(chǎn)生的設(shè)計資料都是必須要繼承的
????????其中①和②為需求工程的內(nèi)容。
????????③概要設(shè)計:對②需求分析的內(nèi)容進(jìn)行規(guī)劃位隶,并制定指導(dǎo)后續(xù)進(jìn)行設(shè)計的設(shè)計規(guī)范等拷窜。
????????④詳細(xì)設(shè)計:在③概要設(shè)計確定的范圍內(nèi),依據(jù)②涧黄、③的內(nèi)容進(jìn)行細(xì)化設(shè)計篮昧,全部的設(shè)計成果需要符合③概要設(shè)計制定的標(biāo)準(zhǔn)及各項約定。
????????⑤應(yīng)用設(shè)計:是將④詳細(xì)設(shè)計的成果轉(zhuǎn)換為系統(tǒng)的表達(dá)方式笋妥,同時還要設(shè)計③概要設(shè)計中已規(guī)劃好的懊昨、但④詳細(xì)設(shè)計中沒有涉及的內(nèi)容,如系統(tǒng)功能(來源于②)春宣。
????????⑥技術(shù)設(shè)計:由于③酵颁、④和⑤三個設(shè)計中都有不重疊的內(nèi)容,因此月帝,⑥技術(shù)設(shè)計要參考前面的需求分析資料和全部的設(shè)計資料躏惋。
????????⑦軟件開發(fā):嚴(yán)格依據(jù)技術(shù)設(shè)計成果進(jìn)行開發(fā)。
????????⑧軟件測試:需要用到業(yè)務(wù)設(shè)計和應(yīng)用設(shè)計的用例嫁赏。
????????⑨系統(tǒng)驗收:與客戶簽訂合同的依據(jù)是需求規(guī)格說明書(來源于②)其掂。注:設(shè)計原則
????????(1)對于⑥技術(shù)設(shè)計來說,①和②的需求工程資料只是“參考資料”潦蝇,而不是“設(shè)計依據(jù)”(除去需求資料中關(guān)于技術(shù)方面的需求)款熬。
????????(2)當(dāng)③~⑤發(fā)生了遺漏或錯誤時深寥,技術(shù)設(shè)計師必須首先與擔(dān)當(dāng)?shù)脑O(shè)計師確認(rèn),在獲得一致意見后贤牛,首先由擔(dān)當(dāng)?shù)脑O(shè)計師把遺漏部分追加到相應(yīng)的業(yè)務(wù)/應(yīng)用設(shè)計資料中惋鹅,然后依據(jù)修改后的業(yè)務(wù)/應(yīng)用設(shè)計資料再進(jìn)行技術(shù)方面的修改。
8.3 工作分解
????????從軟件工程結(jié)構(gòu)圖上可以看出殉簸,在設(shè)計工程的三個階段中闰集,縱向的“工作分解”是一樣的,都是分為三個設(shè)計層般卑,即架構(gòu)層武鲁、功能層和數(shù)據(jù)層。工作分解的順序是由粗到細(xì)蝠检、由上到下沐鼠,設(shè)計工程的三個階段都是圍繞著架構(gòu)、功能和數(shù)據(jù)三個層進(jìn)行不斷地細(xì)化和深化叹谁。
8.3.1 工作分解1——架構(gòu)層
????????架構(gòu)層是工作分解的第一層饲梭,它的核心工作是進(jìn)行業(yè)務(wù)架構(gòu),通過從概要焰檩、詳細(xì)和應(yīng)用三個階段接力式的設(shè)計憔涉,完成了從業(yè)務(wù)架構(gòu)的規(guī)劃、詳細(xì)的流程分歧析苫,到最終轉(zhuǎn)換為系統(tǒng)應(yīng)用架構(gòu)的機(jī)制兜叨。
8.3.2 工作分解2——功能層
????????功能層是工作分解的第二層,它的核心工作是用戶操作界面的設(shè)計藤违,通過從概要浪腐、詳細(xì)和應(yīng)用三個階段接力式的設(shè)計纵揍,完成功能需求→業(yè)務(wù)功能→業(yè)務(wù)組件的轉(zhuǎn)換過程顿乒,最終完成用戶的操作界面設(shè)計。
8.3.3 工作分解3——數(shù)據(jù)層
????????數(shù)據(jù)層是工作分解的第三層泽谨,它的核心工作是對數(shù)據(jù)的設(shè)計璧榄,通過從概要、詳細(xì)和應(yīng)用三個階段接力式的設(shè)計吧雹,完成了對數(shù)據(jù)整體規(guī)劃骨杂、領(lǐng)域規(guī)劃、主數(shù)據(jù)選擇雄卷、數(shù)據(jù)標(biāo)準(zhǔn)制定搓蚪、數(shù)據(jù)模型、數(shù)據(jù)的復(fù)用機(jī)制等一系列的設(shè)計丁鹉。
8.3.4 工作分解4——三分層的關(guān)系
1.價值方面的不同
????????簡單地說妒潭,架構(gòu)是功能產(chǎn)生和確定的基礎(chǔ)悴能,功能是數(shù)據(jù)產(chǎn)生和確定的基礎(chǔ)。但三個設(shè)計層的目的不同雳灾,架構(gòu)與數(shù)據(jù)本身是客戶的價值所在漠酿,而功能是工具。
????????1)架構(gòu)層
????????架構(gòu)層的內(nèi)容是對業(yè)務(wù)優(yōu)化后的成果表達(dá)谎亩,業(yè)務(wù)優(yōu)化的成果可以直接為客戶帶來成本下降炒嘲、效率提升、效益收獲等價值匈庭,因此架構(gòu)層的成果是客戶投資的直接目的之一夫凸。
????????2)功能層
????????功能,是組成架構(gòu)的要素阱持,通過功能可以產(chǎn)生數(shù)據(jù)寸痢。沒有功能形成不了業(yè)務(wù)架構(gòu),也無法記錄和查看數(shù)據(jù)紊选,但是功能并不是客戶投資的直接目的啼止,最終的業(yè)務(wù)價值和信息化價值是體現(xiàn)在架構(gòu)和數(shù)據(jù)上的,功能是產(chǎn)生上述價值的工具(沒有這個工具無法產(chǎn)生價值)兵罢。
????????3)數(shù)據(jù)層
????????數(shù)據(jù)層的內(nèi)容是企業(yè)的資產(chǎn)献烦,數(shù)據(jù)的積累和有效利用(統(tǒng)計、分析卖词、挖掘)會為客戶提供解決舊問題的途徑巩那、找到新商機(jī)的啟示,因此數(shù)據(jù)層的成果是客戶投資的直接目的之一此蜈。
????????2.生命周期的不同
????????企業(yè)的管理方式會隨著時間和環(huán)境的變化而變化即横,這個變化會帶來業(yè)務(wù)架構(gòu)的變化;同樣隨著IT技術(shù)的進(jìn)步裆赵,功能的顯示和操作方式也會隨之發(fā)生變化(PC端→移動端)东囚,但是無論架構(gòu)和功能如何變化,都希望數(shù)據(jù)的結(jié)構(gòu)和標(biāo)準(zhǔn)可以保持5年战授、10年甚至幾十年都不改變页藻,如果因為架構(gòu)和功能發(fā)生了變化而不能再利用已有的歷史數(shù)據(jù),則這個數(shù)據(jù)資產(chǎn)就不存在了植兰。這也是為什么業(yè)務(wù)設(shè)計師也必須要關(guān)注份帐、掌握數(shù)據(jù)的規(guī)劃和設(shè)計能力的原因。只重視功能設(shè)計楣导,而不重視架構(gòu)和數(shù)據(jù)的設(shè)計废境,這為系統(tǒng)長期使用帶來以下兩個大隱患。
????????(1)架構(gòu)設(shè)計不足,由于缺乏頂層規(guī)劃和設(shè)計噩凹,會造成系統(tǒng)的應(yīng)變性差朦促。
????????(2)數(shù)據(jù)設(shè)計不足,復(fù)數(shù)系統(tǒng)間的數(shù)據(jù)難以打通栓始,數(shù)據(jù)無法共享务冕、復(fù)用,造成信息孤島現(xiàn)象幻赚。
????????三分層內(nèi)容的生命周期由長到短分別為:數(shù)據(jù)>架構(gòu)>功能禀忆。
????????(1)功能的形態(tài)最容易發(fā)生變化(客戶需求變化、硬件技術(shù)的進(jìn)步等)落恼,生命周期最短箩退。
????????(2)架構(gòu)的形態(tài)隨著業(yè)務(wù)標(biāo)準(zhǔn)變化而變化(業(yè)務(wù)不變,架構(gòu)也不變)佳谦,生命周期的長短居中戴涝。
????????(3)數(shù)據(jù)如果做好標(biāo)準(zhǔn)化設(shè)計,其生命周期則可以做到最長(也是客戶最希望的)钻蔑,因為只有數(shù)據(jù)生命周期長且大量積累啥刻,才能發(fā)揮出數(shù)據(jù)的價值來。
8.3.5 工作分解5——業(yè)務(wù)與技術(shù)的分層關(guān)系
????1.技術(shù)設(shè)計的三層構(gòu)成
????????理解上述分層的成果與技術(shù)設(shè)計三層結(jié)構(gòu)的對應(yīng)關(guān)系咪笑,可以理解業(yè)務(wù)設(shè)計分層的作用和價值可帽。技術(shù)設(shè)計的三層結(jié)構(gòu)通常為:應(yīng)用界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層
????????(1)應(yīng)用界面層:位于最外層(最上層)窗怒,最接近用戶映跟。用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作的界面扬虚。
????????(2)業(yè)務(wù)邏輯層:位于三層之中努隙,它的關(guān)注點主要集中在業(yè)務(wù)規(guī)則的制定、業(yè)務(wù)流程的實現(xiàn)等與業(yè)務(wù)需求有關(guān)的系統(tǒng)設(shè)計辜昵。
????????(3)數(shù)據(jù)訪問層:位置居于三層之后荸镊,其功能主要是負(fù)責(zé)數(shù)據(jù)庫的訪問。
????????2.非技術(shù)設(shè)計
????????與技術(shù)設(shè)計的三層對比非技術(shù)設(shè)計(業(yè)務(wù)設(shè)計路鹰、應(yīng)用設(shè)計)三分層的成果支持了技術(shù)三分層的設(shè)計工作贷洲,非技術(shù)設(shè)計的各層成果如下。
????????1)架構(gòu)層成果
????????①主要是獲取“業(yè)務(wù)邏輯”晋柱,它向技術(shù)的“業(yè)務(wù)邏輯層”提供了業(yè)務(wù)邏輯、機(jī)制(邏輯的應(yīng)用表達(dá))诵叁。
????????2)功能層成果
????????主要成果是獲取了“界面形式”和“數(shù)據(jù)”雁竞,分別向技術(shù)各層提供如下信息。
????????②向應(yīng)用界面層:提供業(yè)務(wù)操作的原型等。
????????③向業(yè)務(wù)邏輯層:提供界面操作過程碑诉、數(shù)據(jù)處理規(guī)則彪腔、管理規(guī)則等。
????????④向數(shù)據(jù)訪問層:提供數(shù)據(jù)和定義进栽。
????????3)數(shù)據(jù)層成果
????????主要成果是獲取了“數(shù)據(jù)邏輯”德挣,分別向技術(shù)各層提供了:
????????⑤向業(yè)務(wù)邏輯層:提供了數(shù)據(jù)邏輯(算式等)。
????????⑥向數(shù)據(jù)訪問層:提供了數(shù)據(jù)表關(guān)系快毛。
????????可見格嗅,非技術(shù)設(shè)計中的每個階段、每個階段中的每一層的設(shè)計成果都是直接或間接地為后續(xù)的技術(shù)設(shè)計各層提供了輸入和依據(jù)唠帝。
8.4 管理設(shè)計
????????在分離原理中已經(jīng)講過了屯掖,業(yè)務(wù)與管理分離,業(yè)務(wù)是管理的載體襟衰,管理是對業(yè)務(wù)標(biāo)準(zhǔn)執(zhí)行的保證措施贴铜,因此,管理的思想瀑晒、理念绍坝、原則等可以先行規(guī)劃,但是具體的管理設(shè)計要在業(yè)務(wù)載體的相關(guān)設(shè)計完成之后才能進(jìn)行苔悦。
????????由于管理功能是以業(yè)務(wù)功能為載體的陷嘴,所以管理設(shè)計的內(nèi)容分布在功能層的三個設(shè)計階段中。
????????(1)管理的概要設(shè)計:進(jìn)行管理的頂層設(shè)計间坐、規(guī)劃灾挨。
????????(2)管理的詳細(xì)設(shè)計:在業(yè)務(wù)功能的詳細(xì)設(shè)計(業(yè)務(wù)4件套)之上進(jìn)行管理細(xì)化設(shè)計。
????????(3)管理的應(yīng)用設(shè)計:將業(yè)務(wù)設(shè)計中的管理設(shè)計成果轉(zhuǎn)換為機(jī)制竹宋,給出實現(xiàn)管理的方法劳澄。
8.5 組織設(shè)計
????????企業(yè)組織管理具有三個重要的職能:建立管理機(jī)構(gòu),配備崗位人員蜈七,制定規(guī)章制度秒拔。在信息系統(tǒng)中,上述三個職能工作被融合到以下的功能中飒硅。
????????1.建立管理機(jī)構(gòu)
????????通過建立組織基礎(chǔ)數(shù)據(jù)庫的形式砂缩,將組織結(jié)構(gòu)的形式固定下來,其中包括公司三娩、子公司庵芭、部門、崗位等雀监。另外双吆,組織結(jié)構(gòu)在信息系統(tǒng)中有一個非常重要的作用眨唬,大量的查詢、抽提好乐、統(tǒng)計和分析操作都是要以組織屬性為關(guān)鍵詞進(jìn)行的匾竿,它也是各類統(tǒng)計、分析報表的“維度”屬性蔚万。組織岭妖,作為數(shù)據(jù)設(shè)計的部分內(nèi)容。
????????2.配備崗位人員
????????在系統(tǒng)上線后反璃,通過系統(tǒng)的“權(quán)限功能”昵慌,為所有在組織結(jié)構(gòu)內(nèi)有“崗位”的員工給予一個在系統(tǒng)中對應(yīng)的“角色”,所有具有系統(tǒng)權(quán)限的角色都被稱為“系統(tǒng)的用戶”版扩。權(quán)限废离,作為組合設(shè)計的部分內(nèi)容。
????????3.制定規(guī)章制度
????????企業(yè)的組織部門制定的企業(yè)管理規(guī)則礁芦,如果參與信息化管理蜻韭,則一定要設(shè)置到相應(yīng)的操作環(huán)節(jié)中,有效的規(guī)章制度一定要以規(guī)則的形式融入到系統(tǒng)操作的各個環(huán)節(jié)中去才能發(fā)揮出作用柿扣。
????????組織部門相對于其他部門的工作是一種“管理行為”肖方,但是組織部門內(nèi)部的工作則與其他部門的工作是一樣的,也是具有“業(yè)務(wù)”和“管理”兩個層次未状,同樣符合分離原理俯画。雖然領(lǐng)域的專業(yè)知識不同,但是針對組織對象的分析與業(yè)務(wù)設(shè)計方法是一樣的司草。
8.6 物品設(shè)計
????????分屬于物品類的要素由于都是“硬件”艰垂,所以通常不會直接影響到企業(yè)管理的業(yè)務(wù)架構(gòu)权薯、管理架構(gòu)和組織架構(gòu)冗栗,對物品的架構(gòu)在企業(yè)的業(yè)務(wù)活動中一般是自成體系的垛贤。物品類要素在企業(yè)管理系統(tǒng)中主要是以“基礎(chǔ)數(shù)據(jù)”的形式存在的狼讨,對物品類對象的設(shè)計工作主要有兩個內(nèi)容:數(shù)據(jù)編號和數(shù)據(jù)管理。
? ??????1.?dāng)?shù)據(jù)編號
????????對物品類數(shù)據(jù)的編號是企業(yè)管理信息化的重要內(nèi)容燥透,物品類要素的數(shù)據(jù)屬于企業(yè)的基礎(chǔ)數(shù)據(jù)卡睦,它牽扯到企業(yè)的標(biāo)準(zhǔn)化肮疗、規(guī)范化工作爬泥,編制物品的數(shù)據(jù)編號需要很強(qiáng)的專業(yè)知識柬讨。但是如何標(biāo)準(zhǔn)化、如何標(biāo)準(zhǔn)化才能最大限度地發(fā)揮出信息化的價值并非是客戶所擅長的工作袍啡,這是需要業(yè)務(wù)設(shè)計師給予他們指導(dǎo)的踩官。
????????2.?dāng)?shù)據(jù)管理
????????對數(shù)據(jù)進(jìn)行編號實際上也是一種管理,完成了數(shù)據(jù)編號后葬馋,為了保證這個編號體系在實際運(yùn)用中得以被正確運(yùn)用卖鲤,就需要有相應(yīng)的保障措施肾扰,這個保障措施就是“字典”功能畴嘶,對物品編號是企業(yè)標(biāo)準(zhǔn)化管理的重要組成部分蛋逾,通過字典功能上的各項管理規(guī)則,可以保證物品數(shù)據(jù)被正確地應(yīng)用窗悯、統(tǒng)計区匣。
8.7 價值設(shè)計
????????價值設(shè)計并非是一種新的和獨立的設(shè)計體系,它提倡的是在做系統(tǒng)設(shè)計的同時蒋院,重點思考一下:通過信息化手段改造了企業(yè)的管理模式后亏钩,給客戶帶來了哪些可以直接感受到的變化和價值,重點思考兩個方面的價值欺旧,即業(yè)務(wù)價值和應(yīng)用價值姑丑。
????????● 業(yè)務(wù)價值:客戶業(yè)務(wù)的本身,通過軟件商的優(yōu)化設(shè)計辞友,有了哪些變化和價值栅哀。
????????● 應(yīng)用價值:客戶業(yè)務(wù)與信息化環(huán)境結(jié)合后,為客戶生產(chǎn)方式帶來了哪些變化和價值称龙×羰埃“業(yè)務(wù)價值”和“應(yīng)用價值”一定要能夠用最終的客戶“效率”和“效益”進(jìn)行表達(dá),這些價值是通過設(shè)計融入到系統(tǒng)中的鲫尊。
8.8 驗證用例與規(guī)格書
8.8.1 驗證用例
????????對設(shè)計成果的驗證分為兩個階段:業(yè)務(wù)驗證用例痴柔、應(yīng)用驗證用例。
????????1.業(yè)務(wù)設(shè)計階段
????????業(yè)務(wù)設(shè)計階段的驗證用例稱為“業(yè)務(wù)驗證用例”(簡稱業(yè)務(wù)用例)疫向,由于業(yè)務(wù)的概要設(shè)計和詳細(xì)設(shè)計成果構(gòu)成了一個完整的業(yè)務(wù)設(shè)計咳蔚,因此業(yè)務(wù)設(shè)計兩個階段共用一個驗證用例,它利用具有連續(xù)性的業(yè)務(wù)場景從業(yè)務(wù)視角出發(fā)搔驼,在用例中加入了包括流程谈火、數(shù)據(jù)、管理規(guī)則等內(nèi)容匙奴,通過模擬運(yùn)行對業(yè)務(wù)設(shè)計的成果進(jìn)行驗證堆巧。
????????2.應(yīng)用設(shè)計階段應(yīng)用設(shè)計階段的驗證用例稱為“應(yīng)用驗證用例”(簡稱應(yīng)用用例),將業(yè)務(wù)驗證腳本與應(yīng)用設(shè)計成果(組件泼菌、機(jī)制)相融合谍肤,編制出一個可以模擬系統(tǒng)完成后的應(yīng)用效果,對業(yè)務(wù)設(shè)計和應(yīng)用的成果進(jìn)行綜合驗證哗伯。
8.8.2 設(shè)計規(guī)格書
????????軟件工程每個設(shè)計階段完成時荒揣,需要有對這個階段設(shè)計成果的匯總,以及對設(shè)計成果的驗證焊刹,這就是各類規(guī)格書與驗證用例系任。
????????1)業(yè)務(wù)設(shè)計階段
????????(1)概要設(shè)計規(guī)格書恳蹲。概要設(shè)計是設(shè)計階段的開始,因此俩滥,概要設(shè)計的成果匯總成概要設(shè)計規(guī)格書嘉蕾,它是指導(dǎo)后續(xù)所有設(shè)計、開發(fā)霜旧、測試的依據(jù)错忱。概要設(shè)計規(guī)格書包括架構(gòu)、功能和數(shù)據(jù)三個分層的概要設(shè)計資料挂据。
????????(2)詳細(xì)設(shè)計規(guī)格書以清。所有系統(tǒng)中與業(yè)務(wù)相關(guān)的架構(gòu)、功能和數(shù)據(jù)細(xì)節(jié)都在此確定崎逃,在此之后的設(shè)計(應(yīng)用掷倔、技術(shù))都應(yīng)該遵循業(yè)務(wù)設(shè)計結(jié)果,不得改變(除業(yè)務(wù)設(shè)計師許可外)个绍。詳細(xì)設(shè)計規(guī)格書包括架構(gòu)勒葱、功能和數(shù)據(jù)三個分層的詳細(xì)設(shè)計資料。概要設(shè)計規(guī)格書與詳細(xì)設(shè)計規(guī)格書兩者構(gòu)成了完整的業(yè)務(wù)設(shè)計障贸。
????????2)應(yīng)用設(shè)計階段
????????在業(yè)務(wù)設(shè)計的成果之上加入系統(tǒng)的要素错森,完成的設(shè)計成果匯總成應(yīng)用設(shè)計規(guī)格書,它確定了系統(tǒng)中關(guān)于用戶應(yīng)用的方法篮洁,在此之后的技術(shù)設(shè)計與編程實現(xiàn)不得改變(除應(yīng)用設(shè)計師許可外)涩维。應(yīng)用設(shè)計規(guī)格書包括架構(gòu)、功能和數(shù)據(jù)三個分層的應(yīng)用設(shè)計資料袁波。
小結(jié)
????????設(shè)計工程的工作瓦阐,是軟件工程中決定系統(tǒng)的設(shè)計規(guī)范、架構(gòu)篷牌、功能睡蟋、數(shù)據(jù)以及客戶價值的核心部分。最終客戶的信息化價值體現(xiàn)枷颊、滿意度主要取決于設(shè)計工程的工作戳杀,這其中業(yè)務(wù)設(shè)計部分和應(yīng)用設(shè)計部分又是對客戶的信息化價值起著最為核心的作用。
????????設(shè)計工程的內(nèi)容很多夭苗,按照設(shè)計的內(nèi)容形成了一個3×3的設(shè)計矩陣信卡。通過4條設(shè)計線①~④,可以看出設(shè)計工程的構(gòu)成思路如下题造。
????????線①:設(shè)計工程分為三個階段:概要設(shè)計階段傍菇、詳細(xì)設(shè)計階段和應(yīng)用設(shè)計階段。
????????線②:每個階段內(nèi)再分為三層:架構(gòu)層界赔、功能層和數(shù)據(jù)層丢习。? ?
????????線③:每個層的設(shè)計分為三步:將需求轉(zhuǎn)換為系統(tǒng)的形式牵触,如功能層通過功能概要、功能詳細(xì)和功能應(yīng)用的三步設(shè)計咐低,將功能需求最終轉(zhuǎn)換為系統(tǒng)的組件揽思。
????????線④:對研究對象,從最大粒度的設(shè)計(架構(gòu))到最小粒度的設(shè)計(數(shù)據(jù))進(jìn)行了全面的渊鞋、體系化的分析和設(shè)計绰更。按照分離原理4分類的內(nèi)容瞧挤,設(shè)計安排如下锡宋。
????????(1)由于業(yè)務(wù)設(shè)計、組織設(shè)計和物品設(shè)計的方法相似特恬,所以將這三者的內(nèi)容融合到一起設(shè)計見中c1执俩。
????????(2)“管理設(shè)計”由于要以業(yè)務(wù)設(shè)計的結(jié)果為載體,c2所以放到最后的綜合設(shè)計篇中癌刽。
????????(3)其他的“價值設(shè)計役首、用例設(shè)計、規(guī)格書與模板”由于是針對總體的設(shè)計显拜,所以也一并放在綜合設(shè)計中講述衡奥,c3~c5。
????????這個結(jié)構(gòu)給出了從上到下远荠、從粗到細(xì)矮固、從業(yè)務(wù)到系統(tǒng)、從架構(gòu)到數(shù)據(jù)譬淳、從邏輯到機(jī)制的分析档址、設(shè)計和轉(zhuǎn)換的過程,按照這個設(shè)計矩陣進(jìn)行作業(yè)邻梆,就可以達(dá)到設(shè)計工程化的目的守伸。
軟件工程,不但可以支持分析與設(shè)計浦妄,而且可以支持軟件的項目管理