雲大軟體工程實驗二軟體需求

2022-10-04 13:18:14 字數 3347 閱讀 6182

實驗報告

課程: 軟體工程實驗任課教師指導教師序號:

專業學號姓名成績

實驗二軟體需求

1.找出對於計算機系統來說四種可能要定義的需求,並簡要描述之

答:可能要定義的需求如下:

(1)功能需求:對系統應該提供的服務和功能、如何對輸入做出反應以及在特定條件下的行為的描述。在某些情況下,功能需求可能還要明確宣告系統不應該做什麼。

(2)非功能需求:指不直接與系統具體功能相關的一類需求。換言之,它們定義了對系統提供的服務或功能的約束。包括可靠性、儲存空間、時間約束、開發過程的約束、標準等。

(3)使用者需求:從使用者的角度來描述系統功能和非功能需求,以便讓不具備專業技術方面知識的使用者看懂。它是用自然語言、圖表和直觀的圖形來敘述關於系統需要提供那些服務以及系統操作受到那些約束。

(4)系統需求:比使用者需求更詳細的需求描述,是系統實現的基本依據。詳細地給出系統將要提供的服務以及系統所受到的約束,系統需求應該陳述系統應該做什麼而不包括系統應該如何實現。

2.討論用自然語言定義使用者需求和系統需求存在的問題。使用乙個小例子說明格式化的自然語言能否幫助避免一些表述困難

答: (1)用自然語言定義使用者需求和系統需求存在的問題:

①自然語言的解釋依賴於讀者和作者對於同乙個詞語有一致的解釋,因為自然語言存在二義性,因此會造成語義理解的偏差;

②乙個自然語言的需求描述隨意性很大,能以完全不同的方式來描述相同的事物,使用者很難判斷什麼時候需求是一樣的,什麼時候需求是不一樣的;

③不存在乙個簡單的方法,使自然語言書寫的需求模組化,這種形式描述的需求極難發現相關性;

④用自然語言書寫的需求描述容易引起誤會,而這些誤會可能在軟體過程的後期才發現,這時再去解決問題費用將會相當高。

(2)例子說明:

例如,「shoes must be worn」有兩種解釋:「鞋子必須被穿」,「乙個人必須要穿鞋」,這樣就存在了二義性。如果使用格式化的自然語言,我們可以說「one people wear pair of shoes」,這樣就可以避免二義性。

使用格式化的自然語言描述除去了描述中的一些問題,這是在描述中減少了可變性和需求被有效劃分的結果。但在描述中還是會存在一些二義性。

3.開發乙個軟體系統管理進入診所**的病人的記錄。記錄內容包含所有一般性的病人監控記錄(溫度,血壓等)、所進行的處置、病人的反映等。處置完畢,如果病人需要住院觀察,將這些記錄傳給負責的住院大夫。

由他/她來維護病人的完整記錄。

請找出主要的視點,用視點層次圖組織這些視點。

答:(1)主要的視點有:病人、記錄、住院大夫、管理員

(2)視點層次圖:

4.分別對上下文模型、行為模型、資料模型、物件模型、結構化方法進行分析說明其優劣。

答:(1)上下文模型:

①優點:在需求匯出和分析過程的早期階段,應該界定系統的邊界,定義系統的上下文是有意義的,由於系統使用的社會性和組織性,系統邊界的確定充滿了非技術性因素。比如,可能需要一種劃分,使得分析過程可以完全在乙個地點完成;或者需要一種劃分使得成本增長、部門必須擴張才能完成系統的設計和實現。

②缺點:體系結構模型描述系統的環境,不描述其他子系統之間的關聯關係,也不描述要分析的系統本身。外部系統可能產生資料供該系統使用,同時也使用該系統生成的資料。

這些周邊子系統可能與該系統共享資料,可能與系統直接相連,或通過網路相連,或者根本就不連在一起。在空間上,這些子系統可能與該系統同在一處,也可能分處在不同的建築物中,所有的這些因素都將影響系統的需求,必須加以考慮。

(2)行為模型:

①優點:行為模型用來描述系統的所有行為。主要有兩類,一類是資料流模型,用來描述系統中的資料處理過程,另一類是狀態機模型,用以描述系統如何對事件做出響應。

資料流模型的價值主要體現在它對系統中的資料和資料在特定的過程中的流動的跟蹤和記錄,有助於系統分析人員理解系統中到底發生了什麼。狀態機模型尤其適合用來描述實時系統。

②缺點:資料流模型在分析模型中,對程式功能模組的加工只能由手工處理或借助計算機來處理。狀態機模型的主要問題在於可能的狀態數會劇增。

(3)資料模型:

①優點:最廣泛採用的資料建模技術是實體-關係-屬性建模(即era建模),它描述資料實體、關聯屬性以及實體間的關係。資料模型常常和資料流模型一起用來描述系統的資訊結構。

②缺點:uml沒有為資料模型引進專門的描述符號,只可以用uml類模型以及在類之間建立名字關聯的方法表示出資料模型。era模型缺乏對細節的描述,還需要對實體、關係、屬性做更詳細的描述。

(4)物件模型:

①優點:在需求分析階段開發的物件模型既可以用來表達系統資料也可以用來表達對資料的處理,在這一方面,物件模型可以看成是資料流和語義資料模型的結合,同時,物件模型在說明系統實體是如何分類和復用的時候也非常有用。對於某些系統而言,物件模型是一種對映真實世界中實體及對其操作的自然方式。

②缺點:某些抽象的高層實體(如圖書館、醫療記錄系統或字處理器)就很難使用物件模型,它們沒有必要擁有乙個簡單的介面以包容獨立的屬性和操作。

(5) 結構化方法:

①優點:結構化的方法,如結構化系統分析和物件導向分析等,提供了乙個詳細的系統建模框架,作為需求匯出和分析的一部分。絕大部分結構化方法有自己常用的系統模型集,這些方法通常是先定義乙個用來匯出模型的過程和作用於模型的一組規則和指南,然後再建立系統的標準化文件。

②缺點:不提供對非功能性系統需求的有效理解和建模;不提供對使用者選擇的合適方法指導,也沒有對方法適用的特殊環境的忠告;往往產生大量文件,系統需求的要素被隱藏在一大堆具體細節的描述中;產生的模型太注重細節以致使用者覺得難以理解,因而很難去驗證這些模型的真實性。

5.對電子郵件系統中的資料處理進行建模,並分別為郵件傳送和郵件接收建立處理模型。

答:可以使用資料流模型來進行建模,它是描述系統資料處理的很直觀的方式,模型中的符號分別表示功能模組處理、資料的儲存和資料在功能模組之間的流動。

(1) 電子郵件系統資料處理模型:

傳送者的郵件

接收者的郵件

(2) 郵件傳送處理模型:

新建郵件郵件傳送確認

(3) 郵件接收處理模型:

登陸郵箱

6.簡要說明z方法在軟體工程中的應用。

答: 軟體工程中的形式化方法是一種基於數學的軟體開發方法,它可應用於軟體工程的各個階段。z本身是乙個書寫規格說明的語言,或者說是一種表示法,它是目前人們非常感興趣的一種規格說明方法。

z是一種形式化語言,在需要時開發者可以嚴格地驗證規格說明的正確性,z語言的模式是基本結構,用於描述系統的狀態和操作。

使用z語言可以降低軟體開發費用,雖然用z寫規格說明所需用的時間比使用非形式化技術要多,但開發過程所需要的總時間卻減少了。雖然使用者無法理解用z寫的規格說明,但是,可以依據z規格說明用自然語言重寫規格說明,這樣得到的自然語言規格說明,比直接用自然語言寫出的非形式化規格說明更清楚、更正確。

目前已經在許多軟體開發專案中成功地運用了z語言,目前,z也許是應用得最廣泛的形式化語言,尤其是在大型專案中z語言的優勢更加明顯。

電大軟體工程實驗報告

學校 寧波廣播電視大學 班級 10春電腦科學與技術 姓名學號 1 實驗內容說明 圖書館是高等院校的重要組成部門,是教師和學生獲取知識的重要場所。隨著校園網的發展,各高等院校的圖書館都開始使用 圖書管理資訊系統軟體 開展工作。由於目前市場上的軟體大多只是一些條框,沒有形成特定環境下工作的圖書管理系統 ...

北科大軟體工程實驗報告

北京科技大學計算機與通訊工程學院 實驗報告 實驗名稱 黑盒測試 學生姓名邢劍 專業 資訊保安 班級 1201 學號 41259009 指導教師 王忠民 實驗成績 實驗地點 北京科技大學 實驗時間 2015 年 4 月 19 日 一 實驗目的與實驗要求 1 實驗目的 a.針對 的註冊登入流程,設計測試...

軟體工程實驗二

實驗二一 實驗室名稱 二 試驗專案名稱 需求分析 三 實驗目的 1.學會如何根據客戶的需求整合需求分析報告 2.了解和使用idef1x圖和uml類圖對系統做出概要設計 3.學會使用visio繪製idef1x圖和uml類圖 四 實驗內容 1 請從下面的描述中找出繪製資料流圖的四種成分並用visio繪製...