中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
對架構(gòu)設(shè)計的想法 -
1.1 文檔目的
1.2 文檔范圍
1.3 讀者對象
1.4 參考文獻
1.5 術(shù)語與縮寫解釋
2.  系統(tǒng)的架構(gòu)分析
2.1  本系統(tǒng)“是什么”
2.1.1 訪問者定義
2.1.2 創(chuàng)建情節(jié)
2.1.3 競爭性分析
2.2  本系統(tǒng)的主要功能
2.2.1 項目內(nèi)容和功能的輸入
2.2.2 項目結(jié)構(gòu)
2.2.3 備選的分析機制
2.3  系統(tǒng)的架構(gòu)機制
2.3.1 MVC結(jié)構(gòu)如下圖:
2.3.2 定義過程流
2.3.3 對象交互圖
2.3.4 類設(shè)計—從分析類到設(shè)計類
2.3.5 數(shù)據(jù)庫設(shè)計
3.  概要設(shè)計
3.1 概要設(shè)計的目的
3.2 概要設(shè)計的任務
3.3 概要設(shè)計的原則
3.4 概要設(shè)計的內(nèi)容
3.5 概要設(shè)計的輸出
4  數(shù)據(jù)庫設(shè)計
4.1  數(shù)據(jù)庫設(shè)計的內(nèi)容
5. 用戶界面設(shè)計
5.1用戶界面設(shè)計的內(nèi)容
6  設(shè)計過程
6.1  以架構(gòu)為中心的過程
6.2  迭代和增量開發(fā)
6.3  開發(fā)規(guī)范概述
6.3.1 應用項目開發(fā)過程簡述
6.3.2設(shè)計階段的活動
7. 數(shù)據(jù)模型設(shè)計示例
9. 其它
附錄1:用例描述
附錄2: 結(jié)構(gòu)化設(shè)計方法與面向?qū)ο笤O(shè)計方法比較
附錄3: Web 服務(其他文件)
1.5 術(shù)語與縮寫解釋
架構(gòu) (Architecture):   系統(tǒng)在其所處環(huán)境中的最高層次的概念,涉及系統(tǒng)的組織結(jié)構(gòu)。軟件系統(tǒng)的架構(gòu)是通過接口交互的重要構(gòu)件(在特定時間點)的組織或結(jié)構(gòu),這些構(gòu)件又由一些更小的構(gòu)件和接口組成。架構(gòu)可以遞歸解構(gòu)為部件之間的接口、部件之間關(guān)系以及被組裝部件之間的約束。
SD:    系統(tǒng)設(shè)計,System Design
XML:  (eXtend Markable Language, 擴展標記語言),用嚴格的嵌套標記表示數(shù)據(jù)信息,特別適合在Internet環(huán)境中的多點數(shù)據(jù)交換環(huán)境下使用
SOAP: (Simple Object Access Protocol,簡單對象訪問協(xié)議), 用來定義數(shù)據(jù)描述和遠程訪問的標準.
WSDL: (Web Services Description Language,Web服務描述語言), 是發(fā)布和請求Web服務的描述語言.
UDDI:  (Universal Description, Discovery and Integration,統(tǒng)一描述、發(fā)現(xiàn)和集成),把Web服務與用戶聯(lián)系起來,起中介作用。
OMT:  (Object-Oriented Modeling Technique  OMT) 面向?qū)ο蟮慕<夹g(shù).
Design patterns:   模式是在一個上下文中,對一個問題的解決方案。即模式的四要素:名字、上下文、問題和解決方案。分為23種設(shè)計模式:創(chuàng)建型:5種;結(jié)構(gòu)型:7種;行為型:11種.
1,架構(gòu)分析主要包括:確定分析機制,確定核心的抽象概念,定義子系統(tǒng)的高層組織,創(chuàng)建用例實現(xiàn)。
2,對用例分析包括:補充用例規(guī)約,查找分析類,確定分析類的細節(jié),限定分析類的分析機制。
3,確定設(shè)計元素。
4,確定設(shè)計機制。
5,描述運行時架構(gòu)。
6,描述分布。
本系統(tǒng)可采用OMT對進行架構(gòu)分析設(shè)計
用OMT方法對系統(tǒng)進行分析通常分兩步:
第一步是對問題的描述;
第二步是將對問題的描述建立成三種模型,即對象模型、動態(tài)模型、功能模型。
本系統(tǒng)“是什么”
系統(tǒng)建模方法是從系統(tǒng)的問題描述開始的,詳細精確的問題描述能使開發(fā)人員的分析、設(shè)計更為合理、準確。這里首先建立理想模型,做行為分析。
主要包括:
訪問者定義
誰將是該項目的訪問者?訪問者的目的是什么?訪問者能獲到什么信息?進行何種商務功能的處理?或者得到什么形式的獎勵?
可以使用下表(簡化的用例):
信息
商務處理
獎勵
綜       述(如有必要再進行全方面的描述,請?zhí)顚懺谙旅妫?div style="height:15px;">
創(chuàng)建情節(jié)
根據(jù)訪問者定義,找出能代表大多數(shù)訪問者的人,舉例說明用戶的真實網(wǎng)上經(jīng)歷,如何完成一定的任務,就象講述一個網(wǎng)民上網(wǎng)的故事,可以盡量發(fā)揮想象力去描述。
競爭性分析
瀏覽和評估一至二個我們主要的競爭對手的網(wǎng)站,嚴肅客觀地評價競爭者,分析出該項目在競爭上的優(yōu)勢。
可以使用下表:
網(wǎng)站名
網(wǎng)址
功能描述
優(yōu)勢分析
本系統(tǒng)的主要功能
根據(jù)上述問題描述,需要對系統(tǒng)的功能做詳細描述,以構(gòu)造出系統(tǒng)頂層的對象圖、狀態(tài)圖和數(shù)據(jù)流圖,
項目內(nèi)容和功能的輸入
(1)項目內(nèi)容概述(項目具有哪些內(nèi)容?哪些功能?列出所需的內(nèi)容和功能的清單。)
(2)項目內(nèi)容分組和命名(將內(nèi)容進行分組,也即分成若干個欄目,給每欄起一個名字,中文英文各取一個,中文的用做導航,英文的作為網(wǎng)站文件目錄的名字。)
(3)功能需求(列出項目中用戶功能性的內(nèi)容)
項目結(jié)構(gòu)
(1)結(jié)構(gòu)列表
建立一個基于文本形式的項目層次結(jié)構(gòu)圖,結(jié)構(gòu)如下(摘自《云南移動門戶網(wǎng)站手機俱樂部頻道策劃》):
(2)建立結(jié)構(gòu)藍圖,定義全局和局部導航。
結(jié)構(gòu)藍圖是網(wǎng)站結(jié)構(gòu)的可視化表示,顯示網(wǎng)站中的元素如何分組和聯(lián)系的圖表,不同的內(nèi)容(靜態(tài)或是動態(tài)的)和功能使用不同的幾何形狀進行表示,整個結(jié)構(gòu)呈現(xiàn)倒樹狀,內(nèi)容要素和功能要素使用不同的方法表示。
可用表的示例:
主線程
分線程
時間
(天)
所在分線程時間比
所在總線程時間比
發(fā)
設(shè)計階段
參考
設(shè)計框架
設(shè)計裝飾圖片
完成設(shè)計整合
制作階段
設(shè)計CSS
制作框架html
加入代碼
作代碼優(yōu)化
設(shè)計制作
整合
與策劃人員溝通
在后臺代碼加入后,根據(jù)項目小組意見進行整合
WEB
發(fā)
WEB
服務層
開發(fā)
審閱功能規(guī)范
確定模塊化/分層設(shè)計參數(shù)
分派任務
編寫代碼
開發(fā)人員測試(初步調(diào)試)
上傳功能模塊
數(shù)
據(jù)
發(fā)
數(shù)據(jù)庫開發(fā)
審閱功能規(guī)范
確定表/過程設(shè)計參數(shù)
分派任務
編寫代碼
開發(fā)人員測試(初步調(diào)試)
上傳功能模塊
備選的分析機制
項目的分析機制還包括
?         永久性
?         安全性
?         分布
?         進程通訊
?         錯誤報告
?         格式轉(zhuǎn)換
?         消息路由
?         進程控制與同步
?         事務管理
?         信息交換
?         冗余度
系統(tǒng)的架構(gòu)機制
架構(gòu)機制采用MVC(Model-View-Control),見設(shè)計模式,
結(jié)構(gòu)如下圖
定義過程流
然后定義過程流(Process Flow)。
使用UML描述,包括以下內(nèi)容;
1,描述設(shè)計對象的交互
2,使用子系統(tǒng)簡化序列圖
3,描述永久性相關(guān)行為
4,改進事件流描述
輸入的用例見附錄1表:
對象交互圖
對象交互圖包括:請求處理序列圖,事件處理序列圖,使用UML描述。
類設(shè)計—從分析類到設(shè)計類
從分析類到設(shè)計類的過程:可采用如下表(示例)
詳細描述:
示例:分析類
LoginInfoScreen身份及口令信息
數(shù)據(jù)庫設(shè)計
需要考慮:
對系統(tǒng)中信息流有嚴格的順序關(guān)系。
建立強大的查詢和統(tǒng)計功能,用戶只需要對要查詢的數(shù)據(jù)進行簡單的選擇和組合即可得到查詢結(jié)果。
靈活的授權(quán)管,用戶權(quán)限分為三級:超級用戶、部門級用戶、單據(jù)級用戶。不同的用戶其權(quán)限不同。
2.3.6基于Web瀏覽器的多層結(jié)構(gòu)開發(fā)模式
主流的軟件架構(gòu)B/S與N Tier模式都有一些缺點,所以現(xiàn)在出現(xiàn)了許多B-N Tier的系統(tǒng),就是基于Web瀏覽器的多層結(jié)構(gòu)開發(fā)模式,它吸收了兩者的優(yōu)點。
單純的B/S方式,雖然可以認為實現(xiàn)了最終用戶使用成本幾乎為零,但它存在許多不足,它的功能較弱,無法非常容易地實現(xiàn)你的理念。比如你要實現(xiàn)一種商業(yè)模型,你會發(fā)現(xiàn)實際上Web方式是不安全、不可靠的,比如,用戶可通過頁面回退或前進來改變你所有希望的結(jié)果、報表制作能力不足等(當然這也取決于業(yè)務的復雜程度)。
為什么Web會造成邏輯實現(xiàn)上的困難?因為它是基于Stateless(無狀態(tài))的,Stateless就是這樣一種情形:不知道用戶端是什么樣子,接收信息是不可控的,不知道傳遞給他的信息的流向,這就是Stateless。所有基于HTTP的東西都是Stateless的。而Socket的魅力就在于它是有狀態(tài)的。
現(xiàn)在發(fā)展起來的ASP、JSP、Java技術(shù),雖然彌補了HTTP協(xié)議存在的無狀態(tài)缺陷,但即使這些技術(shù)再先進,也無法解決HTTP協(xié)議基于Stateless的事實。 以基于IIS的ASP技術(shù)來說,它使用Session變量來實現(xiàn)State。但是不管什么技術(shù),最終都落在了COOKIE上,也就是使用COOKIE來保留客戶端狀態(tài)。
Socket目前應用十分廣泛,ICQ、QQ等即時通訊軟件,還有許多網(wǎng)絡(luò)工具,大都基于Socket,因為Socket協(xié)議是有狀態(tài)的,所以才能做到這一點??梢赃@么說,是Socket讓網(wǎng)絡(luò)生活更精彩!
目前基于Web的多層結(jié)構(gòu)采用的底層技術(shù)主要有SOAP+State類協(xié)議或者HTTP+State類協(xié)議。從Delphi 6開始引入WebSnap包(一種Web Provider產(chǎn)品)。它同時支持HTTP與SOAP協(xié)議,也采用了一種類似Session變量的模式來實現(xiàn)有狀態(tài)(State)。它可以說是目前市面上最強大的基于平臺的Browse/Server開發(fā)工具之一,不足是它還不能稱為完全的RAD工具,且門檻較高。在Delphi 7中還引入了IntraWeb控件包,它是一種真正意義上的網(wǎng)頁RAD開發(fā)工具,與WebSnap配合更好。
Web Provider、邏輯組件、多線程處理、交易機制、消息流轉(zhuǎn)等組合在一起是N Tier開發(fā)的高境界,所以是大型商業(yè)軟件架構(gòu)的首選。
另外還需要考慮消息機制,消息機制并不一定在所有的多層結(jié)構(gòu)中都存在,而且,如果要實現(xiàn)消息機制,必須尋找實現(xiàn)手段(比如使用Socket),否則,如果在程序中強制實施大量消息流轉(zhuǎn)(比如使用定時器監(jiān)控和消息數(shù)據(jù)表方式),無論是效率還是實現(xiàn)的復雜性來講都是要考慮的問題。
概要設(shè)計
架構(gòu)設(shè)計的描述—概要設(shè)計說明
概要設(shè)計的目的
概要設(shè)計的目的主要即設(shè)計系統(tǒng)架構(gòu),包括:
1,將軟件系統(tǒng)需求轉(zhuǎn)換為未來系統(tǒng)的設(shè)計;
2,逐步開發(fā)強壯的系統(tǒng)架構(gòu);
3,使設(shè)計適合于實施環(huán)境,為提高性能而進行設(shè)計;
4,結(jié)構(gòu)應該被分解為模塊和類。
概要設(shè)計的任務
概要設(shè)計的任務包括:
1,制定規(guī)范
制訂項目組的代碼體系、接口規(guī)約、命名規(guī)則。這是項目小組今后共同作戰(zhàn)的基礎(chǔ),有了開發(fā)規(guī)范和程序模塊之間和項目成員彼此之間的接口規(guī)則、方式方法,大家就有了共同的工作語言、共同的工作平臺,使整個軟件開發(fā)工作可以協(xié)調(diào)有序地進行。
2,總體結(jié)構(gòu)設(shè)計
功能(加工)->模塊:每個功能用那些模塊實現(xiàn),保證每個功能都有相應的模塊來實現(xiàn);
模塊層次結(jié)構(gòu):某個角度的軟件框架視圖;
模塊間的調(diào)用關(guān)系:模塊間的接口的總體描述;
模塊間的接口:傳遞的信息及其結(jié)構(gòu);
處理方式設(shè)計:滿足功能和性能的算法
3,用戶界面設(shè)計
(略)
4,數(shù)據(jù)結(jié)構(gòu)設(shè)計
詳細的數(shù)據(jù)結(jié)構(gòu):表、索引、文件;
算法相關(guān)邏輯數(shù)據(jù)結(jié)構(gòu)及其操作;
上述操作的程序模塊說明(在前臺?在后臺?用視圖?用過程?······)
接口控制表的數(shù)據(jù)結(jié)構(gòu)和使用規(guī)則
5,其他性能設(shè)計
主要是壓力性能的考慮。
概要設(shè)計的原則
總體原則和方法:由粗到細的原則,互相結(jié)合的原則,定性分析和定量分析相結(jié)合的方法,分解和協(xié)調(diào)的方法和模型化方法。
要系統(tǒng)考慮系統(tǒng)的一般性、關(guān)聯(lián)性、整體性和層次性。
分解協(xié)調(diào):目的是為了創(chuàng)造更好的系統(tǒng)。系統(tǒng)分解是指將一個復雜的系統(tǒng)分解為若干個子系統(tǒng),系統(tǒng)協(xié)調(diào)一是系統(tǒng)內(nèi)協(xié)調(diào),即根據(jù)系統(tǒng)的總結(jié)構(gòu)、總功能、總?cè)蝿蘸涂偰繕说囊螅垢鱾€子系統(tǒng)之間互相協(xié)調(diào)配合,在各個子系統(tǒng)局部優(yōu)化基礎(chǔ)上,通過內(nèi)部平衡的協(xié)調(diào)控制,實現(xiàn)系統(tǒng)的整體優(yōu)化;
屏蔽抽象:從簡單的框架開始,隱含細節(jié);
一致性:統(tǒng)一的規(guī)范、統(tǒng)一的標準、統(tǒng)一的文件模式;
每個模塊應當有一個統(tǒng)一命名的容易理解的名字;
編碼:由外向內(nèi)(界面->核心);
面向用戶:概要設(shè)計是對于按鈕按下后系統(tǒng)“怎么做”的簡要說明;
模塊、組件的充分獨立性、封閉性;
同時考慮靜態(tài)結(jié)構(gòu)與動態(tài)運行;
每個邏輯對象都應當說明其所處物理對象(非一一對應);
每個物理對象都有合適的開發(fā)人員,并且利于分工與組裝。(詳細說明見本人另一篇文章:系統(tǒng)架構(gòu)設(shè)計應考慮的因素);
確立每個架構(gòu)視圖的整體結(jié)構(gòu):視圖的詳細組織結(jié)構(gòu)、元素的分組以及這些主要分組之間的接口;
軟件架構(gòu)與使用的技術(shù)平臺密切相關(guān),目前常用的平臺有J2EE、.NET、CORBA等等,因此具體的軟件架構(gòu)人員應當具備使用這些平臺的軟件開發(fā)經(jīng)驗;
通過需求功能與設(shè)計模塊之間的列表對應,檢查每個需求功能是否都有相應的模塊來實現(xiàn),保證需求功能的可追溯性和需求實現(xiàn)(模塊)的完整性,同時可以檢查重復和不必要的模塊。
在需求調(diào)研分析過程中對業(yè)務處理過程了解的完整性和準確性非常重要。調(diào)查了解清楚所有的業(yè)務流程才能設(shè)計出適合各流程業(yè)務節(jié)點用戶業(yè)務特點和習慣的軟件,使開發(fā)出來的軟件更受歡迎。當然在進行軟件概要設(shè)計時,要盡量排除業(yè)務流程的制約,即把流程中的各項業(yè)務結(jié)點工作作為獨立的對象,設(shè)計成獨立的模塊,充分考慮他們與其他各種業(yè)務對象模塊的接口,在流程之間通過業(yè)務對象模塊的相互調(diào)用實現(xiàn)各種業(yè)務,這樣,在業(yè)務流程發(fā)生有限的變化時(每個業(yè)務模塊本身的業(yè)務邏輯沒有變的情況下),就能夠比較方便地修改系統(tǒng)程序模塊間的調(diào)用關(guān)系而實現(xiàn)新的需求。如果這種調(diào)用關(guān)系被設(shè)計成存儲在配置庫的數(shù)據(jù)字典里,則連程序代碼都不用修改,只需修改數(shù)據(jù)字典里的模塊調(diào)用規(guī)則即可。
概要設(shè)計的內(nèi)容
1. 系統(tǒng)概述
(1)說明本系統(tǒng)“是什么”,(2)描述本系統(tǒng)的主要功能。
2. 設(shè)計約束
(1)需求約束。體系結(jié)構(gòu)設(shè)計人員從需求文檔(如《用戶需求說明書》和《軟件需求規(guī)格說明書》)中提取需求約束,例如:本系統(tǒng)應當遵循的標準或規(guī)范,軟件、硬件環(huán)境(包括運行環(huán)境和開發(fā)環(huán)境)的約束,接口/協(xié)議的約束,用戶界面的約束,軟件質(zhì)量的約束,如正確性、健壯性、可靠性、效率(性能)、易用性、清晰性、安全性、可擴展性、兼容性、可移植性等等。
(2)隱含約束。有一些假設(shè)或依賴并沒有在需求文檔中明確指出,但可能會對系統(tǒng)設(shè)計產(chǎn)生影響,設(shè)計人員應當盡可能地在此處說明。例如對用戶教育程度、計算機技能的一些假設(shè)或依賴,對支撐本系統(tǒng)的軟件硬件的假設(shè)或依賴等。
3. 設(shè)計策略
體系結(jié)構(gòu)設(shè)計人員根據(jù)產(chǎn)品的需求與發(fā)展戰(zhàn)略,確定設(shè)計策略(Design Strategy)。例如:擴展策略。說明為了方便本系統(tǒng)在將來擴展功能,現(xiàn)在有什么措施。復用策略。說明本系統(tǒng)在當前以及將來的復用策略。折衷策略。說明當兩個目標難以同時優(yōu)化時如何折衷,例如“時-空”效率折衷,復雜性與實用性折衷。
4. 系統(tǒng)總體結(jié)構(gòu)
(1)將系統(tǒng)分解為若干子系統(tǒng),繪制物理圖和邏輯圖,說明各子系統(tǒng)的主要功能。
(2)說明“如何”以及“為什么”(how and why)如此分解系統(tǒng)。
(3)說明各子系統(tǒng)如何協(xié)調(diào)工作,從而實現(xiàn)原系統(tǒng)的功能。接口設(shè)計:說明外部用戶、軟、硬件接口;內(nèi)部模塊間接口。
5. 子系統(tǒng)的結(jié)構(gòu)與功能
(1)將子系統(tǒng)分解為模塊(Module),繪制邏輯圖(如果物理圖和邏輯圖不一樣的話,應當繪制物理圖),說明各模塊的主要功能。
(2)說明“如何”以及“為什么”(how and why)如此分解子系統(tǒng)N。
(3)說明各模塊如何協(xié)調(diào)工作,從而實現(xiàn)子系統(tǒng)的功能。每個模塊“做什么”、簡要說明“怎么做”(輸入、輸出、處理邏輯、與其它模塊的接口,與其它系統(tǒng)或硬件的接口),處在什么邏輯位置、物理位置;
6. 開發(fā)環(huán)境的配置
說明本系統(tǒng)應當在什么樣的環(huán)境下開發(fā),有什么強制要求和建議?
計算機硬件,軟件,網(wǎng)絡(luò)通信,
7. 運行環(huán)境的配置
說明本系統(tǒng)應當在什么樣的環(huán)境下運行,有什么強制要求和建議?
8. 測試環(huán)境的配置
說明本系統(tǒng)應當在什么樣的環(huán)境下測試,有什么強制要求和建議?
(1)一般地,單元測試、集成測試環(huán)境與開發(fā)環(huán)境相同。
(2)一般地,系統(tǒng)測試、驗收測試環(huán)境與運行環(huán)境相同或相似(更加嚴格)。
概要設(shè)計的輸出
編碼規(guī)范:信息形式、接口規(guī)約、命名規(guī)則;
物理模型:組件圖、配置圖;
不同角度的架構(gòu)視圖:用例視圖、邏輯視圖、進程視圖、部署視圖、實施視圖、數(shù)據(jù)視圖(可選);
系統(tǒng)總體布局:哪些部分組成、各部分在物理上、邏輯上的相互關(guān)系;
兩個不可忽視的輸出:
與需求功能的關(guān)系:對于需求中的每一個功能,用哪一層、哪個模塊、哪個類、哪個對象來實現(xiàn)(一對多關(guān)系);反過來,應當說明將要創(chuàng)建的系統(tǒng)每一層、每個模塊、每個對象、每一個類“做什么”,他們是為了幫助實現(xiàn)哪些功能(一對多關(guān)系)。(需求的顆粒度在一開始往往是比較粗的,因此根據(jù)功能點對于整體項目規(guī)模的估計或得到項目WBS其誤差范圍也是比較大的。更為重要的原因是,需求往往不是編碼工作分解的準確依據(jù),因為一個需求的功能點可能對應多個代碼模塊,而多個需求的功能點也可能只對應一個或少數(shù)代碼模塊,同時還有軟件復用等因素要考慮,因此只有在概要設(shè)計完成以后才能準確地得到詳細設(shè)計或編碼階段的二次WBS,并估計較為準確的整體項目規(guī)模。)
邏輯與物理位置:每個對象在邏輯上分別落在哪一層、哪個模塊、哪個類;在物理上每個模塊、每個對象、每一個類放在哪個應用服務器或客戶端的哪個目錄、哪個文件(庫),或者是建立在數(shù)據(jù)庫管理系統(tǒng)中的什么東東(過程、函數(shù)、視圖、觸發(fā)器等等)。
數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫設(shè)計的內(nèi)容
數(shù)據(jù)庫環(huán)境說明
(1)說明所采用的數(shù)據(jù)庫系統(tǒng),設(shè)計工具,編程工具等
(2)詳細配置
數(shù)據(jù)庫的命名規(guī)則
(1)完整并且清楚的說明本數(shù)據(jù)庫的命名規(guī)則。
(2)如果本數(shù)據(jù)庫的命名規(guī)則與機構(gòu)的標準不完全一致的話,請作出解釋。
邏輯設(shè)計
數(shù)據(jù)庫設(shè)計人員根據(jù)需求文檔,創(chuàng)建與數(shù)據(jù)庫相關(guān)的那部分實體關(guān)系圖(ERD)。如果采用面向?qū)ο蠓椒ǎ∣OAD),這里實體相當于類(class)。
物理設(shè)計
(1)主要是設(shè)計表結(jié)構(gòu)。一般地,實體對應于表,實體的屬性對應于表的列,實體之間的關(guān)系成為表的約束。邏輯設(shè)計中的實體大部分可以轉(zhuǎn)換成物理設(shè)計中的表,但是它們并不一定是一一對應的。
(2)對表結(jié)構(gòu)進行規(guī)范化處理(第三范式)。
)表匯總
列出表名,功能說明。
每個表的列名,數(shù)據(jù)類型(精度范圍),空/非空,約束條件,補充說明
安全性設(shè)計
提高軟件系統(tǒng)的安全性應當從“管理”和“設(shè)計”兩方面著手。這里僅考慮數(shù)據(jù)庫的安全性設(shè)計。
防止用戶直接操作數(shù)據(jù)庫的方法
用戶只能用賬號登陸到應用軟件,通過應用軟件訪問數(shù)據(jù)庫,而沒有其它途徑操作數(shù)據(jù)庫。
用戶賬號密碼的加密方法
對用戶賬號的密碼進行加密處理,確保在任何地方都不會出現(xiàn)密碼的明文。
角色與權(quán)限
確定每個角色對數(shù)據(jù)庫表的操作權(quán)限,如創(chuàng)建、檢索、更新、刪除等。每個角色擁有剛好能夠完成任務的權(quán)限,不多也不少。在應用時再為用戶分配角色,則每個用戶的權(quán)限等于他所具有的所有角色的權(quán)限。
包括: 角色,可以訪問的表與列,操作權(quán)限
優(yōu)化
分析并優(yōu)化數(shù)據(jù)庫的“時-空”效率,盡可能地“提高處理速度”并且“降低數(shù)據(jù)占用空間”。
包括:優(yōu)先級,優(yōu)化對象(目標),措施
(1)分析“時-空”效率的瓶頸,找出優(yōu)化對象(目標),并確定優(yōu)先級。
(2)當優(yōu)化對象(目標)之間存在對抗時,給出折衷方案。
(3)給出優(yōu)化的具體措施,例如優(yōu)化數(shù)據(jù)庫環(huán)境參數(shù),對表格進行反規(guī)范化處理等。
數(shù)據(jù)庫管理與維護說明
在設(shè)計數(shù)據(jù)庫的時候,及時給出管理與維護本數(shù)據(jù)庫的方法,有助于將來撰寫出正確完備的用戶手冊。
用戶界面設(shè)計
用戶界面設(shè)計的內(nèi)容
1. 應當遵循的界面設(shè)計規(guī)范
結(jié)合用戶需求和機構(gòu)的《軟件用戶界面設(shè)計指南》,闡述本軟件用戶界面設(shè)計應當遵循的規(guī)范(原則、建議等)。
界面的關(guān)系圖和工作流程圖
(1)給所有界面視圖分配唯一的標識符。
(2)繪制各個界面之間的關(guān)系圖和工作流程圖。
主界面
(1)繪制主界面的視圖;
(2)說明主界面中所有對象的功能和操作方式;
子界面
(1)繪制子界面的視圖;
(2)說明子界面中所有對象的功能和操作方式;
美學設(shè)計
(1)闡述界面的布局及理由
(2)闡述界面的色彩及理由
界面資源設(shè)計
(1) 圖標資源
(2) 圖像資源
(3) 界面組件
設(shè)計過程
以架構(gòu)為中心的過程
軟件系統(tǒng)的架構(gòu)是指系統(tǒng)重要組件的組織或結(jié)構(gòu),這些重要組件通過接口與那些由不斷減小的組件與接口所構(gòu)成的組件進行交互。架構(gòu)具有以下作用:
1)理解系統(tǒng)使用UML可視化建模系統(tǒng)的架構(gòu),并以架構(gòu)為中心進行開發(fā),這使得開發(fā)人員、管理人員及其他相關(guān)人員能夠詳細理解所需要做的工作,以利于他們參與系統(tǒng)的開發(fā)。
2)組織開發(fā)  架構(gòu)設(shè)計師通過將系統(tǒng)劃分為帶有明確定義接口的子系統(tǒng),并讓開發(fā)小組負責每個子系統(tǒng),可以顯著減少開發(fā)組之間交流的工作量,而且接口雙方的軟件可獨立地進化。
3)鼓勵重用  好的架構(gòu)為開發(fā)人員提供了可以在其上開展工作的穩(wěn)定的骨架,它有助于開發(fā)人員知道在哪里能有效地找到可重用的元素以及發(fā)現(xiàn)合適的可重用的組件。
4)進化系統(tǒng)  一個具有穩(wěn)定的架構(gòu)的系統(tǒng)在分析和設(shè)計時就考慮到系統(tǒng)進化的需求,從而具有一定的容變能力,系統(tǒng)可以適度地進化。
迭代和增量開發(fā)
迭代(Iteration)是指帶有已建立基準(Base Line)的計劃和評估準則的獨特活動序列,迭代生成系統(tǒng)的內(nèi)部或外部發(fā)布版(Release)。
增量(Increment)是指在后續(xù)迭代結(jié)束后,兩個發(fā)布版本之間存在的差異(差值)。一般軟件的生命周期是由一系列迭代組成的,這些迭代都是由軟件項目分解成的許多袖珍項目(mini-project)。每個迭代都產(chǎn)生以內(nèi)部版本形式交付的實際結(jié)果,其中每個內(nèi)部版本會增加一個增量并表明所關(guān)注的風險得以降低。這些版本可以展示給客戶,從而獲得有價值的反饋以確認工作成果。早期階段的迭代主要是關(guān)注確定項目的范圍,消除關(guān)鍵風險和建立系統(tǒng)架構(gòu)基準。后期迭代則不斷增加增量結(jié)果,直至得到一個可對外發(fā)布的產(chǎn)品。迭代有助于管理層規(guī)劃、組織、監(jiān)控和控制項目。
迭代和增量開發(fā)具有以下的一些優(yōu)點:(1)允許變更需求;(2)允許持續(xù)的集成;(3)及早降低風險;(4)有助于組織學習和提高;(5)提高復用性;(6)生成性能更強壯的產(chǎn)品。
開發(fā)規(guī)范概述
應用項目開發(fā)過程簡述
每個項目要根據(jù)具體情況拆分成工作階段,即里程碑,以便對項目進度的有效控制與度量。以項目立項為開始標志。以項目結(jié)項為結(jié)束標志。
(參考表示)
階段
項目計劃
需求分析
系統(tǒng)分析&設(shè)計
編碼實現(xiàn)
測試/文檔編制
驗收/發(fā)布
項目總結(jié)
1
項目立項
資料收集
確定問題域
編碼規(guī)范
單元測試
項目版本化
項目總結(jié)
2
立項申請
需求分析
需求建模
單元編碼
集成測試
版本發(fā)布
任務數(shù)度量
3
提交可行性研究報告或系統(tǒng)建設(shè)方案
需求分析討論
建立分析對象模型
編碼調(diào)試
系統(tǒng)測試
項目組驗收
維護計劃
4
風險評估
需求分析測試/修改
系統(tǒng)分析測試/測試后修改
單元測試/修改
文檔編制
客戶驗收
輸出成果
5
進度計劃
需求分析評審
系統(tǒng)分析評審
編碼聯(lián)調(diào)
開發(fā)文檔整理
項目結(jié)項
6
提交項目總體計劃
界面設(shè)計
集成測試/修改
用戶文檔編制
7
建立設(shè)計模型/設(shè)計合并
系統(tǒng)測試/修改
宣傳資料編寫
8
對象持久化設(shè)計
編碼評審
9
詳細設(shè)計
10
系統(tǒng)設(shè)計測試/修改
11
系統(tǒng)設(shè)計評審
設(shè)計階段的活動
序號
活動名稱
角色
活動描述
備注
1
系統(tǒng)分析
架構(gòu)設(shè)計師
劃分需求的問題域,對每一個問題域進行分析和抽象,定義類和對象的屬性與服務,以及結(jié)構(gòu)、靜態(tài)聯(lián)系和動態(tài)聯(lián)系。
最終產(chǎn)生面向?qū)ο蟮姆治瞿P汀?div style="height:15px;">
2
架構(gòu)設(shè)計
架構(gòu)設(shè)計師
建立軟件系統(tǒng)的架構(gòu),將系統(tǒng)的軟件需求分配給軟件結(jié)構(gòu)。
架構(gòu)設(shè)計—根據(jù)需求,進行分析、設(shè)計系統(tǒng)架構(gòu),產(chǎn)生架構(gòu)設(shè)計工件。
3
架構(gòu)設(shè)計評審
架構(gòu)評審人員
檢查軟件系統(tǒng)架構(gòu)設(shè)計是否合理。
發(fā)現(xiàn)和修復缺陷—根據(jù)同行評審規(guī)范,評審架構(gòu)設(shè)計工件。一致性確認—對架構(gòu)設(shè)計達成一致。
4
基線化架構(gòu)設(shè)計
配置經(jīng)理
將評審通過的軟件架構(gòu)設(shè)計工件置于配置管理。基線化架構(gòu)一基線化架構(gòu)設(shè)計,作為詳細設(shè)計的基礎(chǔ)。
5
軟件詳細設(shè)計
設(shè)計員
根據(jù)需求工件架構(gòu)設(shè)計工件,進一步精確描述軟件系統(tǒng),并使之適于具體的實施環(huán)境。
詳細設(shè)計一根據(jù)基線化的架構(gòu)、需求工件,進行詳細設(shè)計。
6
詳細設(shè)計評審
詳細設(shè)計評審人員
檢查軟件系統(tǒng)詳細設(shè)計是否合理。
發(fā)現(xiàn)和修復缺陷—根據(jù)《同行評審規(guī)范》,評審詳細設(shè)計工件。一致性確認—對詳細設(shè)計達成一致
7
基線化詳細設(shè)計
配置管理員
將評審通過的軟件詳細設(shè)計工件置于配置管理。
基線化詳細設(shè)計一對詳細設(shè)計進行基線化,作為實施活動的基礎(chǔ)。
數(shù)據(jù)模型設(shè)計示例
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【信管1.9】軟件工程(三)軟件設(shè)計與過程管理
《軟件工程》選擇題
軟件工程復習題及答案
軟件工程學位論文寫作模板與心得
如何架構(gòu)一個BI系統(tǒng)
系統(tǒng)設(shè)計說明書(架構(gòu)、概要、詳細)目錄結(jié)構(gòu)
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服