問(wèn)答系統是怎樣設計的
問(wèn)比爾蓋茨
軟件系統的開(kāi)發(fā)是按階段進(jìn)行的,一般劃分為以下階段:可行性討論;需求分析;系統設計(概要設計、詳細設計);程序開(kāi)發(fā);編碼,單元測試;系統測試;系統維護。 軟件開(kāi)發(fā)過(guò)程中要明確各階段的工作目標、實(shí)現該目標所必需的工作內容以及達到的標準。只有在上一個(gè)階段的工作完成后,才能開(kāi)始下一階段的工作。 1.可行性討論 明確系統的目的、功能和要求,了解目前所具備的開(kāi)發(fā)環(huán)境和條件,論證的內容有:① 在技術(shù)能力上是否可以支持;② 在經(jīng)濟上效益如何;③ 在法律上是否符合要求;④ 與部門(mén)、企業(yè)的經(jīng)營(yíng)和發(fā)展是否吻合;⑤ 系統投入運行后的維護有無(wú)保障。 可行性討論的目的是判定軟件系統的開(kāi)發(fā)有無(wú)價(jià)值。分析和討論的內容形成“系統開(kāi)發(fā)計劃書(shū)”,主要內容有: (1) 開(kāi)發(fā)的目的及所期待的效果; (2) 系統的基本設想,涉及的業(yè)務(wù)對象和范圍; (3) 開(kāi)發(fā)進(jìn)度表,開(kāi)發(fā)組織結構; (4) 開(kāi)發(fā)、運行的費用; (5) 預期的系統效益; (6) 開(kāi)發(fā)過(guò)程中可能遇到的問(wèn)題及注意事項。 2、系統需求分析 系統需求分析是軟件系統開(kāi)發(fā)中最重要的一個(gè)階段,直接決定著(zhù)系統的開(kāi)發(fā)質(zhì)量和成敗,必須明確用戶(hù)的要求和應用現場(chǎng)環(huán)境的特點(diǎn),了解系統應具有哪些功能、數據的流程和數據之間的聯(lián)系。需求分析應有用戶(hù)參加,到使用現場(chǎng)進(jìn)行調研學(xué)習,軟件設計人員應虛心向技術(shù)人員和使用人員請教,共同討論解決需求問(wèn)題的方法,對調查結果進(jìn)行分析,明確問(wèn)題的所在。需求分析的內容編寫(xiě)成“系統需求分析報告”。 3.系統設計 可根據系統的規模分成概要設計和詳細設計兩個(gè)階段。 概要設計包括:① 劃分系統模塊;② 每個(gè)模塊的功能確定;③ 用戶(hù)使用界面概要設計;④ 輸入輸出數據的概要設計;⑤ 報表概要設計;⑥ 數據之間的聯(lián)系、流程分析;⑦ 文件和數據庫表的邏輯設計;⑧ 硬件、軟件開(kāi)發(fā)平臺的確定;⑨ 有規律數據的規范化及數據惟一性要求。 系統的詳細設計是對系統的概要設計進(jìn)一步具體化,其主要工作有:① 文件和數據庫的物理設計;② 輸入輸出記錄的方案設計;③ 對各子系統的處理方式和處理內容進(jìn)行細化設計;④ 編制程序設計任務(wù)書(shū)。程序說(shuō)明書(shū)通常包括程序規范、功能說(shuō)明、程序結構圖,通常用HPIPO(Hierarchy Plus Input Process Output)圖描述。 4、程序開(kāi)發(fā) 根據程序設計任務(wù)書(shū)的要求,用計算機算法語(yǔ)言實(shí)現解題的步驟,主要工作包括:① 模塊的理解和進(jìn)一步劃分;② 以模塊為單位的邏輯設計,也就是模塊內的流程圖的編制;③ 編寫(xiě)代碼,用程序設計語(yǔ)言編制程序;④ 進(jìn)行模塊內功能的測試、單元測試。 程序質(zhì)量的要求包括:① 滿(mǎn)足要求的確切功能;② 處理效率高;③ 操作方便,用戶(hù)界面友好;④ 程序代碼的可讀性好,函數、變量標識符合規范;⑤ 擴充性、維護性好。 降低程序的復雜性也是十分重要的。系統的復雜性由模塊間的接口數來(lái)衡量,一般地講,n個(gè)模塊的接口數的最大值為n(n-1)/2;若是層次結構,n個(gè)模塊的接口數的最小值為n-1。為使復雜性最小,對模塊的劃分設計常常采用層次結構。要注意編制的程序或模塊應容易理解、容易修改,模塊應相互獨立,對某一模塊的修改應對其他模塊的功能不產(chǎn)生影響,模塊間的聯(lián)系盡可能少。 5.系統測試 測試是為了發(fā)現程序中的錯誤,對于設計的軟件,出現錯誤是難免的。系統測試通常由經(jīng)驗豐富的設計人員設計測試方案和測試樣品,并寫(xiě)出測試過(guò)程的詳細報告。系統測試是在單元測試的基礎上進(jìn)行的,包括:① 測試方案的設計;② ? ?行測試;③ 寫(xiě)出測試報告;④ 用戶(hù)對測試結果進(jìn)行評價(jià)。 6、文檔資料 文檔包括開(kāi)發(fā)過(guò)程中的所有技術(shù)資料以及用戶(hù)所需的文檔,軟件系統的文檔一般可分為系統文檔和用戶(hù)文檔兩類(lèi)。用戶(hù)文檔主要描述系統功能和使用方法,并不考慮這些功能是怎樣實(shí)現的;系統文檔描述系統設計、實(shí)現和測試等方面的內容。文檔是影響軟件可維護性、可用性的決定因素,有句話(huà)講,系統編程人員的每一張紙片都要保留,所以文檔的編制是軟件開(kāi)發(fā)過(guò)程中的一項重要工作。 系統文檔包括:開(kāi)發(fā)軟件系統在計劃、需求分析、設計、編制、調試、運行等階段的有關(guān)文檔。在對軟件系統進(jìn)行修改時(shí),系統文檔應同步更新,并注明修改者和修改日期,如有必要應注明修改原因,應切記過(guò)時(shí)的文檔是無(wú)用的文檔。 用戶(hù)文檔包括:① 系統功能描述;② 安裝文檔,說(shuō)明系統安裝步驟以及系統的硬件配置方法;③ 用戶(hù)使用手冊,說(shuō)明使用軟件系統方法和要求,疑難問(wèn)題解答;④ 參考手冊,描述可以使用的所有系統設施,解釋系統出錯信息的含義及解決途徑。 7、系統的運行與維護 系統只有投入運行后,才能進(jìn)一步對系統檢驗,發(fā)現潛在的問(wèn)題,為了適應環(huán)境的變化和用戶(hù)要求的改變,可能會(huì )對系統的功能、使用界面進(jìn)行修改。要對每次發(fā)現的問(wèn)題和修改內容建立系統維護文檔,并使系統文檔資料同步更新。
Hash:780b763ec8f68eb1d64d0777dc7f0fa27c58ed58
聲明:此文由 maylee 分享發(fā)布,并不意味本站贊同其觀(guān)點(diǎn),文章內容僅供參考。此文如侵犯到您的合法權益,請聯(lián)系我們 kefu@qqx.com