結構化方法和物件導向方法之比較

2022-07-15 15:48:09 字數 2730 閱讀 4211

從目前大多數資訊系統的開發現狀來看,結構化方法是運用最為普遍,同時也是最為成熟的一種開發方式。其基本要點是以系統的邏輯功能設計和資料流關係為基礎,根據資料流程圖和資料字典,通過「自上而下」和「自下而上」的反覆,逐層把系統劃分為多個大小適當、功能明確、具有一定獨立性並容易實現的模組,從而把複雜系統的設計轉變為多個簡單模組的設計。

1.2.1、軟體結構圖(sc圖)

sc圖是描述軟體結構的一種圖形工具,圖中方框代表模組,框內是模組名字;方框之間的線段表示模組的呼叫關係。

1.2.2、軟體系統的2種典型結構

(1) 變換型結構(變換型dfd)

變換型結構的特點是在系統的資料流圖中,呈現出明確的輸入、變換處理和輸出3個部分的結構特徵。絕大多數的軟體系統均表現出變換型結構的特徵。

(2) 事務型結構(事務型dfd)

在資料流圖中呈發散狀的結構特徵稱為事務型處理結構,這個加工稱為事務處理中心,每一條處理路徑稱為事務處理。這類結構的系統完成下述任務:

①接收輸入資料;

②分析每個事務資訊以確定它的型別;

③ 根據事務型別選取一條活動路徑實現事務的處理。

①分析當前的情況,做出反映當前物理模型的dfd;

②推導出等價的邏輯模型的dfd;

③設計新的邏輯系統,生成資料字典和基元描述;

④建立人機介面,提出可供選擇的目標系統物理模型的dfd;

⑤確定各種方案的成本和風險等級,據此對各種方案進行分析;

⑥選擇一種方案;

⑦建立完整的需求規約。

一:認為客觀世界是由各種"物件"所組成的。任何事物都是物件,每乙個物件都有自已的運動規律和內部狀態,每乙個物件都屬於某個物件類,都是該物件類的乙個元素。複雜的物件可以是由相對比較簡單的各種物件以某種方式而構成的。不同物件的組合及相互作用就構成了我們要研究、分析和構造的客觀系統。

三:認為對已分成類的各個物件,可以通過定義一組"方法"來說明該物件的功能,即允許作用於該物件上的各種操作。物件間的相互聯絡是通過傳遞"訊息"來完成的,訊息就是通知物件去完成乙個允許作用於該物件的操作,至於該物件將如何完成這個操作的細節,則是封裝在相應的物件類的定義中的,細節對於外界是隱蔽的。

用uml建模

1.描述總體需求。建立用例模型和靜態模型,以搭建系統體系結構。用例圖是系統的高階檢視,要求按照物件導向的原則, 站在功能劃分的角度將系統要實現的行為劃分為用例;以用例之間的動態互動及互動時間為依據產生順序圖;

2.在用例圖的基礎上抽象出系統的類,明確各模組之間的關係以適當的粒度畫出類圖,其中也包括了與用例圖的相互迭代修改在分析完模組的靜態互動關係後繼而要繪製出構件圖。

3.對模組互動和構件細節做進一步分析,補充狀態圖、活**、協作圖和實施圖等,從盡可能多的角度對複雜系統進行描述。在模型確定後就可以借助相應的支撐軟體將模型匯出為相關**,形成編碼所需的初步框架。

首先要進行物件導向的分析,了解問題域所涉及的物件、物件間的關係和作用;然後構造問題的物件模型,力爭該模型能真實地反映出所要解決的實質問題。

其次進行物件導向的設計,設計軟體的物件模型。在對問題的物件模型的分析基礎上,對它進行一定的改造,應以最少改變原問題域的物件模型為原則。然後在軟體系統內設設計各個物件、物件間的關係、物件間的通訊方式等。

最後是物件導向的實現,即指軟體功能的編碼實現。包括每個物件的內部功能的實現;確立物件哪一些處理能力應在哪些類中進行描述;確定並實現系統的介面、輸出的形式及其它控制機理等。

結構化方法的基本思想主要體現在三個方面。一、自頂向下,逐步求精。把程式看成是乙個逐步演化的過程。把乙個系統與程式看成是一層一層的。系統可以劃分為幾個子系統,而每個子系統又劃分為不同部分。二、模組化將幾個系統分成幾個模組,每個模組實現特定的功能,最終整個系統由這些模組組成,模組跟模組之間通過介面傳遞資訊。模組最重要的特點就是獨立性,模組之間還有上下層的關係,上層模組呼叫下層模組來實現一些功能。三、語句採用順序結構、分支結構、迴圈結構等常用的語句結構。

物件導向方法的基本思想主要體現在五個方面。一、客觀世界中的事物都是物件,物件之間存在一定的關係,並且複雜物件由簡單物件構成。二、具有相同屬性和操作的物件屬於乙個類,物件是類的乙個例項。三、類之間可以有層次結構,類可以有子類,其中,子類繼承父類的全部屬性和操作,而且子類有自己的屬性和操作。四、類具有封裝性,把類內部的屬性和一些操作隱藏起來,只有公共的操作對外是可見的,物件只可通過訊息來請求其他物件的操作或自己的操作。五、強調充分運用人在日常邏輯思維中經常採用的思想方法與原則。

結構化方法遵循基本原則有三個。一、抽象原則。這是一切系統科學方法都必須遵循的基本原則。它注重把握系統的本質內容,而忽略與系統當前目標無關的內容,它是一種基本的認知過程和思維方式。二、分解原則。這是結構化方法中最基本的原則。它是一種先總體後區域性的思想原則,在構造資訊系統模型時,它採用自頂向下、分層解決的方法。三、模組化原則。這是結構化方法最基本的分解原則的具體應用,它主要出現在結構化設計階段中,將系統分解成具有特定功能的若干模組,從而完成系統指定的各項功能。

物件導向方法遵循基本原則有四個。一、抽象。這是處理現實世界複雜性的最基本方式。在oo方法中它強調乙個物件和其他物件相區別的本質特性。二、封裝。這是對抽象元素的劃分過程抽象,由結構和行為組成,封裝用來分離抽象的原始介面和它的執行。它將乙個物件的外部特徵和內部的執行細節分割開來,並將後者對其他物件隱藏起來。三、模組化。這是已經被分為一系列聚集的和耦合的模組的系統特性,對於乙個給定的問題,確定正確的模組集幾乎與確定正確的抽象集一樣困難,通常每個模組應該足夠簡單以便能夠被完整地理解。四、層次。抽象集通常形成乙個層次,層次是對抽象的歸類和排序。在複雜的現實世界中有兩種非常重要的層次,乙個是型別層次,另乙個是結構性層次。確定抽象的層次是基於物件的繼承,它有助於在物件的繼承中發現抽象間的關係,搞清問題的所在,理解問題的本質。

結構化方法和物件導向方法的比較

結構化方法和物件導向方法的比較 翁松秀 北京航空航天大學 摘要 程式設計之精髓在於程式設計思想,而不同的程式設計方法有不同的程式設計思想。結構化程式設計方法一直以來都是程式設計人員基本的程式設計方法,而近年來流行的物件導向方法也備受人們青睞。文章通過介紹程式設計世界的這兩種主要程式設計方法,結構化方...

結構化開發方法與物件導向開發方法之比較

1 結構化方法 結構化方法起源於1960 1980年代。隨著當時軟體工程業的發展,軟體規模逐步擴大。而傳統的以功能和資料為中心的開發方法已經無法適用於大型系統的開發,由此結構化方法運用而生。結構化方法是結構化分析 sa 結構化設計 sd 和結構化程式設計技術 sp 的組合。1.1 結構化分析 結構化...

結構化方法與物件導向方法的比較

結構化方法,是70年代末,由demarco等人提出的,旨在減少分析活動中的錯誤,建立滿足使用者需求的系統邏輯模型。結構化方法是強調開發方法的結構合理性以及所開發軟體的結構合理性的軟體開發方法,也稱為新生命週期法,是生命週期法的繼承與發展,是生命週期法與結構化程式設計思想的結合。其基本思想是用系統工程...