能力成熟度模型集成
能力成熟度模型集成(,简称CMMI)是一种改进过程的方法,其目的是协助提升组织的绩效。CMMI可用来引导一整个项目、一整个部门乃至一个完整的组织的过程改进。在软件工程和组织发展的领域中,CMMI能够向组织提供用于有效的过程改进的基本元素。CMMI由卡内基梅隆大学在美国专利和商标局(英文:U.S. Patent and Trademark Office)注册。 按照(简写:SEI,2008)说法,CMMI能够协助“集成传统独立的组织功能,…
共 9 篇文章
能力成熟度模型集成(,简称CMMI)是一种改进过程的方法,其目的是协助提升组织的绩效。CMMI可用来引导一整个项目、一整个部门乃至一个完整的组织的过程改进。在软件工程和组织发展的领域中,CMMI能够向组织提供用于有效的过程改进的基本元素。CMMI由卡内基梅隆大学在美国专利和商标局(英文:U.S. Patent and Trademark Office)注册。 按照(简写:SEI,2008)说法,CMMI能够协助“集成传统独立的组织功能,…
软件开发的工作量預估是預估軟體開發或維護所需要的工作量(會以人以及工時或是金錢來表示),其參考輸入多半是不完整、不可靠,並且帶有雜訊的資訊。工作量預估可以是專案計劃、迭代計劃、預算、投資分析、定價流程或競標的輸入。 現行實務 有關預估實務的問卷指出,在預估工作量時,仍建議用專家預估為主要的作法。 一般而言,工作量預估往往會過於樂觀,會明顯的過度自信。最後的平均工作量會超過30%,而且不會隨時間而減少。不過,有關預估量誤差的量測有很多的問…
結構化程式設計(),一種編程典範。它採用子程序、块结构、for迴圈以及while迴圈等結構,來取代傳統的 goto。希望藉此來改善计算机程序的明晰性、品質以及開發時間,並且避免寫出麵條式代碼。 結構化程式設計在1960年代開始發展,及朱塞佩·賈可皮尼(Giuseppe Jacopini)於1966年5月在《Communications of the ACM》期刊發表論文,說明任何一個有goto指令的程式,可以改為完全不使用goto指令的…
軟體系統(software system)是一個以软件中並聯的组件形成的系統,是電腦的一部份(另外一部份則為硬體)。軟體系統「包括了許多獨立的程式、設定程式的配置文件、描述系統結構的软件文档, 以及說明使用方式的使用說明書。」。 「軟體系統」一詞使用的時間和系統理論應用在软件工程中的時間點相當。軟體系統包括了許多個別的電腦程式,以及相關的配置文件、說明書等,一起運作成為系統。此一概念是用來研究大而複雜的軟體的,因為其關注在軟體的主要元件…
物件導向程式設計(,缩写:)是種具有物件概念的程式設計典範,同时也是一种程式开发的抽象方针。它可能包含資料、特性、程式碼與方法。对象則指的是類別(class)的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性,物件裡的程序可以訪問及經常修改物件相關聯的資料。在物件導向程式編程裡,電腦程式會被設計成彼此相關的物件。 面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统…
《设计模式:可复用面向对象软件的基础》()是软件工程领域有关设计模式的一本书,提出和总结了对于一些常见软件设计问题的标准解决方案,称为软件设计模式。该书作者是埃里希·伽瑪、、和,后以“四人帮”(,)著称,书中的设计模式也被称為「四人帮设计模式」(Gang of Four design patterns)。 简介 基于作者的经验,本书提出良好的面向对象软件设计所需方略为: “针对接口而非实现编程”。 :“偏好超过了类继承”。 创建型模式 …
軟體工程基本定理(fundamental theorem of software engineering,簡稱FTSE),是計算機科學家安德鲁·克尼格提出的名詞,說明另一位計算機科學家巴特勒·蘭普森所提過的格言,後來被所引用: 此定理沒有說明實際的定理,可以證明定理成立或不成立。此定理是透過間接參考(Indirection)管理複雜性的通用原則。 此定理有時會加上一個幽默的話「……那些需要太多間接層的問題例外」,指出一個事實,太多的間接…
程序设计方法学是讨论程序的性质以及程序设计的理论和方法的一门学科,是研究和构造程序的过程的学问,是研究关于问题的分析,环境的模拟,概念的获取,需求定义的描述,以及把这种描述变换细化和编码成机器可以接受的表示的一般的方法。 程序设计方法学发展历史 产生背景 1950年代—1960年代初,手工艺式的程序设计方法,高德纳把程序称为艺术品。 1960年代末—1970年代初,出现软件危机:一方面需要大量的软件系统,如操作系统、数据库管理系统;另一…
能力成熟度模型(CMM, Capability Maturity Model)是以軟體開發專案的自我能力改進及軟體承包商的選定作為研究的目標,在初期發展階段,CMM的用途是協助美國國防部等政府單位進行重要軟體外包作業時,作為分析軟體廠商開發能力,以及評選合格軟體承包商的工具。 CMM涵蓋一個成熟的軟體發展組織所應具備的重要功能與項目,它描述了軟體發展的演進過程,從毫無章法、不成熟的軟體開發階段到成熟軟體開發階段的過程。以CMM的架構而言…