基本原理七條用分階段的生命週期計畫,嚴格管理軟體開發。堅持進行階段評審。實行嚴格的產品版本控制。
採用現代程式設計技術。結果應能清楚地審查。文件要有嚴格要求。
開發小組的成員要少而精。要不斷地改進軟體工程實踐的經驗和技術。增補一條」二八定律」
軟體工程是研究軟體開發和軟體管理的一門工程學科
cmm能力成熟度模型:評估軟體能力與成熟度等級的一套標準是軟體生產過程改善的標準和軟體企業成熟度等級評估的標準
case——計算機輔助軟體工程幫助進行應用程式開發的軟體,包括分析、設計和**生成。case工具為設計和檔案編制傳統結構程式設計技術,提供了自動的方法。
軟體工程的五個面向理論:面向流程分析;面向資料設計;物件導向實現;面向功能測試;面向過程管理。
軟體生存週期:生存週期與軟體開發模型相關,不同的生存週期對應不同的開發模型.生存週期:立項-需求分析-概要設計-詳細設計-編碼實現-軟體測試-軟體發布與實施-軟體維護-版本更新或退役
原型模型如同機械工程師接到設計任務,先根據要求和自己的理解在較短時間內按照一定比例設計樣機.原型模型快速給使用者乙個模型,讓使用者看未來軟體的概貌,提出修改意見。
原型法突出快字,瀑布法軟體的需求在使用者和系統分析員間反覆討論,終究是紙上談兵.在實際中,使用者往往又提不出什麼具體的需求,用原型法很快就讓使用者看到成品.原型法有一定限制,一般來說開發者必須先有乙個原型.
在實際中可能是公司先前的成果或產品
適用條件:已有產品或產品原型,只需客戶化(門戶**);簡單而熟悉的行業或領域(進銷存);快速開發工具(c#)
缺點:不利於開發人員創新。
增量模型是瀑布模型和原型模型的結合。先開發核心模組,然後再開發其他模組,想搭積木一樣直到整個系統開發完畢。
特點:可分階段提交產品;多個任務單。
適用條件:客戶分接受階段交付;分析設計人員對設計領域不熟悉;中高等風險專案;使用者可參與到整個軟體開發過程中;使用四代語言;有自己的類庫構件庫。
缺點:組組裝拆卸性不強;分階段提交。
高內聚:內聚是乙個模組內部各部分之間關聯程度的度量。如果乙個軟體的乙個模組只實現乙個功能,那麼該模組具有高內聚,高內聚的軟體更容易維護和改進;
低耦合:耦合是模組之間依賴程度的度量。高耦合度的系統是很難維護的,一處的修改引起另一處甚至更多處的變動,低耦合的軟體更容易維護和改進
瀑布模型:軟體生存週期是由立項,需求分析,策劃,概要設計,詳細設計,變成,測試,發布,維護等階段所組成的, 把每乙個階段當作瀑布中的乙個台階,把軟體生存過程比作瀑布中的流水,軟體生存過程在這些台階中由上向下的奔流。
瀑布模型適合於結構方法。
適用條件:開發中需求沒有活活很少變化;應用領域很熟悉;低風險專案;使用環境穩定;使用者很少參與開發工作。
缺點:不能逆流,必須採取嚴格的里程碑式管理制度。
非訂單軟體:渠道是通過市場調研之後,認為某產品將會有巨大的市場空間,而軟體公司在人力資源,裝置資源抵抗風險,資金和時間上都有開發該產品的能力,於是決定理想這類軟體產品被稱為「非訂單軟體」。
訂單軟體:與固定的軟體使用者簽訂開發合同,由軟體公司啟動該項目的開發,這類軟體被稱為「訂單軟體」。
可行性分析的幾個方面:經濟可行性分析;術可行性分析;社會風險可行性分析。
需求分析的任務:需求分析是為了達到需求分析目的而做的工作,需求分析目的是「使開發者和客戶達成完全一致的需求」。即:需求獲取,需求提煉,需求描述。
元資料:組織資料的資料,描述資料的資料,管局資料的資料。就是資訊系統中實體名及其屬姓名的集合。
中間資料:蘊藏在資訊系統的輸出報表中,報表名稱及其內部的資料項名稱就是中間資料。
基礎資料:元資料將原始單據中錄入的資料組織起來編成基表中的記錄,這些記錄稱為基礎資料。
統計資料:中間資料將統計報表中輸出的資料組織起來變成中間表的記錄,這些記錄稱為統計資料。
使用者需求報告和需求規格說明書的聯絡和區別:1.使用者需求報告是對外的,需求規格說明書對內。
2.使用者需求報告是合同的產物,需求規格說明書是立項建議書的產物。3.
使用者需求報告可產生需求規格說明書。
需求獲取為什麼難:1.使用者需求具有動態性軟體生存週期內,軟體需求會隨著時間的進展變化。
2.使用者需求有模糊性,即不確定性。3.
開發者和使用者要對需求達到完全一致的認識,使用者要在需求報告上簽字,要承擔責任。
基本表:存放原始資料的表。
**表:存放資訊**資料代表。
中間表:存放統計資料的表。
臨時表:存放臨時資料的表。
三層結構設計:一層結構是一級處理,所有的處理都集中在主機上完成。二層結構是二級處理,處理工作由客戶機和伺服器共同分擔。
三層結構是**處理,處理工作由表示層應用邏輯層和資料層分布式分擔。
資料層設計:資料庫伺服器上的設計是資訊系統的設計核心,其設計方法必須採用面向資料的方法。
應用邏輯層的設計:應用伺服器上的設計可以採用面向資料面向功能,物件導向中的任何一種方法,或者採用三種開發方法相結合的綜合方法。
表示層的設計:瀏覽器上的設計是物件導向的,因為使用者在瀏覽器上是面向可視物件操作。
使用者介面設計原則:1.使用者介面適合軟體的功能。
2.容易理解。3.
風格一致。4.及時反饋資訊。
5.出錯處理。6.
適應各種使用者。7.國際化。
8.個性化。9.
和諧的色彩搭配。
軟體實現有哪些提示資訊:1.引導性提示資訊。2.錯誤性提示資訊。3.狀態性提示資訊。4.位置性提示資訊。
靜態測試:測試人員用眼睛看文件或者源程式,用頭腦分析文件或源程式,用筆或電子編輯工具批註所發現的問題。
動態測試:在計算機或網路上執行被測試的系統,按照事先規定的測試計畫,執行事先準備的測試用例,取得執行的資料,再將此資料與測試計畫中的計畫資料相比較,若兩者一致,測試通過。
alpha測試:整個大系統在軟體組織內部驗收前,有測試部門對他進行的整合測試。
beta測試:將軟體的beta版本交給大量典型使用者,由他們從使用者的角度出發,按照使用者需求的功能,效能,介面等方面來測試軟體的beta版本。
白盒子測試:程式執行路徑測試。
黑盒子測試:程式功能測試。
黑盒子測試和白盒子測試的特點以及適用範圍
黑盒子測試:面向需求分析中的功能,效能,介面列表,設計測試用例,搭建測試環境,輸入測試用例,執行被測試的系統,獲得測試資料,將測試資料與計畫資料相比較,取得測試結果,根據測試結果形成測試報告。該方法適合測試部門的測試人員或使用者,對系統進行整合測試,alpha測試,beta測試或對元件和中介軟體進行介面與功能測試,也適合軟體測評組織的確認測試,驗收測試,堅定測試和登記測試。
白盒子測試:對程式的執行路徑,搭建測試環境,設計列舉用例,進行列舉測試,取得測試資料,形成測試報告。該方法不適合於大單元,大系統的測試,也不適合於測評中心測試部門的測試。
它只適合於很小的單元測試,以及從事軟體底層工作生產構件的測試人員進行測試。
巨集觀上用黑盒子測試,微觀上用白盒子測試,系統集**員用黑盒子測試方法對系統進行測試,構建開發人員用白盒子測試方法對構建進行測試。
等價分類法,邊界分類法:
結構化維護:軟體產品或軟體專案必須有完善的文件,並且文件與程式**互相匹配,兩者完全一致維護文件只要在原來文件適當修改即可。這樣的維護就是結構化維護。
非結構化維護:軟體產品或軟體專案只有程式而沒有文件,或文件很不規範,很不齊全,對這樣的軟體進行維護,就不能叫結構化威化,只能叫做非結構化維護。
傳統的軟體維護分類:糾錯性維護,適應性維護,完善性維護,預防性維護。
軟體維護過程:維護的需求分析,維護的設計,修改程式**,維護後的測試,維護後的試執行,維護後的正式執行,對維護過程的評審和審計。
軟體配置管理:在開發過程中,將軟體的文件,程式,資料進行分割和組合,以利於軟體的定義,標識,跟蹤,管理,使其最終形成受控的軟體產品,這一管理過程成為軟體配置管理。
基線和里程碑:里程碑只是乙個階段標記,基線是乙個階段軟體工作產品,基線與里程碑一般表現為一對一的關係。
配置管理的三個庫的名稱及其作用
1.軟體產品開發庫dl:專案組成員上機的有關步驟及全部軟體資訊存放於軟體開發庫。作用是為了在開發過程中防止軟體人員丟失,覆蓋,遺忘自己的工作成果。
2.軟體基線庫bl:存放專案組公用的軟體工作產品。是軟體專案組的乙個軟體階段成果(配置項)的動態管理跟蹤庫。
3.軟體產品庫pl:存放公司的最終軟體產品版本。是軟體組織的軟體版本產品管理庫。
檢入檢出操作(獲取——編輯修改——提交)「check out-edit-check in」
對於每乙個庫中的內容進行操作(比如增刪改),要先將操作內容從庫中取出,存放入記憶體緩衝區中,這一動作叫做「check out」。當操作(edit)完成後,又要將本次操作的內容存入相應的庫中,這一動作叫做「check in」。
軟體的健壯性:在意外環境或錯誤操作下,系統做出適當相應的程度。
改善軟體質量的四個方面:(1)從程式語言上實現突破(2)從case工具上實現突破(3)從軟體過程管理上實現突破(4)從測試與糾錯上實現突破。
pmp:美國專案管理學會推行的一種認證體系。
ipmp:國際專案管理專業資質認證,是國際專案管理協會ipma在全球推行的4級專案管理專業資質認證體系的總稱。ipmp是一種對專案管理人員的知識經驗能力和水平的綜合評估證明。
ipma:國際專案管理協會,專門在全球進行專案管理專業資質認證。
專案經理抓好專案的7條經驗:1.抓需求獲取與確認2.
抓計畫制定與執行3.抓團隊分工與協作4.抓後勤**與保障5.
產品測試與交付6.抓開發標準與規範7.抓員工考核與獎勵
網路與internet
一資料術語
1.802.2 定義及中包括乙太網在內的區域網型別的共同特性的ieee標準。又叫做邏輯鏈路控制。
2.802.3 定義了一乙太網具體細節的ieee標準。又叫做**訪問控制。
驗證授權與統計驗證(authentication)授權(authorization)統計(accounting)的過程,讀作「triple a」。
位址解析協議) 任何ip主機都能夠使用的協議。給定同乙個lan子網中的乙個ip位址,該協議能夠找到使用ip位址的ip主機的lan位址。
軟體工程複習
一 考試複習範圍 1 軟體工程基本概念 基本原理 2 需求分析,結構化分析 物件導向分析,結構化分析建模 物件導向分析建模 3 軟體設計,結構化程式設計,概要設計 詳細設計 4 軟體測試 二 考試題型 單項選擇題 簡答題 綜合應用題 要求會畫 資料流圖 軟體結構圖 用例圖 類圖 n s盒圖 pad圖...
軟體工程複習
第1章軟體工程概述 1 軟體危機的典型表現 軟體危機是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題。概括地說,軟體危機包含下述兩方面的問題 如何開發軟體,以滿足對軟體日益增長的需求 如何維護數量不斷膨脹的已有軟體。軟體危機典型表現 對軟體開發成本和進度的估計常常很不準確。使用者對 已完成的...
軟體工程複習
24.為了進一步改善軟體系統的可維護性和可靠性,並為以後的改進奠定基礎的軟體維護稱為 預防性維護 25.按軟體的功能進行劃分,軟體分為 系統軟體 支撐軟體和應用軟體。26.軟體定義的基本任務是確定軟體系統的工程 需求 也就是要搞清 做什麼 27.資料流圖 dfd 是一種圖形化技術,描繪資訊和資料從輸...