第一篇:系統分析與設計復習要點
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.可行性研究報告一般涉及哪些內容? 用例圖的要素有哪些? 順序圖的特點? 簡單介紹總體設計、詳細設計涉及的主要工作。方案建議書一般涉及哪些內容? 黑盒測試和白盒測試各自的特點是什么? 什么是HIPO圖,它的作用什么? 簡單介紹總體設計、詳細設計涉及的主要工作 在結構化系統分析中數據字典的作用是什么? 軟件生命周期的瀑布模型包含哪些階段? 系統開發生命周期中“系統分析與設計”的重要性。什么是UML?三種表示形式是什么? 類圖中定義了四種關系? 在結構化分析方法中,使用的主要工具有哪些? 封裝是面向對象方法的一個重要原則,封裝有兩個含義是什么? 電子商務應用軟件三層是哪些層? 項目管理過程中安排項目進度常用的工具有哪些圖? 系統規劃階段的成果主要有哪些? 系統開發生命周期將系統開發過程分為5個階段,分別是是什么? 交互圖可分為哪兩種,其特點是什么? 畫出客戶使用ATM的用例圖。
每個銀行用戶都擁有自己的賬戶,而賬戶又分為人民幣賬戶和美元賬戶,請畫出以上提到的“賬戶”、“人民幣賬戶”和“美元賬戶”的類圖,并標出三者之間的關系。其中,“賬戶”的屬性包括:1)賬號:string;2)余額:double;3)身份證號:string。其中“賬號”和“余額”為Private,“身份證號”為Public。
22.首次購買基金的描述,畫出相應的活動圖。
客戶來到銀行,柜員首先判斷該客戶是否有該行的“綜存賬戶”;
如果沒有“綜存賬戶”,則由用戶提出申請,然后柜員協助辦理“綜存賬戶”,“綜存賬戶”開通后需要往賬戶中存入一定額度的現金,接下來需要該客戶填寫“風險容忍度測試表”,在客戶填寫該表的過程中,理財專員幫助客戶“申辦基金賬戶”;
如果客戶本來就有“綜存賬戶”,則該客戶直接填寫“風險容忍度測試表”,在客戶填寫該表的過程中,理財專員幫助客戶“申辦基金賬戶”;
主管審核,通過審核則該段流程結束,否則返回給理財專員。
A.對于并行的流程可以采用分叉與匯合表示?B.利用泳道區分不同的對象?
23.根據下列描述畫出該用例圖
某電子商務網站的用戶要“查詢訂單狀態”,在查詢之前必須進行“用戶合法性檢查”,“用戶合法性檢查”有兩種途徑,一種是“通過密碼驗證”,另一種是“通過手機短信驗證”; 用戶如果想“下訂單”也必須先進行“用戶合法性檢查”;
“下訂單”還包括一種特殊情況,即“下加急訂單”。
24.大雁是群居動物,每只大雁都屬于一個“雁群”,一個“雁群”可以有多只“大雁”,用類圖表示“大雁”和“雁群”這兩個類的關系。“雁群”這個類的屬性包括“大雁數量:int”和“過冬地點:string”,類的方法有“V字形飛行”和“一字形飛行”?!按笱恪边@個類的屬性包括“大雁體重:float”和“大雁性別:bit”,類的方法有“下蛋”和“飛行”。
第二篇:系統分析與設計復習總結
第一章
系統分析員:使用信息技術的商業專業人員,利用分析與設計技術解決商業問題。需要具備的基本知識與技能:1.技術知識與技能
2.商業知識與技能
3.人的知識與技能
4.誠實與道德
系統分析員在系統開發中的職責范圍:程序分析員、商業系統分析員、系統聯絡員、最終用戶分析員、商業顧問、系統顧問、系統支持分析員、系統設計師、軟件工程師、系統結構設計師。
第二章
系統開發生命周期的階段劃分:項目計劃階段、分析階段、設計階段、實施階段、支持階段。項目計劃階段、分析階段、設計階段的主要活動
1.項目計劃階段:定義問題、確認項目的可行性、制定項目的進度表、為項目安排人員、啟動項目
2.分析階段:收集信息、確定系統需求、建立需求發現的原型、劃分需求的優先級、產生并評估可替換方案、與管理人員一起審查建議
3.設計階段:設計并集成網絡、設計應用程序結構、設計用戶界面、設計系統界面、設計并集成數據庫、設計細節的原型化、設計并集成系統控制 項目開發隊伍的人員組成(圖2-4 系統開發項目的參加人員)
在項目計劃階段,項目組僅由少數人員組成,基本上包括一個項目經理和一兩個有經驗的系統分析員。
分析階段要求項目組成員有良好的分析技能和扎實的問題域知識。設計是較專業化的活動,需要補充有專業技術的人員。在實施階段,通常增加許多編程人員和質量控制人員,項目組在實施階段通常是最大的。項目可行性分析的要素:
1.經濟可行性
2.組織上和文化上的可行性 3.技術可行性 4.進度表可行性 5.資源可行性
PERT/CPM:基于單個任務或活動對項目進行規劃的一種方法。
圖 2-15 客戶支持項目的部分PERT圖
甘特(Gantt)圖:以條形圖代表項目進度表的任務和活動。
圖2-16 客戶支持項目的甘特圖
第三章:方法、技術、模型、工具以及它們之間的相互關系
系統開發方法:提供完成系統開發生命周期每一步的詳細指導,包括具體的模型、工具和技術。
技術:幫助分析員完成系統開發活動或任務的一組方法。模型:現實世界某些重要方面的表示。
工具:幫助生成項目中所需模型或其他組建的軟件支持。相互關系:圖3-4 方法中個組件之間的關系 結構化方法與面向對象方法的比較
圖3-5 結構化編程的三種結構:順序結構、選擇結構、循環結構。
第四章
需求調查的對象:
用戶,即每天實際使用系統的人; 客戶,即支付和擁有系統的人;
技術人員,即確保系統在組織的計算機環境下運行的人。需求調查的方法:
向系統相關者分發和收集調查表 復查現有的報表、表格和過程描述 主持與用戶的面談和討論 觀察商業過程和工作流 建立原型
主持聯合應用程序社街(JAD)會議 需求調查的結果
系統需求:系統所提供功能的詳細定義。
功能需求:描述系統必須支持的功能和過程的系統需求。技術需求:描述操作系統環境和性能目標的系統需求。通常把系統需求分為兩類:功能需求和技術需求。功能需求用于說明新系統必須支持的基本商業功能,而技術需求則包括系統性能目標、操作環境以及其他非功能性問題。
第五 – 七章:系統分析
模型的分類:包括數學模型、描述模型和原圖模型。
數學模型:描述系統技術方面的一系列公式,用來表示系統精確的方面,這些部分最適合用公式或數學符號表示。
描述模型:描述系統某一方面的描述性的備忘錄,報表或列表。圖形模型:圖表和系統某些方面的示意性表示。圖形模型有助于理解那些很難用語言來描述的復雜關系。
事件的分類:外部事件,臨時事件和狀態事件。
外部事件:系統之外發生的事件,通常都是由外部實體或動作參與者觸發的。臨時事件:由于到達某一時刻所發生的事件。
狀態事件:當系統內部發生了需要處理的情況時所引發的事件。事件表:以各個事件為行,各個事件的關鍵信息為列。圖5-15 事物之間的關聯關系:只能一個(強制)、0或多個(可選)、1或多個(強制)0或1個(可選)
圖 5-21 圖5-22 關系的基數符號
實體-聯系圖:傳統的系統開發方法都把重點集中在新系統的數據存儲需求上。數據存儲需求包括數據實體、數據實體的屬性以及它們之間的關系。用來定義數據存儲需求的模型被稱為實體-聯系圖(ERD)。
圖 5-21 一個簡單的實體-聯系圖
圖 5-22 關系的基數符號
圖 5-23 顯示了屬性的擴展ERD圖
圖 5-25 大學課程注冊ERD圖(含有多對多關系)圖 5-26 細化的大學課程注冊ERD圖(包含關聯實體)
圖 5-27 RMO客戶支持系統的實體-聯系圖(ERD)(圖中未顯示有關屬性)圖 5-31 類圖符號 圖 5-32 銀行賬目類圖
圖 5-33 落基山運動用品商店類圖 數據流程圖:是一種圖形化的系統模型,它在一張圖中展示信息系統的主要需求,即:輸入、輸出、過程和數據存儲。
外部實體:在系統邊界之外的個人或組織,它提供數據輸入或接受數據輸出。過程:在DFD中的一個符號,它代表從數據輸入轉換到數據輸出的算法或程序。數據流:在DFD中的箭頭,它表示在過程、數據存儲和外部實體之間的數據移動。數據存儲:保存數據的地方,以便將來由一個或多個過程來訪問這些數據。圖6-2 數據流程圖的符號
關聯圖:是指描述系統最高層結構的DFD。
圖 6-5 大學課程注冊系統的關聯圖
DFD片段:用一個過程符號表示系統響應一個時間的DFD。
圖 6-7 課程注冊系統的DFD片段
決策表:一種處理邏輯的表格表示方法,其中包括決策變量、決策變量值、參與者或公式。
圖 6-22 計算運輸費用決策表
決策樹:使用像樹枝一樣的線條對過程邏輯進行圖形化的描述。
圖 6-23 計算運輸費用決策樹
數據流定義:數據流內容和內部結構的文本描述。
數據流是數據元素的集合,所以數據流定義將列出所有的數據元素。
第七章 面向對象的需求描述
類圖、用例圖、順序圖、協作圖、狀態圖
當我們討論系統開發的時候,通常把系對新系統的描述分成兩部分:結構化信息和行為化信息。系統的組成部分我們稱之為結構,而這些組成部分的執行邏輯我們稱之為行為。
類圖提供了對系統組成部分的定義,而其它圖,即用例圖、順序圖、協作圖和狀態圖,這些圖的重點都集中在系統所完成的活動上。換句話說,它們描述的是新系統的行為方面。
因此,類圖說明系統的組成部分是什么,而其他圖說明這些組成部分干什么。類圖:
用例圖:一種用以顯示不同的用戶角色和這些用戶角色如何來使用系統的圖。
用例圖的目的是識別新系統的“使用”,或用例,換句話說,就是識別如何使用系統。用例圖本質上是事件表的延伸。用例圖是一個記錄系統必須支持功能的簡便方法。順序圖:一種用以顯示用例對象之間消息順序的圖。
順序圖更詳細地顯示了協作圖中所表達的信息,只是顯示方式有些差異。順序圖以圖形化的方式強調消息間的順序,而非協作對象。畫順序圖的目的是用過在頁面上標出位置來圖形化地表示消息的順序。執行次序從上到下執行。
協作圖:一種用以顯示對象如何被協調在一起以執行用例的圖。
消息:用例內部的對象之間的通信。
協作圖的目的是識別協作完成給定業務功能的對象。比如說,一個RMO的系統的商業用途之一是“記錄客戶訂單”,那么協作表將會識別所有涉及到的對象。為了記錄客戶訂單需要一個客戶對象,一些庫存對象和一個新訂單對象等。一個獨立的協作圖用以識別對象,并展示這些對象的相互作用及對象之間發送的用于執行功能的消息。
交互圖:顯示對象之間交互的圖,它或者是一個協作圖,或者是一個順序圖。
協作圖和順序圖統稱交互圖。
狀態圖:一種用以現實對象在各個階段中的生命和轉換的情況的圖。
最后一種被用來描述應用需求的圖稱狀態圖。一個狀態圖表(或簡單地稱之為狀態圖)描述了每個對象的狀態和行為。每一個對象類都含有一個狀態圖表。在狀態圖的內部是動作描述,這些動作描述在最終的系統中都變成了邏輯。每個類中的邏輯組件稱為方法。
OO需求=事件表+類圖+用例圖+順序圖+協作圖+狀態圖表。7.4 系統行為:面向對象的用例/場景視圖
用例:由系統為使用給系統的用戶完成的一個單一用途或功能。參與者:系統用戶扮演的一個角色。
圖 7-2 有一個參與者的簡單用例
場景:在用例中活動的一個特定順序;一個用例有可能有多個不同的場景。
圖 7-4 帶系統邊界的用例圖
圖 7-5 客戶支持系統用例圖舉例(通過子系統)圖 7-6 與客戶相關的所有用例 圖 7-7 《包含》用例的一個例子 7.5 對象交互:順序圖與協作圖
協作圖和順序圖包含有相同的信息,但它們的側重點稍有不同。協作圖強調對象交織在一起以支持一個用例,而順序圖把重點放在消息本身的細節上。
順序圖展示對象之間的交互順序,這些交互是指在場景或用例的事件流中發生的。在順序圖中共有四個基本符號:
1.參與者符號,由一個小人圖形表示;
2.對象符號,由一個名字帶下劃線的方框表示;
3.生命線符號,由虛線或狹窄的豎直方框表示;
4.消息符號,由帶消息描述的方向箭頭表示。
圖7-9 順序圖的符號 圖7-10 對象和類名
生命線:在順序圖中的一個對象下面的豎線,用以顯示這個對象的時間階段。激活生命線:在順序圖中的垂直窄長方框,用以強調一個對象只有在一個場景的部分中處于活動狀態。消息:由于面向對象系統通過每個對象向其他對象發送消息來工作,因此在一個場景內由事件流定義的內部事件就變成了在對象和參與者或其他對象之間的消息。
消息符號由兩部分組成:方向箭頭和消息描述器。消息描述器的語法如下:
[true/false條件] 返回值:= 消息名(參數列表)
True/false條件用于驗證這個消息是否可以發送。它象一個決定點或程序余亞種的if語句。如果這個條件計算后返回true,則發送這個消息,否則不發送。
消息是從一個參與者或對象向另一個參與者或對象的需求。開發順序圖的一個有效方法及其步驟如下:
1.識別出所有與場景有關的對象和參與者。只使用在用例圖中表示過的參與者,只適用在類圖中標識過的對象。
2.基于活動流,識別出每一個需要用于完成場景的消息。同時標識消息的源對象或參與者和目的對象或參與者。
3.下一步決定每一個消息是總發送還是有條件的發送。
4.正確地為這些消息排序并給它們加上合適的參與者或對象生命線。5.給消息加上形式化的語法以描述條件、消息名和要傳遞的參數。6.如果你愿意,加上響應消息和通信以使順序圖完整。圖 7-12 “查詢可用項目”的順序圖
圖 7-13 “創建新訂單”用例的電話訂購場景順序圖 協作圖:
協作圖主要應用是快速瀏覽相互協作、用來支持一個特定場景的所有對象。協作圖的參與者、對象和消息都使用了順序圖中的符號。生命線的符號沒有使用,但是,也使用了一個不同的符號:鏈接符號。
圖7-14在一個典型的協作圖中顯示了這四種符號。
協作圖信息描述符的語法如下:用數字順序標號來顯示每一個消息的順序。[true/false條件] 順序編號:返回值:= 消息名(參數列表)在對象之間或在參與者與對象之間的連線表示鏈接。
在一個協作圖中,鏈接表示兩個對象共享一個消息——一個發送消息一個接收消息。圖7-15 “查詢可用項目”的協作圖
圖7-16 “創建新訂單”電話訂購場景的協作圖 7.6 對象行為:狀態、狀態轉換和狀態圖表
在開發功能需求時,最后一類需要的信息是每個對象的內部邏輯。這些信息是對對象本身執行動作的描述。
順序圖給出了對象行為的一個客觀的分析。它標識了對象發送和接收的消息。狀態圖的目標是描述對象的內部工作。圖7-17 OO模型中的關系。
狀態圖是從類圖和順序圖中的信息開發出來的。狀態:一個對象存在的條件;狀態圖的一部分。
一個黑圓圈表示初始狀態,它僅僅表明進入狀態圖的入口點。初始狀態也叫做偽狀態,因為入口點也許會比對象自身的創建更早。
在內部涂黑的同心圓表示結束狀態,這個狀態表示從狀態圖中退出,通常表示從系統刪除一個對象。
動作:在一個特定狀態下對象執行的行為。
并行或并發狀態:在狀態圖中同時處于多于一個狀態的條件。
復合狀態:嵌套了其他狀態的高層狀態。一個對象進入復合狀態后,它就從一個黑點開始一條路徑。
對象轉換:狀態圖中的一個組成部分,它標示從一個狀態到另一個狀態的移動。目的狀態:一個轉換的目的,它連接著轉換符號的箭頭。原狀態:一個轉換的起源,它連接轉換符號的尾部。
消息時間:轉換的觸發器,這個轉換由一個有事件屬性的消息組成。
圖7-23 狀態圖的轉換名稱和消息名稱。圖7-25 訂單的狀態圖。
完成轉換:原狀態結束行動時發生的沒有觸發事件的轉換。
決策偽狀態:在狀態圖中的一個菱形塊,它代表在路徑上的一個決策點。
第八章 C/S結構,三層/多層結構
客戶機-服務器結構: 客戶機-服務器結構是當前分布式信息系統資源的主要結構模式??蛻魴C-服務器結構將信息系統過程分成兩個等級:客戶機和服務器。服務器計算機管理一個或多個的系統資源并通過確定的通信結構提供對那些資源的訪問;客戶機計算機用這個通訊結構來請求資源,而服務器則響應那些請求。實現通信結構的軟件通常稱為中間件。
服務器計算機或服務器:在網絡中為其他計算機提供服務的計算機??蛻魴C計算機:向網絡中的其他計算機請求服務的計算機。
中間件:在網絡中實現通信協議和幫助不同的系統進行通行的計算機軟件。三層結構:包含用戶層、業務邏輯層、數據層三層的一種客戶機-服務器結構。
圖8-4 三層結構。
第九章、系統設計
結構化方法
– 系統流程圖,結構圖,結果質量評價
面向對象方法
– 包圖,類圖
圖9-3 結構化和面向對象模型
系統流程圖:描述一個系統內計算機程序之間所有控制流的圖。
系統流程圖標識了每一個程序及其所存取的數據。系統流程圖也表明了不同程序、子系統、相關文件和數據庫之間的關系。記錄了整個系統的體系結構。
圖9-5 帶自動化系統邊界的數據流程圖 圖 9-6 系統流程圖的常用符號 圖9-7 工資系統的系統流程圖樣例 圖 9-8 RMO的系統流程圖
結構圖:用來展示一個計算機程序模塊間關系的層次圖。
結構圖的層次描述了系統各部分的功能和子功能。
結構圖的基本組成部分是模塊,模塊用來標識一個功能。圖 9-9 一個計算工資總額的簡單結構圖 圖9-11 完整計算工資系統的結構圖 評價結構圖的質量:
模塊耦合和模塊內聚是檢測質量的兩個標準。一般來說,我們期望設計出高度內聚和松散耦合的模塊來。
模塊耦合:模塊間相互聯系的方式,較好的方式是數據耦合。模塊內聚:模塊內部的凝聚程度。9.2.4 模塊算法設計:偽碼
包圖:是一個高層圖,用以標識系統中的主要部件。
包圖的目標是用于標識一個完整系統的主要部分。在一個大的系統中,通常要把系統分成許多子系統,每個子系統的功能相互之間都是獨立的,雖然子系統間經常會交換信息并頻繁的共享同一數據庫。
圖 9-26 包括RMO設計類的圖。
設計類圖:設計類圖是帶某些符號的類圖,這些符號在類中描述了設計部件。
第十章、數據庫設計
? 關系數據庫的設計
? 從ERD到關系模型的轉換 ? 從類圖到關系模型的轉換 ? 面向對象數據庫的設計
? 從類圖到面向對象數據模型的轉換
關系數據庫管理系統:在表中存儲數據的數據庫管理系統。
表:包括行和列的二維數據結構,也叫關系。
行:表的一部分,包含描述一個實體、關系或對象的數據,也叫元組或記錄。字段:關系數據庫表的一列,也叫屬性。
字段值:存儲在關系數據庫表的一個單元中的數值,也叫屬性值或數據元素。關鍵字:關系數據庫表中每一行都含有一個唯一值的字段。主鍵:可以唯一標識關系數據庫中表的某一行的關鍵字。(字段不唯一)外部碼:存儲在一個關系數據庫表中的字段值,同時這個字段值也是另一個關系數據庫表的主鍵值。
關系數據庫設計可以從一個ERD或一個類圖開始。這一節介紹如何根據一個ERD來生成數據庫模式?;陬悎D的模式建立將在本章的后面討論。從ERD建立一個關系數據庫模式,可以采取一下步驟:
1.為每個實體類型建立一張表
2.為每個表選擇一個主鍵(如何需要,可以定義一個)3.增加外部碼以表示一對多關系 4.建立一個新表來表示多對多關系 5.定義參照完整性約束
6.評價模式質量,并進行必要的改進
7.為每個字段選擇適當的數據類型和取值范圍(如果需要)圖10-5 RMO的實體-聯系圖
圖 10-6 表示ERD中實體的初始表的集合 圖 10-7 帶主鍵(用黑體標識)的實體表 圖 10-8 圖 10-9 參照完整性:一個一致的關系數據庫狀態,其中每個外部碼的值也作為一個主鍵的值存在。
第11章
Eight Golden Rules for Interactive Interface Design From Strive for Consistency(盡量保持一致性)
Enable Frequent Users to Use Shortcuts(提供快捷鍵)Offer Informative Feedback(有效反饋)
Design Dialogs to Yield Closure(設計完整的對話過程)Offer Simple Error Handling(簡單的錯誤處理機制)Permit Easy Reversal of Actions(允許撤銷動作)Support Internal Locus of Control(控制的內部監控)Reduce Short-Term Memory Load(減輕短期記憶負擔)
概要
1.系統開發生命周期的階段劃分:項目計劃階段、分析階段、設計階段、實施階段、支持階段。
2.對獲取的需求信息進行類別劃分,主要的需求類別有:系統需求,功能需求,技術需求 4.用于定義系統需求的兩個關鍵概念分別是事件和事物 5.事件的分類:外部事件,臨時事件和狀態事件。
6.生命線:在順序圖中的一個對象下面的豎線,用以顯示這個對象的時間階段。
激活生命線:在順序圖中的垂直窄長方框,用以強調一個對象只有在狹長垂直矩形框的描述期間處于活動狀態。
7.順序圖消息符號由兩部分組成:方向箭頭和消息描述器。消息描述器的語法如下:
[true/false條件] 返回值:= 消息名(參數列表)
True/false條件用于驗證這個消息是否可以發送
8.協作圖消息用數字順序標號來顯示每一個消息的順序。
[true/false條件] 順序編號:返回值:= 消息名(參數列表)
在對象之間或在參與者與對象之間的連線表示鏈接。
在一個協作圖中,鏈接表示兩個對象共享一個消息——一個發送消息一個接收消息。9.模塊耦合和模塊內聚是檢測質量的兩個標準。一般來說,我們期望設計出高度內聚和松散耦合的模塊來。
10.在關系數據庫的設計過程中,提高關系數據庫模式質量的有效方法是進行關系數據庫的規范化設計。
11.計劃階段的模型:甘特圖
分析階段的模型:活動圖,關聯圖,實體聯系圖,用例圖,數據流圖,協作圖
設計階段的模型:包圖,系統流程圖
12.傳統的結構化方法:數據流圖,結構圖,系統流程圖,面向對象方法:類圖、用例圖、順序圖、協作圖、狀態圖,13.關系數據庫中,元組與元組之間的關聯關系是通過外鍵來表示的
面向對象數據庫中,對象與對象之間的關聯關系則是通過對象標識來表示的 四種報表類型:詳細報表、匯總報表、異常報表、決策報表
Drill down(下鉆):將匯總字段設計成一個鏈接,允許點擊它以查看更為詳細的資料 完整性控制:應用系統內部用來保護系統內信息的機制和程序。
三種完整性控制:輸入完整性控制、數據庫完整性控制、輸出完整性控制。(防詐騙)輸入完整性控制:字段組合控制、限值控制、完全性控制、數據有效性控制。三種用戶:未授權、注冊用戶、特權 用戶界面的特征:物理特征、感知、概念 以用戶為中心的原則: 及早關注用戶及其工作
多次評價系統設計以保證其可用性 使用迭代開發方法
HIC的三種隱喻:直接操作隱喻(直接與顯示屏上的對象交互——桌面隱喻)、文檔隱喻、對話隱喻
界面設計指導原則: 可視性:有反饋 可供性:體現功能 事件列表
|事件| 觸發器 | 源
活動
|
響應
|目的地| 事物列表
|確定的名詞| 將該名詞作為事物存儲的一些注釋|
第三篇:系統分析與設計心得
讀《系統分析與設計方法》一書有感
作為一個軟件專業的學生,理解和掌握系統分析與設計的知識是必不可少的。在閱讀《系統分析與設計方法》一書中以及加上老師教導,我學到了很多東西,收獲不少。
系統就是由若干可以相互區別、由相互聯系并且各自獨立的單元組成各個子系統之間同樣是獨立而又相互聯系的。系統具有集合性、相關性、目的性、整體性和環境適應性。在開發完成一個軟件項目的過程中,系統工程必須經過開發階段、建造階段、運行階段、更新階段、維護階段。
系統分析與設計的方法主要包括結構化生命周期法(又稱瀑布法)、原型化方法(迭代法)、面向對象方法。
按時間過程來分,開發方法分為生命周期法和原型法,實際上還有許多處于中間狀態的方法。原型法又按照對原型結果的處理方式分為試驗原型法和演進原型法。試驗原型法只把原型當成試驗工具,試了以后就拋掉,根據試驗的結論做出新的系統。演進原型法則把試好的結果保留,成為最終系統的一部分。
按照系統的分析要素,可以把開發方法分為三類:
①面向處理方法(Processing Oriented,簡稱PO)。
②面向數據方法(Data Oriented,簡稱DO)。
③面向對象的方法(Object Oriented,簡稱OO)。
系統分析和設計應遵循的原則有:
系統開發是面向客戶的,應從客戶的角度考慮。
諸如系統開發生命周期之類的產品更新換代機構應該在所有的信息系統開發項目中建立起來。
信息系統開發的過程并不是一個順序的過程,它允許步驟的重疊和倒轉等。
如果系統的成功可能性受到很大限制時,應取消整個項目。文檔材料是系統開發生命周期中重要的可遞交成果,應加以重視。在本書的第一部分中,主要集中于系統分析和設計的整體描述,包括系統分析和設計方法的環境,信息系統構件,信息系統開發,項目管理。期中印象比較深刻的是系統開發過程的能力成熟度模型(CMMI)。信息系統和軟件的CMM框架用來幫助改善其系統開發過程的成熟度。CMM包括了五個成熟度等級:初始級、可重復級、已定義級、已管理級、優化級。期中,每個等級都是下一個等級的必須條件。
在軟件開發過程中需求分析階段是至關重要的一個階段,需求分析階段可能被稱為定義階段或者邏輯設計階段。需求分析階段的第一個任務是確定需求,在這個階段至少將目標轉換成為滿足其需要的功能需求和非功能需求的框架。在這個階段需要交付的成果是功能需求和非功能需求的草稿。在初步定義完了功能需求和非功能需求后,得排列需求的優先次序。如果一個項目落后于進度或者超出預算,知道哪個需求比其他需求更重要可能是很有用的。在排列需求的優先次序中可以使用到時間盒的技術。需求分析并不會真正的技術,因為企業需要具有快速適應不斷變化的需求和機會的能力。信息系統不能比企業自身的響應技術還慢。
在學習本書第二部分的時候,我了解到了需求分析在整個項目開發中的作用以及成為整個項目主導的因素。只要好的需求才能設計開發出好的軟件項目。在項目開發過程中,我們還可以利用圖表的形式來簡化方便人員的開發設計。期中有五種圖表是系統分析師常用的:類圖、用例圖、協作圖、順序圖、狀態圖。期中用例圖是用例建模的產物,它以圖形化的方式將系統描述成用、參與者(用戶)及其之間的關系。簡單的說就是用直立的小人來表示參與者(用戶),用圓圈來表示用例,他們之間以箭頭的形式來連接。關系包括了:關聯關系、擴展關系、使用關系、依賴關系、繼承關系。但是書上沒講到《include》關系,跟老師的講解有點出路。老師在講義上通過畫圖的方式很好的解釋了《include》和《extend》的關系。
數據建模這一章節中,我了解了數據建模的含義,它是一種為數據庫定義業務需求的技術。數據建模中比較重要的概念有實體和屬性之間的關系,關系是連接實體的一個時間,或者僅僅是存在于實體之間的邏輯關系。關系有很多種類,多對多、一對多、一對
一、等等。這些關系的圖形化符號記起來很不容易,但是我自己想到了一個比較容易記憶的簡單的方法。一個就用 “|”表示,零個就用“0”表示,多個就用“<”表示,然后根據相應的說明來選擇。比如零個或一個(0|),一個或多個(|<)。過程建模是一種組織和記錄數據的結構和流向的技術,它記錄系統的“過程”和有系統的“過程”實現的邏輯、策略和程序。期中也介紹到了數據流圖(DFD),數據流圖是一種描述通過系統的數據流以及系統實施的工作或處理過程的工具。我覺得數據流圖DFD的最大的優點就是容易閱讀,因為數據流圖僅有三種符號和一種連接:圓角矩形表示要完成的過程或者工作,正方形表示外部代理(系統的邊界),開放的方框表示數據存儲(可以是文件或者數據庫),箭頭表示數據流(可以是輸入和輸出,或者是表示到過程和來自過程)。統一建模語言UML的目的就是對面向對象系統進行可視化、評述、和文檔化。它適用于系統開發從需求規格描述道系統完成后測試的不同階段(需求分析階段、分析階段、設計階段、編程階段、測試階段)。UML2.0的模型主要圖包括了:用例圖、活動圖、類圖、對象圖、狀態機圖、組合結構圖、交互圖、定時圖、組件圖、部署圖和包圖。在理解這章的過程中,我感覺比較輕松,但是把一些關系,事件,實體等等用圖形化的形式表示出來還是非常難的。用UML設計面向對象系統時候,我們得準確的找到實體類、接口類、控制類、持續類、系統類和設計關系。在面向對象設計的過程中,主要包括了一下活動:對用例模型加以精煉以反映實現環境;建模支持用例情景的對象交互、行為和狀態;修改對象模型以反映實現環境。
前面說到需求分析是整個軟件項目開發中最重要的一環,其實我覺得可行性分析也是跟需求分析一樣的重要。因為信息是一個必須經過檢驗的重要資本投入,就像市場要檢驗一個新產品,系統分析員應該考慮投資能夠收回嗎?是否有其他投資能夠帶來比預期更高的回報。要說他們的區別,我個人覺得是:可行性分析是要決定“做還是不做”。需求分析是要決定“做什么,不做什么”。可行性分析報告有六個準則:運行可行性、文化可行性、技術可行性、進度可行性、經濟可行性。只有進行了可行性分析報告,才能夠確定企業是否要 做這個項目。如果說在可行性報告中顯示沒有成功的可能,那么就沒有必要再做需求分析了,整個項目就不會做下去了。進行可行性分析報告可以避免項目中途告終的結果,在系統開發過程中舉足輕重。
數據庫開發與設計這章,感覺書上講解的沒有老師講的詳細。書上并沒有提到范式,但是在課堂上我了解到數據庫設計的范式。有第一范式、第二范式、第三范式、BC范式等。等級越高,數據冗余越少,對系統調用數據庫更方便。數據庫的核心是DBMS,DBMS的核心是數據庫引擎,引擎響應專門的命令以創建數據庫結構,然后創建、讀取、修改和刪除數據庫中的記錄。DBMS使用數據定義語言(DDL)創建記錄類型、字段和結構化關系,還定義了數據庫視圖;DBMS還是用數據處理語言(DML)用來創建、讀取、修改和刪除數據庫中的記錄。但是并非所有數據庫的DBMS都被要求使用DDL和DML??赐赀@章,總結了一下建立關系數據庫模式的步驟,首先要為每個實體類型建立一張表,然后為每張表選擇一個主鍵,同時增加外鍵來表示一對多的關系,接著還可以建立幾個新表來表示多對多的關系,然后還得定義參照完整性約束,評價模式質量,并且進行必要的改進,最后為每個字段選擇適當的數據類型和取值約束。數據庫在系統開發的過程中是必不可少的,幾乎所有框架類型都得用到數據庫,它也是MVC框架的底層核心。
對于本書的還有一個比較映像深刻的就是UI(user interface),用戶界面設計。一個良好的用戶界面應該為用戶提供友好的使用方式,通過用戶界面用戶可以同應用程序打交道,處理輸入并且獲得輸出。Galitz曾經提出過用戶界面設計的原則:理解你的用戶及任務、讓用戶參與界面設計、在實際用戶中測試系統、進行迭代設計。記得以前大二的時候學習JAVA的時候,我曾經開發過基于圖形用戶界面(GUI)的聊天軟件,不過當時的界面設計完全設計的是隨心所欲,并沒有理論作為指導。在學習VB課程的時候學過UAR,簡單的了解了一些關于界面友好化設計的原則。這本書也給出了用戶界面設計過程的幾個步驟:1.以圖表形式描述用戶界面對話;2.原型化對話和用戶界面;3.獲得用戶反饋;4.如果需要,回到1步或者2步。
最后總結下,雖然我沒用把這本書的每一個地方都認真精讀,有些地方略讀的,但是看完整本書后我收獲很大。讀完《系統分析與設計方法》這本書再加上老師在課堂上的一些講解以及以前學習事件過程中的收獲,我對于系統分析與設計有了進一步的理解,能高屋建瓴的看待系統分析與設計整個過程的步驟以及增加了一些開發設計中的重要事件的理論知識。
對于系統分析的心得
第四篇:系統分析與設計總結
第一章 概述
信息系統的五個組成部分:硬件、軟件、規程(processes)、數據、人
SDLC(System Development Life Cycle 系統開發生命周期)包括:計劃、分析、設計、實施、運維。替代方法:Prototyping(原型法)、CASE Tools(Computer-aided Software Engineering tools 計算機輔助軟件工程工具)、JAD(Joint Application Design 聯合應用設計)、RAD(Rapid Application Development 快速應用軟件開發)、敏捷方法(Agile Methodologies)、極限編程(Extreme Programming)。
第二章 計劃
總體規劃(Strategic planning)模型:諾蘭模型(初始、蔓延、控制、集成、數據管理、信息管理)。
總體規劃原則:支持企業總目標;面向各個管理層次;方法上擺脫信息系統對企業組織的依賴性;結構上具有良好的整體性;便于實施。
總體規劃的方法:關鍵成功因素法、戰略目標集轉換法、企業系統計劃法、信息系統規劃與企業過程重組、信息系統規劃和企業形象系統。
總體規劃步驟:準備工作、組織機構調查、定義管理目標、定義管理功能、定義數據類、定義信息結構(劃分子系統)、確定子系統實施順序。準備工作
確定規劃內容、成立規劃小組、收集數據、制定計劃、開好動員會。定義管理功能
資源的生命周期:產生、獲得、服務、歸宿 識別管理功能:根據資源識別(OO)、根據決策與活動識別(SSAD)管理功能是管理各類資源的各種相關活動和決策的組合 定義數據類
方法:實體法(如圖2-1)、功能法(如圖2-2)
兩者組合形成初始功能數據類矩陣(圖2-3)
圖2-1
圖2-2
圖2-3 定義信息結構
劃分子系統的方法:在初始功能數據矩陣中,排列數據類,使得矩陣中的C靠近主對角線。
確定子系統實施順序
根據企業目標和技術約束確定
原則:子系統的需求程度與潛在的效益評估、技術約束分析
信息系統需求:Improved service(改善服務)、Better performance(更好的性能)、More information(更多的信息)、Stronger controls(更強的控制)、Encryption and biometric devices、Reduced cost(降低成本)
影響系統因素
內部:Strategic plan(總體規劃)、Top managers(高層管理人員)、User requests(用戶需求)、Information technology(信息技術)、department(部門)、Existing systems(現有系統)
外部:software/hardware vendors(軟硬件供應商),technology(技術),suppliers,customers(客戶),competitors(競爭者),the economy(經濟),government(政府)
可行性分析
操作可行性(Operation feasibility):系統在開發之后可以正常使用 技術可行性(Technical feasibility):開發系統所需要的技術資源 經濟可行性(Economical feasibility):Total cost of ownership(TCO)總擁有成本
進度可行性(Schedule feasibility)
信息系統初步調查(Preliminary investigation)
Understand the problem(了解問題)
Define the scope and constraints(確定范圍和約束)Perform fact-finding(進行實地考察)Estimate Feasibility(估計可行性)
Estimate development time/cost(評估項目成本、時間)Present results and recommendations(提出結果和建議)
第三章 需求模型(Requirements Modeling)
系統分析階段
包括:需求建模(Requirements Modeling)、企業建模(Enterprise Modeling)、開發策略(Development Strategy)
階段交付物:系統需求文檔(System Requirements document)
方法: JAD(Joint Application Development 聯合應用程序開發)
RAD(Rapid Application Development 快速應用軟件開發)
? Explain how systems analysts use a functional decomposition diagram(FDD)系統需求列表
輸出、輸入、處理、性能、控制、可擴展性(Scalability)、TCO(Total cost of ownership 總擁有成本)
實情考察方法(Fact-Finding)Interviews(訪談法)
documentation review(文檔審查)observation(觀察法)
questionnaires and surveys(問卷調查)sampling(抽樣法)research(研究)訪談法步驟
1.Determine the people to interview(確定訪談人群)2.Establish objectives for the interview(確定訪談目標)3.Develop interview questions(設計問題)4.Prepare for the interview(準備訪談)5.Conduct the interview(實施)6.Document the interview(記錄)7.Evaluate the interview(評估)抽樣法方法
隨機抽樣(Random sample)
分層抽樣(Stratified sample)
系統抽樣(Systematic sample)
文檔編寫原則
Record information as soon as possible(盡快記錄)
Use the simplest recording method(使用最簡單的記錄方法)Ensure that your work is understandable(能讓他人理解)Organize your documentation material(合理組織材料)
第四章 企業建模(Enterprise Modeling)
企業建模
產生:邏輯模型(Logical Model)
工具:Entity-relationship Diagrams(ERD E-R圖)
Data Flow Diagrams(DFD 數據流程圖)Data Dictionary(DD 數據字典)
Process Descriptions(PD 處理邏輯說明書)Query Analysis(QA 存取分析)
E-R圖
關系種類:一對一、一對多、多對多 數據流程圖
符號(Gane and Sarson symbol)包括:processes(處理邏輯),data flows(數據流),data stores(數據存儲),entities(外部實體)
種類:Context Diagram(第一層數據流程圖,無數據存儲)
Diagram 0(將第一層擴展,保持第一層的數據流)Lower-Level Diagram(子數據流程圖)
Lower-Level Diagram畫法:leveling(分層顯示 分層方法:Exploding、partitioning、decomposing)and balancing(前后數據流保持不變)
相關概念:
Black Hole:A process that has no output.Gray Hole:A process with at least 1 input and output, but the input is insufficient to generate the shown output.Spontaneous Generation Process:Used to describe an unexplained generation of data or information.數據字典
概念:對數據流程圖中的各個成分的含義進行描述的工具
用途:對數據流程圖的補充說明、參照,用于檢索,檢驗一致性與完整性 內容 :數據元素:又叫數據項,是最小數據組成單位,不可分割
數據結構:數據之間的組合關系 數據流
數據存儲:數據存儲的結構,有關的數據流和查詢要求 處理邏輯 外部實體
方式:人工、計算機 常用屬性:
數據元素(名稱、類型/長度、默認值、值域、來源、安全、負責人、描述)數據結構(名稱、描述、屬性)
數據流(名稱、描述、來源、目的地、所包含數據結構、使用頻率)數據存儲(名稱、描述、屬性、使用頻率)處理邏輯(名稱、描述、編號、輸入、輸出)外部實體(名稱、描述、輸入流、輸出流)
處理邏輯說明書
工具:
結構化語言:一種用于描述處理邏輯的介于自然語言和程序語言之間的語言。包括三種基本語句:祈使句、判斷語句、循環語句。沒有嚴格的語法,極其有限的詞匯(祈使句中的動詞、數據字典中的名詞、邏輯表達式中的保留字)
決策樹:
決策表:
現將所有情況列出,在不斷進行合并,下表為最終表
存儲分析
目的:DFD中定義了數據存儲,DD中對數據存儲的數據結構作了描述,但沒有說明立即存取與實時響應,是補充。
存取類型:E:實體 A:屬性 V:屬性值 已知E、A,求V 2 已知A、V,求E 3 已知E、V,求A 4 已知E,求A、V 5 已知A,求E、V 6 已知V,求A、E
邏輯模型和物理模型的區別
邏輯模型展示信息系統有什么功能;物理模型展示信息系統的功能如何實現
Four-Model Approach 包括:原系統的物理模型、原系統的邏輯模型、所開發系統的邏輯模型、所開發系統的物理模型
第五章 開發策略(Development Strategies)
軟件開發趨勢
Software as a Service:軟件即服務
Software and Information Industry Association(SIIA)軟件與信息產業協會 application service providers(ASP)軟件服務提供商 軟件開發策略
Develop in-house Buy software package Customize 選擇考慮因素
total cost of ownership(TCO)系統需求文檔
包括:requirements for the new system(新系統的要求)
describes the alternatives that were considered(描述備選方案)
第六章
總體設計(General Design)
包括:硬件設計、軟件設計、網絡設計、子系統劃分與模塊結構 設備選配的依據:總體方案、容量、外設(數量、速度)
設備選配的指標:可靠性、可維修性、兼容性、熟悉性、方便性、可擴充性、經濟合理性
硬件設計:主站、工作站、外圍設備、主要性能指標
軟件設計:中文、操作系統、數據庫管理系統、其他開發環境、各種工具、各種媒體的編輯、處理軟件
網絡設計:網絡結構、拓撲結構、傳輸介質、網關、網絡管理軟件、OA設備
子系統劃分與模塊結構 方法:系統流程圖(強調執行順序)、HIPO(Hierarchy Plus Input/Process/Output)(強調層次)、模塊結構圖
模塊結構圖
方法:事務分析法、變換分析法 事務分析法
適用于高層數據流程圖,每一個處理邏輯都是一個事務 變換分析法
步驟: 1 找出系統的邏輯輸入、主加工和邏輯輸出設計頂層模塊和第一層模塊設計中下層模塊
系統總體優化的準則
模塊的耦合:模塊間的關聯程度
模塊的聚合:模塊內的緊湊程度
模塊的分解:分解到功能聚合型模塊為止
模塊的扇入和扇出:
扇入:一個模塊的上級模塊叫做扇入模塊 扇出:一個模塊控制的下級模塊叫扇出模塊
原則:扇入越大越好,扇出數目控制在7±2范圍內 模塊的控制范圍和判斷作用范圍:
控制范圍:指模塊本身和它的下級模塊
判斷作用范圍:模塊和有判斷調用的模塊的組合
第七章 數據設計(Data Design)
數據與文件分類
存儲方式、文件命名規則設計 規范化設計
1NF:在同一個表中無重復項出現 2NF:有且僅有一個數據元素為主鍵
3NF:表中所有數據元素不但要能夠唯一的被主鍵表示,而且他們之間還必須相互獨立
一致性、完整性、有效性、安全性 存儲過程
第八章 代碼設計(Code Design)
代碼的概念
一個或者一組有序的易于計算機和人識別與處理的符號。代碼的意義
鑒別、分類、排序、特殊意義
代碼設計的步驟
1.信息分類
原則:科學性、系統性、可擴充性、兼容性、綜合實用性 方法:
線分類法(將選定的分類對象按若干屬性逐次地分成若干層級的類目)面分類法(若干屬性獨立分類、沒有上下級的從屬關系)2.編碼
原則:唯一性、合理性、可擴充性、簡單性、適用性、規范性 方法:根據代碼的種類和類別進行編碼,然后說明代碼組成的原則
第九章 用戶設計和輸入輸出設計
以用戶為中心設計原則 Understand the underlying business functions 2 Maximize graphical effectiveness 3 Profile the system’s users 4 Think like a user 5 Use prototyping 6 Design a comprehensive interface 7 Continue the feedback process 8 Document the interface design 輸入方式:
批量輸入、聯機輸入(后面太亂了。不寫了。)
第十章 網絡體系結構
B/S 瘦客戶端服務模式 C/S 胖客戶服務模式
兩層設計:Server + Client 三層設計:Server + Application Server + Client
第十一章 系統實施
系統實施過程
1.硬件和軟件的購買 2.網絡的構建 3.應用開發 4.用戶培訓
5.編寫文檔(程序文檔+系統穩定+操作文檔+用戶文檔)6.測試(單元、集成、系統測試)7.安裝 8.評估
9.數據轉換 10.系統上線 系統切換
1.直接切換 2.平行切換 3.試驗切換 4.階段切換
第十二章 系統運營
四種維護
1.改正性維護 2.適用性維護 3.改善性維護 4.預防性維護
維護流程
1.維護請求 2.初步判斷 3.處理請求 4.布置任務 5.用戶通知
系統底線
1.Functional baseline(功能基線,終結于分析階段)2.Allocated baseline(分配基線,終結于設計階段)
3.Product baseline(產品基線,終結于實施、測試階段)
系統退化(System Obsolescence)
原因:無法滿足當前管理的需要(維護無效或維護成本高)這意味著新的系統的開始
第五篇:系統分析與設計心得
系統分析與設計心得(精選多篇)
系統分析師對考生的綜合素質要求較高,考查的知識面很廣。但分析歷年考題可以發現,雖然考試知識面廣但考試內容并不是很深。因此,這就要求我們注意平時積累,經常通過網絡、講座、學術會議等途徑及時了解一些流行技術熱點和業界最新動態。
2、多做項目,在實踐中鍛煉提高
如果說平時積累的各個知識點是一粒粒寶貴的珍珠的話,那么項目經歷則是將這些珍珠串聯起來的一根紅線?!凹埳系脕斫K覺淺,絕知此事要躬行”。軟件工程是一門實踐性、綜合性非常強的專業,如果沒有參加過完整的實際項目,就難以從根本上理解書本上所學的
理論知識,就難以真正領會軟件工程的思想精髓。同時,在做項目時還要勤于思考,無論是作為主持者還是作為一個普通的程序員,都應該去潛心思考為什么要這樣設計、這樣設計的優點是什么、有哪些不足,如果你是設計師的話你又會怎樣設計?經常做這樣的換位思考,會不自覺地提高自己的系統分析和設計能力,積累豐富的項目經驗,這對下午一的考試來說是非常有益的。
3、注意提高個人文檔編寫能力
一些軟件工程師有個不好的習慣,那就是只喜歡鉆研具體的技術點而不注重提高文檔編寫能力。他們的一個通病是做得多、寫得少,在某一個具體的技術領域上往往表現得非常優秀,但寫出的文檔質量實在難以恭維。作為一個合格的系統分析師文檔編寫能力是必不可少的基本素質,也是下午二考試的考查重點。
文檔編寫能力不僅對于應試是十分必要的,而且在實際工作也是非常重
要的。因此,我們應當在平時多做這方面的訓練,多思考、多動筆,努力提高自己文檔編寫能力。
4、掌握評卷專家心理,注意論文寫作技巧
在下午二的考試中,應注意把握評卷專家的心理狀況。根據希賽it教育研發中心的著名軟考專家張友生所說的,評卷專家不可能把你的論文一字一句地精讀,要讓他短時間內了解你的論文內容并認可你的能力,必須把握好主次關系,論文的組織一定要條理清晰。一般說來,項目概述部分評卷專家會較認真看,為讓評卷專家對你所做的項目產生興趣,這里可適當吹捧。在論文陳述部分應當按主次關系分條進行陳述,首先最好開門見山指出你所采取的措施,然后指出你為什么這樣做,這樣做有何優點,克服了以前做法的哪些缺點等等。在分條陳述時最好一個問題一個自然段,在每個自然段首先要有一個主題句,主題句簡明扼要地描述本段的中心思
想。
在論文撰寫中,切忌大談空洞的理論知識或不懂裝懂,以專家的姿態高談闊論。應當將重點放在匯報你自己在項目中所做的與論題相關的工作,讓評卷專家相信你確實做過這方面的項目而且達到了相應水平。
在下午二考試時間的分配上,建議首先花3--5分鐘根據個人特長選定題目,然后花10—15分鐘左右整理一下所掌握的素材,列出提綱,即你打算談幾個方面,每個方面你是怎么做的,收效如何等等,簡明扼要地寫在草稿紙上。
5、張友生的書,不能不讀
要想通過系統分析師考試,不但需要多做項目,而且有關全國著名的軟考輔導專家張友生老師的書是不可不讀的。
學習電子商務系統分析與設計的心得體會
《電子商務系統分析與設計》系統地介紹了電子商務系統的規劃、分析、設計、實施與運行管理的基本概念、方法、技術和相關案例。從結構上可以進一步分為4個部分:概述部分,主要說明電子商務系統分析設計的基本概念、內容、過程與方法;系統規劃、分析與設計部分,主要說明系統規劃、分析、設計的方法、內容和工具;系統實施與維護部分,涵蓋電子商務系統的開發與集成、測試、部署、維護、審計與評價;案例部分,給出了兩個完整的案例,從背景、規劃、分析、設計角度幫助我們進一步理解電子商務系統的規劃、分析與設計。圍繞電子商務系統開發過程的各個階段,系統地闡述了電子商務系統開發的思想、方法和技術,包括系統的規劃、分析、設計、實現與維護等內容,重點介紹了采用uml進行系統的分析與設計的方法;并從企業管理者和電子商務應用實踐的角度,對國內外一些典型的企業電子商務解決方案進行了介紹;最后結合實例闡述了運用struts、javaee1.5等新技術進行電子商務系統的
設計與開發的過程,使我們能很好地把理論學習與實踐訓練更好地結合起來。
本課程結合電子商務系統領域的最新技術、方法和實踐,以及電子商務系統應用成果,從理論基礎、方法運用、技術基礎和實踐4個維度對電子商務系統做了較深入、全面的闡述。教科書共十章,第一章介紹電子商務系統的基礎概念和知識;第二章介紹電子商務系統建設的過程與方法;第三章介紹電子商務系統規劃的內容、方法和步驟;第四章介紹電子商務系統的分析方法與工具,重點利用uml進行了系統分析;第五章闡述了電子商務系統設計基礎與思想方法;第六章介紹電子商務支付系統、電子商務系統安全體系設計的思想方法;第七章介紹了電子商務系統的開發技術與模式,并結合實例完整介紹struts2框架web應用開發的基本過程;第八章介紹電子商務系統運行、維護與評價的知識和方法;第九章結合我國實際,介紹了國內外的電子商務系統解決方案;
第十章結合實例和具體技術,系統的闡述了一個電子商務系統從分析、設計到實現的過程,讓我們通過一個電子商務系統的設計實踐和操作,消化和理解所學的理論知識。
本課程在繼承軟件工程和信息系統分析與設計的思想,方法,技術和工具的基礎上,從系統化的思想及結構化開發方法入手,全面介紹電子商務系統特色,規劃方法,系統分析及設計,并依據電子商務自身的特點,著重針對網站設計,支付系統設計及安全系統設計進行分析和介
紹。本實驗課程使學生進一步理解和掌握所學各種電子商務系統分析和設計的方法.熟練掌握系統分析和設計建模軟件.。
本課程目的是為了讓我們能夠全面了解應用系統的整個電子商務系統的開發建設流程,并掌握電子商務系統開發的相關技術:
掌握電子商務系統的分析方法;
掌握電子商務系統的總體設計方法;
學會使用visio軟件構建電子商務系統數據流程圖,use case圖以及活動圖;
體會應用軟件工程的設計思想進行電子商務系統開發的過程與方法。
通過本課程設計,便于我們全面理解電子商務系統規劃、分析與設計知識,并掌握操作方法,而不是獨立地學習某單方面的操作技術;另一方面實用性較強,我們認真完成本書實驗后,基本上可以勝任電子商務系統規劃、分析、設計及實現工作。
學習這門課程,使我對電子商務網站的開發有了一定的了解。掌握了電子商務系統的基本概念、特征及其結構。了解電子商務系統開發技術和發展方向,理解電子商務生命周期的概念、特征及其作用。能夠按要求撰寫電子商務系統規劃報告,基本掌握uml需求分析思路和方法,能結合運用實際撰寫系統分析報告。熟悉電子商務平臺技術,包
括操作系統、應用服務器、中間件技術等。基本了解電子商務支付系統與安全系統。初步掌握一些電子商務網站客戶端技術。能正確理解電子商務系統評價的作用,并掌握評價指標體系設計的思路等等。
通過一系列的實驗讓我知道了基礎的電子商務分析的方法,掌握對電子商務系統進行系統總體結構設計及應用系統設計的內容及方法。加深理解了在課程中、書本上學到的知識和理論,并使其在課題研究中得到運用而且讓我得到了實踐的收獲。
希望在以后的實習實踐中多接觸、對比一些案例能夠增長對網上電子商務系統設計的一些知識。
0911061237
朱寶
信息系統分析與設計學習心得
通過近10周的學習,我覺得信息系統分析與設計這門課程收獲還是挺大的。我覺得,如果我們決定要做一件事,就得對這個系統有一個整體得把握,首先要進行系統的規劃和選擇,接著就是系統的設計,其中系統設計包括三個部分:1.確定系統需求;2.系統需求結構化:過程建模,這一步驟主要就是畫數據流圖;3.系統需求結構化:概念數據建模,這一過程主要是畫實體—關系圖。然后就是進行系統設計,系統設計包括設計人機界面和數據庫設計。最后一步就是系統的實現與運行。
在做信息系統分析與設計的大作業的時候,我和我們的小組成員曾經去實地考察過,雖然最后并沒有被接待,但還是小有收獲的。通過實地考察,我們能更清晰地了解我們系統所要實現的功能,甚至說讓它比現有系統更加完善。當然,我們做東西,也是要追求進步,如果說做出來的東西和以前的系統都沒什么兩樣,這樣意義也不大。不過,這也得是在我們能力所及的范圍內,我們得適當地把握好自己的時間和現有資源進行適當的設計。相信自己的努力還是
能有一個很好的結果的,我們得對自己的發展有一個好的概括。信息系統分析與設計的大作業從第一周到第九周一直伴隨著我們,說實在話,一直覺得自己有做不完的作業,剛開始還有些抱怨,但隨著作業的進行,我們慢慢看到了自己的小小成果,覺得付出有了回報,并開始樂在其中。在這期間,徐老師也一直鼓勵我們,他告訴我們,只要堅持做下去,我們會收獲到成功的喜悅的!
現在,我們已基本完成了大作業分析階段,在我和小組成員的協作下,總算按時完成了。在分析階段,我們也遇到了很多問題,比如剛開始畫數據流圖時,visio用的不是很熟練,數據流圖中的數據流、數據存儲、過程、源點和宿點不知
道怎樣連接,層與層之間也不知如何區分,有時候甚至想要放棄。還好有老師的鼓勵與指導加上小組一起努力,我們克服了這一難關。在畫er圖的時候遇到的問題就相對少了一點,因為以前
學習數據庫的時候就畫過er圖了,所以在畫的過程中就相對輕松一點。接下來就是系統的設計了,時間還蠻緊迫的,我們仍需努力。
我作為小組的組長,從中真的學習到不少知識。老師說過,組長應該做的比別人更加多,才能夠勝任。我們現在還沒有達到“喝茶看報紙”的層次,那得等到我們具備了足夠的能力,所以要想達到那個高度,我們現在應該更加努力。負責的整個過程中,我必須把握好進度,如果一步跟不上,可能就會步步跟不上。我們小組成員也很配合,基本不需我太多督促。在對我們所要實現的功能有了個整體的把握的情況下,我們制作出了令自己還算滿意的圖形?,F在我覺得自己基本可以熟練運用visio了,這也算是一大收獲吧!
總的來說,這次這次信息系統分析與設計的課程設計讓我獲益匪淺,以前只是紙上談兵,沒有親自實踐,不知道理論上升到實踐路程的艱辛。通過這次
自己親自選題、實地考察、繪制dfd、er圖到完成分析,我體驗了其中的不容易,也嘗到了其中的甜頭。我們還會繼續努力,更好的完成下面的工作。
0963710205 秦曉雅
《信息系統分析與設計》考試題目及評分標準
下周一中午12點之前由班長或學習委員收齊各班紙質版本作業,周二收齊交給任課老師。
請注意論文封面、格式以及老師強調的論文重點,打印并裝訂好交給班長或學習委員??荚囶}目:
設計一個銀行存取款管理信息系統。
要求具有下面的功能:①儲戶憑身份證在銀行開戶,銀行賬戶中保存儲戶姓名、聯系電話、家庭住址等基本信息,并保存儲戶每筆存取款業務數據。②儲戶存款時,需提交存折/卡號,由業務員在銀行賬戶及存折/卡上登記存款信息。③儲戶取款時,還需提交密碼,以確認
身份,在驗證取款合法性后,更新銀行賬戶。④統計員每日統計存、取款情況,形成日存取款匯總表,提供給信貸管理部作為信貸主要依據。
設計一個物資采購及庫存管理業務管理信息系統。
要求具有下面的功能:①車間填寫領料單到倉庫領料,庫長根據用料計劃審批領料單,未批準的退回車間。②庫工收到已批準的領料單后,首先查閱庫存賬,若有貨,則通知車間前來領取所需物料,并登記用料流水賬;否則將缺貨通知采購人員。③采購人員根據缺貨通知,查閱訂貨合同單,若已訂貨,則向供貨單位發出催貨請求,否則就臨時申請補充訂貨。④供貨單位發出貨物后,立即向訂貨單位發出提貨通知。采購人員收到提貨通知單后,就可辦理入庫手續。接著是庫工驗收入庫,并通知車間領料。⑤此外,倉庫庫工還要依據庫存賬和用料流水賬定期生成庫存報表,呈送有關部門。
考核內容:
熟練掌握信息系統分析與設計的方法。具體考核的內容是:
1、編寫信息系統可行性報告。
2、編寫信息系統需求分析報告,繪制數據流圖。
3、編寫信息系統設計報告,繪制功能結構層次圖,數據庫設計,界面設計和硬件和軟件設計。
評分標準:
1、編寫信息系統可行性報告。
2、編寫信息系統需求分析報告,繪制數據流圖。
3、編寫信息系統設計報告,繪制功能結構層次圖。
4、數據庫設計
5、界面設計。
6、簡單的硬件和軟件設計。
系統分析與設計方法讀書筆記
《系統分析與設計方法》,顧名思義,是論述軟件開發過程中涉及到的分析與設計過程的方法論。作者依照軟件
開發過程將書劃分為四個部分:系統開發項目環境、系統分析方法、系統設計方法、系統分析和設計完成后的工作。同其他美國作者一樣,作者通過一個貫穿全書的案例--音階公司系統項目,向我們詳細地講解了開發一個軟件系統過程中設計到的知識。
第一部分“系統開發項目環境”介紹信息系統開發的概念和過程。第二部分“系統分析方法”涵蓋了生命周期前期活動、工具和技術,這些內容用于分析業務問題、說明信息系統業務需求以及制定業務和系統方案。第三部分“系統設計方法”涵蓋了生命周期中期活動、工具和技術,特別強調應用架構的概要設計和詳細設計、快速開發和原型設計、外部設計、內部設計以及面向對象設計。第四部分“系統分析和設計完成后的工作”通過縱覽生命周期后期活動,透視系統分析和設計工作。
《系統分析與設計方法》這本書圍繞軟件開發這一中心,詳細講解了從需
求分析到后期維護各個階段中,如何運用文檔與周圍的人員進行有效溝通和協作。文檔,作為各類人員之間的橋梁和紐帶,如使用得當,有以下幾個好處:
1.提高軟件開發過程的能見度。把開發過程中發生的事件以某種可閱讀的形式記錄在文檔中。管理人員可把這些記載下來的材料作為檢查軟件開發進度和開發質量的依據,實現對軟件開發的工程管理。
2.提高開發效率。軟件文檔的編制,使得開發人員對各個階段的工作都進行周密思考、全盤權衡、從而減少返工。并且可在開發早期發現錯誤和不一致性,便于及時加以糾正。
3.作為開發人員在一定階段的工作成果和結束標志。
4.記錄開發過程中的有關信息,便于協調以后的軟件、開發、使用和維護。
5.提供對軟件的運行、維護和培訓的有關信息,便于管理人員、開發人員、操作人員、用戶之間的協作、交流和了
解。使軟件開發活動更科學、更有成效。
6.便于潛在用戶了解軟件的功能、性能等各項指標,為他們選購符合自己需要的軟件提供依據。
也正是基于這樣的好處,軟件行業才會定義、開發各種溝通表達工具和建模語言來統一溝通方法,從而便于各種人員的團結合作。以uml為例。從1989
年到1994年,建模語言數量從不到十種增加到了五十多種。90年代中,又一批新方法出現,其中最引人注目的是booch 1993、oose和omt-2等。但到目前為止,uml這一統一建模語言脫穎而出,它貫穿軟件開發周期中的每一個階段,并被omg采納作為業界的標準。就如書中所講,uml是一個標準的圖形表示法,它不是面向對象的分析和設計,也不是一種方法,它僅僅是一組符號。uml是在開發階段,說明,可視化,構建和書寫一個面向對象軟件密集系統的制品的開放方法。作為一種模型語言,它使開發人員專注于建立產品的模型和結構,而不是選用什么程序語言和算法實現。當模型建立之后,模型可以被uml工具轉化成指定的程序語言代碼。所以說,運用優秀的溝通工具與各種角色進行有效地溝通在一定程度上決定著系統能否保質保量的成功完成。在這個崇尚團結與合作的社會,作為新一代的軟件開發人員,我們更應該認真學習書中說講的各種文檔編寫方法,更好的運用到實際開發中去。
首先,需求分析人員從接觸到深入了解客戶業務有一個漸進的過程,如果一開始就深入到業務的細節中去,不但容易迷失方向,而且很容易顯露出你對業務的無知,客戶會因此而失去與你溝通的興趣。
其次,溝通雙方都有自己習慣的溝通方式。所以在雙方能夠達成默契之前,不要急于深入業務細節,而是圈定范圍,先就一些大框框進行溝通,借此了解客戶的溝通方式??蛻羰窍矚g開放型問題還是封閉型問題?客戶是很健談還是很
含蓄?客戶是主導型溝通者還是被動型溝通者?客戶是具有很強邏輯思維的人,可以將一個問題有條不穩地講清楚,還是一個發散型思維的人,總是沒有什么目的地想到什么就講什么?如果雙方的溝通方式不能切合 rf4ss,必定會造成溝通的障礙。
再次,客戶的時間是有限的,很多時候不能有整塊的時間來配合需求調研。由于項目的周期也是有限的,因此每一次會面都需要爭分奪秒,用最快的時間把問題搞清楚。另一方面,客戶通常不會為需求調研做好準備,往往是等著回答問題的。如果需求分析人員寄希望于客戶能有條不理的把一套業務都能講解很清楚,整個業務形成閉環往往是很不現實的。這就要求需求分析人員根據經驗提前要做好調研計劃和內容,逐個進行落實。
系統分析與設計的方法主要包括結構化生命周期法、原型化方法、面向對象方法。
按時間過程來分,開發方法分為生命周期法和原型法,實際上還有許多處于中間狀態的方法。原型法又按照對原型結果的處理方式分為試驗原型法和演進原型法。試驗原型法只把原型當成試驗工具,試了以后就拋掉,根據試驗的結論做出新的系統。演進原型法則把試好的結果保留,成為最終系統的一部分。按照系統的分析要素,可以把開發方法分為三類:
①面向處理方法。
②面向數據方法。
③面向對象的方法
系統分析和設計應遵循的原則有:
系統開發是面向客戶的,應從客戶的角度考慮。
諸如系統開發生命周期之類的產品更新換代機構應該在所有的信息系統開發項目中建立起來。
信息系統開發的過程并不是一個順序的過程,它允許步驟的重疊和倒轉等。如果系統的成功可能性受到很大限
制時,應取消整個項目。
文檔材料是系統開發生命周期中重要的可遞交成果,應加以重視
最后總結下,學完《系統分析與設計方法》這門課程再加上老師在課堂上的一些講解以及以前學習過程中的收獲,我對于系統分析與設計有了進一步的理解,能高屋建瓴的看待系統分析與設計整個過程的步驟以及增加了一些開發設計中的重要事件的理論知識。