系分論文1
企業(yè)人事信息系統(tǒng)的應用
【摘要】
本文討論《企業(yè)人事信息系統(tǒng)》項目的需求分析方法與工具的選用。該系統(tǒng)的建設目標是幫助該企業(yè)管理好企業(yè)內(nèi)部的人員和人員的活動,人事信息管理指的是企業(yè)員工從招聘面試到離職退休的全過程,涉及的主要活動包括面試、報到、培訓、升職、離職或其他的人事變動,也包括電子化考勤、工資性收入的計算與分發(fā)、使用其他公司資源的有關記錄(如宿舍、保險、證件辦理等等)。此外,本系統(tǒng)也涉及到企業(yè)在全國各地的人事信息管理,企業(yè)的組織架構(gòu)的設置,級別與職務管理,人力申請直至人力需求報表,從而形成一個對企業(yè)真正有用的人事信息管理應用系統(tǒng)。在本文中首先討論了選用面向?qū)ο蠓椒ㄅc工具的主要理由與策略,進一步通過一個簡例說明該方法與工具使用的效果,也討論了使用多種工具與方法在需求分析中的必要性,最后簡要小結(jié)了選用正確工具與方法的意義和作用。
在項目開展期間,我擔任了系統(tǒng)分析、系統(tǒng)設計與數(shù)據(jù)庫管理等大量工作。
【正文】
人事信息管理系統(tǒng)是一個有著廣泛應用面的實用性系統(tǒng),但是,我國各個企業(yè)有著自身的體制、機制、特點與不同的要求;在開發(fā)這類系統(tǒng)時,系統(tǒng)需求分析是極為重要的一環(huán)。在整個分析過程中,我們都采用了面向?qū)ο蟮姆治龇椒,這是因為我們在近幾年的實踐中已堅信這種方法能夠更加有效地表達和描述現(xiàn)實世界。軟件要具有適用性和擴展性,就必須更接近于現(xiàn)實世界本身的發(fā)展規(guī)律。
以一個簡單的例子來看,假設要求設計關于引進人才評估的一個系統(tǒng),按我們過去的做法,先會要求提供給我們一份相關的引進人才評估表,然后依葫蘆畫瓢地設計相應的表單與界面。在短期來說,這樣做是簡便而實用的,但并不能夠符合現(xiàn)實世界的長遠目標,這套設計方法不具有擴展性,因為任何一份評估表的結(jié)構(gòu)都會有可能發(fā)生許多改變的。采用面向?qū)ο蟮姆椒,可以從中提取出表類型、表結(jié)構(gòu)、評分方法以及能考慮繼承等各方面的要素,這樣就可以保證軟件的通用性,可配置性與可維護性。
在工具的選擇過程中,我們選擇了現(xiàn)在已十分流行的Rational系列,包括Rational Rose、RUP、SoDA等,為什么選取這個系列工具呢?這是基于我們對軟件需求分析目標的看法,我們認為需求分析應當能正確地回答如下的幾個關鍵性問題:
(1)用戶的需求是否已詳盡地被考慮到了?
(2)用戶能理解或明白我們所描述的內(nèi)容嗎?
(3)分析是否會和設計相脫節(jié),
(4)程序員能明白我們的分析與設計要求嗎?等等。
以下對上述幾個問題逐一簡要地加以說明:
(1)詳盡地獲取用戶的需求。
用戶的需求可分為顯式的需求與隱性的需求,用戶的傾向往往只顧及到當前的與明顯的需求。要達到對需求理解的全面性,不僅僅只是依靠有效的用戶談話和調(diào)查,因為我們所面對的用戶需求往往會有些片面的,采用Rational Rose(基于UML)提供的用例,以及多種圖的聯(lián)合使用,可以使我們發(fā)現(xiàn)其中的遺漏。
(2)使用戶能充分地理解我們的表示方法,能夠真正明白我們描述的內(nèi)容。
軟件需求分析規(guī)格說明書通常會是冗長而枯燥的,一般的用戶不容易深入理解,這樣就削弱了分析的正確性。通過支持面向?qū)ο蠹癠ML語言的Rational Rose可以更好地和用戶交流,讓用戶了解系統(tǒng)的運作方式甚至細節(jié)的操作。
(3)使分析和設計兩個階段互相聯(lián)系與貫通。
這是我們選擇面向?qū)ο蟮姆椒癛ational Rose工具的重要原因,系統(tǒng)分析要向用戶描述的不僅僅是用戶的需求,而且包括解決方法,解決方法當然應包括設計(程序)、數(shù)據(jù)庫與系統(tǒng)配置,我們當然不希望用戶得到的是一個與需求規(guī)格說明不相同的軟件,也不可能要求程序員完成一個不可勝任的任務。然而我們在以前的多項工作中經(jīng)常發(fā)現(xiàn)這類情節(jié),因為系統(tǒng)分析與設計相互脫節(jié),導致一頭扎在分析中不顧設計有關的事宜。
分析與設計的脫節(jié),還不利于設計現(xiàn)格說明的評估,因為分析往往會脫離現(xiàn)實,導致缺乏評估的依據(jù)。
因為不可能成功地完成設計而使分析需要重來,就會造成巨大的浪費與損失。一個好的工具可以使分析與設計更緊密地連結(jié)起來,甚至于—一對應。面向?qū)ο蟮姆治龇椒ㄊ箤ο笾g相對而言有獨立性,減少了任何影響到全局的改動,能避免因需求變化而導致全盤皆動的被動局面。
(4)使程序員明白我們的設計。
一個好的設計應該讓程序員感到清晰明白,更少疑問。一個疑問很多的設計加上溝通不暢,絕對會出現(xiàn)在應用環(huán)境下所不需要的另一個軟件,所以設計規(guī)格說明書務必清楚、形象與明確,當然,Rational Rose具有足夠的圖形與其他形式,能使程序員更加明確,甚至能細微到每一個語句(事實上如果使用VB,程序架構(gòu)都有可能直接生成了)。
(5)選擇UML可能會有更多的理由。
比如用戶文檔的編寫、數(shù)據(jù)庫設計,我們都需要做到有延續(xù)性,有自動化支持和具有質(zhì)量上的保證。
所以,我們選用了以上的方法和工具。
在分析中,面對考勤班次的問題時,由于過去一直使用紙卡方式考勤,使用戶對班次形成了固定的概念,而現(xiàn)在的許多考勤軟件也采用多次刷卡的方法來形成一天的記錄。經(jīng)過面向?qū)ο蟮姆治隹梢园l(fā)現(xiàn),事實上每天的上班記錄是由多個時段所形成的,時段的多少在各個公司,各個工種與部門都不盡相同,每個時段可能有不同的屬性,時段與時段組合可形成為班次,這更適合于現(xiàn)實的情況,使之能更加靈活與更有擴展性。其實,在天與天之間也都有相互之間的關系。在這一點上,我們又發(fā)現(xiàn)必須在考勤與薪金工資中加入與MRP中相似的期段(Periods)的基本概念,比如可以稱之為考勤期段,允許為用戶更加方便地設置考勤期段,可能使之不一定與自然年月日相同等等。
Rational Rose使我們更方便地把上面的想法在類上去實現(xiàn),更進一步地設計好我們的高效率的數(shù)據(jù)庫。
當然,使用單一的一個工具去完成一個中大型的應用系統(tǒng)的需求分析,是不可能成功的。因為社會在發(fā)
展,用戶的需求也在改變,如何把握住用戶的需求是需要時間的,面向?qū)ο蟮姆椒ㄓ袝r也會忽略外在的與表層的要求,不僅僅是要獲得關鍵的需求,其他更多的需求往往要等到用戶在使用后才知道,然而等到用戶使用是不現(xiàn)實的,作為原型開發(fā)模型中的原型也是收集用戶需求,描述與解釋需求的一類相當有效的方法與工具。
在我們的開發(fā)過程中,為了更好地讓用戶了解我們的系統(tǒng)和我們的設計方案,讓用戶在見面會上更有方向性與針對性,我們首先用Access開發(fā)出原型,讓用戶先試用。這樣,我們在真正的分析與設計時就能更加符合用戶的要求。
總之,軟件需求分析方法和工具的使用,對我們軟件開發(fā)過程影響是很深遠的,選用高效能的正確的方法與工具,可以使我們的軟件更加正確地反映現(xiàn)實需求,更加具有可用性、可擴展性和可維護性;降低了軟件項目的風險。
評注:(1)寫得有些特色,觀點鮮明。(2)摘要寫得不錯,既反映了項目內(nèi)容,也小結(jié)了本文的寫作要點。(3)文中所舉的例子雖然簡單,但很實際。(4)多種方法與工具的使用,敘述得簡明扼要。(5)內(nèi)容可更豐富一些,更深入的例子也可再增多一些,則會更有說服力。(6)對需求分析的全過程的描述太少。(本文主要參考了廣東延國慶等人的論文)
系分論文2
企業(yè)集團的信息管理系統(tǒng)應用
【摘要】
本文以某個IT產(chǎn)品銷售公司的信息系統(tǒng)項目的開發(fā)為背景,討論了一個信息系統(tǒng)需求分析的整個過程,其重要特征是:所涉及的項目是原有系統(tǒng)的一個升級替換版本。因此,需求分析過程不同于建立一個全新的系統(tǒng),大體上可分為三個階段:()實施逆向工程獲得對系統(tǒng)的初步了解;(2)在第1步的基礎上寫出基本需求,交由客戶評審補充;(3)在第2步的基礎上開發(fā)原型,利用原型與客戶交流,最終獲得基線需求。針對上述三個階段,本文論述了所使用的分析方法與工具以及所遇到過的一些典型問題和措施,最后對需求分析中使用的工具,談一些自己的初步體會。
【正文】
我于1998年8月至2000年7月參加了某個大型集團的企業(yè)信息系統(tǒng)的開發(fā)工作,該大型集團的業(yè)務主要涉及到IT類產(chǎn)品的進銷存。本人在項目中負責系統(tǒng)分析的工作,該集團企業(yè)原先已委托某個電腦公司開發(fā)過一套IT類產(chǎn)品管理系統(tǒng),但是該老系統(tǒng)存在兩個主要的問題:(一)系統(tǒng)運行速度非常慢,如商品銷售開單時,從確定開單到開單完成有時需要1~2分鐘左右的響應時間,讓客戶無法忍受。(二)系統(tǒng)數(shù)據(jù)不準確,經(jīng)常出現(xiàn)實物庫存與電腦庫存嚴重不相匹配的情況,使銷售數(shù)據(jù)的統(tǒng)計產(chǎn)生一些混亂,有關財務的數(shù)據(jù)因此無法有效使用,只能采用人工錄入方式補充進行。在這種情況下,該集團的總經(jīng)理決定參考原有系統(tǒng)重新開發(fā)一個系統(tǒng),以便解決原系統(tǒng)所存在的上述兩個難以克服的難題。注;原系統(tǒng)采用PB6.5開發(fā),數(shù)據(jù)庫采用SYBASE,服務器采用Windows2000Server,客戶端采用Windows 98,程序架構(gòu)采用的是傳統(tǒng)的C/S結(jié)構(gòu)。
鑒于該集團業(yè)務操作復雜,流程多,涉及人員多等特點,以及項目完成時間短,經(jīng)費有限,人員有限等限制約束條件,再考慮到必須避免前一系統(tǒng)出現(xiàn)過的結(jié)構(gòu)混亂與難于維護等問題,我們決定要對原系統(tǒng)的需求做一個比較徹底的和切實可行的分析,由于原有系統(tǒng)已經(jīng)開發(fā)了近兩年,并且客戶也有了一定的使用經(jīng)驗,業(yè)務基本流程本身也并沒有太大的變化,因此,我們把需求分析的過程分為三步:()分析原有系統(tǒng)的結(jié)構(gòu),主要是數(shù)據(jù)庫結(jié)構(gòu)和程序結(jié)構(gòu),(2)在獲得第(1)步結(jié)果的基礎上寫出基本需求,交由客戶評審補充,(3)在第(2)步的基礎上開發(fā)原型,利用此原型與客戶交流,從而獲得最終可用的需求結(jié)果。下面按上述三步分別加以論述。
第一步是實施逆向工程,獲取原有系統(tǒng)的基本需求。
由于原有系統(tǒng)在功能上大體上能基本滿足客戶的需求,并且在兩年多的開發(fā)中也積累了不少經(jīng)驗,因此,從中可以獲得一些有益的參考,也可以避免多走彎路。在這一階段,我們采用的主要工具是PB自帶的Power Designer和PB Documents;前者主要用來分析數(shù)據(jù)庫結(jié)構(gòu),后者主要用來分析程序結(jié)構(gòu),便于開發(fā)人員與高級用戶理解程序。采用這兩個工具的原因是:原系統(tǒng)過于龐大,模塊多,數(shù)據(jù)庫模式多,表格量很大,僅靠人工的方法很難從中獲得一個比較完整的、明確的系統(tǒng)結(jié)構(gòu)以及整體構(gòu)成,而且原有系統(tǒng)未能提供一套正確完整有效的設計文檔,于是我們只能依靠工具輔助來進行。在使用Power Designer分析數(shù)據(jù)庫,并且用PB Documents分析原程序中的PBL以后,我們對原系統(tǒng)的結(jié)構(gòu)有了一個初步的了解,再結(jié)合對原系統(tǒng)的使用,基本明確了功能與流程的需求,并在此基礎上用人工錄入方式,產(chǎn)生了初步需求的自然語言文檔。這里指出,使用Power Designer的一個不足之處是:如果一個表中的字段過多,而且又同時依賴多個表時,輸出的表格相關圖形很復雜,有很多交叉,且難于調(diào)整,不方便閱讀及打印。
第二步是在第一步的基礎上進行的,即寫出系統(tǒng)基本需求,交由客戶評審和補充。
通過第一步的逆向工程,我們獲得了系統(tǒng)的基本需求。為了充分記錄需求的變化及需求之間的依賴關系,我們決定選用Rational公司的Requisite PRO作為我們的需求管理工具,Rational公司有一整套用于需求管理的工具,功能非常強大,包括Requisite Pro、Clear Quest等等,這些需求分析工具可以對需求進行全面的管理,包括記錄需求的變化情況,需求之間的依賴關系等等。但是,我們考慮到Rational的一套工具全面實施會非常昂貴與復雜,需要非常強的項目管理能力才能全面實施,因此,我們只采用了其中最簡單的一部分功能,那就是記錄需求變更,記錄需求之間的依賴關系,其他跟RUP有關的功能都給略去了。之所以這樣做,主要是考慮到項目的經(jīng)費、人力以及國內(nèi)軟件開發(fā)的實際情況。正如前面所說,我們根據(jù)自己的理解并寫出基本需求后,交由客戶做評審井做適當補充,我們將經(jīng)過補充整理后的需求作為正式需求記錄入Requisite Pro所維護的數(shù)據(jù)庫中,并對各個需求進行分類,設定優(yōu)先級等,這些工作完成后,就可以從數(shù)據(jù)庫中直觀地了解客戶到現(xiàn)在為止提出了哪些需求,哪些需求是必須優(yōu)先考慮的,哪些是難度較大的等等。在這個過程中,我們遇到了一些問題,譬如:用戶對我們用自然語言書寫的需求文檔有許多地方不理解,往往在花了較長時間閱讀之后,仍不明白我們所描寫的需求過程與他們所完成的業(yè)務之間的對應關系;另外是由于首次采用Requisite Pro進行需求管理,在類型劃分,屬性值的確定上,部分開發(fā)人員沒有經(jīng)驗,造成了不少反復,對于前者,我們的方法是想辦法增加一些示意圖,將大的流程分解為小流程,再與客戶反復交流與溝通,最終達到雙方理解一致的目的。對第二個問題,則參考了一些例子,再結(jié)合實際中屬性的使用情況,給予取舍或者選擇,經(jīng)過這一階段的工作,我們建立了基本的需求庫,定出了基本需求規(guī)格說明。
第三步則是在第二步的基礎上建立起原型,利用原型與客戶進行更深入的交流,通過交流修改相應的需求。
在這一階段的工作是在對第二步任務進行報告交流的基礎上進行的。我們用PB開發(fā)了一個原型系統(tǒng),就具體的業(yè)務流程與客戶進行交流與溝通,通過原型,客戶發(fā)現(xiàn)了許多我們與他們的理解相互不協(xié)調(diào)的地方,我們在修改需求的同時,也在Requisite Pro需求數(shù)據(jù)庫中記錄下修改的歷史。事實證明,這種記錄歷史的作用是很有效的,如曾經(jīng)有客戶在兩個不同的時間對同一需求提了相反的需求,我們根據(jù)歷史記錄很快證實了該客戶的提法有錯誤,在事實面前無需再作爭論,同時利用Requisite Pro,我們還發(fā)現(xiàn)了一些需求相互之間有矛盾。經(jīng)過這一階段工作,我們終于獲得了經(jīng)過用戶認可的需求基線,即是可用于下一步進行詳細設計的基線需求。
在這個項目中,我們利用了Power Designer、PB Documents等逆向工程分析工具和Requisite Pro需求管理工具,這些工具的使用,使我們提高了工作效率,起到了一定的輔助作用。但是,就需求分析工具方面而言。我們覺得國內(nèi)應用得還是太少了,這一方面是因為對需求分析不夠重視,另一方面是因為管理水平還達不到相應的層次。Rational公司的一整套需求分析工具,其功能是非常強大的,國外已在普遍地使用,在國內(nèi)也逐漸開始普及,特別是那些通過CMM二級以上評審的單位,都必須使用工具對需求進行管理。在本項目中,我們僅僅利用了Requisite Pro功能的一些小方面,已經(jīng)體會到該工具對于項目管理的諸多好處。如果一個有實力的公司能夠全面實施RUP,那么需求管理這個老大難的問題會變得不再那么棘手了,項目的質(zhì)量也會得到相應的提高。目前國內(nèi)由于CMM熱潮的興起,已經(jīng)逐漸重視需求分析,也逐漸使用需求分析工具,這是非?上驳模斎,更希望在不久的將來,能用上國產(chǎn)的需求分析工具,那時我們的軟件產(chǎn)業(yè)也許會真正地騰飛了。
評注;采用逆向工具進行再工程的應用很多,本文給出了一個實際的例子。寫作有條理,也很實際。合理地界定了需求分析的現(xiàn)實水平。所采用的需求分析的方法與工具相對較合理科學。能在對項目討論的同時抒發(fā)議論、使用體會、愛國心和事業(yè)心。深度還可以提高,例子宜更加豐富一些。(本文主要參考了廣東劉小波等人的論文)
轉(zhuǎn)帖于:軟件水平考試_考試吧
- 推薦給朋友
- 收藏此頁
·網(wǎng)絡工程師資料:網(wǎng)絡體系結(jié)構(gòu)-軟考網(wǎng)絡類題解 (2008-4-25 14:33:38)
·計算機網(wǎng)絡基礎網(wǎng)絡拓撲結(jié)構(gòu)及優(yōu)缺點分析 (2008-2-22 14:04:32)
·網(wǎng)絡工程師必知:靜態(tài)路由協(xié)議配置方法 (2008-2-22 14:03:39)
·計算機網(wǎng)絡尼奎斯特 香農(nóng)公式例題解析 (2008-2-22 14:02:35)
·軟考復習:因特網(wǎng)IP的分類、尋址規(guī)則及子網(wǎng)掩碼 (2008-2-22 13:57:21)
如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。