




已閱讀5頁,還剩340頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
信息應用系統(tǒng)工程監(jiān)理,報告人:王寶會 信息產業(yè)部信息化專家,信息應用系統(tǒng)建設監(jiān)理課程計劃,第一講 信息應用系統(tǒng)建設基礎知識 第二講信息應用系統(tǒng)監(jiān)理工作 第三講準備階段的監(jiān)理工作 第四講分析設計階段監(jiān)理 第五講實施階段監(jiān)理 第六講驗收階段的監(jiān)理工作,第一講 信息應用系統(tǒng)建設基礎知識,在本講中您能了解如下知識點: 第一章軟件的概念、特點和分類 第二章軟件工程 第三章軟件配置管理 第四章軟件測試 第五章軟件評審 第六章軟件維護 第七章軟件工程標準 第八章軟件開發(fā)文檔 第九章軟件工業(yè)化生產時代的基礎技術和方法,第一章 軟件的概念、特點和分類,“確立并使用正確的工程原理和方法,以便能夠經濟地獲得可靠而有效的軟件”。 Friedrich I. Bauer,軟件的概念,軟件是與計算機系統(tǒng)的操作有關的程序、規(guī)程、規(guī)則及與之 有關的文檔。 軟件是計算機系統(tǒng)中與硬件相互依存的另一部分,它是包括 程序,數(shù)據及其相關文檔的完整集合。其中,程序是按事先 設計的功能和性能要求執(zhí)行的指令序列;數(shù)據是使程序能正 常操縱信息的數(shù)據結構;文檔是與程序開發(fā),維護和使用有 關的圖文材料。,軟件的構成要素,1、程序 2、規(guī)程 3、規(guī)則 4、文檔,軟件的特點,具有抽象性、嚴密性、“一次性”、智能性、持久性、依賴 性、復雜性、難以度量、易出錯、必須維護、成 本昂貴等特點。 (1) 軟件是一種邏輯實體,具有抽象性。 (2) 對軟件的質量控制:必須著重在軟件開發(fā)方面下功夫。 (3) 軟件沒有老化問題:然而它存在退化問題。 (4) 軟件的開發(fā)和運行存在:移植的問題。 (5) 軟件的開發(fā)方式:手工。 (6) 軟件本身是復雜的:實際問題,程序邏輯結構所決定的。 (7) 軟件成本昂貴:投入大量、復雜、高強度的腦力勞動。,源程序、執(zhí)行程序,高級語言源程序經編譯后,得到的目標模塊還需進行連接。連接程序(即Linker)找出需要連接的外部模塊并到模塊庫中找出被調用的模塊,調入內存并連接到目標模塊上,形成可執(zhí)行程序。,軟件的分類方法,按軟件的功能進行劃分: 系統(tǒng)軟件 支撐軟件 應用軟件 在信息系統(tǒng)工程建設中,系統(tǒng)軟件和支撐軟件通常為外購軟 件,應用軟件通常為承建單位自主開發(fā)或分包開發(fā)的軟件。 按軟件服務對象的范圍劃分: 項目軟件 產品軟件 按軟件規(guī)模進行劃分: 按開發(fā)軟件所需的人力、時間以及完成的源程序行數(shù),可確 定六種不同規(guī)模的軟件。 按軟件工作方式劃分: 實時處理軟件 分時軟件 交互式軟件 批處理軟件 按使用的頻度進行劃分: 一次使用 較高的使用頻度 按軟件失效的影響進行劃分: 影響不大 影響釀成災難性后果,軟件的分類方法,按技術特點的角度進行劃分: 業(yè)務軟件:處理日常業(yè)務,已成為管理信息系統(tǒng)MIS 科技計算軟件: 注重數(shù)值算法的速度和精度。目前轉向多機協(xié)作計算、并行計算、可視計算等 嵌入式(embeded)軟件:使工業(yè)產品自動化、智能化 實時(real-time)軟件多用于工業(yè)控制系統(tǒng) 個人計算機軟件: 字處理、報表、制圖、多媒體寫作、娛樂游戲、個人數(shù)據庫、個人財務、聯(lián)機上網等 人工智能軟件:以非數(shù)值算法解題,一般有一知識庫存放知識和規(guī)則。,軟件工程是一類求解軟件的系統(tǒng)工程的派生,軟件工程是一門交叉性學科。軟件工程這一概念,主要是針對20世紀60年代“軟件危機”而提出的。其主要成果有:提出了瀑布模型,開發(fā)了一些結構化程序設計語言、結構化方法等。并且圍繞項目管理提出了費用估算、文檔復審等方法和工具,第二章 軟件工程概述,70年代初,自“軟件工廠”這一概念提出以來,其主要成果有:提出了應用廣泛的面向對象語言以及相關的面向對象方法。尤其是近幾年來,針對軟件復用及軟件生產,軟件構件技術以及軟件質量控制技術、質量保證技術得到了廣泛的應用。,軟件工廠,軟件工程框架,軟件工程的框架是由軟件工程目標、軟件工程活動和軟件工程原則三個方面的內容組成。,由上圖可以看出軟件工程可定義為三元組: 目標,原則,活動 其中目標定義為: 正確性:軟件產品達到預期功能的程度。 可用性:軟件基本結構、實現(xiàn)及文檔為用戶可用的程度。 開銷適宜性:軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。 這三方面的特性決定了軟件過程、過程模型和工程方法的選擇。,軟件工程目標,選取適宜開發(fā)范型。對需求定義的易變性,采用適宜的開發(fā)范型予以控制,以保證軟件產品滿足用戶的要求。 采用合適的設計方法。合適的設計方法有助于這些特征的實現(xiàn),以達到軟件工程的目標。 提供高質量的工程支持。在軟件工程中,軟件工具與環(huán)境對軟件過程的支持頗為重要。 重視開發(fā)過程的管理。當軟件過程得以有效管理時,才能實現(xiàn)有效的軟件工程。,軟件工程原則,軟件工程活動是“生產一個最終滿足需求且達到工程目標的軟件產品所需要的步驟”。主要包括需求、設計、實現(xiàn)、確認以及支持等5個活動。 需求活動包括問題分析和需求分析。問題分析獲取需求定義。需求分析生成功能規(guī)約。 設計活動一般包括概要設計和詳細設計。概要設計建立整個軟件體系結構。詳細設計產生程序員可用的模塊說明。 實現(xiàn)活動CODING AND TESTING。 確認活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認,保證最終產品滿足用戶的要求。 支持活動包括修改和完善。維護。,軟件工程活動,需求:定義問題,即建立系統(tǒng)模型,主要任務包括: 需求獲取需求定義,系統(tǒng)功能的一個正確的陳述 需求規(guī)約系統(tǒng)需求規(guī)格說明,其主要成分:系統(tǒng)模型、系統(tǒng)功能的一個精確、系統(tǒng)的描述及需求驗證 。 設計:在需求分析的基礎上,給出系統(tǒng)的軟件解決方案。 1)總體設計: 系統(tǒng)的軟件體系結構 2)詳細設計: 針對總體設計結果,給出每一構件的詳細描述。 實現(xiàn):選擇可用的構件或語言,對每一構件進行編碼。 確認:貫穿軟件開發(fā)的整個過程,主要任務是:軟件測試。 支持:完善性維護、糾錯性維護。,軟件工程流程,軟件生存周期,軟件生存周期是“從設計軟件產品開始到軟件產品不能再使用為止的時間周期。軟件生存周期典型地包括項目計劃階段,需求階段,設計階段、實現(xiàn)階段、測試階段、安裝和驗收階段、運行和維護階段,有時還包括引退階段。,確定要開發(fā)軟件系統(tǒng)的總目標,給出它的功能、性能、可靠性及接口等方面的要求;根據有關成本與進度的限制分析項目的可行性,探討解決問題的可能方案;制定完成開發(fā)任務的實施計劃,連同可行性研究報告,提交管理部門審查。,軟件項目計劃,需求分析和定義方式: 需求明確的:用正式的信息域分析,可用于建立信息流和信息結構的模型,然后逐漸擴充這些模型成為軟件的規(guī)格說明。 需求非明確:用軟件原型化方法,即建立軟件原型,并由用戶進行評價,從而確定軟件需求。編寫出軟件需求說明書及初步的用戶手冊,提交管理機構評審。,軟件需求分析,概要設計,把已確定了的各項需求轉換成一個相應的體系結構,以結構設計和數(shù)據設計開始,建立程序的模塊結構,定義接口并建立數(shù)據結構。此外,要使用一些設計準則來判斷軟件的質量。 詳細設計,考慮設計每一個模塊部件的過程描述,對每個模塊要完成的工作進行具體的描述。編寫設計說明書,提交評審。,軟件設計分為概要設計和詳細設計,系統(tǒng)設計是把需求轉化為軟件系統(tǒng)的最重要的環(huán)節(jié)。系統(tǒng)設計的優(yōu)劣在根本上決定了軟件系統(tǒng)的質量。就象“一切帝國主義都是紙老虎”那樣可以斷定“差的系統(tǒng)設計必定產生差的軟件系統(tǒng)。”所以我們要努力保證系統(tǒng)設計“根正苗紅”,把一切左傾、右傾的設計思潮消滅在萌芽狀態(tài)。,保證系統(tǒng)設計“根正苗紅”,Windows NT的一位系統(tǒng)設計師擁有8輛法拉利跑車,讓Microsoft公司的一些程序員十分眼紅。但你只能羨慕而不能憤恨,因為并不是每個程序員都有本事成為復雜軟件系統(tǒng)的設計師。系統(tǒng)設計要比純粹的編程困難得多。即便你清楚客戶的需求,卻未必知道應該設計什么樣的軟件系統(tǒng)既能掙最多的錢又能讓客戶滿意。,神氣的軟件設計師,用一種適當?shù)某绦蛟O計語言把軟件設計轉換成計算 機可以接受的程序代碼。應當就風格及清晰性對代 碼進行評審,而且反過來應能直接追溯到詳細設計 描述。,程序編碼,軟件測試,軟件測試的主要任務是發(fā)現(xiàn)并排除在軟件需求分析、設計和實現(xiàn)階段產生的各種錯誤,以保證交付軟件的質量。 軟件測試目的是“在一定的開發(fā)時間和經費的限制下,通過執(zhí)行有限個測試過程,盡可能多的發(fā)現(xiàn)軟件中的錯誤。,單元測試檢查每一單獨的模塊部件的功能和性能。 組裝測試提供了構造軟件模塊結構的手段,同時測試其功能和接口。 確認測試檢查所有的需求是否都得到滿足。 在每一個測試步驟之后,要進行調試,以診斷和糾正軟件的故障。,軟件測試,軟件測試的基本原則,1、程序員或程序設計機構不應測試自己設計的程序 2、在設計測試用例時,不僅要確定輸入數(shù)據,還要確定預期的輸出結果 3、在設計測試用例時,不僅要考慮合理的輸入數(shù)據,還要考慮不合理的輸入數(shù)據。 4、除了檢查程序是否做了它應當做的事情之外,還應檢查它是否做了不應當做的事 5、應保留所有的測試用例,以便軟件維護和回歸測試 6、模塊中存在錯誤的概率與已發(fā)現(xiàn)的錯誤數(shù)成正比 7、嚴格執(zhí)行測試計劃,排除測試的隨意性,例:Outlook溢出,起源于vCard(一種電子名片) Outlook直接打開并運行附件中的vCards而不提示用戶 vCards存儲于.vcf文件中,也是沒有提示而直接運行的 當vCards的生日字段(BDAY)超過55字符時,就會出現(xiàn)溢出 對策:應用IE 5.5 sp2,已交付的軟件投入正式使用,并在運行 過程中進行適當?shù)木S護。為改正錯誤, 適應環(huán)境變化及功能增強而進行的一系 列修改活動。與軟件維護相關聯(lián)的那些 任務依賴于所要實施的維護的類型。,運行維護,軟件開發(fā)模型是軟件建設過程的結構框架。 軟件開發(fā)的承建單位必須首先制定出適宜的開發(fā)策略和軟件工程模型,以便對要交付的軟件的開發(fā)過程實施有效的控制和管理。監(jiān)理單位應該根據承建單位選定的模型制定自己的監(jiān)理策略。 承建單位可根據軟件開發(fā)項目的具體情況選擇采用何種開發(fā)策略、方法和模型,并要在有關文檔中(例如在“項目開發(fā)計劃”中)對所采用的軟件工程方法與模型加以說明。,軟件開發(fā)模型,規(guī)定了各項軟件工程活動,包括:制定開發(fā)計劃,進行需求分析和說明,軟件設計,程序編碼.測試及運行維護,并且規(guī)定了它們自上而下,相互銜接的固定次序,如同瀑布流水,逐級下落,瀑布模型,瀑布式生存周期模型,軟件開發(fā)的實踐表明,上述各項活動之間并非完全是自上而下,呈線性圖式。實際情況是,每項開發(fā)活動均處于一個質量環(huán)(輸入-處理-輸出-評審)中。只有當其工作得到確認,才能繼續(xù)進行下一項活動 瀑布模型的開發(fā)策略是要求軟件開發(fā)組織在進行軟件開發(fā)時,要嚴格劃分開發(fā)過程的每一個階段,并根據工程化的有關規(guī)定,在“軟件開發(fā)計劃”及“軟件質量保證計劃”中反映每個階段的活動。對每階段的工作要進行認真的評審。只有在某個階段的目標確實達到后,才能進入下一階段的工作。 瀑布模型為軟件開發(fā)和軟件維護提供了一種理想情況下的管理模式,從理論上講,對需求能嚴格地進行預先定義的軟件開發(fā)項目是合適和有效的。然而在軟件工程實踐中,這一開發(fā)策略一旦遇到與假設不相符合的情況,就容易導致失敗。盡管如此,該模型仍不失為一個很好的基準模型。事實上,在今天的軟件工程實踐中常常都是以瀑布模型為基礎綜合采用其它各種模型的優(yōu)點,以改善軟件開發(fā)過程對現(xiàn)實情況的適應性。,瀑布模型,原型模型也稱演化模型,此方法主要針對所要開發(fā)的系統(tǒng)的需求不是很清楚, 需要一個可實際運行的工作演示系統(tǒng),即原型,作為軟件開發(fā)人員和用戶學習、 研究、試驗和確定軟件需求的工作平臺。 原型模型又可細分為增量模型和漸進模型。,原型模型,快速分析??焖俅_定軟件系統(tǒng)的基本要求。 構造原型。盡快實現(xiàn)一個可運行的系統(tǒng)。 運行和評價原型。驗證原型的正確程度,根據用戶的新設想,提出全面的修改意見。 修正和改進。首先修改并確定需求規(guī)格說明,然后再重新構造或修改原型。 判定原型是否完成。如果用戶認可,迭代過程可以結束。否則,繼續(xù)迭代。 判斷原型細部是否說明。 原型細部的說明。 判定原型效果。 整理原型和提供文檔。,原型化開發(fā)方法步驟,對于需求不能很快全部明確的系統(tǒng),軟件開發(fā)項目難于 做到一次開發(fā)成功,可使用此模型。此時,應盡可能明 確已知的軟件需求,完成相應的需求分析,并按瀑布模 型的方法進行第一次開發(fā)工作。在系統(tǒng)集成時,通過實 驗找出需求中的欠缺和不足之處,明確那些未知的軟件 需求,再迭代進行增加部分的需求分析和開發(fā)。對有些 系統(tǒng)這種反復可能要進行幾次,但盡可能不要超過兩 次,否則難以控制軟件的結構規(guī)模、開發(fā)質量和進度。,增量模型,此模型主要是針對部分需求盡管明確但一時難以準確進行 定義的系統(tǒng)設計。如:用戶的操作界面等。使用此模型 時,可以先做初步的需求分析,之后立即進行設計和編 碼,隨后與系統(tǒng)進行第一次集成(不作或少作測試)。根 據集成后反映的問題,進一步做更全面的需求分析、設 計、編碼、測試和集成,漸進模型,對于復雜的大型軟件,開發(fā)一個原型往往達不到要求。螺旋模型將瀑布模型與演化模型結合起來,并且加入兩種模型均忽略了的風險分析。螺旋模型沿著螺線旋轉,如下圖所示,在笛卡爾坐標的四個象限上分別表達了四個方面的活動,即: 制定計劃確定軟件目標,選定實施方案,弄清項目開發(fā)的限制條件; 風險分析分析所選方案,考慮如何識別和消除風險; 實施工程實施軟件開發(fā) 客戶評估評價開發(fā)工作,提出修正建議。 沿螺線自內向外每旋轉一圈便開發(fā)出更為完善的一個新的軟件版本。,螺旋模型,螺旋模型,螺旋模型是軟件開發(fā)的高級策略,它不僅適合結構化方法而且更適合面向對象方法。它的實施將對軟件開發(fā)組織的工作模式、人員素質、管理和技術水平產生深遠的影響,是最有前途的過程模型之一。(適用于產品開發(fā)),螺旋模型,噴泉模型對軟件復用和生存周期中多項開發(fā)活動的集成提供了支持,主要支持面向對象的開發(fā)方法?!皣娙币辉~本身體現(xiàn)了迭代和無間隙特性。系統(tǒng)某個部分常常重復工作多次,相關功能在每次迭代中隨之加入演進的系統(tǒng)。所謂無間隙是指在開發(fā)活動,即分析、設計和編碼之間不存在明顯的邊界,噴泉模型,配置管理項 在軟件生存周期內所產生的各種管理文檔和技術文檔、源代 碼列表,及其可執(zhí)行代碼,以及運行所需的各種數(shù)據,構成 軟件配置管理項。 配置管理庫 各系統(tǒng)應在其所屬各級中建立下列各庫: 開發(fā)庫(DL) 通常,開發(fā)庫可僅在項目開發(fā)組內設立,并由其負責維護。 受控庫(CL) 通常,受控庫以軟件配置項為單位建立并維護。 產品庫(PL 通常,產品庫可在系統(tǒng)、子系統(tǒng)級上設立并維護。 各類庫中應存放哪些軟件成分,應視所開發(fā)軟件的實際情況酌定。,第三章 軟件配置管理,質量要求 軟件配置管理項是該軟件的真正實質性材料,因此必須保持正確性、完備性和可 追蹤性;任何軟件配置管理項都必須做到“文實相符、文文一致”。以滿足“有 效性”、“可見性”和“可控性”要求。 管理規(guī)程 軟件配置項不論大小都必須實施軟件配置管理。但所管軟件實體的多少,實施控制的方式和投入人力多少則與軟件配置項的規(guī)模等級、安全性關鍵等級,以及風險大小有關。必須指出,對于安全性關鍵等級為A、B級的軟件配置項的管理必須從嚴。 每個計算機系統(tǒng)均應制定軟件配置管理規(guī)程,至少應明確規(guī)定: 各級、各庫中所管的軟件實體的清單; 保證安全性、可靠性、保密性、正確性、完備性、一致性和可追蹤性的具體措施; 入庫控制辦法和審批手續(xù); 出庫條件及其必備的手續(xù); 變更控制辦法和審批手續(xù)。 工具 為了嚴格、有效地實施軟件配置管理,承建單位應使用軟件配置管理工具,以滿 足上述質量要求。(VSS),第三章 軟件配置管理,第四章 軟件測試,測試目的: 通過測試,發(fā)現(xiàn)軟件錯誤; 驗證軟件是否滿足軟件需求規(guī)格說明和軟件設計所規(guī)定的功能、性能及其軟件質量特性的要求; 為軟件質量的評價提供依據。 軟件測試技術: 雖然軟件測試技術在不斷地發(fā)展,但傳統(tǒng)的 分類方法仍然適用。按使用的測試技術不同 可以將測試分為: 靜態(tài)測試:靜態(tài)分析和代碼審查 動態(tài)測試:白盒測試和黑盒測試。,靜態(tài)分析主要對程序進行控制流分析、數(shù)據流分析、接口分析和表達式分析等。靜態(tài)分析一般由計算機輔助完成。目前具備靜態(tài)分析功能的軟件測試工具有很多。 白盒測試是一種按照程序內部的邏輯結構和編碼結構設計并執(zhí)行測試用例的測試方法。根據覆蓋準則使程序中的每個語句、每個條件分支、每個控制路徑都在程序測試中受到檢驗。主要以LOG。 黑盒測試是一種著重于驗證軟件功能和性能的正確性,它的典型測試項目包括功能測試、性能測試、邊界測試、余量測試、強度測試等。,軟件測試方式,制定“軟件測試計劃”。 編寫“軟件測試說明”。對各測試用例所需的測試環(huán)境、測試軟件的準備工作給予說明。對于軟件安全性關鍵等級為A、B級或軟件規(guī)模等級為A、B級的軟件,軟件開發(fā)單位必須組織此測試階段的準備就緒評審,以審查測試用例、環(huán)境、測試軟件、測試工具等準備工作是否全面、到位。 測試用例設計要求:測試用例的設計應包括該測試用例的測試過程、測試輸入數(shù)據、期望測試結果和評價測試結果的標準等; 測試用例的輸入應包括合理的(有效等價類)值、不合理的(無效等價類)值和邊界值輸入; 為每個測試用例規(guī)定測試規(guī)程,包括運行測試用例的準備、初始化、中間步驟、前提和約束;,軟件測試工作規(guī)程,把全部測試用例寫入“軟件測試說明”。 執(zhí)行軟件測試。按照“軟件測試計劃”和“軟件測試說明”對軟件進行測試。在測試過程中,應填寫“軟件測試記錄”。如果發(fā)現(xiàn)軟件問題,應填寫“軟件問題報告單”。測試記錄包括測試的時間、地點、操作人、參加人、測試輸入數(shù)據、期望測試結果、實際測試結果及測試規(guī)程等。 編制“軟件測試報告”。具體的軟件測試工作完成之后,依照“軟件測試計劃”、“軟件測試說明”、“軟件測試記錄”對測試結果進行統(tǒng)計、分析和評估,在此基礎上編制“軟件測試報告”。 修正軟件測試過程中發(fā)現(xiàn)的問題。修正軟件問題要有受控措施,應先填寫“軟件變更變更報告單”,在得到同意的答復之后進行軟件的修改(包括軟件文檔、程序和數(shù)據的全面修改),修改完成之后,必須進行回歸測試。 軟件測試階段評審:測試階段工作全部完成之后,應組織本測試階段的評審。,軟件測試工作規(guī)程,在軟件生存周期各階段應開展的軟件測試活動,軟件測試應由獨立于軟件設計開發(fā)的人員進行,根據軟 件項目的規(guī)模等級和安全性關鍵等級,軟件測試可由不 同機構組織實施。 軟件單元測試由承建單位自行組織,一般由軟件開發(fā)組實施測試。 軟件集成測試由承建單位自行組織,軟件開發(fā)組和軟件測試組聯(lián)合實施測試。 軟件確認測試由承建單位自行組織,軟件測試組實施測試。 系統(tǒng)測試應由業(yè)主單位組織,成立聯(lián)合測試組(一般由專家組、業(yè)主單位、軟件評測單位、承建單位等聯(lián)合組成測試組)實施測試。,測試組織,承建單位在測試過程中應編制“軟件問 題報告”和“軟件變更報告”, 描述在 配置控制下的軟件或文檔中發(fā)現(xiàn)的各種 問題?!败浖栴}報告”和“軟件變更 報告”應描述必需的糾錯工作和解決問 題所進行的各項活動。,軟件問題報告和軟件變更報告,承建單位應建立和實施糾錯工作規(guī)程, 以便處理 在配置控制下和按產品合同要求進行軟件開發(fā)活動 中發(fā)現(xiàn)的問題。糾錯工作規(guī)程應遵照軟件配置管 理執(zhí)行。,糾錯工作過程,第五章 軟件評審,評審目的 軟件評審是為了使軟件開發(fā)按軟件工程提出的過程循序進行,在各研制階段結束 時,檢查該階段的工作是否完成,所提交的軟件階段產品是否達到了規(guī)定的質量 和技術要求,決定是否可以轉入下一階段研制工作。,內部評審對每個軟件的每個開發(fā)階段都要進行;外部評審在內部評審的基礎上進行。一般情況下,軟件需求分析、概要設計、確認測試和系統(tǒng)測試 階段應進行外部評審。,軟件評審,提出評審申請 承建單位在本階段工作完成并通過內部評審后,至少提前十天提出外部評審申請。同時將評審文檔及資料交給軟件專家組成員進行審查。 成立評審組織 成立評審委員會。宣布評審委員會的組成成員和參加審查組的軟件專家組成員。 評審委員會成員一般應包括: 軟件專家組成員(占評審委員會總人數(shù)的50% 以上); 質量管理人員; 科研計劃管理人員; 開發(fā)組成員; 業(yè)主單位代表。,外部評審的步驟,審查組由軟件專家組成; 參加同一個項目的軟件專家組成員應相對穩(wěn)定。,審查組成員組成及要求,評審結論 評審小組寫出結論提交專家組. 專家組審查結論 專家組審查結論分為:通過和不通過,并以此向評審委員會提出建 議。通過情況下,承建單位對提出的軟件問題要限期修改,修改情 況由軟件專家組負責人同意簽字后可轉入下一階段工作。不通過情 況下,對提出的問題由承建單位重新做工作后,再提出評審申請進 行復審。在復審通過前不能轉入下一階段工作。復審的步驟與外部 評審相同。,軟件評審,第六章 軟件維護,軟件維護是軟件產品交付使用后,為糾正錯誤或 改進性能與其他屬性,或使軟件產品適應改變了 的環(huán)境而進行的修改活動。軟件維護一般分為糾 錯性維護、適應性維護和完善性維護三種類型。,糾錯性維護,糾正在開發(fā)階段產生而在測試和驗收過程沒有發(fā)現(xiàn)的錯誤。其主要 內容包括: 設計錯誤; 程序錯誤; 數(shù)據錯誤; 文檔錯誤。,為適應軟件運行環(huán)境改變而作的修改。環(huán)境改變的主要內容包括: 影響系統(tǒng)的規(guī)則或規(guī)律的變化; 硬件配置的變化,如機型、終端、外部設備的改變等; 數(shù)據格式或文件結構的改變; 軟件支持環(huán)境的改變,如操作系統(tǒng),編譯器或實用程序的變化等。,適應性維護,完善性維護 為擴充功能或改善性能而進行的修改。修改方式有插 入、刪除、擴充和增強等。主要內容包括: 為擴充和增強功能而作的修改,如擴充解題范圍和算法優(yōu)化等; 為改善性能而作的修改,如提高運行速度、節(jié)省存貯空間等; 為便于維護而作的修改,如為了改進易讀性而增加一些注釋等。,軟件維護,第七章 軟件工程標準,在開發(fā)一個軟件時,需要有許多層次、不同分工的人員 相互配合;在開發(fā)項目的各個部分以及各開發(fā)階段之間 也都存在著許多聯(lián)系和銜接問題。如何把這些錯綜復雜 的關系協(xié)調好,需要有一系列統(tǒng)一的約束和規(guī)定。在軟 件開發(fā)項目取得階段成果或最后完成時,還需要進行階 段評審和驗收測試。投入運行的軟件,其維護工作中遇 到的問題又與開發(fā)工作有著密切的關系。軟件的管理工 作則滲透到軟件生存期的每一個環(huán)節(jié)。所有這些都要求 提供統(tǒng)一的行為規(guī)范和衡量準則,使得各種工作都能有 章可循。,與軟件相關的各種標準,(1)網絡協(xié)議:ISO/OSI vs TCP/IP (2)軟件構件:CORBA vs COM (3)建模語言:UML (4)數(shù)據訪問:ODBC/JDBC (5)工程管理:CMM vs ISO(9001-3,15504),根據軟件工程標準制定的機構和標準適用 的范圍有所不同,它可分為五個級別,即 國際標準、國家標準、行業(yè)標準、企業(yè)(機 構)標準及項目(課題)標準。以下分別對五級標準的標識符和標準制定(或批準)的機構做一簡要說明:,軟件工程標準的層次,由國際聯(lián)合機構制定和公布,提供各國參考的標準。如 ISO(International Standards Organization)國際標準化組織。這一國際機構有著廣泛的代表性和權威性,它所公布的標準也有較大的影。1960年代初,該機構建立了“計算機與信息處理技術委員會”, 簡稱ISOTC97,專門負責與計算機有關的標準化工作。這一標準通常冠有ISO字樣,如ISO 8631 86 Information processingprogram constructs and conventions for their representation信息處理程序構造及其表示法的約定。該標準現(xiàn)已由中國收入國家標準。,國際標準,由政府或國家級的機構制定或批準,適用于全國范圍的標準,如: GB中華人民共和國國家技術監(jiān)督局是中國的最高標準化機構,它所公布實施的標準簡稱為“國標”?,F(xiàn)已批準了若干個軟件工程標準。,國家標準,由行業(yè)機構、學術團體或國防機構制定,并適 用于某個業(yè)務領域的標準,如: IEEE(Institute of Electrical and Electronics Engineers)美國電氣與電 子工程師學會。近年該學會專門成立了軟件標準分技術 委員會(SESS),積極開展了軟件標準化活動,取得了顯 著成果,受到了軟件界的關注。IEEE通過的標準經常要 報請ANSI審批,使之具有國家標準的性質。,行業(yè)標準,1983年5月中國原國家標準總局和原電子工業(yè)部主持成立了“計算機 與信息技術標準化技術委員會”,下設十三個分技術委員會。與軟 件相關的程序設計語言分委員會和軟件工程技術分委員會。中國制 定和推行標準化工作的總原則是向國際標準靠攏,對于能夠在中國 適用的標準一律按等同采用的方法,以促進國際交流。這里,等同 采用是要使自己的標準與國際標準的技術內容完全相同,僅稍做編 輯性修改。 從1983年起到現(xiàn)在,中國已陸續(xù)制定和發(fā)布了20項國家標準。這些 標準可分為4類: 基礎標準; 開發(fā)標準; 文檔標準; 管理標準。,軟件工程的國家標準,軟件工程標準,第八章 軟件開發(fā)文檔,文檔的種類 GB 8567-88 計算機軟件產品開發(fā)文件編制指南中規(guī)定,在軟件的開發(fā) 過程中,一般地說,應該產生十四種文件。這十四種文件是: 可行性研究報告; 項目開發(fā)計劃; 軟件需求說明書; 數(shù)據要求說明書; 概要設計說明書; 詳細設計說明書; 數(shù)據庫設計說明書; 用戶手冊; 操作手冊; 模塊開發(fā)卷宗; 測試計劃; 測試分析報告; 開發(fā)進度月報; 項目開發(fā)總結報告。,文檔的作用,(1)提高軟件開發(fā)過程的可見性 (2)提高開發(fā)效率 (3)可作為開發(fā)人員在一定階段內的工作成果和結束標志 (4)記錄開發(fā)過程中的有關技術信息,以便協(xié)調以后的軟件開發(fā)、使用和維護 (5)提供有關軟件運行、維護和培訓的信息 (6)便于潛在用戶了解軟件的功能、性能等各項指標,軟件開發(fā)文檔,第九章 軟件工業(yè)化生產時代的基礎技術和方法,CMM軟件過程成熟度模型概要 個體軟件過程PSP 群組軟件過程TSP 面向對象的軟件開發(fā)方法 可視化開發(fā)方法 軟件復用技術,CMM軟件過程成熟度模型概要,CMM是Capability Maturity Model的英文單詞的第一字母縮寫,中文稱:軟件能力成熟度模型。 發(fā)展史 1986年美國政府委托卡內基梅隆大學軟件工程研究所(SEI)開發(fā)一套評估軟件承包商能力的方法。 1987年9月發(fā)布了一套軟件過程成熟度框架。 1991年SEI將這套框架發(fā)展成為軟件成熟度模型,簡稱CMM,定義為CMM1.1版。 1997年11月SEI完成CMM2.0版,1999年發(fā)布。 CMM將能力成熟度模型分為5個級別,CMM的5個級別,CMM1:初始級 企業(yè)一般不具備穩(wěn)定的軟件開發(fā)與維護的環(huán)境,軟件項目的成功取決于某些個人的技能和經驗。 CMM2:可重復級 建立了基本的軟件項目管理過程規(guī)范。項目經理可以基于過往的項目的經驗來計劃與管理新的項目。 CMM3:定義級 已經將管理和開發(fā)兩方面的過程文檔化、并綜合成為企業(yè)機構的標準軟件過程。公司所有項目都可以通過裁減機構的標準軟件過程而建立適合于本項目的過程規(guī)范。 CMM4:定量管理級 企業(yè)對產品與過程建立起定量的質量目標,同時在過程中加入規(guī)定得很清楚的連續(xù)的度量。作為企業(yè)的度量方案, 要對所有項目的重要的過程活動進行生產率和質量的度量。 CMM5:優(yōu)化級 整個企業(yè)將會把重點放在對過程進行不斷的優(yōu)化。企業(yè)會采取主動去找出過程的弱點與長處,以達到預防缺陷 的目標。同時,分析有關過程的有效性的資料,作出對新技術的 成本與收益的分析,以及提出對過程進行修改的建議。,在介紹CMM內容之前,首先概述一下不成熟軟件組織與成熟軟件組織的差異。在不成熟的軟件單位,軟件過程一般由實踐者及其管理者在項目進程中臨時拼湊而成,因而推遲進度和超出預算已成為慣例,產品質量難以預測,有時為了滿足進度要求,常在產品功能和質量上做出讓步。 然而,一個成熟軟件組織具有在全組織范圍內管理軟件、開發(fā)過程和維護過程的能力,規(guī)定的軟件過程被正確無誤地通知到所有員工,工作活動均按照已規(guī)劃的過程進行。并通過可控的先導性試驗和費效分析使這些過程得到改進,對已定義過程中的所有崗位及其職責都有清楚的描述,和通過文檔與培訓使全組織有關人員對已定義的軟件過程都有很好的理解,從而使其軟件過程所導致的生產率和質量能隨時間的推移得到改進。 下表給出了不成熟和成熟軟件組織的比較,這種比較分析不僅是形成軟件能力成熟模型的基礎,也有利于理解該模型。,CMM軟件過程成熟度模型概要,CMM軟件過程成熟度模型概要,CMM的一些基本概念 (1)軟件過程:人們用于開發(fā)和維護軟件及其相關過程的一系列活動,包括軟件工程活動和軟件管理活動。 (2)軟件過程能力:描述(開發(fā)組織或項目組)遵循其軟件過程能夠實現(xiàn)預期結果的程度,它既可對整個軟件開發(fā)組織而言,也可對一個軟件項目而言。 (3)軟件過程性能:表示(開發(fā)組織或項目組)遵循其軟件過程所得到的實際結果,軟件過程性能描述的是已得到的實際結果,而軟件過程能力則描述的是最可能的預期結果,它既可對整個軟件開發(fā)組織而言,也可對一個特定項目而言。 (4)軟件過程成熟:一個特定軟件過程被明確和有效地定義,管理測量和控制的程度。 (5)軟件能力成熟度等級:軟件開發(fā)組織在走向成熟的途中幾個具有明確定義的表示軟件過程能力成熟度的平臺。 (6)關鍵過程域:每個軟件能力成熟度等級包含若干個對該成熟度等級至關重要的過程域,它們的實施對達到該成熟度等級的目標起到保證作用。這些過程域就稱為該成熟度等級的關鍵過程域,反之有非關鍵過程域是指對達到相應軟件成熟度等級的目標不起關鍵作用。歸納為:互相關聯(lián)的若干軟件實踐活動和有關基礎設施的一個集合。 (7)關鍵實踐:對關鍵過程域的實踐起關鍵作用的方針、規(guī)程、措施、活動以及相關基礎設施的建立。關鍵實踐一般只描述“做什么”而不強制規(guī)定“如何做”。整個軟件過程的改進是基于許多小的、漸進的步驟,而不是通過一次革命性的創(chuàng)新來實現(xiàn)的,這些小的漸進步驟就是通過一些關鍵實踐來實現(xiàn)。 (8)軟件能力成熟度模型:隨著軟件組織定義、實施、測量、控制和改進其軟件過程,軟件組織的能力也伴隨著這些階段逐步前進,完成對軟件組織進化階段的描述模型。,CMM軟件過程成熟度模型概要,軟件開發(fā)的風險之所以大,是由于軟件過程能力低,其中最關鍵的問題在于軟件開發(fā)組織不能很好地管理其軟件過程,從而使一些好的開發(fā)方法和技術起不到預期的作用。而且項目的成功也是通過工作組的杰出努力,所以僅僅建立在可得到特定人員上的成功不能為全組織的生產和質量的長期提高打下基礎,必須在建立有效的軟件工程實踐和管理實踐的基礎設施方面,堅持不懈地努力,才能不斷改進,才能持續(xù)地成功。 CMM提供了一個框架,將軟件過程改進的進化步驟組織成5個成熟等級,為過程不斷改進奠定了循序漸進的基礎。這5個成熟度等級定義了一個有序的尺度,用來測量一個組織的軟件過程成熟和評價其軟件過程能力,這些等級還能幫助組織自己對其改進工作排出優(yōu)先次序。成熟度等級是已得到確切定義的,也是在向成熟軟件組織前進途中的平臺。每一個成熟度等級為連續(xù)改進提供一個臺基。每一等級包含一組過程目標,通過實施相應的一組關鍵過程域達到這一組過程目標,當目標滿足時,能使軟件過程的一個重要成分穩(wěn)定。每達到成熟框架的一個等級,就建立起軟件過程的一個相應成分,導致組織能力一定程度的增大。,CMM軟件過程成熟度模型概要,CMM軟件過程成熟度模型概要,CMM軟件過程成熟度模型概要,個體軟件過程(Personal Software Process ,PSP)是由美國Carnegie Mellon大 學軟件工程研究所(CMU/SEI)的Watts s. Humphrey領導開發(fā)的,于1995年推出,在 軟件工程界引起了極大的轟動,可以說是由定向軟件工程走向定量軟件工程的一個 標志。PSP是一種可用于控制、管理和改進個人工作方式的自我改善過程,是一個 包括軟件開發(fā)表格、指南和規(guī)程的結構化框架。 PSP為基于個體和小型群組軟件過 程的優(yōu)化提供了具體而有效的途徑,例如如何制訂計劃,如何控制質量,如何與其 他人相互協(xié)作等等。在軟件設計階段, PSP的著眼點在于軟件缺陷的預防,其具體 辦法是強化設計結束準則,而不是設計方法的選擇。根據對參加培訓的104位軟件 人員的統(tǒng)計數(shù)據表明,在應用了PSP后,軟件中總的差錯減少了58.0,在測試階 段發(fā)現(xiàn)的差錯減少了71.0,生產效率提高了20.0。PSP的研究結果還表明,絕 大多數(shù)軟件缺陷是由于對問題的錯誤理解或簡單的失誤所造成的,只有很少一部分 是由于技術問題而產生的。而且根據多年來的軟件工程統(tǒng)計數(shù)據表明,如果在設計 階段注入一個差錯,則這個差錯在編碼階段引發(fā)了3一5個新的缺陷,要修復這些缺 陷所花的費用要比修復這個設計缺陷所花的費用多一個數(shù)量級。因此,PSP保障軟 件產品質量的一個重要途徑是提高設計質量。,個體軟件過程PSP,個體軟件過程PSP,個體軟件過程PSP的內容 PSP與具體的技術(程序設計語言、工具或者設計方法)相對獨立,其原則能夠應用到幾乎任何的軟件工程任務之中。PSP能夠: (1) 說明個體軟件過程的原則; (2) 幫助軟件工程師作出準確的計劃; (3) 確定軟件工程師為改善產品質量要采取的步驟; (4) 建立度量個體軟件過程改善的基準; (5) 確定過程的改變對軟件工程師能力的影響。 個體軟件過程PSP的作用 使用自底向上的方法來改進過程,向每個軟件工程師表明過程改進的原則,使他們能夠明白如何有效地生產出高質量的軟件。 為基于個體和小型群組軟件過程的優(yōu)化提供了具體而有效的途徑。其研究與實踐填補了CMM的空白。 幫助軟件工程師在個人的基礎上運用過程的原則,借助于PSP提供的一些度量和分析工具,了解自己的技能水平,控制和管理自己的工作方式,使自己日常工作的評估、計劃和預測更加準確、更加有效,進而改進個人的工作表現(xiàn),提高個人的工作質量和產量,積極而有效地參與高級管理人員和過程人員推動的組織范圍的軟件工程過程改進。,個體軟件過程PSP,致力于開發(fā)高質量的產品,建立、管理和授權項目小組,并且指導他們如何在滿足計劃費用的前提下,在承諾的期限范圍內,不斷生產并交付高質量的產品。 TSP指導項目組中的成員如何有效地規(guī)劃和管理所面臨的項目開發(fā)任務,并且告訴管理人員如何指導軟件開發(fā)隊伍。始終以最佳狀態(tài)來完成工作。TSP實施集體管理與自己管理自己相結合的原則,最終目的在于指導開發(fā)人員如何在最少的時間內,以預定的費用生產出高質量的軟件產品,所采用的方法是對群組開發(fā)過程的定義、度量和改進。 實現(xiàn)TSP方法需要具備的條件 需要有高層主管和各級經理的支持,以取得必要的資源 整個軟件開發(fā)小組至少應在CMM的第二級(可重復層)。 全體軟件開發(fā)人員必須經過PSP的培訓,并有按TSP工作的愿望和熱情。 開發(fā)小組成員應在2到20個人之間。,群組軟件過程TSP,按TSP原理對開發(fā)小組的基本度量要素 所編文檔的頁數(shù)。 所編代碼的行數(shù)。 花費在各開發(fā)階段或各開發(fā)任務上的時間(以分為單位)。 在各個開發(fā)階段中引入和改正的差錯數(shù)目。 在各個階段對最終產品增加的價值。 度量TSP實施質量的過程質量元素 軟件設計時間應大于軟件實現(xiàn)時間。 設計評審時間至少應占一半以上的設計時間。 代碼評審時間至少應占一半以上的代碼編制時間。 在編譯階段發(fā)現(xiàn)的差錯不超過10個 在測試階段發(fā)現(xiàn)的差錯不超過5個。,群組軟件過程TSP,CMM、PSP和TSP組成的軟件過程框架,CMM是過程改善的第一步,它提供了評價組織的能力、識別優(yōu)先改善需求和追蹤改善進展的管理方式。企業(yè)只有開始CMM改善后,才能接受需要規(guī)劃的事實,認識到質量的重要性,才能注重對員工經常進行培訓,合理分配項目人員,并且建立起有效的項目小組。然而,它實現(xiàn)的成功與否與組織內部有關人員的積極參加和創(chuàng)造性活動密不可分。,CMM、PSP和TSP組成的軟件過程框架,PSP能夠指導軟件工程師如何保證自己的工作質量,估計和規(guī)劃自身的工作,度量和追蹤個人的表現(xiàn),管理自身的軟件過程和產品質量。經過PSP學習和實踐的正規(guī)訓練,軟件工程師們能夠在他們參與的項目工作之中充分運用PSP,從而有助于CMM目標的實現(xiàn)。 TSP結合了CMM的管理方法和PSP的工程技能,通過告訴軟件工程師如何將個體過程結合進小組軟件過程,并將后者與組織進而整個管理系統(tǒng)相聯(lián)系;通過告訴管理層如何支持和授權項目小組,堅持高質量的工作,并且依據數(shù)據進行項目的管理,向組織展示如何應用CMM的原則和PSP的技能去生產高質量的產品。,CMM、PSP和TSP組成的軟件過程框架,面向對象的軟件開發(fā)方法,面向對象技術是軟件技術的一次革命,在軟件開發(fā)史上具有里程碑的意義。 隨著OOP(面向對象編程)向OOD(面向對象設計)和OOA(面向對象分析)的發(fā)展,最終形成面向對象的軟件開發(fā)方法OMT(Object Modelling Technique)。這是一種自底向上和自頂向下相結合的方法,而且它以對象建模為基礎,從而不僅考慮了輸入、輸出數(shù)據結構,實際上也包含了所有對象的數(shù)據結構。所以OMT徹底實現(xiàn)了PAM沒有完全實現(xiàn)的目標。不僅如此,OO技術在需求分析、可維護性和可靠性這三個軟件開發(fā)的關鍵環(huán)節(jié)和質量指標上有了實質性的突破,徹底地解決了在這些方面存在的嚴重問題,從而宣告了軟件危機末日的來臨。,面向對象語言,雖然面向對象的思想可以追溯到六十年代,但是面向對象思想被普遍接受還是得益于面向對象語言的功勞。 最流行:C+語言 純面向對象 :Smalltalk語言,人工智能研究語言,人工智能一直是人們長期以來的夢想,從圖靈開始,半個多世紀以來,計算機科學家們對人工智能進行不懈的探索。 LISP表處理語言 PROGLOG語言 都不能算是真正的人工智能語言,智能組件,具有生命體的某些特征,即內部具有某種機制,使其自身的特性和功能不斷演變,成為更為強大,更具有適應性的組件。,從受精卵到初生嬰兒的變化,遺傳基因指導著受精卵如何分裂,成為胚胎,成為初生的嬰兒。從受精卵到嬰兒,特性和功能已經發(fā)生了本質的變化。,智能組件的誕生,以軟件工具平臺為母體, 以設計資料為基因, 以存儲空間為營養(yǎng)物質, 通過內部的運算(受精卵分裂), 最終成為應用系統(tǒng)組件(初生的嬰兒)。,可視化開發(fā)方法,可視化開發(fā)是90年代軟件界最大的兩個熱點之一。隨著圖形用戶界面的興起,用戶界面在軟件系統(tǒng)中所占的比例也越來越大,有的甚至高達6070。產生這一問題的原因是圖形界面元素的生成很不方便。為此Windows提供了應用程序設計接口API(Application Programming Interface),它包含了600多個函數(shù),極大地方便了圖形用戶界面的開發(fā)。但是在這批函數(shù)中,大量的函數(shù)參數(shù)和使用數(shù)量更多的有關常量,使基于Windows API的開發(fā)變得相當困難。為此Borland C+推出了Object Windows編程。它將API的各部分用對象類進行封裝,提供了大量預定義的類,并為這些定義了許多成員函數(shù)。利用子類對父類的繼承性,以及實例對類的函數(shù)的引用,應用程序的開發(fā)可以省卻大量類的定義,省卻大量成員函數(shù)的定義或只需作少量修改以定義子類。,可視化開發(fā)就是在可視開發(fā)工具提供的圖形用戶界面上,通過操作界面元素,諸如菜單、按鈕、對話框、編輯框、單選框、復選框、列表框和滾動條等,由可視開發(fā)工具自動生成應用軟件。 這類應用軟件的工作方式是事件驅動。對每一事件,由系統(tǒng)產生相應的消息,再傳遞給相應的消息響應函數(shù)。這些消息響應函數(shù)是由可視開發(fā)工具在生成軟件時自動裝入的。,可視化開發(fā)方法,UML 設計,組織機構設計,業(yè)務過程設計,數(shù)據模型設計,應用系統(tǒng)生成,軟件復用技術,軟件復用是指重復使用“為了復用目的而設計的軟件”的過程 。相應地,可復用軟件是指為了復用目的而設計的軟件。與軟件復用的概念相關,重復使用軟件的行為還可能是重復使用“并非為了復用目的而設計的軟件”的過程,或在一個應用系統(tǒng)的不同版本間重復使用代碼的過程,這兩類行為都不屬于嚴格意義上的軟件復用。,軟件復用技術發(fā)生在三個維上,在軟件演化的過程中,重復使用的行為可能發(fā)生在三個維上: 時間維:使用以前的軟件版本作為新版本的基礎,加入新功能,適應新需求,即軟件維護。 平臺維:以某平臺上的軟件為基礎,修改其和運行平臺相關的部分,使其運行于新平臺,即軟件移植。 應用維:將某軟件(或其中構件)用于其他應用系統(tǒng)中,新系統(tǒng)具有不同功能和用途,即真正的軟件復用。 這三種行為中都重復使用了現(xiàn)有的軟件,但是,真正的復用是為了支持軟件在應用維的演化,使用“為復用而開發(fā)的軟件(構件)”來更快、更好地開發(fā)新的應用系統(tǒng)。,分析傳統(tǒng)產業(yè)的發(fā)展,其基本模式均是符合標準的零部件(構件)生產以及基于標準構件的產品生產(組裝),其中,構件是核心和基礎,“復用”是必需的手段。實踐表明,這種模式是產業(yè)工程化、工業(yè)化的必由之路。標準零部件生產業(yè)的獨立存在和發(fā)展是產業(yè)形成規(guī)模經濟的前提。機械、建筑等傳統(tǒng)行業(yè)以及年輕的計算機硬件產業(yè)的成功發(fā)展均是基于這種模式并充分證明了這種模式的可行性和正確性。這種模式是軟件產業(yè)發(fā)展的良好借鑒,軟件產業(yè)要發(fā)展并形成規(guī)模經濟,標準構件的生產和構件的復用是關鍵因素。這正是軟件復用受到高度重視的根本原因。,軟件復用技術,軟件復用可以從多個角度進行考察。依據復用的對象,可以將軟件復用分為產品復用和過程復用。產品復用指復用已有的軟件構件,通過構件集成(組裝)得到新系統(tǒng)。過程復用指復用已有的軟件開發(fā)過程,使用可復用的應用生成器來自動或半自動地生成所需系統(tǒng)。過程復用依賴于軟件自動化技術的發(fā)展,目前只適用于一些特殊的應用領域。產品復用是目前現(xiàn)實的、主流的途徑。,軟件復用技術,軟件工程回顧,軟件的概念、特點和分類 軟件工程 概述 軟件工程框架 軟件生存周期 軟件開發(fā)模型 軟件配置管理 配置管理項 配置管理庫 質量要求 管理規(guī)程 工具 軟件測試 測試目的 軟件測試技術 軟件測試工作規(guī)程 測試組織 , CMM , PSP, TSP,第二講 信息應用系統(tǒng)監(jiān)理工作,在本講中您能了解如下知識點: 信息工程應用系統(tǒng)建設監(jiān)理的意義 監(jiān)理的目標和內容 應用軟件建設的質量控制 應用軟件建設的進度控制 應用軟件建設的投資控制,信息工程應用系統(tǒng)建設監(jiān)理的意義,國家在此方面投入了大量的社會資源。總攬全局,國內信息化建設取得了大量的成績,但也存在著問題和隱患。 目前國內信息應用系統(tǒng)建設項目的開發(fā)方式主要有四種:獨立開發(fā)、委托開發(fā)、合作開發(fā),購買商業(yè)化軟件進行二次開發(fā)。隨著社會的發(fā)展,社會分工的進一步細化,委托開發(fā)、合作開發(fā)、二次開發(fā)逐漸成為信息工程應用系統(tǒng)建設項目開發(fā)的主要工作模式。對于這三種開發(fā)方式,必然存在一個項目組負責具體工作,而在這個項目組內,則存在著代表兩個利益主體的成員,一方主要表現(xiàn)為業(yè)務支持人員(甲方),另一方主要表現(xiàn)為系統(tǒng)開發(fā)人員(乙方)。,信息量互不對稱性:甲方人員存在著信息技術的弱勢;乙方存在著業(yè)務信息的弱勢。由于雙方在技術和業(yè)務上存在著的信息互不對稱性,因此就很有可能出現(xiàn)通過損害對方而使己方受益的情況。 信息管理的互不對稱性:甲方存在信息管理的滯后現(xiàn)象,;乙方在對業(yè)務流程信息的管理方面存在缺陷,這也會對工程建設造成很大的影響。,信息工程應用系統(tǒng)建設監(jiān)理的意義,鑒于目前信息工程應用系統(tǒng)建設中甲乙雙方信息互不對稱性的存在,因此由一個第三方來
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設備維修人員管理制度
- 設備設施大修管理制度
- 設計公司存貨管理制度
- 設計施工項目管理制度
- 訴訟非訴事項管理制度
- 診所安全制度管理制度
- 調度督辦事項管理制度
- 財政專項項目管理制度
- 財政評審人員管理制度
- 貨物倉儲出口管理制度
- 電動卷揚機使用安全措施
- 鐵路空心墩任意兩個截面砼方量計算自編公式
- 中建有限空間專項施工方案
- 2023年04月2023年北京市國際教育交流中心招考聘用筆試題庫附帶答案解析
- 2023年中國直升機設計研究所校園招聘筆試參考題庫附帶答案詳解
- 《觀滄?!防斫庑阅瑢懺囶}及答案
- 冠寓運營管理手冊正式版
- 少兒美術畫面課件3-6歲《低幼兒畫貪吃的小老鼠》教案
- 會議記錄表(模板)
- 淺析對國際刑法中普遍管轄權的認識
- 2022年珠海市金灣區(qū)體育教師招聘筆試試題及答案
評論
0/150
提交評論