㈠ 求8000字的 軟體工程 小論文~~~
一、論題提出的背景和意義(即國內外現狀)
隨著我國加入WTO和我國工業的迅猛發展,為了抓住機遇,在競爭中佔得先機,作為生產企業的一個必不可少的重要環節——庫存管理的信息化、計算機化也就迫在眉睫了。開發庫存管理信息系統既有宏觀上的意義,那就是順應時代信息化、現代化潮流,提高效益,促進國民經濟結構優化;也有微觀上的意義,那就是可以提高管理的現代化程序,加強管理的信息化手段,提高工作效率,增加單位效益。
庫存管理的對象是很多的,廣而言之,它可以包括:商業、企業庫存的商品,圖書館庫存的圖書,博物館庫存的展品等。在這里本文僅涉及工業企業的產品庫存。它主要包括下列三部分:
1.沒有經過企業加工,而為企業生產或其他其他各方面所需要的原材料、燃料、半成品、部件等,如鋼材、承軸、發動機、電動機等。
2.已經過企業加工,但尚未加工完畢的在製品。
3.企業已加工完畢,儲而待銷的成品與備件等。
庫存管理系統按分類、分級的模式對倉庫進行全面的管理和監控,縮短了庫存信息流轉時間,使企業的物料管理層次分明,井然有序,為采購、銷售和生產提供依據;智能化的預警功能可自動提示存貨的短缺、超儲等異常狀況;系統還可以材料庫存ABC匯總,減少資金積壓。完善的庫存管理功能,可對企業的存貨進行全面的控制和管理,降低庫存成本,增加企業的失常競爭力。
庫存管理信息系統研究的內容涉及庫存管理的全過程,包括入庫、出庫、退貨、訂貨、庫存統計查詢等。
下面介紹庫存管理的工作流程:
1.入庫
供貨單位發貨——運輸——貨物到達後測試檢驗——送貨單——庫存管理員查收入庫——入庫單
處理各種入庫業務,如:工業企業的生產入庫、委外加工入庫、其他入庫等入庫業務;按出庫類型可以分別在不同模塊錄入入庫單據信息
2.出庫
庫存統計表——各使用單位——領料單——庫管人員出庫——出庫單
處理各種出庫業務,如:工業企業的生產領料、委外領料、其他出庫等出庫業務;按出庫類型可以分別在不同模塊錄入出庫單據信息。
3.退貨
產品不合格通知書——各使用單位——領料單存根——庫管人員退貨——退貨單
4.訂貨
庫存管理部門向采購部門發出采購單——采購部門向供應單位傳遞訂貨單——供應單位組織發貨——運輸——貨物到達後測試檢驗——入庫
5.盤點
備份庫存數據,列印盤點表,可按倉庫、批次進行盤點,並根據盤點表生成盤盈,盤虧表,調整庫存賬。
盤點的功能是檢查倉庫現有庫存量與帳面數量是否一致。若盤點結果是倉庫現有庫存量大於帳面數量,則盤盈;盤點結果是倉庫現有庫存量小於帳面數量,則盤虧;它們的差異量都記錄在盤點調整單上。
二、目前工作中存在的主要問題
1.國內外現狀研究:
計算機在方面管理中的應用開始於1954年,當時美國首先用計算機處理工資單。50多年來,計算機在處理管理信息方面發展迅速,例如:60年代美國計算機在管理中應用項目不到300項,到1975年達到2670項。而現在,美國財務會計上90%的工作由計算機來完成;物資管理中80—100%的信息處理由計算機完成;計劃管理中是80—90%。據計算機應用方面發展較快的國家統計,計算機應用於經濟管理的約佔80%;用於科技運算的佔8%;用於生產控制的佔12%。)因此,經濟管理是計算機應用的主要領域。當然,由於庫存管理在經濟管理中占重要地位,其計算機化在發達國家中也已經達到了相當高的水平。我國在全國范圍內推廣計算機在經濟管理中的應用,是在70年代末開始的,雖然起步較晚,今幾年發展卻較快,特別是微型計算機的出現和普及,為信息處理提供了物美價簾的手段,對於推動我國管理信息處理的現代化起了重要的作用。
2.目前存在的問題:
庫存管理對企業來說是一項繁瑣復雜的工作,每天都要處理大量的單據數據。為及時結清沒筆業務,盤點庫存和和貨物流通情況,保證企業生產用料以及貨物安全,庫管人員要花費大量的人力物力和時間來做數據記錄統計工作。
在世界發達國家,庫存管理的計算機水平已經很高了,盡管我國的生產企業在這方面也有了很強的意識和長足的進步,但仍存在這樣那樣的一些問題。
表現之一:有的企業單位的庫存管理部分目前仍為手工半手工操作。從供應單位辦理入庫登記開始,到使用單位輸領料出庫手續為止,所有的操作基本上都是由倉庫管理員筆寫,手理,加上算盤或計算器來完成。這不僅繁瑣效率低,而且缺乏庫存管理的一些基本手段,如庫存狀況統計,查詢經濟訂貨量計算等,這給企業在一定程度上造成了管理上的落後,及經濟利益上的損失。
表現之二:有的單位的庫存管理部已上了微機,但對微機的利用效率極低,有的在用他打游戲,有的僅僅把它當作計算機或打字機來用。
表現之三:有的企業單位既有了微機的同時也有了庫存管理軟體,但硬體上去了,軟體上不去。因為他門用的庫存管理軟體大多為自己的工作人員及其他的一些非專業人員所開發的簡單的管理軟體,很難稱的上是「庫存管理信息系統軟體」這些程序的弱點大多表現為:1)系統開發時無科學的理論支持。2)開發過程的調研不全面。3)軟體編寫時的模型不清晰完整。4)所用的開發工具落後(如FOXBASE等)
三、統計與分析系統的必要性和可行性(研究解決方法及思路)
根據我國國內庫存管理信息系統在企業中應用普及時出現的各種問題,我將用我所學的知識,利用當前的管理信息系統的理論,開發一套基於NET的庫存管理系統,以求能對我國的庫存管理現代化水平的提高貢獻一份微薄力量。
具體的方法及計劃如下:
全論文將分為三個部分。第一部分為引論,闡明所開發的項目要滿足用戶哪些要求,並給出全文的摘要。第二部分為實際開發過程,這將是論文的核心內容分為理論支持,系統分析,系統設計,軟體編寫,軟體安裝,系統維護七章。第三部分為結束語部分,分為經驗教訓和注意問題及作者的建議,參考資料二章。作為作者的心得體會與讀者共享。
㈡ 想請教學姐學長軟工類研究生論文怎麼寫
開始撰寫工程管理論文之前,我們必須要選擇好寫作方向。只有選擇好寫作方向,才有利於後面的內容撰寫和觀點闡述,一旦選擇不好,就容易出現觀點跑偏,內容不適等情況。所以我們必須對工程管理論文寫作方向選擇加以重視。工程管理學科依賴於理論與實際的緊密結合,其論文也應該體現出這一點。那麼工程管理論文寫作方向如何選擇,下面將做詳解分析。
工程管理專業培養目標和專業方向
工程管理專業的培養目標是培養適應現代化建設需要,德、智、體全面發展,具備工程技術及經濟管理、法律等基本知識,獲得工程師基本訓練,具有較強實踐能力、創新能力、組織管理能力的高級工程管理人才。工程管理專業與國家注冊監理工程師、國家注冊造價工程師的知識結構相接軌,專業方向涵蓋工程項目管理、房地產管理經營、工程投資與造價管理、國際工程承包等方向。畢業生可從事工程咨詢、工程項目施工、房地產開發與經營的相關工作,專業覆蓋面寬,從業范圍廣,社會需求大。
工程管理專業設置了工程建設管理、國際工程管理、投資與造價管理等三個專業方向。 培養具備管理學、經濟學、法學和土木工程技術等方面專業基礎知識,全面接受工程師基本訓練,掌握現代管理科學理論、方法和手段,具有較強的實踐和創新能力,能夠在國內外工程建設和房地產領域從事項目決策、項目投資與融資、項目全過程管理和經營管理的復合型高級管理專業人才[2]。
要達到培養目標的要求,工程管理畢業生應具備以下方面的知識和能力:
(1)掌握土木工程技術知識、相關的管理理論和方法、相關的經濟理論和相關的法律法規知識;
(2)掌握國際國內工程管理等工程管理具體專業領域的專業基礎知識、專業知識、專業技術與方法;
(3)具備綜合運用五個方面的理論、知識和方法從事國內、國際建設工程的技術管理、專業管理、綜合管理和全過程管理的基本能力;
(4)具備進行一般土木工程設計的基本能力;
(5)具備對工程管理專業外語文獻進行讀、寫、譯的基本能力;
(6)具備運用計算機輔助解決工程管理相關問題的基本能力;
(7)具備初步的科學研究能力;
(8)具備健康的個性品質和良好的社會適應能力;
(9)了解國內外工程管理領域的理論與實踐的最新發展動態與趨勢。
工程管理論文的寫作內容方向
工程管理專業學生畢業以後,主要從事建築工程、工程施工和控制管理、房地產經營以及金融、賓館、貿易等行業部門的管理工作,而在論文寫作方式也多在這些行業中選擇。這是因為選擇這些行業,工程案例、數據搜集比較簡單,參考資料較多,也更容易具備實踐價值。工程管理專業學生的論文建議以「實踐性」為主,即使追求「熱門」,也不要選擇冷門行業。
工程管理論文的寫作選題方向
論文題目是關系論文成敗第一關.
選題原則主要有兩方面 一是社會需要,二是力所能及. 可以從以下幾方面
(1)選題應選擇工程管理領域面待解決 課題.
(2)選擇有學術價值 題目.
(3)選擇無人涉獵 題目.
(4)選擇百家爭鳴 題目.
(5)選題要根據主觀可能,量力而行.
工程管理論文寫作選題推薦
一、項目管理
1. 工程施工組織設計
2. 項目融資BOT模式的現狀及對策研究
3. 工程項目施工安全管理研究
4. 工程施工安全管理分析
5. 工程項目施工現場管理研究
二、工程計價管理與控制
1. 工程的工程造價測算
2. 工程施工圖預算書的編制
3. 工程工程量清單報價分析
4.工程造價的影響因素及控制--以XX工程為例
5.對我國工程價格實行 量價分離 的探討
三、合同管理與招投標
1. 無標低招標體系下業主面臨的風險與防範
2. 建築工程項目投標報價案例分析
3. 建設工程中圍標陪標問題研究
4. 房地產工程現場簽證與合同管理
5. 工程建設合同擔保制度研究
四、工程經濟及項目可研
1. 工程項目的風險評估
2. 工程項目節能評估研究
3. 工程項目環境影響評估研究
4. 工程項目的財務評價分析
5. 工程項目的國民經濟評價分析
五、施工技術
1. 工程土方工程施工方案分析
2. 工程降水施工方案分析
3. 鑽孔灌注樁及人工挖孔樁施工技術
4. CFG樁基礎工程施工要點及質量控制措施分析
5. 工程 樁基礎施工方案與質量控制措施(可以任選一種樁型)
六、房地產開發與經營
1. 房地產開發項目市場定位分析
2. 房地產估價案例及分析
3. 房地產項目營銷策劃
4. 房地產企業營銷體系的分析與再造
5. 房地產企業盈利模式分析
七、物業管理
1. 關於房屋維修基金管理及使用的探討
2. 河南省物業管理發展現狀及對策分析
3. 鄭州市物業管理的現狀及利弊研究
4. 業主自治管理中存在的誤區及對策探析
5. 物業管理招投標中存在的問題及對策
八、監理
1. 工程監理在控制工程造價中的作用
2. 關於監理人員資質認定辦法的思考
3. 工程監理過程中存在的問題及對策
4. 監理工程師在建築施工中對索賠的管理
5. 監理工程師對建築施工合同的管理
九、指導老師在研課題
1. 建設低碳城市路徑研究
2. 低碳城市建設--以XX城市為例
3. 綠色節能建築和建設低碳生態城市的研究
4. 城市化過程中的低碳城市建設
5. 建設碳排放權交易市場的探討
工程管理論文寫作方向的選擇是我們每一個人都必須做好,選擇好的。重要性我想大家都知道,文中已有所講述。筆者分析了工程管理論文寫作方向的相關內容和要點,也推薦了一些選題參考,希望對大家有所幫助。
㈢ 如何才能寫好軟體工程畢業論文
當然肯定是多去找寫好論文的素材和材料,然後定好論文的框架和論點。
㈣ 怎麼寫軟體工程碩士論文
論文對於碩士,尤其博士,是必須的一種技能,也是一道難關。所謂大道無形,小道可走。下面給出一些博士期間的寫作心得,希望能有所裨益。論文可以有三個境界:畢業、科研、貢獻。
現在只說第一個,為了畢業。
把論文分成三個階段:讀、寫、改。
一、讀
即:讀哪些論文(對象),讀論文的目的是什麼(目標),怎麼讀(方法)
1.讀什麼論文。
讀論文,需要讀經典的專業基礎論文、survey(概述)論文,及5-10篇左右讀新的高質量的專業論文。
好的論文怎麼找?首先找專業領域中好的會議、期刊;其次,經常訪問專業領域有名的實驗室、研究員的主頁,關注其發表的論文方向及內容;50-100篇,半年;就可以開始動手寫論文了。
2.讀論文的目的。
讀論文的目的有兩個主要目的:
一是了解世界上本專業領域的內容和發展情況;
二是在了解過程中,產生自己的idea,進入這個領域。
什麼是idea?怎麼樣產生?idea一般是在讀論文的過程中產生的,給出三種比較簡單產生idea的方法。
(1)第一種彌補缺陷法。即去發現別人論文中的weakness(缺陷)。你在讀很多個論文時候,就會逐漸發現,每一篇論文都不是完美的,解決的都是某一方面的問題。很多論文,尤其是經典論,都有很多論文跟著去提高和改善原來論文的效率、方法什麼的。因此,你可以根據這個特點,去找你感興趣的論文的weakness,你提出相應的彌補缺陷的解決方案;
(2)第二種新型方案法。就是提出與論文不同的解決方案,你覺得你在性能、方法、效益等方面有新的方法,那就產生了新的idea,不斷地磨合,修正,完善你的idea,就慢慢成為一篇比較好的論文;
(3)第三種減少約束法。即減少論文中的assumption(假設),一般來說,所有的假設都是約束條件,去除約束條件就是形成新的方法的過程。
這三種方法是比較簡單的、操作性比較強的方法,比較有針對性的產生idea,避免看論文中的茫然狀態。值得注意的是,在產生idea過程中,不要想著憋大的idea,不要試圖完全推翻或者建立自己的體系。在目前階段,對大多數人來說,這是不可能的。好高騖遠,往往會半途而廢。你有一點點的貢獻就好。沒有一篇論文是完美的,而任何人的工作都必須在其他人工作基礎上進行的。
3.怎麼讀論文。
(1)首先,最忌諱的是一篇論文反復讀前面的幾段。要讀,盡量一次性讀完,不管理解多少,盡量一次讀完,你可以一篇論文多讀幾遍。不要放。很多人都是,覺得讀起來難,讀一讀,放一放,然後再從頭讀。好像燒開水,沒等開鍋呢,就涼涼了,然後再燒。
(2)第二,讀的時候帶著想法讀。讀論文不是相面,你要看看內容是什麼,和以前的有沒有區別,有什麼不同,有沒有weakness。但是在閱讀的過程中,往往就忘了這個事情。怎麼辦呢,就是每次看完,對這篇論文做個summary,總結一下論文的主要闡述的內容和方法,和以前的對比一下,這樣,就把論文吃透了。好的論文不妨隔三差五的多讀幾次。
(3) 第三,看到好的句子,記下來,然後自己寫論文時候改一下就可以用的。尤其是讀native的論文,非常必要。論文的文風怎麼樣,整個文章的版式,句子的書寫,詞彙的使用。論文讀多了,就很容易把專業詞彙積累下來,所以,尤其在開始的時候,一定要把好的句子、單詞記下來。好記性不如爛筆頭,非常推薦大家這樣去做。
二、寫
寫論文和讀論文過程類似,包括確定論文的性質,論文的目標(發表到哪裡),寫論文的方法。要了解論文的組成是什麼,每一部分應該怎麼寫,然後再進入寫論文的過程。
在具體寫作的時候,需要考慮下面的過程:
1.寫什麼性質的論文。
如會議論文、期刊論文、letter、regular paper,或者寫的是綜述(survey)、方法、理論等等。不同的論文的對象,載體,篇幅,側重點是不一樣的。比如,會議論文、短論文等對新的要求比較高,比較短,其他的次之,所以論文寫作要集中在新的方面;而期刊論文等對新的要求之外,還要求完善、高質量,所以寫作時候要系統性和創新性並重。
2.寫論文的目的是什麼。
第一,你想要發表的地方是什麼,會議還是期刊。不同的地方有不同的要求,尤其是期刊論文。所以,在寫論文之前,盡量確定要投的期刊或會議。然後,去閱讀幾篇最新的該期刊或者會議的論文,明確一下體例和內容大致規劃。重要的是,你選擇的題目和投稿對象的要求盡量切合。第二,你想要發表的時間,一定要有個發表的時間點。一方面,人都是有惰性的,你限制了時間點,就能很好的督促你,你可以多選擇幾個,這樣你就會處於忙碌和興奮狀態,成果就會快而且好,否則非常容易消極怠工。另一方面,很多畢業生,需要在寫大論文之前,需要得到論文的接收函。在時間規劃上也是有要求的。如果想在時間上快一些,可以找一下相關刊物的special issue或者special section等,一般這特刊,出版的速度相對快些。一定要提前謀劃,無論是會議還是期刊,一般要提前半年以上。
3.寫論文的方法。
首先了解一下論文的結構。通常一篇論文包括7個大的部分,每頁大概10段,每段大概4,5個句子。所以,一篇會議論文大概200-300個句子罷了。一小時寫5句,一天寫一頁也就差不多了,一周也就寫一篇論文吧,當然前提是idea什麼都比較成熟後。其實,如果真的想明白了,差不多2-3天也就可以了。
4.論文的組成。
下面,針對論文給出7個大部分的一些內容組成:
(1) Abstract—— 對自己工作及其貢獻的總結:a)闡述問題;b)說明自己的解決方案和結果。(150-200words)
(2)Introction——背景,以及文章的大綱、你的貢獻:a)題X是重要的;b)前人的工作A、B曾經研究過這個問題;c)A、B有一些缺陷;d)我們提出了方法D;e)D的基本特徵,和A、B進行比較;f)實驗證明D比A、B優越;g)文章的基本結構,大綱。(1page)
(3)Previous Work——說明自己與前人的不同:a)將歷史上前人的工作分成類別;b)對每項重要的歷史工作進行簡短的回顧(一到幾句),注意要回顧正確,抓住要點,避免歧義;c)和自己提出的工作進行比較;d)不要忽略前人的重要工作,要公正評價前人的工作,不要過於苛刻;e)強調自己的工作和前人工作的不同,最好舉出各自適用例子。
(4)Our Solution——描述自己的工作,可分成多個部分:a)從讀者角度闡明定義和表示法;b)提供演算法的偽碼,圖解和相應解釋;c)用設問的方式回答讀者可能提出的潛在問題;d)復雜的冗長的證明和細節可以放在附錄中,這里關鍵是把問題闡述清楚;e)特例和例外應該在腳注中給予說明。
(5) Performance Analysis——驗證提出的方法和思路:a)合理地設計實驗(簡潔的實驗和詳盡的實驗步驟);b)必要的比較,突出科學性;c)討論,說明結果的意義;d)給出結論。
(6) Conclusion——總結、前景及結文:a)快速簡短的總結;b)未來工作的展望;c)結束全文。
(7) References——對相關重要背景文獻的全面引用:a)選擇引文(眾所周知的結論不必引用,其他人的工作要引用,經典的和新的論文要引用);b)與前文保持一致。
然後我們就開始寫論文了。
1.寫論文時候,最好一氣呵成。千萬不要猶豫,今天寫點,明天寫點的樣子。那樣往往寫不好論文。一篇SCI論文,我想,一般最多用一周多一點的時間寫完主題部分;而一般會議論文2,3天即可。當然,一些實驗可能需要時間長些。無論如何,不可以拖延。可以說,每篇論文都可以發表,所以你寫出的論文肯定是有成果的。
2.寫論文時候,有些需要注意的語言表述的地方。首先,盡量拼寫、語法正確。保證全文沒有單詞錯誤和明顯的語法錯誤,這個非常重要。論文學術是非常嚴謹的,錯誤拼寫容易讓人覺得水平不高。另外,寫作句子盡量簡單,每個句子只包含一個意思,這個和中文論文差別很大。記住一定用簡單的句子,一般情況下,即使算上從句也盡量不要超過兩句話。第三,避免用口語。例如so、the same as、one hand…on theother hand等等。從native和好的論文裡面,把重要的連詞的應用學好。如therefore,however,moreover等等,盡量裝著學術化一些。第四,盡量避免第一人稱,we怎麼怎麼地。
3.論文的組成元素。通常,包括圖形、公式、演算法、證明等等。論文應該是圖文並茂的。通常情況下,如果讀者是同一領域的研究人員,他們看完論文的圖片及圖注就可以知道這篇文章大體所做的工作。因此,要標注好每一幅圖片所展示的信息,但盡量簡潔。圖和文本要保持一致,並且互為補充,所有圖在論文中都是必須提及的。不同的圖有不同的要求:
(1)對於說明性、功能性和流程性等的圖,我建議一般先自己在紙上手繪大框,這樣方便設計、修改,等定型後,在用專業工具繪畫,這樣一般效果很好而且節省時間。
(2)另外,當採用柱狀圖、折線圖等,優先用黑白色,然後是灰色或陰影的,最後才是彩色的。據說有大概10%的男性是紅/綠色盲,因此要避免使用紅/綠色,而且列印時候大多時候是黑白的,所以,在採用顏色標識的同時,盡量加一些標識性的線條標志,要有區別於其他區域的大小和形狀。對於這些性能分析、對比等,在解釋時候一定要盡量說明圖的形成原因,並包括數據。如與誰相比,能效提高百分之多少,什麼原因造成的等等。
(3) 第三,作圖工具一定要專業,盡量避免用excel等做,通常做的不是很好看。圖的質量一般是300dpi以上,所以如果可能,盡量用專業工具作圖,然後粘貼。在論文錄取後,尤其期刊論文,一般需要提交高質量的圖片,盡量是jpg和tif格式的。
(4)最後,論文排版要盡量和論文要求一致,直接使用投稿對象的模板。如果latex等熟悉的朋友,盡量用latex,排版的質量非常棒的。
除了圖,論文裡面還應該有公式、演算法、證明、定義等。一定盡量用專業的東西編寫,這些地方盡量不要用圖片。整篇論文要盡量用多種元素說明,避免整篇大片大片的文字描述。
最後,好的論文要有好的明確的題目,我一般是先寫一個然後整篇論文寫好後,再修改、定稿。
三、改
好的論文不是寫出來的,是改出來的。完成一篇論文後,先通讀一下,看看有沒有什麼要更改的。一般來說,更改有本人更改和他人更改兩種。寫完之後通讀一次,先不要再讀,放兩三天再說。這樣容易產生新的更好的想法,然後再仔細更改。更改是個打磨的過程,必須字斟句酌,可以參考其他好的文章,對照寫。改論文絕對不是查缺補漏那麼簡單,要從審稿人、讀者多個角度去看,想想讀者能從你這個論文裡面獲得多少、想看的是什麼。另外,一定請領域朋友幫助審查一下,以便檢驗論文的正確性和新鮮性,而且可以對一些術語用詞進行改善。
改好之後,就是投稿。
一定要選擇和自己論文非常搭的期刊或者會議投稿。如果是正常期刊的論文,一般隨時都可以投稿。但是對於特刊、會議一般是有時間限制的。對有時間限制的,建議盡量提前一兩天投稿。我見過很多人,都是非得到最後那天才投稿,這樣如果發生意外就不好補救了。另外,有些期刊為了增加公正性,要求匿名投稿,這個一定要注意。
最後,不管論文接受還是被拒,都會有比較好的意見回來,一定要認真閱讀這些意見並做相應的修改及反饋。
一些需要注意的地方
(1)論文的滾動問題。一個方向,發表一篇論文後,不是就完成大吉了。還有盡量深挖你這個課題。一個主題多種實現方法。一個好的idea,我覺得怎麼應該發一到兩篇conference和一個journal
(2)論文合作:在質量和數量上大幅提高。
(3)作者排序的問題,為以後工作做准備。
(4)項目申請問題。
(5)最低滿足論文之後,是為以後鋪路的問題。平實心態,積極爭取。
以上是自己在做研究時候的一點點小心得,為寫而寫,寸光短視,指望有所裨益。
㈤ 軟體工程的畢業論文該怎樣寫有哪些步驟以及注意事項
編輯個小程序,以這個程序為題,詳細說明開發工具,運行環境,書寫詳細流程,設計流程圖,引用參考文獻,註明英文翻譯,論文就寫好了http://www.unnc.cn/ unnc信息網
㈥ 軟體工程畢業論文怎麼寫
軟體工程可以寫的題目多啊。開始也不怎麼懂,還是學姐給的文方網,寫的《基於Windows平台的HIPS系統設計與實現》,靠譜的說
研究生教育網路管理系統的設計與實現
WMS-2000A輪機模擬器數據通信系統設計與實現
洗衣機模擬運行控制系統的設計與實現
機車信號記錄器數據分析處理系統的設計與實現
分布式自動檢測系統RS485通信網路的設計與實現
計劃生育管理信息系統的設計與實現
醫院「一卡通」系統的設計與實現
列車三維駕駛模擬系統的設計與實現
一種圖書外采查重系統的設計與實現
基於C/S模式的網路文件管理系統的設計與實現
自動化倉庫管理系統的設計與實現
四川省衛生統計數據採集與決策支持系統設計與實現
ATM應用系統EMV遷移的設計與實現
基於B/S模式的葯品信息咨詢系統的設計與實現
基於LFAP的網路流量統計分析系統的設計與實現
傳真管理信息系統的設計與實現
工業機器人三維模擬系統的設計與實現
單位網路設備環境智能監控系統設計與實現
基於CC1020晶元無線傳輸系統的設計與實現
公安派出所綜合信息管理系統設計與實現
基於WEB的庫存管理系統設計與實現
基於工作流的AUTOBANK管理系統設計與實現
具有主動功能的連鎖經營企業配送中心管理信息系統的設計與實現
基於JavaEE技術的在線考試系統的設計與實現
學生評教系統的設計與實現
微小型電動無人機動力系統試驗台的設計與實現
基於F1103 GPRS MODEM的家校通系統設計與實現
基於嵌入式Linux的遠程家庭醫療監護系統設計與實現
基於Windows操作系統的智能建築物綜合布線管理系統的設計與實現
基於.NET技術的網上購物管理系統的設計與實現
變電檢修管理信息系統設計與實現
天津地鐵1號線車站乘客向導系統的設計與實現
基於B/S結構的電路分析網上答疑係統的設計與實現
應用PDA組建無線IC卡表抄收系統的設計與實現
非計算機專業計算機課程考試系統設計與實現
基於GPRS網路的煤礦瓦斯監控系統的設計與實現
慣性組合導航系統介面子系統的設計與實現
人壽保險老業務綜合處理系統的設計與實現
FORTRAN語言題庫管理系統的設計與實現
樓宇信息系統的設計與實現
倒閘實訓系統無線遙控的設計與實現
C/S模式下的電子郵件系統設計與實現
基於LINQ三層架構倉庫管理系統的設計與實現
一種寬頻無線移動視頻調度系統的設計與實現
淺談遠程監控機房溫濕度報警系統的設計與實現
學術論文共詞分析系統的設計與實現
基於Web的SQLServer遠程備份管理系統的設計與實現
基於Spring框架的北京林業大學圖書館門戶系統設計與實現
基於XML的研究生網路選課系統設計與實現
㈦ 廈門大學軟體工程畢業論文怎麼寫
那就要看你做的程序那些吧,
我的建議是你最好做系統類或者網站之類的,
語言的話就java,c#,PHP
這些會比較容易,對你比較合適。
想你這方面的論文肯定是要根據程序那些才能寫的。
㈧ 軟體工程論文
[編輯本段]基本信息
軟體工程一直以來都缺乏一個統一的定義,很多學者、組織機構都分別給出了自己的定義: 軟體工程(1)、BarryBoehm:運用現代科學技術知識來設計並構造計算機程序及為開發、運行和維護這些程序所必需的相關文件資料。 (2)、IEEE在軟體工程術語匯編中的定義:軟體工程是:1.將系統化的、嚴格約束的、可量化的方法應用於軟體的開發、運行和維護,即將工程化應用於軟體;2.在1中所述方法的研究 (3)、FritzBauer在NATO會議上給出的定義:建立並使用完善的工程化原則,以較經濟的手段獲得能在實際機器上有效運行的可靠軟體的一系列方法。 目前比較認可的一種定義認為:軟體工程是研究和應用如何以系統性的、規范化的、可定量的過程化方法去開發和維護軟體,以及如何把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來。 (4)、《計算機科學技術網路全書》中的定義:軟體工程是應用計算機科學、數學及管理科學等原理,開發軟體的工程。軟體工程借鑒傳統工程的原則、方法,以提高質量、降低成本。其中,計算機科學、數學用於構建模型與演算法,工程科學用於制定規范、設計范型(paradigm)、評估成本及確定權衡,管理科學用於計劃、資源、質量、成本等管理。
[編輯本段]目標
軟體工程的目標是:在給定成本、進度的前提下,開發出具有可修改性、有效性、可靠性、可理解性、可維護性、可重用軟體工程性、可適應性、可移植性、可追蹤性和可互操作性並且滿足用戶需求的軟體產品。追求這些目標有助於提高軟體產品的質量和開發效率,減少維護的困難。下面分別介紹這些概念。 (1)可修改性(modifiablity)。容許對系統進行修改而不增加原系統的復雜性。它支持軟體的調試與維護,是一個難以達到的目標。 (2)有效性(efficiency)。軟體系統能最有效地利用計算機的時間資源和空間資源。各種計算機軟體無不將系統的時/空開銷作為衡量軟體質量的一項重要技術指標。很多場合,在追求時間有效性和空間有效性方面會發生矛盾,這時不得不犧牲時間效率換取空間有效性或犧牲空間效率換取時間有效性。時/空折衷是經常出現的。有經驗的軟體設計人員會巧妙地利用折衷概念,在具體的物理環境中實現用戶的需求和自己的設計。 (3)可靠性(reliability)。能防止因概念、設計和結構等方面的不完善造成的軟體系統失效,具有挽回因操作不當造成軟體系統失效的能力。對於實時嵌入式計算機系統,可靠性是一個非常重要的目標。因為軟體要實時地控制一個物理過程,如宇宙飛船的導航、核電站的運行,等等。如果可靠性得不到保證,一旦出現問題可能是災難性的,後果將不堪設想。因此在軟體開發、編碼和測試過程中,必須將可靠性放在重要地位。 (4)可理解性(understandability)。系統具有清晰的結構,能直接反映問題的需求。可理解性有助於控制軟體系統的復雜性,並支持軟體的維護、移植或重用。 (5)可維護性(maintainability)。軟體產品交付用戶使用後,能夠對它進行修改,以便改正潛伏的錯誤,改進性能和其他屬性,使軟體產品適應環境的變化,等等。由於軟體是邏輯產品,只要用戶需要,它可以無限期的使用下去,因此軟體維護是不可避免的。軟體維護費用在軟體開發費用中佔有很大的比重。可維護性是軟體工程中一項十分重要的目標。軟體的可理解性和可修改性有利於軟體的可維護性。 (6)可重用性(reusebility)。概念或功能相對獨立的一個或一組相關模塊定義為一個軟部件。軟部件可以在多種場合應用的程度稱為部件的可重用性。可重用的軟部件有的可以不加修改直接使用,有的需要修改後再用。可重用軟部件應具有清晰的結構和註解,應具有正確的編碼和較低的時/空開銷。各種可重用軟部件還可以按照某種規則存放在軟部件庫中,供軟體工程師選用。可重用性有助於提高軟體產品的質量和開發效率、有助於降低軟體的開發和維護費用。從更廣泛的意義上理解,軟體工程的可重用性還應該包括:應用項目的重用,規格說明(也稱為規約)的重用,設計的重用,概念和方法的重用,等等。一般來說,重用的層次越高,帶來的效益也就越大。 (7)可適應性(adaptability)。軟體在不同的系統約束條件下,使用戶需求得到滿足的難易程度。適應性強的軟體應採用廣為流行的程序設計語言編碼,在廣為流行的操作系統環境中運行,採用標準的術語和格式書寫文檔。適應性強的軟體較容易推廣使用。 (8)可移植性(portability)。軟體從一個計算機系統或環境搬到另一個計算機系統或環境的難易程度。為了獲得比較高的可移植性,在軟體設計過程中通常採用通用的程序設計語言和運行環境支撐。對依賴於計算機系統的低級(物理)特徵部分,如編譯系統的目標代碼生成,應相對獨立、集中。這樣,與處理機無關的部分就可以移植到其他系統上使用。可移植性支持軟體的課重用性和課適應性。 (9)可追蹤性(tracebility)。根據軟體需求對軟體設計、程序進行正向追蹤,或根據程序、軟體設計對軟體需求進行逆向追蹤的能力。軟體可追蹤性依賴於軟體開發各個階段文檔和程序的完整性、一致性和可理解性。降低系統的復雜性會提高軟體的可追蹤性。軟體在測試或維護過程中或程序在執行期間出現問題時,應記錄程序事件或有關模塊中的全部或部分指令現場,以便分析、追蹤產生問題的因果關系。 (10)可互操作性(interoperability)。多個軟體元素相互通信並協同完成任務的能力。為了實現可互操作性,軟體開發通常要遵循某種標准,支持折衷標準的環境將為軟體元素之間的可互操作提供便利。可互操作性在分布計算環境下尤為重要。 軟體工程活動是「生產一個最終滿足需求且達到工程目標的軟體產品所需要的步驟」。主要包括需求、設計、實現、確認以及支持等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟體需求規約。需求分析生成功能規約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟體體系結構,包括子系統、模塊以及相關層次的說明、每一模塊介面定義。詳細設計產生程序員可用的模塊說明,包括每一模塊中數據結構說明及加工描述。實現活動把設計結果轉換為可執行的程序代碼。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品滿足用戶的要求。支持活動包括修改和完善。伴隨以上活動,還有管理過程、支持過程、培訓過程等。
[編輯本段]過程
生產一個最終能滿足需求且達到工程目標的軟體產品所需要的步驟。軟體工程過程主要包括開發過程、運作過程、維護過程。它們覆蓋了需求、設計、實現、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟體需求規約。需求分析生成功能規約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟體系統結構,包括子系統、模塊以及相關層次的說明、每一模塊的介面定義。詳細設計產生程序員可用的模塊說明,包括每一模塊中數據結構說明及加工描述。實現活動把設計結果轉換為可執行的程序代碼。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品滿足用戶的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。
[編輯本段]原則
軟體工程的原則是指圍繞工程設計、工程支持以及工程管理在軟體開發過程中必須遵循的原則。軟體工程的原則有以下四項軟體工程師基本原則:
1)選取適宜開發范型
該原則與系統設計有關。在系統設計中,軟體需求、硬體需求以及其他因素之間是相互制約、相互影響的,經常需要權衡。因此,必須認識需求定義的易變性,採用適宜的開發范型予以控制,以保證軟體產品滿足用戶的要求。
2)採用合適的設計方法
在軟體設計中,通常要考慮軟體的模塊化、抽象與信息隱蔽、局部化、一致性以及適應性等特徵。合適的設計方法有助於這些特徵的實現,以達到軟體工程的目標。
3)提供高質量的工程支持
「工欲善其事,必先利其器」。 在軟體工程中,軟體工具與環境對軟體過程的支持頗為重要。軟體工程項目的質量與開銷直接取決於對軟體工程所提供的支撐質量和效用。
4)重視開發過程的管理
軟體工程的管理,直接影響可用資源的有效利用,生產滿足目標的軟體產品,提高軟體組織的生產能力等問題。因此,僅當軟體過程得以有效管理時,才能實現有效的軟體工程。 這一軟體工程框架告訴我們,軟體工程的目標是可用性、正確性和合算性;實施一個軟體工程要選取適宜的開發范型,要採用合適的設計方法,要提供高質量的工程支撐,要實行開發過程的有效管理;軟體工程活動主要包括需求、設計、實現、確認和支持等活動,每一活動可根據特定的軟體工程,採用合適的開發范型、設計方法、支持過程以及過程管理。根據軟體工程這一框架,軟體工程學科的研究內容主要包括:軟體開發范型、軟體開發方法、軟體過程、軟體工具、軟體開發環境、計算機輔助軟體工程(CASE) 及軟體經濟學等。
[編輯本段]基本原理
自從1968年提出「軟體工程」這一術語以來,研究軟體工程的專家學者們陸續提出了100多條關於軟體工程的准則或信條。美國著名的軟體工程專家巴利·玻姆(Barry Boehm)綜合這些專家的意見,並總結了美國天合公司(TRW)多年的開發軟體的經驗,於1983年提出了軟體工程的七條基本原理。 玻姆認為,這七條原理是確保軟體產品質量和開發效率的原理的最小集合。它們是相互獨立的,是缺一不可的最小集合;同時,它們又是相當完備的。 人們當然不能用數學方法嚴格證明它們是一個完備的集合,但是可以證明,在此之前已經提出的100多條軟體工程准則都可以有這七條原理的任意組合蘊含或派生。下面簡要介紹軟體工程的七條原理:
1、用分階段的生命周期計劃嚴格管理
這一條是吸取前人的教訓而提出來的。統計表明,50%以上的失敗項目是由於計劃不周而造成的。在軟體開發與維護的漫長生命周期中,需要完成許多性質各異的工作。這條原理意味著,應該把軟體生命周期分成若干階段,並相應制定出切實可行的計劃,然後嚴格按照計劃對軟體的開發和維護進行管理。 玻姆認為,在整個軟體生命周期中應指定並嚴格執行6類計劃:項目概要計劃、里程碑計劃、項目控制計劃、產品控制計劃、驗證計劃、運行維護計劃。
2、堅持進行階段評審
統計結果顯示: 大部分錯誤是在編碼之前造成的,大約佔63%錯誤發現的越晚,改正它要付出的代價就越大,要差2到3個數量級。 因此,軟體的質量保證工作不能等到編碼結束之後再進行,應堅持進行嚴格的階段評審,以便盡早發現錯誤。
3、實行嚴格的產品控制
開發人員最痛恨的事情之一就是改動需求。但是實踐告訴我們,需求的改動往往是不可避免的。這就要求我們要採用科學的產品控制技術來順應這種要求。也就是要採用變動控制,又叫基準配置管理。當需求變動時,其它各個階段的文檔或代碼隨之相應變動,以保證軟體的一致性。
4、採納現代程序設計技術
從六、七時年代的結構化軟體開發技術,到最近的面向對象技術,從第一、第二代語言,到第四代語言,人們已經充分認識到:方法大似氣力。採用先進的技術即可以提高軟體開發的效率,又可以減少軟體維護的成本。
5、結果應能清楚地審查
軟體是一種看不見、摸不著的邏輯產品。軟體開發小組的工作進展情況可見性差,難於評價和管理。為更好地進行管理,應根據軟體開發的總目標及完成期限, 盡量明確地規定開發小組的責任和產品標准,從而使所得到的標准能清楚地審查。
6、開發小組的人員應少而精
開發人員的素質和數量是影響軟體質量和開發效率的重要因素,應該少而精。 這一條基於兩點原因:高素質開發人員的效率比低素質開發人員的效率要高幾倍到幾十倍,開發工作中犯的錯誤也要少的多; 當開發小組為N人時,可能的通訊信道為N(N-1)/2, 可見隨著人數N的增大,通訊開銷將急劇增大。
7、承認不斷改進軟體工程實踐的必要性
遵從上述六條基本原理,就能夠較好地實現軟體的工程化生產。但是,它們只是對現有的經驗的總結和歸納,並不能保證趕上技術不斷前進發展的步伐。因此,玻姆提出應把承認不斷改進軟體工程實踐的必要性作為軟體工程的第七條原理。根據這條原理,不僅要積極採納新的軟體開發技術,還要注意不斷總結經驗,收集進度和消耗等數據,進行出錯類型和問題報告統計。這些數據既可以用來評估新的 軟體技術的效果,也可以用來指明必須著重注意的問題和應該優先進行研究的工具和技術。
[編輯本段]方法學
軟體工程的方法有很多方面的意義。包括專案管理,分析,設計,程序的編寫,測試和質量控制。 軟體工程師軟體設計方法可以區別為重量級的方法和輕量級的方法。重量級的方法中產生大量的正式文檔。 著名的重量級開發方法包括ISO9000,CMM,和統一軟體開發過程(RUP)。 輕量級的開發過過程沒有對大量正式文檔的要求。著名的輕量級開發方法包括極限編程(XP)和敏捷流程(AgileProcesses)。 根據《新方法學》這篇文章的說法,重量級方法呈現的是一種防禦型的姿態。在應用重量級方法的軟體組織中,由於軟體項目經理不參與或者很少參與程序設計,無法從細節上把握項目進度,因而會對項目產生恐懼感,不得不要求程式設計師不斷撰寫很多「軟體開發文檔」。而輕量級方法則呈現「進攻型」的姿態,這一點從XP方法特別強調的四個准則—「溝通、簡單、反饋和勇氣上有所體現。目前有一些人認為,重量級方法合於大型的軟體團隊(數十人以上)使用,而「輕量級方法」適合小型的軟體團隊(幾人、十幾人)使用。當然,關於重量級方法和輕量級方法的優劣存在很多爭論,而各種方法也在不斷進化中。 一些方法論者認為人們在開發中應當嚴格遵循並且實施這些方法。但是一些人並不具有實施這些方法的條件。實際上,採用何種方法開發軟體取決於很多因素,同時受到環境的制約。
[編輯本段]主要課程
外語、高等數學、線性代數、高等代數、電子技術基礎、離散數學、計算機引論(C語言)、數據結構、C++程序設計、JAVA程序設計、Delphi程序設計、匯編語言程序設計、演算法設計與分析、計算機組成原理與體系結構、資料庫系統、計算機網路、軟體工程、軟體測試技術、軟體需求與項目管理、軟體設計實例分析、CMM/ISO9000等。 另外,還包括操作系統、軟體體系結構概論、設計模式、多媒體技術基礎、UML建模、概率論、大學英語等,部分院校還會包括大學物理,工程制圖,數值分析等。
[編輯本段]發展方向
敏捷開發(Agile Development)被認為是軟體工程的一個重要的發展。它強調軟體開發應當是能夠對未來可能出現的變化和不確定性作出全面反應的。 敏捷開發被認為是一種「輕量級」的方法。在輕量級方法中最負盛名的應該是「極限編程」(Extreme Programming,簡稱為XP)。而與輕量級方法相對應的是「重量級方法」的存在。重量級方法強調以開發過程為中心,而不是以人為中心。重量級方法的例子比如CMM/PSP/TSP。 面向側面的程序設計(Aspect Oriented Programming,簡稱AOP)被認為是近年來軟體工程的另外一個重要發展。這里的方面指的是完成一個功能的對象和函數的集合。在這一方面相關的內容有泛型編程(Generic Programming)和模板。
[編輯本段]需求分析
軟體工程中包含需求、設計、編碼和測試四個階段,其中需求工程是軟體工程第一個也是很重要的一個階段,本文以醫院管軟體工程需求分析理系統為例詳細介紹了需求工程的構成和進行方法。 首先人們必須了解需求工程和其他項目過程的關系: 圖1需求與其他項目過程的關系 軟體需求包括三個不同的層次-業務需求、用戶需求和功能需求-也包括非功能需求:業務需說明了提供給客戶和產品開發商的新系統的最初利益,反映了組織機構或客戶對系統、產品高層次的目標要求,它們在項目視圖與范圍文檔中予以說明;用戶需求文檔描述了用戶使用產品必須要完成的任務,這在使用實例文檔或方案腳本說明中予以說明;功能需求定義了開發人員必須實現的軟體功能,使得用戶能完成他們的任務,從而滿足了業務需求。 需求工程分為了需求開發和需求管理兩個階段:下面就以這兩個階段說明: 一,需求開發 需求開發又分為需求獲取、需求分析、編寫規格說明書和需求驗證。以下列出和講解分析常規的步驟,當然應按照項目的大小和特點等實際情況我們應該自己確定合適的步驟。 1.需求獲取: 1)確定需求開發過程:確定需求開發過程確定如何組織需求的收集、分析、細化並核實的步驟,並將它編寫成文檔。對重要的步驟要給予一定指導,這將有助於分析人員的工作,而且也使收集需求活動的安排和進度計劃更容易進行。 2)編寫項目視圖和范圍文檔:項目視圖和范圍文檔應該包括高層的產品業務目標,所有的使用實例和功能需求都必須遵從能達到的業務需求。項目視圖說明使所有項目參與者對項目的目標能達成共識。而范圍則是作為評估需求或潛在特性的參考。 表1項目視圖和范圍文檔的模板 a、1背景在這一部分,總結新產品的理論基礎,並提供關於產品開發的歷史背景或形勢的一般性描述。 a、2業務機遇描述現存的市場機遇或正在解決的業務問題。描述商品競爭的市場和信息系統將運用的環境。包括對現存產品的一個簡要的相對評價和解決方案,並指出所建議的產品為什麼具有吸引力和它們所能帶來的競爭優勢。 a、3業務目標用一個定量和可測量的合理方法總結產品所帶來的重要商業利潤,把重點放在給業務的價值上。 a、4客戶或市場需求描述一些典型客戶的需求,包括不滿足現有市場上的產品或信息系統的需求。提出客戶目前所遇到的問題在新產品中將可能(或不可能)出現的闡述,提供客戶怎樣使用產品的例子。確定了產品所能運行的軟、硬體平台。 a、5提供給客戶的價值確定產品給客戶帶來的價值,並指明產品怎樣滿足客戶的需要。 a、6業務風險總結開發(或不開發)該產品有關的主要業務風險,例如市場競爭、時間問題、用戶的接受能力、實現的問題或對業務可能帶來的消極影響。預測風險的嚴重性,指明你所能採取的減輕風險的措施。 b.1項目視圖陳述編寫一個總結長遠目標和有關開發新產品目的的簡要項目視圖陳述。項目視圖陳述將考慮權衡有不同需求客戶的看法。它可能有點理想化,但必須以現有的或所期待的客戶市場、企業框架、組織的戰略方向和資源局限性為基礎。 b.2主要特性包括新產品將提供的主要特性和用戶性能的列表。強調的是區別於以往產品和競爭產品的特性。可以從用戶需求和功能需求中得到這些特性。 b.3假設和依賴環境在構思項目和編寫項目視圖和范圍文檔時,要記錄所作出的任何假設。通常一方所持的假設應與另一方不同。 c.1首次發行的范圍總結首次發行的產品所具有的性能。描述了產品的質量特性,這些特性使產品可以為不同的客戶群提供預期的成果。c.2隨後發行的范圍如果你想像一個周期性的產品演變過程,就要指明哪一個主要特性的開發將被延期,並期待隨後版本發行的日期。 c.3局限性和專用性明確定義包括和不包括的特性和功能的界線是處理范圍設定和客戶期望的一個途徑。列出風險承擔者們期望的而你卻不打算把它包括到產品中的特性和功能。 d.1客戶概貌客戶概述明確了這一產品的不同類型客戶的一些本質的特點,以及目標市場部門和在這些部門中的不同客戶的特徵。 d.2項目的優先順序一旦明確建立項目的優先順序,風險承擔者和項目的參與者就能把精力集中在一系列共同的目標上。達到這一目的的一個途徑是考慮軟體項目的五個方面:性能、質量、計劃、成本和人員。e.產品成功的因素明確產品的成功是如何定義和測量的,並指明對產品的成功有巨大影響的幾個因素。不僅要包括組織直接控制的范圍內的事務,還要包括外部因素。如果可能,可建立測量的標准用於評價是否達到業務目標. 3)用戶群分類:產品的用戶在很多方面存在著差異,例如:用戶使用產品的頻度、他們的應用領域和計算機系統知識、他們所使用的產品特性、他們所進行的業務過程、他們在地理上的布局以及他們的訪問優先順序。根據這些差異,你可以把這些不同的用戶分成小組。用戶類不一定都指人,你可以把其它應用程序或系統介面所用的硬體組件也看成是附加用戶類的成員。以這種方式來看待應用程序介面,可以幫助你確定產品中那些與外部應用程序或組件有關的需求。將用戶群分類並歸納各自特點為避免出現疏忽某一用戶群需求的情況,要將可能使都有所差異。詳細描述出它們的個性特點及任務狀況,將有助於產品設計。 4)選擇產品代表:擇每類用戶的產品代表為每類用戶至少選擇一位能真正代表他們需求的人作為那一類用戶的代表並能作出決策。這對於內部信息系統的開發是最易實現的,因為此時,用戶就是身邊的職員。而對於商業開發,就得在主要的客戶或測試者中建立起良好的合作關系,並確定合適的產品代表。他們必須一直參與項目的開發而且有權作出決策。每一個產品代表者代表了一個特定的用戶類,並在那個用戶類和開發者之間充當主要的介面。 5)建立核心隊伍:建立起典型用戶的核心隊伍把同類產品或產品的先前版本用戶代表召集起來,從他們那裡收集目前產品的功能需求和非功能需求。這樣的核心隊伍對於商業開發尤為有用,因為你擁有一個龐大且多樣的客戶基礎。與產品代表的區別在於,核心隊伍成員通常沒有決定權。 6)確定使用實例:讓用戶代表確定使用實例從用戶代表處收集他們使用軟體完成所需任務的描述-使用實例,討論用戶與系統間的交互方式和對話要求。在編寫使用實例的文檔時可採用標准模版,在使用實例基礎上可得到功能需求。 一個單一的使用實例可能包括完成某項任務的許多邏輯相關任務和交互順序。因此,一個使用實例是相關的用法說明的集合,並且一個說明是使用實例的例子。在描述時列出執行者和系統之間相互交互或對話的順序。當這種對話結束時,執行者也達到了預期的目的。 對於一些復雜的使用實例,畫出圖形分析模型是有益的,這些模型包括數據流程圖、實體關系圖、狀態轉化圖、對象類和聯系圖。 使用實例的描述並不向開發者提供他們所要開發的功能的細節。為了減少這種不確定性,需要把每一個使用實例敘述成詳細的功能需求。每一個使用實例可引伸出多個功能需求,這將使執行者可以執行相關的任務;並且多個使用實例可能需要相同的功能需求。使用實例方法給需求獲取帶來的好處來自於該方法是以任務為中心和以用戶為中心的觀點。比起使用以功能為中心的方法,使用實例方法可以使用戶更清楚地認識到新系統允許他們做什麼。 每一個使用實例都描述了一個方法,用戶可以利用這個方法與系統進行交互,從而達到特定的目標。使用實例可有效地捕捉大多數所期望的系統行為,但是你可能有一些需求,這些需求與用戶任務或其他執行者之間的交互沒有特定的關系。這時你就需要一個獨立的需求規格說明。 7)召開應用程序開發聯系會議:召開應用程序開發聯系會議應用程序開發聯系會議是范圍廣的、簡便的專題討論會,也是分析人員與客戶代表之間一種很好的合作辦法,並能由此擬出需求文檔的底稿。該會議通過緊密而集中的討論得以將客戶與開發人員間的合作夥伴關系付諸於實踐。 8)分析用戶工作流程:分析用戶工作流程觀察用戶執行業務任務的過程。畫一張簡單的示意圖(最好用數據流圖)來描繪出用戶什麼時候獲得什麼數據,並怎樣使用這些數據。編制業務過程流程文檔將有助於明確產品的使用實例和功能需求。你甚至可能發現客戶並不真地需要一個全新的軟體系統就能達到他們的業務目標。 9)確定質量屬性:確定質量屬性和其它非功能需求在功能需求之外再考慮一下非功能的質量特點,這會使你的產品達到並超過客戶的期望。對系統如何能很好地執行某些行為或讓用戶採取某一措施的陳述就是質量屬性,這是一種非功能需求。聽取那些描述合理特性的意見:快捷、簡易、直覺性、用戶友好、健壯性、可靠性、安全性和高效性。你將要和用戶一起商討精確定義他們模糊的和主觀言辭的真正含義。 10)檢查問題報告:通過檢查當前系統的問題報告來進一步完善需求客戶的問題報告及補充需求為新產品或新版本提供了大量豐富的改進及增加特性的想法,負責提供用戶支持及幫助的人能為收集需求過程提供極有價值的信息。 11)需求重用:跨項目重用需求如果客戶要求的功能與已有的產品很相似,則可查看需求是否有足夠的靈活性以允許重用一些已有的軟體組件。