-----------------------------------------------------
以下內容節(jié)選自清華大學版《系統(tǒng)分析師教程》
僅供學習、參考使用,詳細內容請查閱原著
-----------------------------------------------------
1.3信息系統(tǒng)工程所涉及的技術內容
信息系統(tǒng)工程作為一門綜合的技術,與多種學科和技術有著深刻的內在聯(lián)系。從總體上講,它會涉及到社會和技術兩大領域,并綜合應用了管理科學、系統(tǒng)科學、數(shù)學、計算機科學、行為科學的研究成果,逐漸形成了自己的新的學科體系。
1.3.1 管理科學的應用
1.3.2 方法論的發(fā)展與應用
現(xiàn)在已經(jīng)認識到,信息系統(tǒng)的開發(fā)一般都經(jīng)歷系統(tǒng)規(guī)劃、需求定義、系統(tǒng)設計、實施和維護幾個階段,而它們都應該在科學的方法論的指導下來完成。從歷史的發(fā)展來看,信息系統(tǒng)開發(fā)的方法論的發(fā)展經(jīng)歷了以下的階段:
1.基于經(jīng)驗的開發(fā)
2.軟件危機與軟件工程
軟件危機主要表現(xiàn)是:一方面是無法滿足日益增長的對軟件的需求;另一方面是難以滿足對已有軟件的維護需要。其原因:一是軟件生產(chǎn)本身所存在的復雜性;二是缺乏完善的軟件開發(fā)方法和技術。
軟件工程方法將軟件,特別是軟件的開發(fā)過程劃分為階段,每一階段有明確的任務,在完成任務時又必須產(chǎn)生相應的成果或文檔。它強調首先明確軟件需求的重要性,并在需求明確的前提下,先進行對軟件的總體設計,再進行軟件各部分的詳細設計,編碼則應在詳細設計完成后才進行。軟件工程強調對軟件正確性和性能的測試,即應對軟件開發(fā)進行全程的質量監(jiān)控。上述思想和措施都是將軟件的生成按工程化的方法來實施,并在實施中強調加強管理的重要性。
3.自底向上和自頂向下
信息系統(tǒng)開發(fā)的發(fā)展過程經(jīng)歷過所謂“自底向上”方式和“自頂向下”。
自底向上方法的優(yōu)點有:
使信息系統(tǒng)的開發(fā)易于適應組織機構的真正需要
有助于發(fā)現(xiàn)和理解每個系統(tǒng)的附加需要,并易于判斷其費用
每一階段所獲得的經(jīng)驗和教訓有助于下一階段的開發(fā)
相對的說,每一階段的規(guī)模較小,易于控制和管理
自底向上方法的缺點有:
由于方法的演變性質,信息系統(tǒng)難以實現(xiàn)其整體性
由于系統(tǒng)為進行全局規(guī)劃,系統(tǒng)的數(shù)據(jù)一致性和完整性難以保證
為了達到系統(tǒng)的性能要求,往往不得不重新調整系統(tǒng),甚至要重新設計系統(tǒng)
由于系統(tǒng)實施的分散性和演變性,因而與企業(yè)目標的聯(lián)系往往是間接的,系統(tǒng)往往難以支持企業(yè)的整體戰(zhàn)略目標。
自頂向下方法的優(yōu)點有:
可為企業(yè)或機構的重要決策和任務實現(xiàn)提供信息
支持企業(yè)信息系統(tǒng)的整體性規(guī)劃,并對系統(tǒng)的個子系統(tǒng)的協(xié)調和通信提供保證
方法的時間有利于提高企業(yè)人員的整體觀察問題的能力,從而有利于尋找到改進企業(yè)組織的途徑
自頂向下方法的缺點有:
對系統(tǒng)分析和設計人員的要求較高
開發(fā)周期長,系統(tǒng)復雜,一般屬于一種高成本、大投資的工程
對于大系統(tǒng)而言,自上而下的規(guī)劃對于下層系統(tǒng)的實施往往缺乏約束力
從經(jīng)濟角度來看,很難說自頂向下的做法是合算的
4.模型化
對于信息系統(tǒng),特別是其核心部分的軟件系統(tǒng)的開發(fā),專家和工程人員從不同的角度、用不同的方法對它們進行了模型化,從而將相關的方法從實踐上升到理論。
(1)瀑布模型
瀑布模型是一類在軟件和系統(tǒng)開發(fā)中應用廣泛、影響深遠的模型,它規(guī)定了軟件工程的各項活動,包括系統(tǒng)規(guī)劃,需求分析,軟件設計,編碼,測試和維護。
瀑布模型為軟件的開發(fā)和維護提供了一種有效的模式。可根據(jù)這一模式制定出開發(fā)計劃,進行成本預算,組織開發(fā)力量,以項目的階段評審和文檔控制為手段有效地對整體開發(fā)過程進行指導,從而力求軟件產(chǎn)品能及時交付,并達到預期的質量要求。
(2)螺旋模型
為了解決瀑布模型實施時存在的問題,專家們提出了一種基于原型化開發(fā)的進化模型。其實施過程是首先做試驗開發(fā),并探究其可行性,并明確軟件需求,其結果為一個“原型”,再基于原型去開發(fā)一成功產(chǎn)品,將進化模型加以實施,并對實施中可能出現(xiàn)的風險進行分析,即構成螺旋模型。它認為風險是軟件開發(fā)不可忽視的潛在的不利因素,因此應及時對風險進行分析、分析并采取對策,從而降低風險。
制定計劃:確定目標,選定實施方案,分析項目開發(fā)約束條件
風險分析:分析所選擇的方案,考慮該方案可能存在的風險以及如何規(guī)避風險
工程實施:軟件開發(fā)過程的實施
工程評估:對成果進行評估,并提出修正意見
螺旋模型適合大型軟件的開發(fā),它采用進化的方法,并對可能出現(xiàn)的風險做出反應。使用該模型需要具有豐富經(jīng)驗的專家,他們應有相當豐富的風險評估經(jīng)驗和系統(tǒng)開發(fā)的專門知識。
(3)噴泉模型
噴泉模型是一類支持面向對象的、自底向上的開發(fā)模型,在實施中體現(xiàn)了迭代和無間隙的特征。它在實施中,對系統(tǒng)的某個部分常常重復迭代,相關的功能在迭代中逐步演化到系統(tǒng)中,并且能體現(xiàn)無間隙特征,即與瀑布模型相比,其分析、設計與編碼之間沒有明顯的界限。
以下內容節(jié)選自清華大學版《系統(tǒng)分析師教程》
僅供學習、參考使用,詳細內容請查閱原著
-----------------------------------------------------
1.3信息系統(tǒng)工程所涉及的技術內容
信息系統(tǒng)工程作為一門綜合的技術,與多種學科和技術有著深刻的內在聯(lián)系。從總體上講,它會涉及到社會和技術兩大領域,并綜合應用了管理科學、系統(tǒng)科學、數(shù)學、計算機科學、行為科學的研究成果,逐漸形成了自己的新的學科體系。
1.3.1 管理科學的應用
1.3.2 方法論的發(fā)展與應用
現(xiàn)在已經(jīng)認識到,信息系統(tǒng)的開發(fā)一般都經(jīng)歷系統(tǒng)規(guī)劃、需求定義、系統(tǒng)設計、實施和維護幾個階段,而它們都應該在科學的方法論的指導下來完成。從歷史的發(fā)展來看,信息系統(tǒng)開發(fā)的方法論的發(fā)展經(jīng)歷了以下的階段:
1.基于經(jīng)驗的開發(fā)
2.軟件危機與軟件工程
軟件危機主要表現(xiàn)是:一方面是無法滿足日益增長的對軟件的需求;另一方面是難以滿足對已有軟件的維護需要。其原因:一是軟件生產(chǎn)本身所存在的復雜性;二是缺乏完善的軟件開發(fā)方法和技術。
軟件工程方法將軟件,特別是軟件的開發(fā)過程劃分為階段,每一階段有明確的任務,在完成任務時又必須產(chǎn)生相應的成果或文檔。它強調首先明確軟件需求的重要性,并在需求明確的前提下,先進行對軟件的總體設計,再進行軟件各部分的詳細設計,編碼則應在詳細設計完成后才進行。軟件工程強調對軟件正確性和性能的測試,即應對軟件開發(fā)進行全程的質量監(jiān)控。上述思想和措施都是將軟件的生成按工程化的方法來實施,并在實施中強調加強管理的重要性。
3.自底向上和自頂向下
信息系統(tǒng)開發(fā)的發(fā)展過程經(jīng)歷過所謂“自底向上”方式和“自頂向下”。
自底向上方法的優(yōu)點有:
使信息系統(tǒng)的開發(fā)易于適應組織機構的真正需要
有助于發(fā)現(xiàn)和理解每個系統(tǒng)的附加需要,并易于判斷其費用
每一階段所獲得的經(jīng)驗和教訓有助于下一階段的開發(fā)
相對的說,每一階段的規(guī)模較小,易于控制和管理
自底向上方法的缺點有:
由于方法的演變性質,信息系統(tǒng)難以實現(xiàn)其整體性
由于系統(tǒng)為進行全局規(guī)劃,系統(tǒng)的數(shù)據(jù)一致性和完整性難以保證
為了達到系統(tǒng)的性能要求,往往不得不重新調整系統(tǒng),甚至要重新設計系統(tǒng)
由于系統(tǒng)實施的分散性和演變性,因而與企業(yè)目標的聯(lián)系往往是間接的,系統(tǒng)往往難以支持企業(yè)的整體戰(zhàn)略目標。
自頂向下方法的優(yōu)點有:
可為企業(yè)或機構的重要決策和任務實現(xiàn)提供信息
支持企業(yè)信息系統(tǒng)的整體性規(guī)劃,并對系統(tǒng)的個子系統(tǒng)的協(xié)調和通信提供保證
方法的時間有利于提高企業(yè)人員的整體觀察問題的能力,從而有利于尋找到改進企業(yè)組織的途徑
自頂向下方法的缺點有:
對系統(tǒng)分析和設計人員的要求較高
開發(fā)周期長,系統(tǒng)復雜,一般屬于一種高成本、大投資的工程
對于大系統(tǒng)而言,自上而下的規(guī)劃對于下層系統(tǒng)的實施往往缺乏約束力
從經(jīng)濟角度來看,很難說自頂向下的做法是合算的
4.模型化
對于信息系統(tǒng),特別是其核心部分的軟件系統(tǒng)的開發(fā),專家和工程人員從不同的角度、用不同的方法對它們進行了模型化,從而將相關的方法從實踐上升到理論。
(1)瀑布模型
瀑布模型是一類在軟件和系統(tǒng)開發(fā)中應用廣泛、影響深遠的模型,它規(guī)定了軟件工程的各項活動,包括系統(tǒng)規(guī)劃,需求分析,軟件設計,編碼,測試和維護。
瀑布模型為軟件的開發(fā)和維護提供了一種有效的模式。可根據(jù)這一模式制定出開發(fā)計劃,進行成本預算,組織開發(fā)力量,以項目的階段評審和文檔控制為手段有效地對整體開發(fā)過程進行指導,從而力求軟件產(chǎn)品能及時交付,并達到預期的質量要求。
(2)螺旋模型
為了解決瀑布模型實施時存在的問題,專家們提出了一種基于原型化開發(fā)的進化模型。其實施過程是首先做試驗開發(fā),并探究其可行性,并明確軟件需求,其結果為一個“原型”,再基于原型去開發(fā)一成功產(chǎn)品,將進化模型加以實施,并對實施中可能出現(xiàn)的風險進行分析,即構成螺旋模型。它認為風險是軟件開發(fā)不可忽視的潛在的不利因素,因此應及時對風險進行分析、分析并采取對策,從而降低風險。
制定計劃:確定目標,選定實施方案,分析項目開發(fā)約束條件
風險分析:分析所選擇的方案,考慮該方案可能存在的風險以及如何規(guī)避風險
工程實施:軟件開發(fā)過程的實施
工程評估:對成果進行評估,并提出修正意見
螺旋模型適合大型軟件的開發(fā),它采用進化的方法,并對可能出現(xiàn)的風險做出反應。使用該模型需要具有豐富經(jīng)驗的專家,他們應有相當豐富的風險評估經(jīng)驗和系統(tǒng)開發(fā)的專門知識。
(3)噴泉模型
噴泉模型是一類支持面向對象的、自底向上的開發(fā)模型,在實施中體現(xiàn)了迭代和無間隙的特征。它在實施中,對系統(tǒng)的某個部分常常重復迭代,相關的功能在迭代中逐步演化到系統(tǒng)中,并且能體現(xiàn)無間隙特征,即與瀑布模型相比,其分析、設計與編碼之間沒有明顯的界限。