信息系統開發方法


常用的開發方法包括:

①結構化方法

②面向對象方法(使用最多的)

③原型化方法

④面向服務的方法

一、結構化方法

由結構化分析(SA,Structure Analysis),結構化設計(SD,Structure Design),結構化程序設計(SP,Structure Program)三部分組成。它的基本思想:把一個復雜問題的求解過程分階段進行,而且這種分解是自頂向下,逐步求精,模塊化設計。即:把一個系統分成幾個模塊,然后每個模塊設計具體怎么實現。

 

 所以叫自頂向下(從一個系統,往下分成多個模塊),逐步求精(一點點細化),模塊化設計(把一個系統分成幾個模塊,具體設計每個模塊)。

適用於數據處理領域,但不適應規模較大、復雜的系統開發。缺點:

1.開發周期長(由於結構化的周期是比較長的,用戶到最后交付的時候才看到結果,如果需求有偏差,或者錯誤理解的東西,到項目的最后階段才能發現)

2.難以適應需求變化(客戶的需求變化是比較快的,結構化方法不能及時適應去調整)

3.很少考慮數據結構(結構化開發方法是面向數據流的,按照業務流程,轉換成數據流,這一步是什么數據流,流轉到下一步是什么樣的,注重的是系統功能分解,兼顧數據結構方面不多。就涉及一個問題,結構化分析完之后SA,到結構化設計階段SD,這個轉換比較困難)。

基於這些缺點,現在很少再用結構化開發方法了。

二、面向對象方法

面向對象的方法是一種運用對象、類、繼承、封裝、聚合、消息傳送、多態性等概念來構造系統的軟件開發方法。

面向對象=對象(Object)

      +類(classification)

      +繼承(inheritance)

      +通信(communication with messages)

采用這四個概念開發的軟件系統是面向對象的。

------------------太熟了,隨便看看就行 start----------------

1.對象(object)

屬性(attribute)用來描述對象的靜態特征。

張三,有姓名,有年齡,有性別,這些就是屬性。

操作(operation)(方法或服務)規定了對象的行為,表示對象能提供的服務。

張三要吃飯、上課、打球,這些動態的行為,就是操作。

2.類(class)

類是一組具有相同屬性和相同操作的對象的集合。

一個類中的每個對象都是這個類的一個示例(instance)

類是創建對象的模板,從同一個類實例化的每個對象都具有相同的結構和行為。

3.繼承(inheritance)

集成是指特殊類(子類)的對象擁有其一般類(父類)的全部屬性與服務。

父類中定義了其所有子類的公共屬性和操作,在子類中除了定義自己特有的屬性和操作外,可以繼承其父類(或祖先類)的屬性和操作,還可以對父類(或祖先類)中的操作重新定義其實現方法。

如果一個子類只有唯一一個父類,這個繼承成為單一繼承。

如果一個子類有一個以上的父類,這種繼承成為多重繼承。(java沒有多繼承,但其他語言有)

4.多態

多態性是指同一個操作作用於不同的對象上可以有不同的解釋,並產生不同的執行結果。

------------------太熟了,隨便看看就行 end----------------

5.消息

 消息傳遞是對象間通信的手段(一個對象和另一個對象時孤立的,他們通過消息來產生聯系),一個對象通過向另一個對象發送消息來請求其服務(客戶端是一個對象,百度網站是一個對象,我們發送消息請求百度網站,獲取網頁)。一個消息通常包括接受對象名、調用的操作名和適當的參數(如果有必要的話)。

消息只告訴接受對象需要完成什么操作(比如,我們要請求web服務),但並不指示接收者怎樣完成操作(我們不用操心接收者服務器如何執行這個消息產生結果)。消息完全由接收者解釋執行。

三、原型化方法(快速原型法)

 

 

客戶不能明確指出他要什么需求,我們建個原型,在原型上討論系統是什么樣的。討論完了再根據這個需求去做系統。比如國家要造飛機,不可能直接造一個,再在飛機的基礎上修改。而是,先造一個模型,在這個模型的基礎上修改、討論,當確定了之后,再根據這個模型造真正的飛機。

水平原型:給客戶看建好的原型,給客戶看,客戶哪里不滿意了,再做修改,在需求討論中起到一個導航的作用。

垂直原型:對某個技術點沒有把握,做個垂直原型,討論下技術的實現。驗證這個點能否實現。

拋棄型原型:用來驗證需求的,讓用戶指出哪些是他需要的,哪些是需要改的。用戶指出確定點和需要修改的地方之后,我們把原型扔掉,按照需求重新開發一個系統。

演化型原型:在原型的基礎上不斷的完善改進,這個原型最終演化為客戶需要的產品。

 

 上圖:不停的和用戶交流,讓用戶決定哪些功能需要,哪些不需要。

 

 

 上圖:它和結構化開發是不同的,原型化的方法是適應用戶需要的。

    原型如果建立過程時間很長成本很高,就不適用這種開發模式了。因為原型本身就是為了明確需求,需要快速完成。

    原型法需要相關人員掌握畫原型的技術,熟練使用原型工具。

四、面向服務的方法

 

 

比如,在學校有很多項目,圖書管理項目、后勤管理項目、學生信息系統等,但這些項目之間沒有關系,這些系統之間是一個一個的孤島,他們的數據無法共享的。比如,一個學生要轉學,我們要在每個系統里處理和他有關的,他的圖書卡、飯卡押金、后勤住宿押金等。如何把這些系統整合起來呢。我們可以采用面向服務的方法。把每個系統當成服務封裝起來,對外提供統一標准的接口,服務之間只要通過接口調用,就這樣系統之間就可以交互數據了,我們把這種方法叫做面向服務的方法。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM