1.2 本系統使用的方法和語言 1.2.1 統一建模語言UML 統一建模語言(Unified Modeling Language ,UML)是一種可視化的建模語言,它能讓系統構造者用標準的、易于理解的方式建立起能夠表達出他們想象力的系統藍圖,并且提供了便于不同人之間有效的共享和交流涉及結果的機制。 UML包括了一些可以相互組合圖表的圖形元素。由于UML是一種語言,所以UML具有組合這些元素的法規。UML提供了系統設計所需要的多種圖,這些圖是在用多個視圖來展示一個系統,這組視圖被稱為一個模型(Model)。一個UML模型描述了一個系統需要做什么。同時,UML提供了組織和擴展這些圖的方法。 關于標準建模語言UML的內容,首先,UML融合了Booch、OMT和OOSE方法中的基本概念,而且這些基本概念與其他面向對象技術中的基本概念大多相同,因而,UML必然成為這些方法以及其他方法的使用者樂于采用的一種簡單一致的建模語言;其次,UML不僅僅是上述方法的簡單匯合,而是在這些方法的基礎上廣泛征求意見,集眾家之長,幾經修改而完成的,UML擴展了現有方法的應用范圍;第三,UML是標準的建模語言,而不是標準的開發過程。盡管UML的應用必然以系統的開發過程為背景,但由于不同的組織和不同的應用領域,需要采取不同的開發過程! ∽鳛橐环N建模語言,UML的定義包括UML語義和UML表示法兩個部分。 (1) UML語義 描述基于UML的精確元模型定義。 (2) UML表示法 定義UML符號的表示法,為開發者或開發工具使用這些圖形符號和文本語法為系統建模提供了標準。這些圖形符號和文字所表達的是應用級的模型,在語義上它是UML元模型的實例。 標準建模語言UML的重要內容可以由下列五類圖(共9種圖形)來定義: 第一類是用例圖,第二類是靜態圖(Static diagram),包括類圖、對象圖和包圖。第三類是行為圖(Behavior diagram),描述系統的動態模型和組成對象間的交互關系。其中狀態圖描述類的對象所有可能的狀態以及事件發生時狀態的轉移條件。通常, 狀態圖是對類圖的補充。在實用上并不需要為所有的類畫狀態圖,僅為那些有多個狀態其行為受外界環境的影響并且發生改變的類畫狀態圖。而活動圖描述滿足用例要求所要進行的活動以及活動間的約束關系,有利于識別并行活動。第四類是交互圖(Interactive diagram),描述對象間的交互關系。其中順序圖顯示對象之間的動態合作關系,它強調對象之間消息發送的順序,同時顯示對象之間的交互;協作圖描述對象間的協作關系, 協作圖跟順序圖相似,顯示對象間的動態合作關系。除顯示信息交換外,協作圖還顯示對象以及它們之間的關系。如果強調時間和順序,則使用順序圖;如果強調上下級關系,則選擇協作圖。這兩種圖合稱為交互圖。第五類是實現圖( Implementation diagram ),包括構件圖和配置圖! 1.2.2 .NET和C# 微軟的.NET是為了解決因特網應用中存在的普遍問題而預先建立的基礎設施。.NET的服務器版可運行在Windows NT.Windows 2000以及Windows XP Professional操作系統下.其客戶版可運行在Windows 98、Windows Me、Windows XP Home下。目前它只是一個附加的服務補丁,以后的.NET版本極有可能成為操作系統的一部分,今后的版本也有可能會允許.NET的—部分運行在其他版本的Windows操作系統下,微軟的.NET提供了下述服務,具體如下 .NET提供了一種新的運行環境.即.NET框架,它使得程序員能夠更容易、迅速地寫出優良、健壯的程序代碼,并且能夠方便地管理、部署和修改代碼,所編寫的程序和組件都在該環境中執行。它為程序員提供了一些新功能,例如自動內存管理(垃圾收集).以及更方便地訪問所有系統服務。它添加了許多實用功能、例如易于訪問因特網和數據庫。它還為代碼復用提供了一種新的機制一一更易于使用.并且比COM更加有效和靈活。.NET框架更易于部署.因為它不需要進行注冊設置。它還為版本的制定提供了標準化、系統級別的支持。程序員可以在任一種與.NET兼容的編程語言中使用上述全部功能 .NET為創建HTML頁面提供了一種新的編程模型,稱為ASP.NET.盡管智能的單機程序仍在不斷涌現,但是在不久的將來,大多數因特網通信都會以通用瀏覽器作為前端,這就要求服務器能夠使用HTML語言來構造頁面,以便瀏覽器識別并顯示給用戶。ASP.NET是一種運行在因特網信息服務(IIS)下的新環境,它使得程序員能夠更容易地編寫代碼來構造基于HTML語言的web頁面,供瀏覽器查看。 ASP.NET提供了一種新的與語言無關的代碼編寫方式,并將其與web頁面請求相關聯。它提供了.NET的Web窗體,它是一種與控件交互的事件驅動編程模型、這使得編寫web頁面變得就像編寫普通的VB窗體一樣。ASP.NET包含了良好的會話狀態管理和安全功能,它比原來的ASP更加健壯,性能也得以提高。 .NET提供了windows窗體,它是一種使用.NET框架編寫各種客戶程序的新方法。 一個使用XML Web服務的專用客戶端應用程序必須提供良好的用戶界面。高質量的界面能夠提供更佳的用戶感受,.NET提供了一種新的軟件包,它被稱為.NET windows窗體.這使得程序員能夠使用.NET框架輕易地編寫出專用的windows客戶應用程序。 C#是可用于創建要運行在.NET上的應用程序的語言之一,它從C和C++語言演化而來,是Microsoft專門為使用.NET平臺而創建的。因為C#是近期發展起來的,所以吸取了以前的教訓,考慮了其他語言的許多優點,并解決了它們的問題。 使用C#開發應用程序比使用C++簡單,因為其語法比較簡單。但是,C#是一種強大的語言,在C++中能完成的任務在C#中也能完成,C#中與C++比較高級的功能等價的功能(例如直接訪問和處理系統內存),只能在標記為“不安全”的代碼中使用。這個高級編程技術是非常危險的(正如它的名稱),因為它可能覆蓋系統中重要的內存塊,導致嚴重的后果。 C#代碼常常比C++略長一些。這是因為C#是一種類型安全的語言(與C++不同),一旦為某些數據指定了類型,就不能轉換為另一個不相關的類型。所以,在類型之間轉換時,必須遵守嚴格的規則。執行相向的任務時,用C#編寫的代碼通常比C++長。但C#代碼更健壯,調試也比較簡單,.NET總是可以隨時跟蹤數據的類型。在C#中,不能完成如“把4字節的內存放在數據中,并把它解釋為x”等的任務。 C#只是.NET開發的一種語言,是目前最好的一種語言。C#的優點是,它是唯一為.NET Framework而設計的語言,是移植到其他操作系統上的.NET版本中使用的主要語言。C#能使用.NET Framework代碼庫提供的每種功能 1.3系統描述 本系統運用面向對象的思想,基于UML進行藥品管理系統的分析與設計。本文運用UML來分析和描述醫院藥品管理所涉及的藥品基本信息管理、藥品入庫、出庫、調價、查詢、統計、盤點等一系列功能。 系統維護包括:用戶注冊、用戶密碼修改、用戶權限設定等。 入庫管理包括:入庫基本信息輸入、入庫單生成、入庫審核、入庫確認等。 出庫管理包括:出庫基本信息輸入、出庫單生成、出庫審核、出庫確認等。 調價管理包括:調整藥品價格、調價記錄生成等。 盤點管理包括:盤點庫存藥品、生成入庫出庫清單等。 財務信息管理包括:查詢入庫出庫財務信息、生成報表等。 藥品信息管理包括:藥品基本信息維護、生產廠家信息維護、供應商信息維護、藥品低儲設置等等。
1.4 分析方法 為了適應開發過程多方面的挑戰,不同的組織和不同的應用領域需要采取不同的開發過程才能提高開發效率。我在系統的設計開發中,使用了“快速應用工程指導原則”(Guidelines for Rapid APPLication Engineering),簡稱GRAPPLE。GRAPPLE的思想并沒有脫離以往的UML分析方法——RUP(Rational Unified Process, 統一開發過程)。它是一組可以自適應的,靈活的開發思想,可以適應與許多不同組織的軟件開發過程,讓開發者發揮自己的創造力和好的思想來構建自己的組織。 GRAPPLE由5個段組成,即需求收集,分析,設計,開發,部署。本次的論文,便是以GRAPPLE方法的基本結構、步驟來構架的,由于在軟件的構建階段,設計和分析都可以往返進行直到設計完成,所以在論文中,我將分析與設計合并為一個章節來敘述。之后在設計的基礎上使用微軟的Visual C#完成系統的實現。 2 需求收集 2.1 業務過程分析 開發一個系統的起點就是獲得對客戶業務過程的理解,特別是獲得使用目標系統的客戶的理解。這就需要系統分析員與客戶進行充分的交流。首先要在調研的過程中了解到一套業務領域的詞匯。 “醫藥進銷存管理系統”需要實現的功能有主要有:“系統維護” ,“入庫管理 ”,“調價管理”,“出庫管理”, “財務信息管理”,“藥品信息管理”等,可以用下面的業務流程圖來表示它們之間的關系:
圖2-1 系統業務流程 此次設計的“醫藥進銷存藥品管理系統”需要完成的主要功能有:“系統維護”,“入庫管理”,“調價管理”,“出庫管理”,“財務信息管理”,“藥品信息管理”等一系列與業務流程相配套的完整功能。 在系統中,主要的業務流通領域詞匯有以下幾大類:采購計劃,入庫,財務驗收,付款處理,出庫,調價處理,庫存盤點,查詢。藥品信息管理的總體活動可以由以下的圖來描述:
圖2-2 藥品信息管理的活動圖 用戶登錄和調價和入庫、出庫的活動圖:
圖2-3 功能對應活動圖 2.2 研究領域分析 現在仍然處在需求收集階段的概念性分析。這個階段需要開發出初步的類圖、建立和標記類之間的關聯,同時填充類的信息。 2.2.1 初步用例模型開發 用例是由參與者發起的,參與者能夠從用例的執行中獲得有價值的事物。用例模型的圖形表示法很直觀。用例用一個橢圓形表示,直立人形圖表表示參與者。用例的發起參與者在用例圖的左側,接受參與者在用例圖的右側。參與者的名字放在參與者圖表的下方,用例的名字可以放在橢圓形里面也可以放在橢圓形下方。關聯線連接參與者和用例,并且表示參與者與用例之間有通信關系。關聯線是實現,和類之間的關聯線類似。 用例分析的一個好處是它能展現出系統和外部世界之間的邊界。參與者是典型的系統外部實體,而用例屬于系統內部。系統的邊界用一個矩形(里面寫著系統的名字)來代表。系統的用例裝入矩形之內。 參與者、用例和互連線共同組成了用例模型(use case model). 下圖說明了這些符號:
圖2-4 用例模型示例 2.2.1.1 開發系統業務角色 首先,需要確定整個系統的業務角色。業務角色,顧名思義,就是與業務交流的人或物,都可以被稱為業務角色。在本管理系統中,大體上可以分為生產廠家、供應商、采購員、銷售員、基本操作員、系統管理員這六類業務角色。 由此可以開發出藥品管理系統的初始用例角色圖,如圖2-5所示。
圖2-5 系統業務角色 2.2.1.2 開發初步用例圖 接下來,需要對每個業務角色標識業務用例,這些業務用例包括:生產藥品、購入藥品、批發銷售藥品、輸入藥品相關信息、售出藥品、管理整個系統流程等等。 這個階段的任務,就是描述系統用例與系統業務角色之間的關系,如圖2-6中所示。
圖2-6 業務角色與系統用例
2.2.2 開發初步類圖 2.2.2.1 系統中的類 類圖(Class Diagram)描述類和類之間的靜態關系。與數據模型不同,它不僅顯示了信息的結構,同時還描述了系統的行為。類圖是定義其它圖的基礎。在類圖的基礎上,狀態圖、合作圖等進一步描述了系統其他方面的特性。 對象(Object)與對客觀世界的理解相關。通常用對象描述客觀世界中某個具體的實體。所謂類(Class)是對一類具有相同特征的對象的描述。而對象是類的實例(Instance)。建立類模型時,應盡量與應用領域的概念保持一致,以使模型更符合客觀事實,易修改,易理解和易交流。 類描述一類對象的屬性(Attribute)和行為(Behavior)。在UML中,類的可視化表示為一個劃分成三個格子的長方形(下面兩個格子可省略)。圖1中,"客戶"就是一個典型的類。 類的獲取和命名:最頂部的格子包含類的名字。類的命名應盡量用應用領域中的術語,應明確、無歧義,以利于開發人員與用戶之間的相互理解和交流。類的獲取是一個依賴于人的創造力的過程,必須與領域專家合作,對研究領域仔細地分析,抽象出領域中的概念,定義其含義及相互關系,分析出系統類,并用領域中的術語為類命名。一般而言,類的名字是名詞。 下面分析領域一下類中的動詞和名詞,其中的一些名詞將可能成為模型中的類,另一些名詞成為類的屬性。而動詞或者動詞短語則成為類的操作或類之間的關聯標記。 系統中涉及到的名詞有: 藥品(drug),用戶(user), 管理員(administrator), 普通用戶(common user),信息錄入員(information recorder),盤點員,調價員,采購員(buyer),倉庫保管員(depository keeper),銷售員(seller),賬目(account), 發票(invoice), 賬單(bill), 入庫單(enter depository bill), 出庫單(out depository bill), 調價單(change price bill), 客戶(client),供應商(merchant),等等。 系統中涉及到的動詞有: 入庫(enter depository ),出庫(out depository ),盤點(check)、調價(change price)、付賬(pay)、信息錄入(information enter),等等。 在篩選掉一些與其他名詞意義重復或者應該作為屬性的名詞,并且增加了代表新類的名詞后,可以得到以下的系統中類的名詞列表: 藥品(drug),用戶(user), 管理員(administrator), 普通用戶(common user),賬目(account), 發票(invoice), 賬單(bill), 入庫單(enter depository bill), 出庫單(out depository bill), 調價單(change price bill), 客戶(client),生產廠家(manufacturer),供應商(merchant) 由此,得出如圖2-7所示的初步類圖:
首頁 上一頁 1 2 3 4 5 6 下一頁 尾頁 2/6/6 相關論文
首頁 上一頁 1 2 3 4 5 6 下一頁 尾頁 2/6/6
本站部分文章來自網絡,如發現侵犯了您的權益,請聯系指出,本站及時確認刪除 E-mail:349991040@qq.com
論文格式網(www.donglienglish.cn--論文格式網拼音首字母組合)提供其他論文畢業論文格式,論文格式范文,畢業論文范文