時間:2022-09-01 04:41:08
導語:在項目需求分析的撰寫旅程中,學習并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了九篇優秀范文,愿這些內容能夠啟發您的創作靈感,引領您探索更多的創作可能。

關鍵詞:網絡營銷;平臺;互聯網;需求分析;用戶
中圖分類號:TP393.092
將網絡營銷商務平臺打造成國內一流大型網絡營銷學習與交流、技術服務、整合營銷顧問平臺為目標,通過平臺前臺架構將現有的平臺無論從外觀設計、內容、展示速度、還是整體功能有效整合,配合網絡營銷專業教學,網絡營銷實訓項目的整合操作,實現對網絡營銷整合行銷項目的整體品牌形象的提高。
1 總體需求分析
1.1 利用SNS平臺特有效應,提供種類多樣、互動性強的學習、交流渠道。SNS是依據六度理論建立的網絡平臺,可以實現在線溝通、交友、視頻分享、博客、播客、網絡社區、音樂共享等另外,還可以幫你運營朋友圈的朋友。以最全的功能實現授業、解惑、交流、溝通、互動,并積聚人氣。
1.2 利用交流性門戶網絡的效應,提供了廣闊的發展空間。通過應用電子商務、建立平臺,不僅可以提高自己的知名度,而且可以提供全天候保持和自己學員、網絡會員(潛在的學員)、項目客戶、合作單位的聯絡,通過建立平臺,用圖像、動畫技術,輔以文字,聲音等附加信息,對我們的專業和可提供的網絡營銷服務進行全方位的描述和介紹,為構建網絡營銷商務平臺奠定有效的基礎。
1.3 為個人提供自我展現的平臺。開通能力秀場,利用平臺,組織網絡營銷相關各類服務產品,如網頁設計、營銷型平臺規劃、SEO項目策劃、百度競價、淘寶美工、淘寶客服等各種技能展示平臺,將平臺建設得更加生動有趣,拓展平臺的人氣值,社會影響,推動平臺推廣,使平臺成為網絡營銷人才的能力秀場,成為企業尋找網絡營銷人才的伯樂場。
1.4 提供新穎有效的網絡營銷商務服務。利用學員建設平臺,具有費用更加低廉運營成本的競爭優勢,充分發揮教員的經驗優勢,具有更強勢的專業技能服務優勢,從而打造一個不同于其他網絡服務公司的高效高質、低成本網絡營銷商務平臺,它將不僅僅只是一個網絡營銷的教學平臺,還是學員網絡營銷實訓基地,更是廣大企業網絡營銷的策劃師與實施專家。
1.5 電子商務平臺。利用平臺實現企業網絡營銷各種服務的在線交易。
2 客戶需求分析
從互聯網發展狀況來看:互聯網技術自發明以來已經走過了40多個年頭,今天的互聯網上活躍著黑客攻擊,網絡購物等等,未來互聯網的發展趨勢不再是上億條信息的發送與接收,而是上億件物品之間在其所有者和其他服務方的協助下彼此之間相互連接和交流的“物聯網”。從住宅自動化管理技術到電子醫療,物聯網覆蓋的范圍似乎無所不及。物聯網領域的發展相當可觀,許多想法已經變成現實,當今世界只有1%的物品彼此之間實現了有效連接,也就是還有99%的空間需要去開發和完善。物聯網最大的目標就是實現營銷,這個目標就是在物品或服務的所有者與需求之間來實現,而網絡營銷就是這一目標實現的終極手段。
從傳統企業對網絡營銷的認識來看:所謂認識問題,主要是傳統企業對網絡營銷沒有一個正確客觀的認識。所謂網絡營銷,簡言之就是網絡+營銷,二者缺一不可,但重在營銷。認識的問題最終主要體現在企業主身上,作為一個成功的傳統企業老板,對營銷可謂不會沒有認識,但對網絡就稍顯陌生,由此一來他們就會誤認為網絡營銷關鍵體現在網絡上,進而認為做好網絡推廣、做一個好的企業平臺就是網絡營銷。同時再加上市面上那些崇尚技術至上、毫無營銷策劃功底的網絡營銷公司出于商業利益驅使,對其進行錯誤引導!
從平臺的直接用戶來看:平臺用戶前期鎖定學校學員和網絡營銷從業人員,后期增加企業用戶。從學校學員來看,缺少實戰經驗和問題解決的多途徑,從網絡營銷從業人員來看,雖然有不少以網絡營銷、SEO的網站出現,但多數都僅限于資訊、技巧文章這些,缺少專業技術的探討、技能競技、成果展示。
3 技術可行性分析
在平臺規劃中引入SWOT分析方法,能將平臺發展的每一階段分成四個角度作全面的剖析,包括長處、短處、機會及競爭威脅,讓整個項目能夠有效地根據學校本身優勢去解決目前問題。通過分析,我們要注意在設計思想方面,要從傳統的面向業務的設計轉向面向用戶的設計,即將設計的著眼點放在用戶對象身上,設計視角范圍是整個的網絡環境,在此基礎之上將面向對象的思想引入到系統設計中去。
3.1 網絡營銷平臺的用戶是學員、網絡營銷從業人員、企業,因此,我們平臺所有功能的設計要充分體現這些人員的需求,從他們的需求點出發,建立完善的需求體系。目前因為網絡營銷發展并不成規模,因此這個行業的從業人員多數為個人作業,因此,在平臺前期我們可以針對這一現象建立一個網絡營銷從業人員的網絡經紀人系統,將這些有從業經驗的人才網羅在自己的平臺內,為自己效力。
3.2 對網絡和互聯網的不信任和安全疑慮,對行業的理解認識不全面,是需求者最大的選擇障礙,而我們這個平臺最終極目標是商業運營,實現在線交易,因此必須通過專業的技術和理論知識樹立一個專業淵博的權威形象,同時還要用技術設計全面、真實、細致的誠信認證與評價體系。針對這個問題,在功能設計上,將從個人和企業兩個方面來考慮,對于個人會員將從成長體系、成就體系這兩具方面來實現,而對企業將建立企業資質認證體系和企業網絡營銷項目實操進程體系兩個方面來實現。
3.3 技術方向方面,采用INTERNET結構體系,共享資源,統一管理,用戶維護使用界面統一為瀏覽器,應用系統全部在服務器端,系統負載輕,開放性好,系統維護升級方便。
3.4 基于我們自身條件,在項目前期以硬投入為主,因為前期主要是互動平臺的搭建和平臺人氣的積聚,可以充分利用我們現有的資源,師資技術和學員人力,另外基于平臺后期發展數據的不斷增加與安全防護,要選擇安全性能好,穩定性好的硬件服務器環境。進入項目發展期以后,重要項目功能的升級和項目的商業運營,因此軟投入應該占主要方面,以人才引入、培訓、項目運作等方面為主。
4 平臺功能分析
通過平臺各階段發展需求分析,來定義平臺的各個功能模塊,以完成各階段的運營目標。但是要讓瀏覽者方便有效地使用平臺服務,提高平臺排名,還需要對功能模塊的設計加以優化,充實功能需求。這樣,作為功能需求的補充,平臺開發的需求規格說明還應包括非功能需求,它描述了系統展現給瀏覽用戶的行為和用戶所需執行的操作等。
鑒于平臺重要的門戶作用,因此有必要在設計階段特別建立一個平臺的功能模型,以明確各級功能模塊的操作細則,以及平臺前后系和操作的方法和措施。根據我們的需要和計劃,平臺的功能將是定位在大型綜合網絡營銷服務網絡的模式,這樣平臺的功能設計遵循:時事資訊型、交流互動性、網絡競技型、網上營銷型、客戶服務型、電子商務型的總和,以此為出發點定制專業的功能模塊來實現平臺和公眾之間的無障礙的雙向信息交流。
網絡營銷商務平臺作為動態的平臺,必須搭建后臺數據庫開發元素,必須可以有自己的后臺來管理平臺,以修改互聯網最新時訊動態、知識教程、在線討論解惑、在線競技投票等。
參考文獻:
[1]劉志.網站策劃師成長之路――網站策劃與設計實戰[M].北京:機械工業出版社,2011.
[2]李莉.網絡營銷[M].廈門:廈門大學出版社,2014.
論文關鍵詞:高職院校,績效管理,需求分析
隨著高職院校改革深層次的推進,科學合理的教師績效管理體系關系到高職院校人事制度改革的成敗,關系到整個教師隊伍的建設,是否合理、有效直接影響到教師的工作積極性,對學校的滿意度和忠誠度。因此,教師的績效管理對高職院校來說具有重要的現實意義。
一、我國高職院校績效管理存在的問題
1.績效目標不明確、計劃制定滯后
部分高職院校的績效目標往往不公開、不透明,教師根本不了解學校的總體目標,更不知道自己應該完成的績效目標,績效計劃制定滯后導致整個管理體系流于形式。
2.缺少實施和監控環節
績效管理的實施過程中,忽視了績效指導和輔導工作,教師管理者也沒有意識對教師平時的績效表現做記錄,績效系統雖然在運行,但是并沒有專門的機構對非系統是否有效、是否適用進行監控或者改進。
3.考核缺乏公平性
為避免沖突,績效排名時有的部門按照“輪流坐莊”,教師對考評結果認同度低,利用的也不充分,很難起到激勵教師員工的效果。績效考評的結果僅僅與經濟利益掛鉤而忽略員工更高層次的需求,所以更談不上激勵的效果了。
4.結果運用單一、反饋不充分
部分學校在績效管理中只重視考核結果,但是考核的結果并沒有跟教師溝通與反饋,也并沒有對教師的進一步績效的規劃。
二、原因分析
探究部分高職院校績效管理系統運行效率低下的原因,我們從績效管理系統、人(管理層、中層領導、教師)、資源與內部流程(管理方法)幾個方面加以分析。
1.缺乏完整、科學、公平的績效管理體系
績效管理包括績效計劃、績效溝通、績效考核、績效反饋以及績效改進五個方面。是一個循環往復的過程,即從從組織的戰略目標出發,將組織文化、管理理念融會其中,在推動組織目標實現的同時開發員工潛能、培養員工技能,以提高績效。績效管理更加注重過程中的信息溝通和結果反饋,注重考核結果的運用。
許多高職院校簡單的將績效考核等同于績效管理,為了考核而考核。忽視或者完全沒有績效計劃、績效反饋、績效溝通、績效改進等環節的管理活動。從績效管理體系來看,績效考核只是績效管理過程中的一個關鍵環節,是一種以結果為導向的考核系統,側重于判斷和評估,無法替代和等同于績效管理。
2.缺乏專業機構和管理人員
許多高職院校并沒有設立專門的機構部門來進行學校的教師績效管理工作。教師的考核結果不能及時地反饋給教師本人,教師就無法知道自己在考核期間內的工作哪些地方做得好,哪些地方還有待改進,這會造成教師的績效無法得到改善和提高。這樣教師個人的績效無法達到改善和提高,而高職院校整體的績效也會受到影響,結果是高職院校在激烈的教育市場競爭中將失去競爭優勢。
3.管理制度不配套
良好而正確的管理制度是教師績效管理得以實施和發揮作用的前提和環境,沒有配套的管理制度,再好的績效管理思想和方法也難以順利地實行。很多高職院校并沒有建立起比較健全的管理制度,以至于許多管理活動無法做到有章可循,導致了高職院校教師績效考核缺乏全面性和公正性,影響了績效考核結果的參照作用,既不利于對高校教師的激勵也不利于高校整體績效水平的提高。
4.績效管理工具設計、運用不當
績效目標、指標設置不正確,計劃設計不當、缺少績效溝通、績效結果運用單一都是績效管理不當的主要表現。
高職院校在績效考核中關鍵指標的設定不科學,具有片面性,不能準確的衡量教師的真實水平,導致教師消極對待,最終影響教師的積極性。
目前高職院校的激勵條件往往和年終獎金和職稱掛鉤,但是僅不能與干部任免、職務晉升、薪酬檔次等教師的切身利益聯系起來,其結果必然導致激勵效果停留在淺的層面上,最終流于形式,發揮不了應有的作用。還有很多高職院校的激勵措施也具有暫時性、不定性,缺乏制度的保障。
高職院校在推行績效管理的同時,忽略了與教師溝通,教師對績效考評存在抵觸心里,因此教師對績效考評首先采取自我保護的態度,出現自評打滿分,互評一團和氣,榮譽輪流坐莊的現象,基本上失去相互比較的意義。這說明高職院校教師還沒有認識到績效管理的必要性和重要性,因而績效管理成了教師和管理者雙方的負擔,而不是動力,從而導致績效管理的結果與初衷大相徑庭。
三、我國高職院校績效管理的需求
1.學校高層管理者對項目的要求
(1)符合學校總體戰略目標,能夠提高學校績效管理水平;(2)符合高職教師發展的需要,能夠提高教師勝任力和教師滿意度;(3)能夠營造和諧統一的組織文化和開放平等的溝通氛圍;(4)能夠提高學校中層管理者的管理水平。
2.教師對項目的要求
(1)考核過程公平、公正、透明;(2)自己的付出能夠得到學校領導的肯定,得到相應的回報;(3)績效目標符合自身能力范圍和發展需要;(4)職業發展規劃的要求。
3.績效管理執行者對項目的要求
(1)考核指標科學合理,易于操作;(2)能夠得到績效管理方法的培訓和指導;(3)能夠提高團隊凝聚力;(4)能夠規范教師行為。
根據分析確定高職院校績效管理項目的總體目標:
采用項目管理的方法實施教師績效管理,保證高職院校戰略目標的實現;提高高職教師工作績效,提高每位教師的工作勝任能力,建立一支過硬的適合高職院校發展戰略所需的教師隊伍,提高學院的競爭力;促進學校管理者與教師之間的持續溝通與交流,形成開放的、積極參與的、主動溝通的、以績效為導向的組織文化,增強學校的凝聚力,贏得高職院校持續發展的核心競爭能力。
參考文獻
【摘要】目的:為了解婦幼保健服務及健康教育現狀與群眾的需求,為今后婦幼保健院開展健康促進項目提供科學依據。方法:對今年3月來我院尋求服務的465人進行隨機問卷調查。結果:回收的465份有效問卷健康教育知曉率60%以上;婦幼保健健康促進項目需求量在81%以上。結論:醫院健康教育工作仍需加強,健康教育形式要多樣化,可以開展健康教育有償服務;婦幼保健院要做根據不同層次人群的需求,做大做強婦女兒童健康促進項目。
【關鍵詞】婦女兒童;健康教育;健康促進項目;需求
Women child health education and health promote item need and analysis
Li Ying Yang Shili Li Fang Hu Shaoling Su Yuping
【Abstract】Purpose:For the sake of solution Fu young health care service and health education the need of the present condition and crowd, for aftertime Fu young health care the hospital open an exhibition health help the item to provide science basis.Method:To this year March come to my hospital to look for service of 465 people carry on random questionnaire.Result:Recovery of 465 valid questionnaire health education understand a rate above 60%;Fu young health care health promote the item demand is in above 81%.Conclusion:Hospital health education work still need to be strengthen, health education the form want diversification, can open an exhibition health education have Chang service;The Fu young health care hospital want to do according to dissimilarity the need of the layer crowd, do big is a strong women child health promote item.
【Key words】Women's child;Health education;Health promote item;Need
為了解婦幼保健服務及健康教育現狀與群眾的需求,今年3月,我們對來院尋求幫助的465名孕產婦和兒童及家屬中進行健康教育和健康服務現狀與需求調查 ,以了解當前婦女兒童健康促進服務、健康教育現狀與需求,并對調查資料進行統計分析,為探討婦幼保健院在今后開展婦幼健康促進項目,做大做強婦女兒童健康促進延伸產品提供可靠的科學依據。
1.對象與方法
1. 1 對象:今年3月來我院婦產科、兒科及相關輔助科室就診的465名服務對象及家屬。
1.2 方法:采用我院自行設計的《婦幼健康促進項目》問卷調查表,以問卷的方式,每次以產科、婦科、兒科及相關的輔助科室為單位進行隨機分發,對孕產婦及兒童的其家屬進行問卷調查,共發465份。每個調查項目,采用知道、不知道;需要,不需要進行調查,答題者根據本人情況如實選其中一項回答。我們將調查表匯總,結果如下。
2.結果
2.1 健康教育知曉率。見表1。
2.2 婦幼健康促進項目需求。見表2。
3.討論
(1)本次調查是在孕產婦及兒童和家屬中進行,能代表孕產婦和兒童的保健意識及保健需求。
(2)本次調查表明,產前檢查知曉率達95.91%,說明通過多年來婦幼衛生工作者的努力,特別是《中華人民共和國母嬰保健法》頒布實施以來,孕產期保健工作得到了普及,各級衛生行政部門規范了孕產期保健工作,開辦孕婦學校,孕產期保健知識深入人心,大眾基本能接受孕產期保健。
(3)在本次調查的人群中仍有18.49%的人對住院分娩的好處不了解,認為分娩是瓜熟蒂落的事,住院分娩費用高,在家也可以進行,不必花那么多錢去住院。
(4)計劃免疫知曉率60%,主要認為小孩沒有病不必打針和服藥。說明今后要加強計免知識宣傳,讓老百姓真正懂得計劃免疫的好處,自覺接受計劃免疫。[1]
(5)飲食營養知曉率是本次調查知曉率最低的,只有46.24%,說明公眾對飲食和營養的需求仍停留在吃飽或吃好就行了。孕婦缺乏、需要營養知識,需要孕期營養門診或孕期營養專題講座等更專業指導方式,進行營養知識指導、個體化飲食安排指導、營養膳食評價等更高層次的服務[2]。對兒童或青少年營養需要不知道,不懂那些是自已需要的營養素,怎樣吃,吃什么好?這些都說明營養知識需求有較大市場。
(6)本次被調查的人群對更年期保健知曉率只有63.86%。說明大眾缺乏更年期保健知識,需要加大宣傳力度,更年期保健市場前景看好。[3]
(7)兒童早教知曉率達94.40%,說明群眾對早教能夠接受,婦幼醫院應加大早教力度,讓兒童早教發揮更大的效益。
本次調查結果顯示,隨著人民生活水平的不斷提高,現有的醫療服務不能滿足不同層次群眾的需求,發展婦女兒童健康促進項目是當務之急,如孕婦俱樂部、兒童俱樂部、青年俱樂部、更年期婦女俱樂部、營養俱樂部的需求量達81%以上;兒童早教需求量達94.41%;兒童營養指導、智力開發、心理衛生等指導需求達91.18%,說明婦女兒童健康促進項目市場前景良好。
3.1 醫院健康教育工作有待加強。本次調查說明,隨著醫療衛生保健事業的發展和人民生活水平的不斷提高,大眾衛生知識及自我保健意識逐步提高,婦幼保健服務已被越來越多的群眾所接受,但由于受文化和經濟、教育、交通、習俗、傳統觀念等多種因素的制約,仍有部份群眾衛生保健意識薄弱。被調查者中有29.03%的人不知道更年期保健知識;有27.53%的人不懂飲食營養;有[4]14.41%的人不知道飲食衛生;有13.98%的人對青春期保健知識不了解;有12.26%的人不知道要做計劃免疫;有12.04%的人不知道高危孕婦要住院分娩;有10.75%的人不知道孕期需要醫生指導鍛煉;可見,婦幼醫院健康教育工作有待加強。健康教育是婦幼醫院營銷的窗口,在當今市場經濟社會,醫院有了好的服務產品,必須要有營銷手段,健康教育科就是婦幼醫院最好的營銷窗口。只有健康教育工作做大做好了,婦女兒童健康促進項目才有市場,才能發揮更好的社會效益和經濟效益。
3.2 醫院健康教育形式要多樣化。除了接診醫生、護士對病人進行面對面健康教育外,還要根據各醫院現有條件進行發宣傳資料、健康教育處方、電視節目、板報、墻報、講座、培訓班、俱樂部、報刊雜志等進行有效宣傳活動,并把健康教育作為常規工作。健康教育直接將知識、技術和服務有機地結合在一起,提高醫院的服務質量和水平。[4]
3.3 醫院健康教育應有各項量化指標,便于考核和提高。目前醫院健康教育考核指標不夠量化,檢查、考核存在一定難度,需要制定能量化考核又便于操作的考核指標。
3.4 醫院健康教育要開展有償服務。醫院健康教育除了開展公益性無償服務外,還要開展圍繞健康促進項目的有償服務,增加健教科工作人員收入,從而體現健教工作價值及調動職工的工作積極性,使健教工作可持續發展。
3.5 健康教育工作應納入社區日常工作來抓。社區應組織公民定期聽保健醫師講授衛生保健知識課,接受科學衛生觀,改變不良飲食和不衛生習慣,從而提高公民綜合素質。
參考文獻
[1] 葉建國,王春啟,等.健康教育在鄉鎮預防接種工作中的作用. [J]. 中國健康教育.2003.19(7)520.
[2] 陳沁,等. 孕婦營養知識水平與服務需求調查分析. [J].國際醫藥衛生導報..2009.15(12)121.
[3] 楊艷杰,彭濤,楊秀賢,等.農村社區更年期婦女心理健康狀況調查分析. [J]. 中國婦幼保健..2004.19(7)106.
關鍵詞:用戶 軟件開發 軟件工程
一、軟件工程中的需求分析概述
一個軟件項目的開發主要分為五個階段:需求分析階段、設計階段、編碼階段、測試階段和維護階段。而需求分析階段所得到的結果是軟件項目開發中其他四個階段的必備條件。從以往的經驗來看,需求分析中的一個稍稍的偏差,就可能導致整個項目無法達到預期的效果。需求分析是指理解用戶需求,就軟件功能與客戶達成一致,估計軟件風險和評估項目代價,最終形成開發計劃的一個復雜過程。需求分析是軟件工程中的一個重要環節,是關乎軟件項目開發成敗的重要因素。現在的軟件項目中返工開銷幾乎占了總開發的一半,而導致返工的主要原因是需求分析不明確,從而引發項目開發中的一系列更改。這些更改可能導致浪費大量資源、軟件項目無法按時完成等嚴重問題。所以,需求分析是軟件設計和實現的基礎,是軟件項目邁向成功的重中之重。
二、軟件工程中的需求工作流程
1.創建數據字典。數據字典是對系統用到的所有數據項和結構的定義,以確保開發人員使用統一的數據定義。在需求階段,數據字典至少應定義客戶數據項以確保客戶與開發小組使用一致的定義和術語。分析和設計工具通常包括數據字典組件。
2.確定需求的優先級別。應用分析方法來確定使用實例、產品特性或單項需求實現的優先級別。以優先級為基礎確定產品版本將包括哪些特性或哪類需求。當允許需求變更時,在特定的版本中加入每一項變更,并在那個版本計劃中做出需要的變更。
3.分析需求可行性。在允許的成本、性能要求下,分析每項需求實施的可行性,明確與每項需求實現相聯系的風險,包括與其它需求的沖突,對外界因素的依賴和技術障礙。
4.使用質量功能調配。質量功能調配是一種高級系統技術,它將產品特性、屬性與對用戶價值聯系起來。該技術提供了一種分析方法以明確哪些是客戶最為關注的特性。質量功能調配將需求分為三類:期望需求,即客戶或許并未提及,但如若缺少會讓他們感到不滿意;普通需求和興奮需求,即實現了會給客戶帶去驚喜,但若未實現也不會受到責備。
5.衡量需求穩定性。記錄基本需求的數量和每周或每月的變更數量(添加、修改、刪除)。過多的需求變更“是一個報警信號”意味著問題并未真正弄清楚,項目范圍并未很好的確定下來或是政策變化較大。
6.繪制系統上下文示意圖。這種示意圖是用于定義系統與系統外部實體問的界限和接口的簡單模型。同時它也明確了通過接口的信息流和物質流。
7.作為功能需求的補充,軟件需求規格說明還應包括非功能需求,它描述了系統展現給用戶的行為和執行的操作等。它包括產品必須遵從的標準、規范和合約;外部界面的具體細節;性能要求;設計或實現的約束條件及質量屬性。
三、現階段軟件工程課程設計中需求分析現狀
學生重代碼,輕需求,急于完成可見的執行軟件,大大壓縮了需求分析時間;學生缺乏對所選課程設計題目相關的業務知識的了解,需求分析只是對需求的拼貼,不完善,不系統;缺乏實際項目經驗,對需求分析的認知只是停留在理論階段,不能在實踐上給學生以高水平的指導。
四、解決方案
針對以上問題,文中給出解決方案如下:一方面轉變學生對需求分析的認知誤區,強調需求分析的重要性,通過一些案例及調研數據讓學生了解忽視需求分析帶來的嚴重后果,讓學生重視需求。讓學生了解軟件項目開發工作和項目管理工作都與需求密不可分,如軟件項目成本估算、進度計劃、項目跟蹤控制、驗證、確認等工作都以需求為基礎;軟件設計、編碼、測試最終的目的都是為了提交一個滿足用戶要求的可執行軟件,用戶的要求主要就體現在需求分析的制品上。另一方面增強需求分析的趣味性,讓學生主動參與需求分析,如選題上給學生充分的自主選擇權利,或者讓兩個同學選相同題目(分別做不同模塊),同組間進行需求分析競賽等。在軟件開發過程中讓學生記錄并總結,自身項目中存在的那些需求問題,對項目產生了怎樣的影響,讓學生在實踐中體驗、總結需求的重要性,加深認識。題目選擇范圍上給學生更大空間,可從教師給定的題目中選取,也可學生自擬題目。因為課程設計的時間有限,需求又是一項要求精細、準確、全面的工作,所以在課設開始前至少一個月,讓學生預先選好題目,進行需求調研、分析工作。需求分析開始前,由教師預先規定應分析什么,如:軟件功能需求、性能需求、可靠性和可用性需求、接口需求、系統約束等;采用什么樣的分析方法,建立什么模型,如:功能模型、數據模型、行為模型等;及最終要形成軟件需求規格說明,該文檔模板由教師提供。任何軟件需求都離不開其涉及到的業務領域,因此也要要求學生對業務領域相關的標準模型進行分析和研究,對業界的一些標準和最佳實踐進行熟悉,對業務領域進行大量調研。這樣才能讓才能分析出真正的需求,否則需求就會脫離實際。不但要有扎實的理論知識,還應具有較強的實踐經驗,指導學生完成由理論知識向實踐技能的轉換。所以在選擇課程設計教師的一個重要條件就是教師要有軟件項目開發經驗及管理經驗[5],熟悉軟件開發的各個環節。若教師本身不具備這樣的能力,也可以通過加強教師培訓,讓教師到企業中實習的方式來提高教師實踐指導水平,通過考核的教師才可以指導課程設計。
五、結語
軟件需求分析中的關鍵就是展開分析、發現問題、征服問題。所有的一切都是為了能夠將軟件中的錯誤和漏洞在需求分析和需求工程階段發現并解決,這樣才能使軟件開發的成本收益比達到最大,使得軟件在其生命周期中的維護費用降到最低,這也是我進行軟件需求分析方法研究的目的,希望可以通過上述的軟件需求分析的方法研究為以后軟件的開發打下一個良好的基礎。
參考文獻:
[1]PressmaI1.軟件工程一實踐者研究方法(第4版).北京:機械工業出版社,1999.
在收集完數據之后,PM要和客戶開始明確項目的大小,成本,規格,期限等重要特征并將其寫入合同文本,同時準備內部的包括預算,衡量標準等文檔,建立項目的評估標準。接下來就是需求分析。由于專業的原因,我們這里僅討論軟件工程項目的需求分析(以下簡稱需求分析)需求分析的主要參與人員有PM,總體架構設計師,系統分析員,熟悉業務流程的客戶。PM統領的團隊這時候還不是真正的開發團隊,我們叫做前期團隊。隨著需求分析的逐步深入,新的團隊成員不斷加入,啟動階段結束的時候正式的團隊將建立。對一個已經啟動的項目來說,需求分析直接決定了項目的成功與失敗。最初的需求體現在客戶的工作說明書或招標文件及附件上。這種需求一般比較含糊,無法體現客戶真正的需求。前期團隊要根據自己的經驗和客戶溝通并引導客戶進入正軌。有時候客戶會很不講道理或者思路僵化,就要求按照他的思維去定一些明顯錯誤的需求。這個時候團隊成員要耐心和客戶舉事實,談經驗,講道理,用圖形或模型等直觀的方式將需求描述出來,比如常見的數據流圖等。所以說,爭論再所難免,客戶有時候會吹胡子瞪眼睛拍桌子甚至會說"這個東西不要你們做了"之類的話。PM此時除了要親身參與需求分析綜合整理文檔之外,還要處理好團隊成員與客戶的關系,確保關系不會惡化到無法收拾的地步。只要PM盡力約束團隊中的成員,這個度還是很容易控制的。
對快速開發和疊代開發來說,需求和實現往往是同步進行,開發速度快是一大優勢。對有相同或類似模式的小項目來說采用快速開發或疊代開發是很合算的做法,時下流行的極限編程就是針對這方面建立的思維模式。然而,大中型項目中有太多不一樣的需求和模塊。如果不是因為項目有差異,那么市場上就只有產品而沒有項目了。所以,大中型項目的需求要認真仔細的去做。我們要討論一個問題,究竟應該在需求分析和總體設計上花費多少時間?我們熟悉的瀑布開發模式基本上分需求分析,總體設計,軟件開發,測試等幾個階段,然而究竟應該在前兩個階段上花多少時間卻沒有定論。實際項目操作的例子表明,分析設計的時間越長,需求設計做的越詳細,測試的時間就越短,返工率越低,風險也越小,成本越容易得到控制。
而需求分析和總體設計沒有做好就急忙上馬進行開發的項目在項目初期進展順利的時候問題不大,到了項目后期和測試階段一些潛伏期比較長但是破壞作用比較大的問題就會凸顯出來,造成返工,延長測試時間。所以與其把問題堆積到緊張的項目后期,不如把時間多花點到需求分析和總體設計上。基礎夯實了,金字塔就容易造了。在日本公司打工的程序員們可能都知道,小日本的軟件規范非常厲害,他們花在需求分析和總體設計上的時間通常在40%到50%左右,遠遠超過國內軟件項目的實施,效果也要強的多。他們總體設計的規范甚至詳盡到某個過程該如何判斷,確立什么樣的條件,換言之就是把什么時候該如何寫(if...else)語句都幫程序員定好了。在這樣的軟件規范下,程序員更象是裝配流水線上的工人,對一個模塊或技術熟悉到一定程序就變成了完全的重復性勞動。所以在日本和歐美經常會有程序員是低級工作一說,很多人不明就里,對國內程序員也照搬,對國內的程序員來說是很不公平的。在國內,只會照抄別人代碼,一點都不懂創新,凡事依靠別人,快下班就盯著表看的程序員是不少,這種人一般很難有什么前途。但是,優秀的不斷進取的程序員也很多。由于國內沒有象CMM這樣的軟件規范或者很少,所以這類優秀的程序員不少都是干著系統分析員甚至PM的活,拿著程序員的工資。這類程序員雖然在起步時會吃很多虧,而且是主動找虧吃,然而幾年之后與前一種程序員的社會地位會出現明顯的分化。當上進的程序員們作為PM進行商務談判的時候,前者還在各個公司里頻繁跳槽,跳來跳去都不滿意。有些扯開了,回到我們的話題。
一、項目需求分析
本章主要是說明推理猜謎手機游戲項目的需求分析。推理猜謎手機游戲項目的需求分析階段是游戲項目的最初階段。游戲能否取得成功,和需求分析階段是密不可分的。
(一)需求分析流程
1.項目流程的分析
(1)項目流程分析的原則
對于推理猜謎手機游戲項目,所以按照一個合理的游戲項目需求分析原則來進行需求分析是非常有必要的。對于推理猜謎手機游戲項目的需求分析,如表所示,下列的內容非常重要:
(2)項目流程分析的步驟
要想做好推理猜謎手機游戲項目的需求分析,需要按照一個合理的流程來進行,這在需求分析階段是非常重要的。步驟如下:
①市場調研
②收集信息
③編寫游戲功能描述書
二、項目解決方案與關鍵技術
本章是介紹推理猜謎手機游戲項目的解決方案與關鍵技術,根據推理猜謎手機游戲項目的具體需求,同時在橫向對比同類游戲的基礎上,確定游戲項目的解決方案,并在此基礎上對關鍵技術的選擇進行討論,最終確定出關鍵技術。
(一)開發方案
開發的游戲的手機游戲平臺使用的是J2ME標準。
(二)開發工具
對于J2ME平臺,使用編程語言是java語言。
1.開發工具簡介
Eclipse開發工具,它是一個開放源代碼的、基于Java的可擴展開發平臺。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建開發環境。Eclipse附帶了一個標準的插件集,包括Java開發工具(Java Development Tools,JDT)。Eclipse還包括插件開發環境(Plug-in Development Environment,PDE),這個組件主要針對希望擴展Eclipse的軟件開發人員,因為它允許他們構建與Eclipse環境無縫集成的工具。
三、項目設計與實現
(一)總體設計
1.項目體系結構
2.項目總體流程
推理猜謎手機游戲項目的總體流程是,游戲啟動后,首先出現公司的logo畫面,停頓3秒后進入游戲的主界面。進入游戲主界面后,玩家可以選擇新開游戲,功能設定,游戲幫助三個游戲選項。如果有游戲記錄時,可以選擇繼續游戲。通過游戲的左軟鍵選擇結束游戲,通過游戲的右軟鍵連接網絡,連接網絡可以登錄公司主頁和下載最新的游戲。玩家選擇新開游戲后,進入游戲的選關畫面,選擇想要進行的游戲關數后,進行游戲,當游戲通關時,這一關的游戲結束。當游戲中途要退出游戲時,可以選擇存儲游戲的進度后,退出游戲。這樣下一次進入游戲后可以選擇之前保存的游戲進度,繼續游戲。
(二)流程邏輯設計
對于推理猜謎手機游戲項目,確立游戲的流程邏輯非常重要。游戲啟動時,首先調用游戲基本功能的類,如游戲的畫面顯示,按鍵。然后調用游戲的算法類。最后調用游戲的數據存儲類和音頻文件播放類。
(三)游戲各個部分設計
推理猜謎手機游戲項目分為如下幾個主要的部分:游戲畫面、輸入控制、游戲算法與功能、數據存儲讀取、背景音樂與游戲音效。
1.游戲畫面的設計
推理猜謎手機游戲的畫面是游戲用戶接觸最直接的部分。游戲的界面如果制作的不理想。游戲用戶對游戲的印象就不會太理想,會認為游戲制作的不夠出色。
2.輸入控制的設計
手機玩家在進行游戲時,是利用游戲的輸入設備來控制游戲。手機游戲的輸入設備是手機的按鍵。
3.功能算法的設計
游戲的功能算法是手機游戲項目的核心部分,對于游戲項目來說,算法的實現非常重要。游戲的算法比較復雜,里面涉及了很多學科的知識,例如數學知識,物理知識等。對于推理猜謎手機游戲項目,游戲算法的設計流程如下:
(1)首先,游戲的基本功能實現
(2)對游戲功能進行調整。包括性能優化和界面調整
(3)對游戲進行細節調整
4.數據存儲讀取的設計
在開發的推理猜謎手機游戲項目中,游戲項目中存儲和讀取的設計如圖15所示分為了2個部分:游戲的普通數據存儲讀取和游戲進度數據的存儲讀取。
5.音樂與音效的設計
首先在游戲啟動時載入游戲的音樂資源,然后進入游戲主界面時,開始播放游戲的背景音樂。在不同的游戲狀態畫面,背景音樂不同。對于游戲音效,通過用戶的手機按鍵來播放不同的游戲音效。實現的方法是首先編寫播放背景音樂和游戲音效的函數,然后在游戲中調用這2個函數來實現需要的功能。
四、測試
關鍵詞:網站管理 維護
一、網站管理與維護的必要性
1.1網站項目建設的特點
1)設計者與客戶層次與認識存在差異,容易導致項目建設目標的不確定性。
2)網站項目涉及領域廣,對參與項目的人員理解和研發項目提出高要求。
3)網站建設屬智力密集、勞動密集型項目,受人力資源影響大。
4)開發技術的快速發展使得網站項目的開發具有多模式的特征。
5)網站項目底層編程較為專業,要有友好界面對項目各參數進行配置。
1.2網站管理與維護的作用
結合網站項目建設特點,網站項目需要以下幾個步驟:首先業務員與客戶接洽了解,確認立項,從客戶代表那里獲得需求后,形成需求報告;業務流程分析員分析需求報告,生成項目模型報告;界面工程師得到項目模型后設計制作相應的模板和用戶界面原型,并最終由客戶代表確認。可以看出,作為項目開端的需求分析直接保障了整個項目的正確性、可行性和必要性,對項目最終的檢測性和簡明性至關重要,也可以這么說,做好需求分析才能有的放矢,項目才有成功的可能性。
二、網站項目建設需求分析策略
不同行業客戶的特殊要求(比如開發稅務相關網站項目,就需要設計人員有一定的稅務知識)也對參與項目管理的人員和研發人員提出了很高的要求,這就要求接洽業務員要加強客戶所在領域的知識積累,能夠將客戶的需求轉化成實際的程序輸出,也能夠將項目中的個模塊以客戶易于理解的方式進行說明,深度挖掘客戶需求,并最終明晰項目建設目的,完成必要的管理與維護。在項目組的準備工作完成后,我認為采集客戶需求應該按照以下二個階段進行:
1)第一階段
目標:完成調查報告和業務流程報告,搞清供求關系。
采取方法:項目組采取主動“問答”方式,指定有經驗的業務員和需求方進行溝通。
具體實施:項目中涉及的經理、頁面設計員、程序設計員、測試員,文檔起草等人員必須到場,通過訪談、調查表、填寫意向表等方式從宏觀上把握客戶具體需求方向和趨勢,了解現有的組織架構、業務流程、硬件環境、軟件環境、現有的運行系統等客觀信息,與客戶建立起良好的溝通渠道和方式。建設團隊經理對搜集的信息進行匯總,各參與人員就獲取的知識進行進一步的歸類分析,頁面設計員制定大略的視覺模版;程序員就網站功能進行拆解分析,列出網站需要的程序模塊并就各功能實現的可行性對照現有的軟硬件環境進行評估;文檔起草準備完成調查報告和業務流程報告,進一步明細項目思路。
2)第二階段
目標:完成調研分析報告,完成業務流程設計,進一步確認客戶需求。
采取方法:項目組采取“聯想啟發”方式,對第一階段的調查進行完善和修改。
具體實施:項目涉及人員的要通過“聯想啟發”方式經一步與客戶進行溝通,消除由網站項目建設的特點導致的眾多不確定性。客戶的需求往往是籠統的、分散的,第二階段要對第一階段的對網站項目的總體設計方向進行進一步的確認,可以通過展示企業以往開發的相似類別的產品實例、對網站項目的開發方法及運行方式和要求進一步說明,讓客戶等非專業人員對整站系統從前臺到后臺,從頁面到代碼,從架構到管理有一定的認識,從而是客戶對自己的最終需求進行具體的描述。
三、網站管理與維護的注意事項
在整個項目實施過程中需求不明確、業務流程不合理往往是項目面臨的最大風險,直接導致項目的開發失敗或是客戶不接受,因此必須做到細致了解客戶意愿,明晰客戶需求,采用必要措施來強化需求調研,需要注意以下幾點:
3.1深化溝通,強化需求分析
1)在實際項目建設中,客戶由于種種原因很難在分析階段全面而準確的描述所有問題,項目實施者可以引導客戶講所有想到的需求全部闡述清楚,然后歸納整理后逐條篩選,將客戶的模糊要求明晰化。得到初步項目目標后,由于客戶與研發人員知識的不對等,有可能導致理解的不對稱,項目業務員要了解客戶所在行業的需求情況,采取多次協商的方式,逐步強化需求分析。
2)很多情況下客戶并非專業人士,有的描述很難凸現重點和技術難關,有些客戶甚至描述的需求軟件實現難度極大,客戶需求概念的模糊,導致項目目標籠統而且尺度難以控制,這就要求業務人員認真傾聽客戶說明,充分利用圖表、結構圖以及簡單直白打比方的方式與客戶溝通,讓客戶理解開發流程和開發注重的要點,對自己預期目標進行整理和分析,使得項目實施者可以發現客戶在開發過程中的潛在需求。
3.2細致分析,增強功能擴展
通過與客戶的深入溝通,將客戶預期及反饋信息一條條的羅列出來,逐條歸納、分析,發掘用戶最原始、最完整的要求,完成業務流程,劃分各功能模塊,充分考慮客戶基本要求基礎上的潛在需求,增強模塊功能擴展,方便在開發過程中隨時增加模塊功能,滿足客戶多重需要。如政務系統在接收公文的同時,也許就需要為客戶預留各公文接收單位溝通的通道;郵件系統設計的時候可能會需要考慮廣告管理、超大附件、或許還要有郵件賀卡等應用;電子商務網站也許需要熱賣排行榜、年終銷售統計報表等等。限于各方面的因素,客戶通常能夠接受分階段的開發過程,但是隨著網站項目的逐步成形,客戶就會不斷提出很多改進需求,因此在需求分析時,承建放要提早為客戶設想到今后的需求變更,增加模塊功能的可擴展性,可以使項目開發更加順利。
3.3強化管理,提高團隊效率
一個好的團隊,才有好的協作,才有好的效率,才能作出好的項目,這就體現了團隊管理的重要性,在作為網站項目重中之重的需求分析階段尤為重要。
1)要有清晰的需求目標。
需求分析階段團隊中的項目經理、系統分析員、開發經理、交互設計師、測試人員、文檔人員包括客戶代表都應參與需求調研,共同討論客戶反饋意見,根據團隊分工不同,分項實施,達成一致意見。全體人員要對項目需求有統一清晰的認識,在開發過程中遇到問題及時與客戶溝通修訂,避免業務人員與開發人員、承建方和客戶方之間發生不必要的糾紛。
2)要有緊密的溝通協作。
加強團隊成員的溝通協作,使項目信息通道暢通,建立健全反饋機制。項目進行中,項目的需求變更是無法避免的,在有類似情況發生時,各成員之間良好的溝通可以以最短的時間作出反應,將變更信息轉化為項目模塊的修改加強,并能及時將變更信息傳遞給客戶,便于下一步項目的研發。
參考文獻:
筆者所在單位―浙江廣廈建設職業技術學院從成立之初至今已經歷了十年。在這十年發展過程中,學院積極進行專業建設與課程整合并在精品課程建設上取得了一定的成就,多門基礎必修課程已成為省級、院級精品課程,唯獨高職英語精品課程仍在建設當中。我院的高職英語教學堅持“以學生為主體,能力為本位、項目化為導向”的職教理念的統一指導選用統一的教材執行統一的教學模式,但非英語專業學生的英語水平、英語學習興趣、學習動機等學情不一,在有限的學時內無法充分提高語用能力...于是高職英語課上學生越學越沒興趣、教師越教越疲倦,英語等級通過率越來越低,高職英語院級精品課程建設困難重重。這就要求我們通過需求分析,創新教學模式,從而端正非英語專業學生的學習態度,提高學習成績。在需求分析基礎上,充分利用學院現有多媒體教學資源設計分項教學,讓非英語專業學生自主學習。
2.需求分析理論
需求分析理論曾被歐洲學者第一次運用于ESP(English for special purpose)課程教學,而高職英語課程應該是ESP課程中的EOP(English for occupational purpose)課程。因此,高職英語教學模式的創新要以需求分析理論為切入點。需求分析旨在搞清楚學習者需要什么,期望什么,缺乏什么,必須或應該學些什么(余小川,2011)。Hutchison和Waters(1987)從不同的研究角度把需求分為目標需求和學習需求兩類.根據他們的理解.為了目標情景中能靈活運用學習者所必須學會的知識和技能屬于目標需求,而學習者為了學會這些知識和技能而要做的一切則屬于學習需求。并且他們在此基礎上對目標需求進行了細分,即必學的、欠缺的和想學的知識能力素質。在高職英語教學模式的創新過程中,必學的是指直接決定著高職非英語專業學生將來能否順利完成工作的實用英語和學習者必須掌握的行業英語;學習者目前的英語水平與未來職業崗位中需求的目標英語水平之間的差距則屬于欠缺的;想學的是指學習者基于自身的特定情景而感到需要學習的英語。
Dudley-Evans和St. John (1998)從三種不同的角度對需求分析的方法進行了進一步的細分。首先是目標情景分析法(target situation analysis)。它從課程設計者的視角出發,用來宏觀分析一個社會或某些行業對EOP教學的需求。其次是學習情境分析法(learning situation analysis)。它要求課程設計者和教師著眼于學生,分析了解他們對所學語言的態度、經歷和要求對語言學習的影響。再次是現狀情境分析(present situation analysis)。這種分析要求教師著眼于學生的現有語言基礎,分析了解他們的學習障礙和差距,以此為依據去設計有效的教學方法。
3.高職英語教學模式革新前的需求分析
筆者運用Hutchinson和Waters的學習者需求分析框架,參考Dudley-Evans和St.John(1998)的目標情景分析法,現狀情境分析法以及學習情境分析法,以浙江廣廈建設職業技術學院建工分院非英語專業為實證研究個案,主要通過教學反思、企業走訪調研、訪談師生等研究方法,從服務地方經濟發展需求、服務學院人才培養方案需求、服務非英語專業學生語言學習需求的角度來分析高職院校建筑類專業學生需要掌握的高職英語知識、技能和素質,初步探索學院高職英語教學改革的深化方向。本章的需求分析主要程序有三:一是通過網絡搜索與對實習生進行的走訪,分析就業崗位對畢業生終身學習、可持續發展的英語需求,即行業目標需求分析;二是通過分析學院高職英語教學改革與各專業的人才培養方案重新審視高職英語知識與技能方面的教育需求,即現狀情景需求分析;三是在參考Hutchinson和Waters等提出的需求分析框架基礎上對授課對象就當前的高職英語教學模式進行問卷調查、分析非英語專業大一新生的英語學習需求,即教學需求分析。
3.1行業目標需求分析
關鍵詞:敏捷建模;形式化方法;需求分析;需求工程;VDM語言
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)34-1680-03
Formal Requirement Analysis Method Based on Agile Modeling
ZHANG Yu1,2, PING Long-mei1,3
(1.Faculty of Computer Science and Technology of Suzhou University, Suzhou 215000, China; 2.ShangHai Ronsing Investment CO., LTD, Shanghai 200127, China; 3.ShouZhou Hospital of Traditional Chinese Medicine, Suzhou 215021, China)
Abstract: Software requirement analysis is the most important step in software life cycle. However there are two major defects of traditional requirement modeling methods. One is frequent requirement ambiguity and discord caused by informal requirement description. Therefore it is hard for identification and confirmation. The other is changeability. Requirement change and its chain reactions are the most influential risk factor for the project quality, process and contract performance. This essay focuses on dealing with the difficulties of software requirement analysis. It put forwards a set of formal requirement analysis methods on the basis of agile modeling through the combination of formal method and agile modeling theory.
Key words: agile modeling; formal method; requirement analysis; requirement engineering; VDM Language
1 引言
需求分析是指理解用戶需求,就軟件功能與客戶達成一致,估計軟件風險和評估項目代價,最終形成開發計劃的一個復雜過程。面對千差萬別的用戶要求,如何能夠快捷、準確的獲取系統的需求并建立起無歧義的、完整的需求模型已成為軟件開發中的核心問題。敏捷建模(AM)是針對基于軟件系統的有效建模和編寫文檔的一個混亂而有序的、基于實踐的方法。形式化需求模型采用形式化規格說明語言(最好采用廣譜的形式語言,以利于實現需求模型向設計階段的演化)進行描述,目的是為了對用戶的需求進行精確的定義,有利于今后對模型的驗證及自動生成設計階段的程序。形式化方法(Formal Methods)是全面系統地使用基于數學的語言、技術和工具精確地說明、開發和驗證軟件系統,使用形式化方法描述的規約具有規范性和無二義性。而且形式化語言是一種機器可處理的描述語言,可以保證軟件復用自動化成為可能。
2 理論模型的框架
Alistair Cockburn指出,“不同的項目需要不同的方法論,一個項目的最佳過程是這個項目所能負擔的最小過程”。因此,基于敏捷建模的形式化需求分析方法(如圖1 理論模型框架)將主要適用于以下情況:
1) 開發規模50人;
2) 需求不肯定或變化太大的場合;
3)客戶理解和能參與的場合;
4) 有嚴格安全性要求的場合;
5) 重視需求分析和文檔編寫的場合。
基于敏捷建模的形式化需求分析方法理論模型框架如圖1所示。
基于敏捷建模的形式化需求分析方法的軟件需求工程的流程特點如下:
1) 運用敏捷需求會議獲取需求;
2) 使用敏捷方法建立模型;
3) 對生成的非形式化需求模型進行確認,若用戶對模型不滿意或模型存在問題,則返回前面的模塊重新進行需求分析;
4) 對生成的非形式化需求模型中的各個構件進行演化轉換,即將需求模型中對構件的非形式化描述轉換為嚴格的形式化描述,得到形式化需求模型;
5) 根據形式化需求規格說明模板,對確定下來的形式化需求分析模型進行細化和求精,得到完整的形式化需求模型;
6) 在進入設計階段之前,對生成的形式化需求模型還需通過嚴格的一階謂詞邏輯推理進行正確性驗證;
7) 在需求分析的整個過程中應通過建立需求基線庫對需求模型的變化軌跡進行記錄,使需求變更能沿著受控的方向進行。
2.1 需求獲取
常見的需求收集方法包括:客戶訪談、客戶交流、市場調研、技術支持、高層拜訪、競爭對手分析、查閱媒體信息、需求專題分析討論會。可遵循以下步驟:
1) 把用戶群進行分類并分析各自特征及職責;
2) 選擇用戶代表并和開發人員組成核心隊伍;
3) 開展敏捷需求分析會議獲取用例;
4) 獲取非功能需求。
2.2 基于敏捷方法的需求建模
2.2.1 建立用例模型
在捕捉用例時需要注意的一點是,不要在一開始就竭力捕捉所有的細節,這是在細化階段要進一步做的工作。一個敏捷用例模型的確定應該遵循以下步驟:
1) 分析研究上一步得到的系統的需求,找出系統外部的活動者和外部系統,確定系統的邊界和范圍;
2) 確定每一個活動者所期望的系統行為;
3) 把這些系統行為命名為用例;
4) 把一些公共的系統行為分解為一批新的用例,供其它的用例引用。把一些變更的行為分解為擴展用例;
5) 編制每一個用例的說明;
6) 繪制用例圖;
7) 區分主業務流和例外(異常)情況的事件流。可以把表達例外(異常)情況的事件流的用例畫成一個單獨的子用例圖;
8) 精化用例圖。解決用例間的重復與沖突問題,簡化用例中的對話序列。用例圖可以有不同的層次,高層系統的用例可以分解為若干個下屬子系統中的子用例。
2.2.2 抽象設計類
在繪制完用例圖后,就需要對用例中的對象抽象出類。建立類圖的一般步驟如下:
1) 研究分析前面得到的用例圖;
2) 發現對象與類,明確它們的含義和責任,確定屬性和操作;
3) 發現類之間的靜態聯系;
4) 設計類與聯系。調整和精化己得到的類和類之間的聯系,解決諸如命名沖突、功能重復等問題;
5) 繪制類圖并編制相應的說明。
2.2.3 需求存檔
根據建立的用例與類模型再對系統的各個功能建立相應的動態模型,至此用戶的需求通過這種非形式化的描述形成了最初的需求定義文檔。最后,當完成需求的定義及分析后,需要將此過程書面化,要遵循既定的規范將需求形成書面的文檔,通常稱之為需求文檔。與此同時,每一個公布的需求文擋的版本應該包括一個修正版本的歷史情況,即己變更的內容、變更日期、變更人姓名以及變更的原因。
2.2.4 需求確認
需求確認簽訂的協議可以視為建立了基線,進一步的變更可在此基線上通過項目定義的變更過程來進行。變更可能會重新協商成本、資源和項目階段任務等事宜。對需求分析達成一定的共識會使雙方易于忍受將來的摩擦,這些摩擦來源于項目的改進和需求的誤差或市場和業務的新要求等。此外,可將用戶的需求轉化成以下幾種狀態:
1) 有可能要取消的;
2) 有的因為不明確而可以后延的,同時可能轉化為被取消的需求;
3) 與客戶經過溝通或確認的,此處有兩種情況,一類是確認雙方達成共識,另一種情況是還需要再進一步溝通的。
2.3 模型演化
對于生成的非形式化需求規格說明文檔,由用戶首先進行需求確認,審查是否需求說明中包含了用戶的所有功能要求并符合用戶對系統的預期目標。若生成的需求說明不符合用戶對實際系統的要求,則需要重新獲取用戶的需求信息并進行相應的分析:若用戶對需求說明表示贊同,則需要根據模型演化的策略,對實際系統構件語義網中的結點進行廣度優先搜索,將非形式化模型中各個構件的非形式化描述分別轉化為嚴格的形式化描述,生成簡單的形式化需求模型,并根據形式化需求說明模板進一步對生成形式化需求模型進行補充和完善,得到最終的系統形式化需求規格說明書。
2.4 形式化需求模型
本文中對需求規格說明書的形式化描述采用VDM語言實現。VDM語言是目前較為流行的形式化需求規格說明語言之一。其基本思想是運用抽象數據類型、數學概念和符號來規定運算或函數的功能,由狀態規定、類型不變式規定和運算功能規定三部分構成。例如:在需求規格說明書中對企業物流管理中的產品清單和產品銷售的形式化描述為:
產品清單的形式化描述:
String=Seq of Char
Goods=Compose Goods of
Bh: String
Name: String
Price: R
Stock_count: N
End
Goods_11st=seq of Goods of
Inv_goods?坌mk_Goods(n,p,c)∈Goods.b≠’’=>n≠’’∧p>0.0
/*規定若產品清單中的產品編號不為空時,產品名稱也不為空且價格大于O*/
產品銷售的形式化描述
G00DS_SALE(g1:Goods_11st,req_num:String,req_count:N)g2:Goods_list
pre len g1>0
post len g2=len g1∧?坌i∈inds g2=>Bh(g1[i]>=Bh(g2[i])∧
Stock_count(g2[i])=Stock_count(91[i])-req_count
選擇VDM語言作為本理論形式化描述手段的主要原因有以下幾點:
1) VDM采用了結構化的過程用抽象數據類型、數學概念和符號來規定運算或函數的功能,可以簡短而明確地指出軟件系統需要完成的功能;
2) 由于VDM語言中采用了數學符號和抽象數據類型,從而可以使軟件系統的功能描述在抽象級上進行,完全擺脫了實現細節,為軟件實現者提供了很大的靈活性;
3) VDM語言為形式化需求說明的正確性證明提供了依據,可以采用一元謂詞邏輯推理技術驗證運算和函數的實現是否符合它的形式化說明。
2.5 模型驗證
為了保證需求分析結果的一致性和完整性,應對生成的形式化需求模型進行驗證.用于驗證的推理機制應借助于知識庫中存放的用于需求分析的專業知識,發現需求模型中的矛盾和不足,經補充、更新知識庫中的知識和規則,以及與系統分析員的不斷交互,得到完整的功能規范。由于證明工作還存在著一些內在困難,目前形式化規格說明的正確性證明還不能完全通過計算機自動實現,這將是本文繼續研究的一個方向。
3 結論
在軟件需求工程理論已經比較成熟的今天,如何更好的獲取需求和對用戶的需求進行分析建模仍然是令大多數系統分析員頭疼的事情,本文就是在這樣的環境下提出的理論模型―基于敏捷建模的形式化需求分析方法,旨在減少系統開發中需求分析所花費的時間,增加系統分析員與用戶對需求的理解,為項目的成功打下基礎。
參考文獻:
[1] Fowler M,Scott K.UML精粹―標準對象建模簡明指南[M].北京:清華大學出版社,2002.
[2] 劉麗,姜紅,李延霞,等.如何在軟件開發的需求管理中應用敏捷建模[J].福建電腦,2004(1).
[3] 陸汝鈐.計算機語言的形式語義[M].北京:科學出版社,1992.
[4] Ambler S W,Aglile.Modeling Effective Practices for extreme Programming and the Unified Process[M].北京:清華大學出版社,2002.