JAVA與UML(1)
JAVA與UML1. UML和 軟件工程
1> 增量和迭代(iterative and increamental)
增量 數量,大小或者范圍的增加;添加或獲得某些東西;一系列有規則的增加或進步.
迭代 用來產生所需結果的過程,通過重復一系列的操作,逐漸逼近所需結果.
2> 統一過程
3> 協同過程
4> CMM
CMM即Capability Maturity Model for Software,意為“軟件能力成熟度模型”。分為質量等級(CMM1~CMM5),分別為:初始級、可重復級、已定義級、已管理級和優化級.
圖1.0
1.4.1 初始級
初始級的軟件機構缺乏對軟件過程的有效管理,其軟件項目的成功來源于個人英雄主義而非機構行為,因此它不是可重復的。
1.4.2 可重復級
項目計劃和跟蹤的穩定性,項目過程的可控性和以往成功的可重復性.
本級的關鍵過程領域(KPA)包括:
1.需求管理(Requirements Management)
客戶的需求是軟件項目的基礎。軟件需求管理的目的是在客戶和軟件項目之間達成對客戶需求的一致理解。
2.軟件項目計劃(Software Project Planning)
為軟件工程和項目管理建立一個合理的計劃。
3.軟件項目的跟蹤和監督(Software Project Tacking and Oversight)
使管理者對實際的軟件項目進展過程有足夠的了解,以在項目效能偏離計劃太多是采取有效措施。
4.軟件子合同管理(Software Subcontract Management)
選擇合格的分包商,并有效管理之。
5.軟件質量保證(Software Quality Assurance)
對軟件項目過程及其間生產的各個產品進行監管以保證最終軟件質量。
6.軟件配置管理(Software Configuration Management)
在整個軟件生命周期里建立并維護軟件項目的工作產品的完整性。
1.4.3 已定義級
軟件過程已被提升成標準化過程,從而更加具有穩定性、可重復性和可控性.
1. 機構過程關注(Organization Process Focus)
確立機構對于改進機構的軟件過程能力的軟件過程活動的責任。
2. 機構過程定義(Organization Process Definition)
開發和維護一組有用的軟件過程assets和提供一個用于定義定量過程管理的有意義的數據的基礎
3. 培訓計劃(Training Program)
開發個體的技能和知識以使他們能夠更加有效的完成他們的角色
4. 集成軟件管理(Integrated Software Management)
基于業務環境和項目的技術需要,從機構的標準軟件過程和相關的過程assets經過剪裁,將軟件工程和管 理 活動集成為一個有機的定義的軟件過程。
5. 軟件產品工程(Software Product Engineering)
一致地完成定義良好的工程過程。它描述了項目的技術活動,如需求分析,設計,編碼和測試。
6. 組間協調(Intergroup Coordination)
確立軟件工程組主動介入其它工程組以便項目能更好滿足客戶要求的手段
7. 同行評審(Peer Reviews)
早而且有效的排除軟件工作產品中的缺陷。它可通過inspection,structured walkthrough等手段進行。
1.4.4 已管理級
軟件過程和軟件產品都有定量的目標,并被定量地管理,因而其軟件過程能力是可預測的,其生產的軟件產品是高質量的.
1.定量過程管理(Quantitative Process Management)
定量地控制軟件項目的過程效能。
2.軟件質量管理(Software Quality Management)
定量了解項目軟件產品的質量,并達到既定的質量目標。
1.4.5 優化級
技術和過程改進被作為常規的業務活動加以計劃和管理.
1. 缺陷預防(Defect Prevention)
識別出錯原因,防止錯誤再現(通過改變定義的軟件過程)
2. 技術變更管理(Technology Change Management)
識別有益的新技術(工具、方法和過程),并按有序的方式將其轉移至機構之中。其重點在于在變化的世界中有效的完成革新。
3. 過程變更管理(Process Change Management)
連續改進機構所采用的軟件過程,以改進軟件質量,提高生產率和減少產品開發時間
5> ISO9000和CMM比較
ISO9000標準 |
要點 |
過程文件 |
記錄或指南 |
CMM標準 |
7.3.1 設計和開發策劃 |
組織應對產品的設計和開發進行策劃和控制 |
軟件開發管理規程 |
<軟件生命周期使用指南 |
L2 SPP |
|
在進行設計和開發策劃時,組織應確定: |
軟件開發裁剪規程 |
裁剪審批表 |
L2 SPP |
|
組織應對參與設計和開發的不同小組之間的接口進行管理,以確保有效的溝通,并明確職責分工。 |
測試規程 |
測試計劃 |
L3 |
|
隨設計和開發的進展,在適當時,策劃的輸出應予更新。 |
配置管理規程 |
配置管理計劃 |
L2 SCM |
|
組織應對參與設計和開發的不同小組之間的接口進行管理,以確保有效的溝通,并明確職責分工。 |
質量保證規程 |
軟件質量保證計劃 |
L2 SQA |
7.3.2設計和開發輸入 |
應確定與產品要求有關的輸入,并保持記錄(見4.2.4) |
需求管理規程 |
用戶需求規格 |
L2 RM |
|
并保持記錄(見4.2.4) |
配置管理規程 |
配置項發布報告 |
L2 SCM |
7.3.3 設計和開發輸出 |
設計和開發的輸出應以能夠針對設計和開發的輸入進行驗證的方式提出, 并應在放行前得到批準。 |
<概要設計規程> |
|
|
7.3.4設計和開發評審 |
在適宜的階段,應依據所策劃的安排(見7.3.1)對設計和開發進行系統的評審 |
<軟件項目計劃規程> |
概要設計評審報告 |
|
7.3.5 設計和開發驗證 |
|
<軟件項目計劃規程> |
單元測試報告 |
|
7.3.6 設計和開發確認 |
應依據所策劃的安排(見7.3.1)對設計和開發進行確認 |
<軟件項目計劃規程> <驗收規程> |
軟件驗收申請 |
L2 SQA |
6> ISO9001與CMM比較
ISO 9001要素 |
本文中涉及的CMM級別 | |||||
第2級 |
第3級 |
第4級 |
第5級 |
通用特點 | ||
4.1 |
管理職責 |
√ |
|
√ |
|
√ |
4.2 |
質量體系 |
√ |
√ |
|
|
√ |
4.3 |
合同評審 |
√ |
|
|
|
|
4.4 |
設計控制 |
√ |
√ |
√ |
|
|
4.5 |
文件和資料控制 |
√ |
√ |
|
|
√ |
4.6 |
采購 |
√ |
|
|
|
|
4.7 |
顧客提供產品的控制 |
√ |
√ |
|
|
|
4.8 |
產品標識和可追溯性 |
√ |
√ |
|
|
|
4.9 |
過程控制 |
√ |
√ |
√ |
√ |
|
4.10 |
檢驗和試驗 |
√ |
√ |
|
|
|
4.11 |
檢驗、測量和試驗設備的控制 |
|
|
|
|
√ |
4.12 |
檢驗和試驗狀態 |
√ |
√ |
|
|
|
4.13 |
不合格品控制 |
√ |
√ |
|
|
|
4.14 |
糾正和預防措施 |
√ |
|
|
√ |
|
4.15 |
搬運、包裝、貯存、防護和交付 |
√ |
√ |
|
|
|
4.16 |
質量記錄的控制 |
√ |
√ |
|
|
√ |
4.17 |
內部質量審核 |
√ |
|
|
|
√ |
4.18 |
培訓 |
|
|
|
|
√ |
4.19 |
服務 |
√ |
|
|
|
|
4.20 |
統計技術 |
√ |
√ |
√ |
|
√ |
7> XP
2. UML
1> 類圖
組件 |
說明 | ||||||||||||||||||
類 |
| ||||||||||||||||||
屬性 |
- name: String [1] = "Untitled" {readOnly}
等于 private String name[1]=”Unittiled”; | ||||||||||||||||||
方法 |
+ balanceOn (date: Date) : Money 等于 public Money balanceOn(Data date){} | ||||||||||||||||||
關聯 |
ArrayList cars=new ArrayList(); Public void addCar(汽車 car){ cars.add(car); } } class 汽車{ 人 person=new 人(); } | ||||||||||||||||||
聚合 |
1. 表示兩個類是整體/局部的關系 2. 實例圖中不含有回路,單向關系 | ||||||||||||||||||
合成(復合,組合) |
1. 表示”局部”在”整體”的生命周期職責 2. 他們是非共享的 | ||||||||||||||||||
泛化 |
一個類對另一個類的細化.
public abstract int getTyre(); } class Motorcycle{ public abstract int getTyre(){ return 2; } } class Car{ public int getTyre(){ return 4; } } | ||||||||||||||||||
自反關聯 |
public Test theTest; public Test() {} } | ||||||||||||||||||
鏈接關聯 |
| ||||||||||||||||||
限定關聯 |
| ||||||||||||||||||
描述 |
| ||||||||||||||||||
依賴 |
| ||||||||||||||||||
終止類 |
|
圖1.1
posted on 2006-02-16 11:50 jame 閱讀(299) 評論(0) 編輯 收藏 所屬分類: J2EE