讀書筆記|軟件工程工作計劃(精選十六篇)
發表時間:2021-07-06軟件工程工作計劃(精選十六篇)。
? 軟件工程工作計劃
摘要:
文章結合軟件工程課程的特點,闡述了興趣引導、任務驅動教學法在課堂教學中的應用,指出了教學設計中要注意的問題,并舉例分析其用法。
在互聯網+大智慧時代,計算機和移動智能終端的普及使得軟件成為人們日常使用必不可少的工具。有了軟件,人們的辦公效率得到提高,生活質量也有了很大改善[1],人們幸福地生活在這個智慧的時代。隨著國家經濟的發展和對軟件人才需求的增長,軟件工程學科的作用和地位不斷上升。,國務院學位委員會及教育部將軟件工程設立為國家一級學科[2],這反映出社會發展的重大需求,指明了學科發展的方向。目前高校中近80%的院校設有軟件及相關專業,國家對軟件人才的需求旺盛[3]。教指委也認定軟件工程是計算科學相關專業的核心課程之一,著重強調軟件工程的重要作用[4]。軟件工程是一門工程學科,主要講述軟件開發與維護的相關知識,涉及軟件開發的各個方面:開發流程、原則、開發方法與常用工具、軟件項目管理等,能夠為高效地開發高質量的軟件產品提供有效的技術支持[5]。它在培養學生的軟件開發能力、提高項目管理水平方面起著重要的作用。軟件工程課程涉及的原理、方法、概念多,涉及的知識面廣且抽象,較難理解,實踐環節操作困難。需要學習者既知曉理論知識,又能夠在項目實踐中靈活應用。在計算機相關專業的課程設置上起著重要的作用。因此,針對高職院校的軟件工程教學現狀,必須進行教學改革,不斷探索更為有效的教學方法。下面是筆者結合自身的教學經驗探索了“興趣引導+任務驅動”的軟件工程教學法,與同行探討。
大多數高校的軟件工程課程主要以理論講授為主,在課堂上采用“灌輸式”的教學方法。課堂教學枯燥無味,學生被動式地接受,教師是課堂的主導,學生為輔。情景式、互動式等教學方法較很少采用,課堂氛圍沉悶,缺乏靈活性,課后缺乏實踐訓練。不能充分地調動學生學習的主動性,無法激發學生的學習熱情,大多數學生學完后只記住了一些基本概念,很難靈活應用于項目開發實踐中。有的學生甚至認為有了這些理論知識就能指導軟件開發,開發出完美的軟件產品。單一的課堂教學枯燥無味,加上理論抽象,教學效果大打折扣。
軟件工程的選修課程有數據結構、數據庫原理及應用和程序設計語言等,這些課程學完之后,學生很難把這些課程的知識點融合在一起應用于軟件開發過程中。學生難以融會貫通,理解起來困難,在項目實踐中更是難以靈活應用。
軟件工程是一門理論性和實踐性比較強的綜合性課程,很多院校只注重理論課的教學,開設了很少的實驗課程,甚至有的學校只開設純理論課,沒有實踐教學環節。學生在實驗過程中只是學習了一些軟件工具的用法,而沒有按軟件開發流程完成一個完整項目的開發,不能真正領悟到軟件工程在項目開發中的重要作用[6]。
軟件工程不同于一般的應用軟件,學完后會有立竿見影的效果,比如學習了photoshop就能夠進行簡單的`圖像處理。在完成一個軟件項目的開發過程中,有些學生雖然能做出來,但是做出的軟件產品卻差強人意,軟件質量缺乏保障,缺乏完整的文檔資料,很難進行軟件維護。許多學生認為軟件就是程序,沒學軟件工程也能寫代碼,不重視軟件工程,認為學不學沒有太大的關系。隨著信息化時代的來臨,越來越多的應用都離不開軟件,同時對軟件的質量要求也越來越高,所以教師更要重視軟件工程的教學,在教學中要進一步結合現代教育技術,開展信息化教學創新研究。
大多數高職學生基礎薄弱,他們對理論知識的歸納、總結能力欠佳。在教學中,要盡量深入淺出,以簡單、形象、生動的語言,把知識點闡述清楚,同時要注重培養學生的邏輯分析能力和動手能力,力爭讓每一位同學都能有所收獲,有所提高。教學過程中“教”與“學”高效結合,需要注重教師和學生在課堂中主導角色的合理優化[7]。為了讓學生更主動地參與到學習中來,興趣引導是一種有效的方法,可以激發學生的學習熱情。因此,在教學實踐中采用“興趣引導+項目任務驅動”的方法,激發了學生的興趣,增強了教學效果。在信息化教學背景下,借助多媒體等現代教育手段,創造輕松、生動、形象的課堂環境,在寓教于樂中,把學生領進知識的海洋,學習相關的知識點,提高學生的邏輯分析能力、自學能力和動手能力,讓學生在實踐中能夠學以致用。
在設計課堂教學時,要注意以下3個方面:
(1)轉變學習方式。讓學生主體主動參與到課堂中來,讓學生成為課堂教學的主體,借助現代化教育手段,讓學生通過多種方式(如移動終端等)參與到學習中來。
(2)場景與知識點相融合。設置與知識點融合的場景,讓學生深入其中,再拋出知識點相關的學習任務,讓學生在場景中順其自然地進入學習狀態。
(3)喚醒學生的自主學習意識。及時對學生的努力和成績加以肯定,讓學生體會成功的喜悅,激勵學生主動學習。
結合當代高職學生的現狀,以《軟件需求分析》為例,本文進行如下的課程教學流程設計。
課前的知識點回顧是很重要的,在復習上次課學習的知識點的同時,與學生互動,拋出問題,比如,什么是軟件的生命周期,常用的開發模型有哪些?項目開發進行到哪個階段了,接下來需要做什么?再通過一個“媽媽與孩子”的故事引出知識點,導入新課。故事是這樣的:一個夜晚,有一位媽媽領著她的孩子走在回家的路上,孩子突然說:“媽媽,我想要吃雞腿”,媽媽犯愁了,這么晚了,怎么辦呢?附近店鋪已經關門了,可又不能餓著孩子。突然,媽媽想起了包里還有一些下午買的披薩,就拿出來給孩子吃,孩子高興地接過披薩開心的吃起來。講完這個故事,注重與學生互動,及時提問學生,雞腿=披薩?顯然學生是樂意回答的,而且很高興地回應老師的提問。顯然是雞腿不等于披薩,然后再追問,孩子的潛在需求是什么?學生的興趣被激發出來,會接著分析,孩子的潛在需求是餓了,想要吃好吃的。由此引出知識點:需求的定義,導入新課。在講解知識點的同時注重與學生的交互,實時了解學生的課堂學習狀態、對知識點的理解程度,有針對性地進行講解。
提出問題,什么是需求分析,需求分析的任務,需求分析的過程。讓學生帶著問題看書,找出問題的答案,旨在培養學生自主學習能力。教師巡視教室,及時解答學生的提問,發現問題,專題輔導,啟發學生,隨時接受學生的咨詢,巡回檢查,個別指導,讓學生成為課堂的主體。再以“傳授技能,嘗試練習”的教學法舉例。精選出一兩個有代表性的項目實例,引導學生用掌握的理論知識解決實際問題,案例講完后,結合習題訓練,通過與學生的交互情況,了解學生對這部分知識點的掌握情況。在授課過程中,借助PPT進行講解,為了讓PPT美觀有吸引力,借助現代教育技術,增加一些動畫、人物、技術的起源,插入一些流行影視圖片等作為背景,增加趣味性,吸引學生的眼球。
通過學生課堂習題訓練的情況及師生互動情況,總結本次課的教學重點、難點,指出學生在解題過程中存在的問題,提醒學生在進行需求分析時容易出現的問題,結合具體項目案例講解分析方法、工具及需求分析規格說明文檔的格式,并總結方法和容易出現的問題。
軟件工程是計算科學相關專業的核心課程,在計算機相關專業的課程設置上起著重要的作用。本文針對高校的軟件工程教學現狀,闡述了“興趣引導+任務驅動”的教學方法在課堂教學中的應用。在以后的教學中還要進一步結合現代教育技術,開展信息化教學創新研究。
[參考文獻]
[1]劉紅梅.計算機軟件工程管理與應用探究[J].無線互聯科技,(2):97-98.
[2]樊富有,孟林,李忠.新形勢下軟件工程人才培養的思考[J].計算機教育,(13):82-86.
[3]易軍,周偉,張元濤.軟件工程專業辦學現狀及發展特色分析[J].計算機教育,(8):102-104.
[4]蔣宗禮.推進規范辦學,培養合格本科畢業生[J].計算機教育,(7):7-10.
[5]曾強聰.軟件工程方法與實訓[M].北京:高等教育出版社,.
[6]趙淑芳,陳立潮.基于項目導向的啟發式軟件工程教學模式研究[J].大學教育,2015(11):186-187.
[7]王璐.從現象走向本質:課堂教學改革的路徑選擇[J].當代教育科學,2013(17):18-20.
? 軟件工程工作計劃
一、課題的意義和目的 隨著互聯網的高速發展,電子商務的發展也愈加完善,網上購物的環境也逐步得到了很大的改善,這一系列的發展為圖書銷售網站的發展提供了強大的動力。因為環境愈來愈完善,電子商務已經成為現代人生活中必不可少的一部分,而傳統的線下銷售模式也已不能適應時代的要求,在這種情況下,網上圖書銷售網站就有了很大的發展空間。
本系統的目的是做好一個優秀的電子商品平臺,為用戶提供一個方便快捷、質量過硬的圖書購買渠道。用戶是一個網站系統生存與發展的根本,讓所有用戶能夠在網站上快速買到實際需要、價格優廉的書籍,這可以為用戶節省下大量的時間與金錢。同時,這種模式不依賴線下實體店鋪以及大量的人力資源,降低了投資成本,而相應的圖書成本也就比實體店里有更大的利潤壓縮空間。而商家也可以利用本系統收集大量的市場數據,了解最新最詳細的市場詳情,并針對這些情況進行實時調整。這就形成了一個良性的供應——銷售循環。
二、主要設計(研究)內容 游客功能:
1)以游客的身份登錄 2)瀏覽查看網頁商品信息(包括商品詳細信息頁面,用戶評價頁面) 3)商品搜索功能(按書名、分類標簽、作者、價格、出版單位模糊搜索) 4)賬戶管理:游客注冊、登錄 游客模塊的功能:
用戶功能:
1)賬戶管理:主要包括注冊,登錄 2)個人中心:功能主要包括五個部分:
a. 查看、修改個人資料的功能; b. 查詢自己的訂單記錄、訂單狀態、物流信息,退換貨功能,將訂單存檔; c. 管理自己的購物車,提交訂單并支付; d. 查看賬戶等級; e. 管理自己的收藏夾; f. 查看充值自己的會員卡,修改支付密碼; 3)商品搜索:
可以通過書名、分類標簽、作者、價格、出版單位模糊搜索。
4)購物車:
主要功能包括顧客將商品加入購物車——>提交訂單——>支付——>查看訂單,5s內無操作自動跳轉返回主頁。
5)收藏夾 功能包括顧客將看中的商品添加到收藏夾,便于下次直接找到這個商品并進行操作 6)商品留言 購買一件商品成功后,可以對商品進行評價留言,而這些留言將會根據時間顯示在商品詳情頁面中 用戶的功能如圖 2-2 所示:
圖 2-2 用戶模塊結構圖 管理員功能:
1)系統管理:
員工管理、角色管理、權限管理、頁面管理 2)訂單管理:
處理訂單:確認訂單、發貨、退貨、完成訂單、刪除訂單。
3)書籍管理:
上架、下架、修改商品信息,對商品庫存進行管理 4) 員工管理:
對后臺管理中員工進行管理,可以添加、刪除、修改員工 5)數據管理:
查看日/月/年營業額以及書籍的銷售排行 圖 2-3 管理員模塊結構圖 三、設計(研究)方案 本系統將以 MyEclipse 10 為開發工具,利用 Java 語言以及 MySQL 完成數據庫設計。在整個系統設計過程中,應用軟件工程的技術與方法、遵循軟件開發的一般過程,使用面向對象的開發方法,基于 B/S 三層結構(界面層、業務邏輯層和數據訪問層)進行實訓課程材料提交系統的設計,面向流程進行需求分析,面向元數據進行概要設計,面向對象進行詳細設計和編程實現,對系統進行單元測試、集成測試。三層的主要運行流程如圖 3-1 所示:
研究步驟:
①需求分析階段,通過查詢相關資料和實際調查,面向流程進行需求分析。
②概要設計階段,設計軟件的結構,包括組成模塊,模塊的層次結構,模塊的調用關系,每個模塊的功能等等。同時,還要設計該項目的應用系統的總體數據結構和數據庫結構,即應用系統要存儲什么數據,這些數據是什么樣的結構,它們之間有什么關系。
③詳細設計階段,為每個模塊完成的功能進行具體的描述,要把功能描述轉變為精確的、結構化的過程描述。
④代碼設計階段,按照劃分好的功能模塊依次編寫代碼。
⑤測試階段,找出存在的問題并解決,從而達到完善系統的目的。
⑥最后,整理各階段的設計記錄文檔,寫成論文稿。
四、預期成果 能夠開發一個比較完整的網上銷售書店系統,游客可以直接進入網頁瀏覽查詢商品,選中商品后注冊/登錄生成訂單,完善訂單信息并支付。管理員確認訂單后進行發貨給出確認信息。
五、時間安排 2xxx01.16-2xxx.03.10
? 軟件工程工作計劃
1、8月8日—8月18日:主要完成了SAP程序設計基礎知識相關培訓。
2、8月19日—8月27日:主要完成了Java相關基礎培訓。
3、8月23日—8月27日:主要分組完成項目。
4、8月28日:項目答辯。
? 軟件工程工作計劃
作為一名軟件工程師,年度工作計劃對于我們來說非常重要。它是我們在新的一年里規劃和組織工作的藍圖,對于我們的職業發展和團隊成就至關重要。在這篇文章中,我將詳細介紹軟件工程師年度工作計劃的內容和重要性,并提供一些建議來制定一個成功的計劃。
年度工作計劃應該包括我們的職業目標和發展方向。作為軟件工程師,我們應該明確自己想要在職業生涯中達到的目標,并找到達到這些目標的途徑。計劃中應包括學習新的編程語言或技術,獲得相關的認證,參與培訓課程和學術研究等。我們應該定期評估自己的進展,并調整計劃以適應變化的需求。
年度工作計劃還應該考慮到我們所在的團隊和組織的目標。我們作為軟件工程師往往是團隊的一部分,我們的工作計劃應該與團隊的整體目標相一致。我們應該參與討論和決策,了解團隊的需求和優先事項,并將其納入我們的計劃中。我們還應該與團隊成員保持溝通,并共同努力實現共同的目標。
另外,年度工作計劃還應該考慮到我們的工作量和時間管理。作為軟件工程師,我們常常面臨多個項目和任務,如果不合理地安排時間,就會陷入忙碌但無所成的境地。因此,我們應該合理估計任務的時間和資源需求,并制定合理的工作計劃。我們應該將任務劃分為小的可管理的部分,并建立一個時間表來跟蹤我們的進展。這樣可以幫助我們更好地管理時間,提高工作效率。
年度工作計劃還應該考慮到技術的變化和更新。作為軟件工程師,我們必須跟上技術的發展,不斷學習和改進自己的技能。我們應該定期關注新的編程語言、框架和工具,并考慮如何應用到我們的工作中。我們還應該參加技術會議和培訓活動,與同行交流經驗和最佳實踐。這樣可以幫助我們保持競爭力,并不斷提高自己的技術水平。
年度工作計劃還應該包括自我評估和反饋機制。作為軟件工程師,我們應該定期評估自己的工作表現,并給自己提供反饋。我們可以回顧過去一年的成就和挑戰,總結經驗教訓,并制定改進計劃。我們還應該尋求他人的反饋,包括同事、上司和客戶。通過傾聽他們的意見和建議,我們可以更好地了解自己的優勢和不足,并采取適當的措施來改進自己的工作。
軟件工程師年度工作計劃是我們在職業生涯中的重要組成部分。它幫助我們明確職業目標和發展方向,與團隊的目標保持一致,合理安排工作量和時間,跟上技術的變化,以及進行自我評估和改進。一個成功的計劃需要我們認真制定,不斷調整和更新,并與團隊和組織保持密切聯系。通過制定一個好的年度工作計劃,我們可以更好地規劃和組織我們的工作,并取得職業和團隊的成功。
? 軟件工程工作計劃
軟件工程內容廣泛[6-7],原則、原理、方法和技術很多,既有理論又有實踐,抽象、枯燥是該課程的特點之一,若用雙語教學無異于“雪上加霜”,進一步增加了枯燥和乏味。為了提高教學效果,增強趣味性,進行講課的再設計非常重要。教學大綱的基本內容首先要完成.
軟件工程學科最早從國外引入,以美國為首的發達國家將軟件工程教育與軟件產業緊密結合,出版了一批優秀的有影響力的經典教材,國際著名軟件工程權威Roger.man所著SoftwareEngineering:APractitioner’sApproach被世界上很多著名高校選為軟件工程課程的教學用書[8],該書內容豐富,全面、系統地展示了軟件工程的最新技術和發展,“在國際軟件工程界占有無可置疑的權威地位”[6],國內很多985高校都將該書作為教材,我國機械工業出版社、清華大學出版社等紛紛購買該書的版權,目前,該書已經出版第7版,在國內可見到不同出版社的十幾個版本,說明該書被業界的認可度高。我們在雙語教學軟件工程課程時也一直使用Roger.man的教材。該書內容豐富,價位相對較高,教學中只能用其中的一部分。雙語教學對學生來說本來難度就大,所以導致絕大多數學生不買書也不看書,影響了教學效果。為此,在學校的支持下,筆者編寫了規劃教材《軟件工程》,并在清華大學出版社出版,作為學生的中文教學參考用書,教學中的課堂教學內容則仍然全部為英文。這樣,學生們既領略了國際大師的精髓思想和內容,同時也降低了接受難度,課下可以通過閱讀中文教材,進一步體會英文內容或不理解的內容。
為了提高學習效果,我們在第一次課將全部英文PPT拷貝給學生,使他們對內容、進度、難點有所了解,便于預習和復習,教學進行中再不斷細化和充實。即使對非常熟悉的內容,在每次上課之前筆者都要認真準備,反復思考,對這一次課的主要內容進行歸納,找出重點和難點,確定時間分配,確定上課時的幾個關鍵時間,筆者一般把上課內容分為2部分,每部分都在一節課(50分鐘)內完成。另外,確定幾個時間點,對于重點內容和難點多花時間,對于便于接受的內容或者看書能容易看懂的內容,則盡量少花時間。對于一些非常重要的理念性知識,教師直接給出大師的原話,讓學生們去感受原汁原味的大師思想,如在講授第6章“軟件測試”內容時,直接給出國際軟件大師Myers提出的3條“Softwaretestingobjectives”,以及10條“Softwaretestingprinciples”[9],讓學生們感受理念性的基本思想,以及科技英語的基本表述。為了豐富教學內容,每一部分教師都介紹一些著名的參考文獻,引導學生去進一步探索和學習。
學生普遍對軟件工程課程興趣不大[10],為了調動他們的學習積極性,講課不能太深奧。一旦學生聽不懂了,就更沒有興趣了。為提高他們的學習興趣,我們根據內容的難易程度安排講課節奏,并增加互動環節,吸引學生的注意力,使他們在注意力轉移的時候將興趣重新回到課程上來。為了提高學生的學習興趣,增強教學效果,要考慮如何讓他們接受課程內容。有些知識本身就很枯燥,如何讓這些枯燥的東西變得有趣,需要對這些知識進行“加工”和“包裝”。為此,教師在幻燈片制作上下功夫,盡量使PPT漂亮、精美、有動畫,接近學生,文字中必須有插圖,同時增加一些有趣的內容,活躍課堂氣氛。針對雙語教學趣味性差,課程本身內容枯燥的特點,盡量增加趣味性,如在講軟件體系結構的時候,要求好的軟件結構盡量成為mosque形式,避免pancaked結構。為了使大家印象深刻,筆者舉了一個腦筋急轉彎的例子,“一個體重40磅的女生能否用重1磅的錘子砸爛一塊重1噸的石頭”,幾乎所有同學都認為不可能,因為女生的體重太輕,力氣不夠,錘子的質量也太小。可是當筆者給出答案,這塊石頭形狀為扁平的時候,同學們一致認為這個女生不費吹灰之力就會把石頭砸碎,同時一下子就聯想到了軟件結構,pancaked結構沒有力量,就像一塊扁平石頭一樣沒有力度,很容易被打碎,這樣的軟件結構應盡量避免。
除了提高自身的教學水平和知識能力以外,每堂課都要內容充實、豐富,不走過場,不讓學生感覺這次課來不來都可。每次課要力爭達到的效果是,如果學生不來,通過課下自學要比來上課花更多的時間和精力,并且很難達到上課的效果,這樣才能使學生感到聽課有價值。為此,教師一方面增加信息量,讓大家感覺每次課都有收獲,不上課就會有損失,課上增加很多課本之外的內容。對于每項技術、方法都講它的起源、來龍去脈,為了讓同學們聽著有趣,筆者每次都要收集很多相關資料,介紹一些人物、故事、技術的起源。另一方面,為了增加信息量,每次都有效、合理地使用多媒體,讓多媒體成為必不可少的重要工具。實踐表明,使用多媒體可以使教學內容的信息量增加近一倍,但不能成為黑板的替代品,每一頁PPT的信息量也不宜太多,否則會影響效果,特別是文字性的PPT不能一閃而過。在多媒體的使用上要重視動畫、圖片和趣味性。在講授的.過程中,要讓每一頁PPT停留的時間能讓多數學生完整地閱讀完,否則起不到好的效果。為了使PPT美觀有吸引力,筆者增加了很多相關動畫、剪貼畫,自己還拍攝了以校園風光為主的很多標志性的背景照片,讓PPT接地氣,不但使PPT增加了可理解性,也更貼近了同學們的學習和生活。
針對目前高校高年級中普遍存在的必修課選逃,選修課必逃的現象,筆者也采取了一些應對措施,全方位提高出勤率。單純點名不能起到應有的效果,人來了心不來等于沒來。筆者采取的措施一是提高學生的學習興趣,增強內容的故事性、趣味性,講授時增加書本上沒有的內容,讓學生感覺上課值得,不來有損失,自己課下難以補上。二是表揚先進、促進學習,對于作業完成情況好的學生給予表揚,增強好學生的學習積極性,帶動其他人趕超先進。對于抄作業的現象,這本來也是教學中屢禁不止的現象,不可能杜絕,關鍵是如何處理、如何面對。第一次發現有完全雷同作業時,在課堂上只說現象、不說具體是哪個學生,他感到不妥時就會收斂。此外,在批閱作業時,對抄作業和被抄作業的學生,除認真給他們批閱作業以外,最后在雙方的作業本上均寫一句醒目的大字“你的作業與某某某的完全一樣”。有時三本、四本甚至五本作業都雷同,筆者并不追查誰是原始作者,誰是抄襲者,而是在幾個同學的雷同作業上都醒目地用紅筆寫上“你的作業與某某某、某某某、某某某的完全一樣”,兩次以后就再也沒有抄作業的現象了。雖然作業數量明顯減少了,但交上來的作業確實都是原創,原創的人為了自己的作業“清白”,不讓別人抄襲,抄襲的人也不好意思再去抄了,有效地杜絕了抄襲現象。三是重視過程考核,增加期中考試,對期中考試成績落后的學生提前敲警鐘,不是等到期末“秋后算賬”,可最大限度降低不及格率。對于學習自覺性高,期中考試不理想的學生,則能起到鞭策的作用,使其奮起直追。期中考試成績好的同學,在享受喜悅的同時會更加積極,以保持領先,并在期末取得更好的成績。實踐表明,每次期中考試后,出勤率都會顯著提高,學生的學習積極性也會提高,學習風氣也會改進。
雙語教學是提高教學水平,培養卓越工程師,特別是培養學生專業英文閱讀能力,與國際一流大學接軌的重要方式,但實施起來難度較大。影響實施的因素有很多,有些課程雖然進行了雙語教學,但開設了幾次以后被迫又回到中文教學模式。筆者堅持下來的體會主要有三點:一是進行雙語教學必須有好的經典教材,業界對該教材普遍認可,具有不可替代的權威性,若再有一本中文參考教材就能起到錦上添花的作用;二是要增強課程的趣味性,要讓PPT接地氣,接近學生,考慮學生如何接受和理解知識,充分利用多媒體,特別是要利用圖片和動畫來補充板書的不足和缺陷,對于難以理解的知識借助多媒體可以化難為易,有效化解難點,起到事半功倍的作用;三是課前一定要準備充分,要比用中文教學花更多的時間和精力去備課,才能取得預期效果,否則可能會適得其反。此外,提高學生的學習積極性,形成良好的學習風氣和學習氛圍也是必不可少的重要一環。
? 軟件工程工作計劃
1 企業概述
1.1 企業發展簡史
開封天一軟件科技有限公司(原河南省開封市王子科技公司)是經國家工商管理機構注冊批準的一家專門從事企業軟件開發與辦公信息化建設的高科技企業,公司擁有一批經驗豐富、技術精湛的系統設計、實施及售后服務人員;公司擁有雄厚的技術實力和核心自主知識產權,能為企業提供從技術咨詢到解決方案;從電腦設備供應到軟件產品定制;從軟件操作培訓到售后維護服務等全過程的高層次優質服務。
公司自主研發的軟件產品涵蓋了企業辦公、財務管理、互聯網應用、服務器出租、服務器托管、進銷存管理、工業控制,儀表數據采集與測控,人工智能等多種商業領域。公司本著“采用先進技術和平臺,提供高效、穩定的軟件系統”的產品質量方針和“一切以用戶為中心”的企業服務理念,與您共同推動我國企業的信息化建設。
1.2 企業現狀
一個沒有優秀民族文化的民族,不能自強于世界民族之林;同樣,一個沒有優秀企業文化的企業也不能自強于強烈的市場競爭之中。天一軟件科技有限公司將稟承“用戶至上、用心服務”的服務理念,創建獨具特色的國際化IT企業文化,借鑒中外軟件企業的成功經驗,與國內外友商精誠合作,緊趨世界信息技術發展潮流,致力于民族軟件業的騰飛,向著成為中國一流的國際化IT企業的目標邁進!為了實現“讓客戶盡情享受信息新生活”的企業使命,天一軟件著力進行業務與服務創新,持續不斷地向廣大客戶推出科學、適用的業務,較好地打造了業務品牌的形象和優質服務形象,理念先進、功能完善的天一綜合短信系統系列產品,天一商務領航平臺、天一統一充值平臺等系統逐漸深入客戶的實際應用,提升客戶感知的進程沒有終點,福富軟件以創新的精神推出業務、服務客戶的追求永無止境。
天一軟件強調以人為本,認為對員工的投資是最重要的投資,通過對員工的培訓提高員工的技術能力,并在平時通過多個方面讓員工隨時隨刻感受到盛鴻這個大家庭的溫馨、友愛。
創新是一種積累。不積跬步,無以至千里;不積小流,無以成江海。我們的鄰國日本戰后一片狼籍,但是憑著“每天PDCA,每天進步1%”的精神,一點一滴的創新,終于成就了一個科技和經濟強國。創新不是海市蜃樓,她就在我們身邊,偉大的創新也許當初只是一個看似很傻的念頭,但如果當初沒有人插上翅膀想飛卻飛不起來,有怎么會有今天的飛機呢公司將創新理念運用在公司的發展,項目的開發當中。天一當前的創新重點在于業務創新、技術創新、管理創新,提倡大膽創新,不怕失敗,“莫以善小而不為”,從工作中的每個細節入手,從一點一滴做起,讓創新逐漸成為習慣。
2 實習過程
最為一個軟件開發技術公司,不同于一般的那種嚴肅的氣氛,天一中給人的感覺是比較的寬松,公司的人情味也比較濃。對于我們這一批參加暑期社會實踐短期活動的在校學生,也都按照一般公司的標準要求我們,當然在這期間對我們的待遇,如:伙食、上下班的班車接送、業余文體活動等,也對我們一視同仁,這也是我們真正的體驗該公司的生活工作提供了不小的幫助。
這種氣氛,加上先前進入公司的師兄師姐,以及其他的熱心的老員工的幫助,使我們幾個很快的融入了這個公司中,在工作中更好的與周圍的同事的進行交流、合作;在工作之余我們也參加了公司組織的一些文體活動,如羽毛球、卡拉OK等。
2.1環境適應
這次的社會實踐活動,每個人都有一個很明確的任務,所以意味著我們不可能如以往的簡單的了解一些企業文化,簡單的學學新的知識就可以了,我們的這一個多月必將是一個繁忙的一個星期,也必將是一個充實的,進步的一個星期。下面介紹的是我們在公司的生活與工作中所遇到的一些困難,還有我們一般的生活工作時間安排以及具體的工程開發內容。克服困難,養成良好的工作生活習慣。基于各方面的原因,雖然在去之前我們做了比較充足的準備,但還是遇到了一些困難,例如工程階段比較繁多,但時間又比較的短。
由于我們可算是第一次正式的參與企業的開發,在經驗、知識上必然是有所欠缺,所以在開始階段我們主要都是了解項目的背景知識,進一步學習基本的一些項目原理等。而后要進行設計工作,然后才是真正的工程開發過程,還有調試過程。再由于我們只是短期的社會實踐工作,為了所做的工作在以后能真正為人所用,我們在走之前還要留下完善的相關文檔。短短的一個星期,要分成這么多的階段,而任務就擺在那,每一階段的時間可想而知是多么的寶貴。
由于時間比較的緊。在這段時間我們既要看文檔、又要搞設計,既要編程序,又要測試,還要編寫整理對應文檔。所以有時是每天中午都沒得休息趕著的干,下午下了班,別人都回去了,我們還在那兒加班,一直到晚上9點多,才坐上公交車花一個小時回住處休息。大家常常是坐在車上就睡著了。
另一方面,由于公司沒有給我們解決住宿問題,我們剛開始是在在公司同學的幫助下在體育場附近找的一個地方住著,后來又找了個地方,但還是在那一塊。雖然是坐在公司的班車上班,但由于是班車的第一站,很早就要上車,每天6:30就得起床。而在公司中午1:00上班,原來在學校的午睡習慣也只能去掉了,所以為了保持上班時有旺盛的精力,我們一改在校晚睡得習慣,每天晚上回去10:30就會睡覺。這樣的一堅持就是一個星期,雖然是苦了一點,但我想這也無形中讓我們培養了一個良好的作息習慣。
而在這一個多月中,我們基本做到按照公司正式員工的標準來要求自己,跟他們一樣的上班時間,遵守一樣的規章制度,保持旺盛的工作動力。一般是每天工作7個半小時,從8:45-12:00和13:00-17:15。當然有時候為了趕進度我們會在晚上或周末加一下班,而在相對比較輕松的階段,特別的是在初期時,我們也會在工作中,找機會多學一些相關的知識。
2.2具體的工程開發內容
由于我們四個人分別的加入了三個不同的項目開發小組,以下是他們對于這次工作的一個小小的總結:
我們于今年的暑假去天一軟件進行社會實踐,所做的項目為ST(系統測試)部門的MR(Modify Request)系統,MR系統為ST部門的最常用軟件,是進行軟件測試的必備工具,由于原有的工具已經不能滿足現在的要求,我們將利用更新的技術,基于新的需求分析,重新編寫該應用軟件,該軟件采用流行的Web_Browser的結構,利用ASP SQL Server來實現整個系統,整個開發過程完全采用現代軟件工程的方法來監控整個軟件的質量。第一步的需求分析由朗訊公司提出,并做出了相應的Tier2文檔。第二步的系統設計和數據庫建模由我和另一位同學完成及相應的Tier3,其中經歷了數次反復和review最終得到了一個完整的Tier3文檔,第三步為coding,由于有前兩步的基礎,此步驟得以很快的完成。最后的軟件通過了ST部門的專門測試,最終得到了部門經理的好評。
通過這一次社會實踐,使我們在課堂上學習到的抽象的軟件工程的理論有了一次實踐的機會,經歷了正規的軟件過程,而且給了我們一次難得的與人合作的機會,相信這一切對我們將來從事大型軟件開發都將是難得的財富。
TMS(Task Management System)項目管理系統
這個系統是由同事獨立完成的,以下是他對于這次作的一個小小的總結:
在暑假期間,我到了天一軟件科技有限公司實習,在軟件部(SW部門)負責基于web的項目管理系統的開發工作,即TMS(Task Management System)。
開發這個系統的目的是為了管理天一軟件公司SW部門現在正在開發的發展情況,以方便管理者和項目的參與者之間的協調。開發的系統應該能夠跟蹤項目的最新進展情況。
在這個系統里,最上層的對象是項目,下面分成若干子項目:子項目下又分成若干Task(任務)(Project-Sub_Project-Task)這樣的層次結構。對應于項目(Project)有項目主管PM(Project Manager),對應于子項目,有Team Leader;對應于任務,有Task Owner、Task Member、Task Reviewer。PM負責添加、修改項目和子項目,以及添加上面所述的他以下的任何角色。上面的角色能加下面的角色,而下面的角色不能加上面的角色。TeamLeader負責子項目的管理(添加,修改,等等)。TaskOwner負責自己的一個或多個Task,定時向PM作報告(通過程序設置的時間發送定制的Email)當一個Task完成后,PM檢查,確認后就結束此一Task并向所有的人(SW部門的人)發程序定制的郵件。當所有Task,Sub_Project都完成或部分、全部被取消后,整個項目就結束了。
整個系統用Web形式顯示和使用。采用Active Server Pages即所謂ASP技術。數據庫采用Oracle數據庫,采用OLE連接遠程數據庫(TMS和數據庫不在同一臺機器上)。
雖然實踐的時間比較的短暫,但我還是有了不小的收獲,最大的收獲是了解了一些軟 件開發的程序化生產過程。還有就是能有機會向SW部門的職員的一絲不茍、兢兢業業的敬業精神學習。相信這些都將給我以后的學習和工作帶來不小的幫助。
呼叫中心項目關于電話銀行的開發公作前面已經提到過呼叫中心CALLCENTER解決方案是天一軟件作為該公司新的經濟增長點來開發的,文書解決方案適于針對不同的需求在上面開發一步的CTL應用,就如民 航語音電子系統、電子股票交易系統等,電話銀行地其中一個可能的應用,也是公司在該解決方案上正在開發的第一個系統,而我本人則就是參加這個項目的工作。介紹如下:
電話銀行系統的目標是提供銀行的基本業務處理功能,其服務形式可發是自動語音或人工坐席。電話銀行系統的主要功能包括賬戶查詢、賬戶轉賬,、客戶信息服務及客戶投訴四大部分,我在該項目的具體工作就是,參與初期的需求分析以設計的討論,提出一些建議,并在后面負責其中一個數據應用網的設計、開發以及調試。
該數據應用網關主要用來與電話銀行系統以外的數據源進行通信,用于向電話銀行系統屏蔽外界的數據的細節,如存放格式、存放地點、版本等。應用網關有以下的接口,如與電話銀行系統的TCP/IP通信接口及DCOM維護管理接口,還有與外界數據源的數據接口。針對于電話銀行的這個應用網關的開發的主要工作由以下幾部分組成:
a. 根據電話銀行IVR流程的具體需求,和IVR協商確定IVR數據請求以及返回的接口,建立與數據庫的連接,并且根據和IVR的數據接口編寫具體的數據應用流程。
b. 應用維護管理接口進行應用網關與網關服務器的連接、注冊工作,并實現網絡服務器對應用網關遠程操作中的一些方法。
c. 應用TCP/IP通信接口,在應用網關上實現IVR經由網關服務器的數據請求的處理。
d. 修改完善操作界面并編寫《應用網關用戶操作說明書》。
這些工作主要涉及到數據庫的遠程操作、微軟的COM/DCOM通信機制還有TCP/IP通信原理,所以說這一次的工作不僅給了我深入了解一個大型軟件開發企業的機會,也給了我一個很大的鍛煉學習提高的機會。
3 總結
3.1 學習所得
如今一個星期的天一軟件科技有限公司社會實踐活動已經結束了,從這次活動的成果上來看,還是比較成功的。辛勤的工作換來的是累累的碩果,不管是對于企業、 學校,還是我們自己。
首先我們幾個人在較短的時間內,克服各種困難,從最初的閱讀文檔,設計、開發,到最后的調試,完善,我們都按質按量的完成了,完成預定的工程開發任務,通過了公司相應項目小組的驗收,也得到了他們的一致好評,實現了最初為企業作實際共享的目標。
其次在這個過程中,我們也通過了深入的調查、討論,以對一個大型軟件開發企業的結構、管理、文化、氣氛有了比較詳細的了解。而通過我們在公司中的工作上的良好表現,還有生活中與公司員工的交流,我們也在他們面前展現了了一個積極進取、勇于創新形象,起到了加強學校與企業雙向交流的作用。
再有的一點就是,通過這次活動,讓我們理論聯系實際,在軟件工程的開發過程、數據庫的開發、分布式計算等工程實踐經驗上有了很大的提高。在公司中也培養了初步的大型項目合作開發經驗,這一些都很好的增強了我們的個人的能力和并提高了自身的素質。
3.2經驗教訓
類似的以上的收獲還有很多很多,但在活動結束的這個時候,仔細考慮一下,還是有一些地經驗教訓的。
例如在活動中我們能夠感覺得到,很多的工作經驗,開發的知識我們了解的還是不夠充分,致使我們在開發初期要發費較多的時間用于入門。但有一點感覺就是,我們在學校所學的一些基本知識還是比較有用的,例如網絡通信砂理,數據庫基本原理等,正是這些基礎知識使我們在缺少工程經驗的情況下還能盡快入手,后來趕上。
針對我們學校部分學生普遍基礎理論知識較多,對于工程的經驗不足的現象,我們同學大可以去掉以往羞于參與工程,怕在別人前認短的心態,因為北京郵電大學學生在通信理論方面的基礎知識還是比較豐富的,有了這一些知識,我們一般在工程面前還是能很快入手的,而為了更好的進行開發,我們也應該在校期間就多進行一些工程方面的鍛煉,培養實際動手能力。
我想象這樣一此讓同學接觸社會,培養實際動手能力的活動真的很不錯,也是同學們所歡迎的,當然把這樣的活動辦好需要學校的老師和同學們共同努力。也希望,這樣的活動能不斷地繼續下去,并發展壯大。
3.感謝
雖然就短短的一個星期,但我想這一份經歷必將會為我們將來進入社會打下一個良好的基礎,不管是在以后的就業指導上、還是在工作生活為人上,我們都擁有了一筆寶貴的財富。
所以在最后我想我們應當感謝為我們提供這次活動機會、還有在此過程中熱心幫助我們的學校學生工作部,學校團委,研究生團委的老師們,另外還要感謝天一軟件科技有限公司及其中的員工們。
? 軟件工程工作計劃
基于本次暑期實習的情況,我收獲很大。
從實訓目的來看,本次實訓主要是在VS開發平臺上實現對C#語言、SQL數據庫的應用,就我所在小組的項目工作內容來看,還需要掌握水晶報表和MDI多窗口應用技術。除了要充分熟悉開發平臺及應用設計之外,還要掌握并實踐軟件項目設計規范及其開發流程即需求階段、分析和設計階段、編碼階段和測試階段,以便能按時交付作業。
從實訓的內容來看,我小組的項目是“人事工資管理系統”,主要實現公司企業對內部員工檔案、工資、獎罰考勤等一系列的管理,這在當今不斷壯大的企業用人單位是亟待需要的,總的來說,項目的難度系數不是很高,但也是相當困難。
在校外實習之前,老師先在校內培訓了5天。5天實訓中,著重講解了c#語言應用,并布置編寫“通訊錄”工作臺程序,windows應用程序和WPF程序,數據先是用文本保存,然后練習用數據庫保存,期間每天需上交當日作業。5天的時間里,通過不斷地學習,我從完全不懂c#語言成長到初步掌握了這門語言,當然在具體應用中還是會遇到些問題,但我還在學習。其實在實習的前一個月里,老師就上傳了一些關于c#語言的資料并通知我們需要配置哪些軟件環境,對于這一點,我是相當感謝何老師的,當然在校外的實習里,公司也全都把開發項目用到的一系列軟件上傳到公共文件夾里,從而免去了我們下載軟件的麻煩,在此,感謝眾老師。
校內實習要上交的作業我是在校外實習中補充完成的,因為之前上交的作業由于時間倉促大都有錯誤,所以借著校外實習中對c#語言的進一步應用和講師的詳細講解后,我重新改正了錯誤,希望何老師能諒解采納。
校外實習是從7月12號開始,歷時15天,15天的最后一天要回校評審。我對本次校外實習的各個方面都十分滿意。相比上次實習,首先這里的住宿學習條件非常好,住宿和實習地都安裝了空調,實習地方環境清幽寬敞明亮,伙食也非常好。然后就是實習講師非常專業和負責,他事先把所有有關實習的資料軟件存放在公共文件夾,且規劃入微。一開始先是對我們進行C#測試分好組安排好每組項目任務,又指導我們每個小組安裝SVN軟件,方便小組文件上傳與統一,整體一氣呵成,不似之前實習的凌亂,這一點我十分敬佩。之后每天都先安排好任務工作,認真且非常詳細的給我們操作示范并細心地制作成word文檔供小組之后查看。每隔幾天都會有小組評審,主要針對小組所編文檔的規范程度和不足提出修改建議。作為小組的PM,我必須承認一開始工作任務安排不當,沒有完全發揮各成員的優勢,以致文檔編寫的有些瑕疵,不過在小組評審過后,我便及時更改了項目工作的分工,而之后小組項目工作進行的非常順利,每個人的能力都得到了最大的發揮和升華,當然這完全得力于小組成員的高度配合。
我小組是c#軟件開發第一組,組內有6名成員,兩個主要負責項目核心代碼的編寫,其余負責簡單模塊代碼的編寫,我主要負責填寫與修改相關項目文檔并督促小組進度和團結組內成員、合理分配組員任務并及時調節組內安排的各種不適與問題。校外實習的過程中,小組成員高度團結,協調合作,對所有問題都能及時探討并高效解決,有時遇到分歧,不過在全體討論后,都能找到合理的統一方案,如在界面設計環節中,就登陸界面和模塊界面的設計中,組員有很多不同建議,在詢問老師和權衡實現困難程度后,我們達成了一致意見,統一后的界面相比之前更加規整明晰,且功能更加健全,當然這是我們小組齊心合力的結果。在開發的過程中,出現過項目分工不明確的問題,其原因源于我考慮到組員能力的不同,所以就把大部分的工作安排給能力高的人身上,其他能力低的只暫讓他們自由學習希望能盡早跟上小組步伐,不過事實證明我錯了。讓部分組員自由學習而不參與項目的工作中本身就拖累了小組的整體速度,而且在短暫的時間里,他們也實在學不到任何實際的東西,所以后來我更改了戰略。我先讓能力低的組員嘗試參照模板編寫一些文檔的簡單部分,然后讓能力稍高點的組員繼續補充文檔的核心部分,最后由我修改格式和內容,最后讓老師審閱。這個方案實施過后,小組的效率整體上明顯提高,每個人各司其職,全組團結一致,共同為項目的完成發揮自己的聰明才智。而之后,在項目編碼階段,我們小組的TL負責對項目整個框架的構建,即設計好主要的窗口原型,然后指導小組成員在自己所負責的模塊上添加具體事件代碼,最后再進行修改,這樣做不僅將組員團結在一起提高組內效率,更直接提高了組員的編程能力。
? 軟件工程工作計劃
1.軟件危機的概念 系統的數據要求,功能需求,性能需求,顯示出程序的輪廓。
軟件危機是指在計算機軟件開發、使用與可靠性需求,可用性需求,出錯處理需求,混合方式
維護過程中遇到的一系列嚴重問題和難接口需求,約束,逆向需求以及將來可能優點:綜合了以上兩種策略的長處 題。提出的需求。9.確認測試
補充: 5.常使用的圖形工具 確認測試又稱有效性測試。有效性測試是
1.軟件危機的表現有哪些? 實體-聯系圖,數據流圖,狀態轉換圖,在模擬的環境下,運用黑盒測試的方法,答:1)對軟件開發成本和進度的估計常層次方框圖,warnier圖,IPO圖。驗證被測軟件是否滿足需求規格說明書常很不準確。第五章 列出的需求。任務是驗證軟件的功能和性
2)用戶對已完成的軟件不滿意1.總體設計的任務 能及其他特性是否與用戶的要求一致。對的現象時有發生。劃分出組成系統的物理元素——程序、文軟件的功能和性能要求在軟件需求規格
3)軟件產品的質量往往是靠不件、數據庫、人工過程和文檔等等 說明書中已經明確規定,它包含的信息就住的。設計軟件的結構。也就是要確定系統中每是軟件確認測試的基礎。
4)軟件常常是不可維護的。個程序是由哪些模塊組成的,以及這些模10.什么是白盒測試,其測試技術有那些,5)軟件通常沒有適當的文檔資塊相互間的關系。覆蓋標準的強弱程度
料。2.模塊化思想 白盒測試是一種測試用例設計方法,盒子
6)軟件成本在計算機系統總成就是把程序劃分成獨立命名且可獨立訪指的是被測試的軟件,白盒指的是盒子是本中所占比例逐年上升。問的模塊,每個模塊完成一個子功能,把可視的,你清楚盒子內部的東西以及里面
7)軟件開發生產率提高的速度這些模塊集成起來構成一個整體,可以完是如何運作的。“白盒”法全面了解程序內遠跟不上日益增長的軟件需求。成指定的功能滿足用戶的需求。部邏輯結構、對所有邏輯路徑進行測試。
2.產生軟件危機的原因主要有哪些? 3.衡量模塊獨立的標準(內聚和耦合的白盒測試的測試方法有代碼檢查法、靜態答:1)用戶對軟件需求的描述不精確。含義,種類)結構分析法、靜態質量度量法、邏輯覆蓋
2)軟件開發人員對用戶需求的內聚:標志著每一個模塊內各個元素彼此法、基本路徑測試法、域測試、符號測試、理解有偏差。結合的緊密程度,是信息隱藏和局部化概路徑覆蓋和程序變異。
3)缺乏處理大型軟件項目的經念的自然拓展。偶然內聚,邏輯內聚,時種覆蓋標準:語句覆蓋、判定覆蓋、條件驗。間內聚,功能內聚,順序內聚,通信內聚,覆蓋、判定/條件覆蓋、條件組合覆蓋和
4)開發大型軟件易產生疏漏和過程內聚。路徑覆蓋發現錯誤的能力呈由弱至強的錯誤。耦合:是對一個軟件結構內不同模塊之間變化。
5)缺乏有力的方法學的指導和互連程度的度量。數據耦合,控制耦合,11.什么時候黑盒測試,其測試技術有哪有效的開發工具的支持。特征耦合,公共環境耦合,內容耦合。些,(等價劃分,邊介值分析法)
6)面對日益增長的軟件需求,4.啟發式規則 黑盒測試也稱功能測試,它是通過測試來人們顯得力不從心。1.改進軟件結構提高模塊的獨立性檢測每個功能是否都能正常使用。
2軟件的概念 2.模塊規模應該適中等價類劃分的辦法是把程序的輸入域劃完成特點功能的程序以及數據結構和文 3.深度、寬度、扇出和扇入都應適當 分成若干部分(子集),然后從每個部分檔 4.模塊的作用范圍應在控制范圍之內中選取少數代表性數據作為測試用例
3.軟件工程的基本原理 5.力爭降低模塊接口的復雜程度 邊界值分析是通過選擇等價類邊界的測
1.用分階段的生命周期計劃嚴格管理 6.設計單入口單出口的模塊試用例。邊界值分析法不僅重視輸入條件
2.堅持進行階段評審 7.模塊功能應該可以預測 邊界,而且也必須考慮輸出域邊界。它是
3.實行嚴格的產品控制 5.面向數據流的設計方法把信息流映射對等價類劃分方法的補充。
4.采用現代程序設計技術 成軟件結構 12.軟件調試技術有哪些
5.結果應能清楚地審查 信息流:變換流,事物流 蠻干法,蠻干法可能是尋找軟件錯誤原因
6.開發小組的人員應該少而精 映射:變換分析,事物分析 的最低效的方法,僅當所有其他方法都
7.承認不斷改進軟件工程實踐的必要性失敗的情況下才使用。
4軟件生命周期分成哪幾個階段?各階第六章 回溯法,回溯法是一種相當常用的調試方段的任務是什么? 1.詳細設計的基本任務 法,當調試小程序時很有效。從發現癥
1.問題定義: 1.為每個模塊確定采用的算法。2.確定狀的地方開始,人工沿程序的控制流往回
2.可行性研究:研究問題的范圍,探索這每一模塊使用的數據結構追蹤分析源程序代碼,知道找出錯誤原因個問題是否值得去解決,是否有可行的解3.確定模塊接口的細節,包括對系統外為止。
決方法。部的接口和用戶界面,對系統內部其 原因排除法,對分查找法、歸納法、演繹
3.需求分析:主要是確定目標系統必須具它模塊的接口,以及關于模塊輸入數據、法都屬于原因排除法。
備哪些功能 輸出數據及局部數據的全部細節。13.軟件可靠性(可靠性和可用性的含義)
4.總體設計: 4.為每一模塊設計出一組測試用例。
5.詳細設計:就是把解法具體化,設計出2.程序的三種基本結構
程序的詳細規格說明。順序結構,選擇結構,循環結構
6.編碼和單元測試:寫出正確的容易理解3.詳細設計的工具
容易維護的程序模塊。1.圖形工具
7.綜合測試:通過各種類型的測試使軟件2.表格工具
達到預定的要求 3.語言工具
8.軟件維護:通過各種必要的維護活動使4.jackson方法
系統持久地滿足用戶的需要。(改正性維5.復雜性度量的方法
護,適應性維護,完善性維護,預防性維Halstead方法:它根據程序中運算符和
護)操作數的總數來度量程序的復雜程度
5.瀑布模型,快速原型模型,增量模型,McCabe方法 :McCabe方法根據程序控制
螺旋模型的特點 流的復雜程度定量度量程序的復雜程度,瀑布模型階:段時間具有順序性和依賴第七章
性。推遲現實的觀點。質量保證的觀點。1.選擇程序設計語言應考慮哪些因素
快速原型模型:軟件產品的開發基本上是1.系統用戶的要求
線性順序進行的,本質是“快速”加速軟2.可以使用的編譯程序
件的開發過程,節約軟件開發成本。3.可以得到的軟件工具
增量模型:能在較短時間內向用戶提交可4.工程規模
完成部分工作的產品。逐步增加產品功5.程序員的知識
能,可以使用戶有較充裕的時間學習和適6.軟件可移植性要求
應新產品,從而減少一個全新的軟件可能7.軟件的應用領域
給客戶組織帶來的沖擊。2.良好的編程風格包括哪些方面
螺旋模型:對可選方案和約束條件的強調1.程序內部的文檔2.數據說明 3.語句構
有利于已有軟件的重用,也有助于把軟件造4.輸入輸出 5.效率
質量作為軟件開發的一個重要目標。減少3軟件測試的目標
了過多的測試或測試不足帶來的風險。更目的:(1)測試是為了發現程序中的錯誤
重要的是在螺旋模型中維護只是模型的而執行程序的過程;
另一個周期,在維護和開發之間并沒有本(2)好的測試方案是極可能發現迄今為
質區別。風險驅動的。止尚未發現的錯誤的測試方案;
(3)成功的測試是發現了至今為止尚未
第二章 發現的錯誤的測試。
1.可行性研究的目的 定義:為了發現程序中的錯誤而執行程序
就是用最小的代價在盡可能短的時間內的過程。
確定問題是否能夠解決。補充:
補充: 軟件測試步驟 :
可行性研究的步驟 :(1)模塊測試(2)子系統測試(3)系統
1.復查系統規模和目標。測試(4)驗收測試(5)平行運行
2.研究現有的系統。4.確定測試計劃是在哪個階段制定的3.導出新系統高層邏輯模型。5.黑盒測試和白盒測試的概念
4.進一步定義問題黑盒測試
5.導出和評價供選擇的解法。1把程序看作一個黑盒子,完全不考慮程
6.推薦行動方針序的內部結構和處理過程
7.草擬開發計劃2對程序接口進行測試,檢查程序功能是
8.書寫文檔提交審查 否能按規格說明書的規定正常使用;
程序是否能適當地接受輸入數據并產生
2.系統流程圖的作用 正確的輸出信息;
系統流程圖是描繪物理系統的傳統工具,程序運行過程中能否保持外部信息的完
它用圖形符號來表示系統中的各個部件。整性
它表達了系統中各個元素之間的信息流白盒測試
動的情況。1把程序堪稱裝在一個透明的白盒子里,3.數據流圖的概念 測試者完全知道程序的結構處理算法
數據流圖是一種圖形化技術,它描繪信息2按照程序內部的邏輯測試程序,檢測程
流和數據從移動到輸出的過程中所經受序中的主要執行通路是否都能按的變換。預定要求正確工作
4.數據流圖里面的符號,畫數據流圖。6.測試的步驟及每個步驟形成的文檔
5.數據字典最基本的功能,以及與數據流單元測試:(模塊測試)發現的往往是編
圖的關系。碼和詳細設計的錯誤
最基本的功能:在軟件分析和設計的過程集成測試:著重測試模塊的接口 中給人提供關于數據的描述信息。
關系:數據流圖和數據字典共同構成系統系統測試:發現的往往是軟件設計中的錯的邏輯模型,沒有數據字典,數據流圖就誤,也可能發現需要說明中的錯誤 不嚴格,然而沒有數據流圖,數據字典也驗收測試:(確認測試)往往發現需求說難于發揮作用。只有數據流圖和對數據流明書中的錯誤 圖中每個元素的精確定義放在一起,才能7.漸增式和非漸增式的區別 共同構成系統的規格說明。“非漸增式”,即先獨立地測試每一模塊,第三章 然后將所有這些模塊連接到一起運行; 1.需求分析屬于哪一個階段,任務是什“漸增式”,即在已測試過的N個模塊的么。基礎上再增加一個模塊,再對N十1個模需求分析是軟件定義時期的最后一個階塊進行測試。段.漸增式比非漸增式優越,因為用漸增式,1.確定對系統的綜合要求(功能需求,性如果是“由頂向下”則可利用前面已測試能需求,可靠性和可用性需求,出錯處理過的模塊,而不必另外準備驅動模塊,如需求,接口需求,約束,逆向需求,將來果是“由底向上”,也可利用已測試過的可能提出的要求)模塊,不必再準備樁模塊。漸增式可以較2.分析系統的數據要求早地發現模塊界面之間的錯誤,有利于排3.導出系統的邏輯模型 錯,檢查比較徹底 4.修正系統開發計劃2.需求分析的產品是什么 8.自頂向下,自下而上,以及混合策略的3.面向過程的分析方法主要是建立三類優缺點 模型 自頂向下數據模型(按照用戶的觀點對數據建立的優點:能較早顯示整個程序的輪廓,向用模型,把用戶的數據要求清楚,準確地描戶展示程序的概貌,取得用戶的理解與支述出來。描述了從用戶角度看到的數據,持。缺點:當測試上層模塊時因使用樁它反應了用戶的現實環境,屬性,聯系),模塊較多,很難模擬出真實模塊的全部功功能模型,行為模型(通過描繪系統的狀能,使部分測試內容被迫推遲,只能等待態及引起系統狀態轉換的事件來表示系換上真實模塊后再補充測試。統的行為)由底向上4.軟件需求規格說明書的內容 優點:測試從下層模塊開始,測試設計用通常用自然語言完整,準確,具體地描述例比較容易。缺點:在測試的早期不能
? 軟件工程工作計劃
準考證號:
考生姓名:
一.實驗目的
軟件工程是一門實踐性很強的計算機專業課程,該課程的任務是使我們掌握軟件工程的基本概念、基本原理、實用的開發方法和技術。了解軟件工程各領域的發展動向;如何用工程化的方法開發軟件項目,在開發過程中應遵循的流程,準則,標準和規范。注重方法、技術的實際應用。在上機實踐考核中,為培養考生良好的學習與工作作風。要求考生按一定的規范進行上機前的考核準備。熟悉軟硬伯環境。上機調試和正確運行程序,以及提交實踐考核報告。上機實踐考核的述記在機器環境上調試、運行程序和產生正確的結果,。但準備階段和整理實踐報告也十分重要,只有做好充分的準備,熟悉機器及環境,盡可能的正確編碼,才能高效率地利用機時。在書寫報告時,必須依照規定的格式整理好文檔資料,為考生將來從事于軟件開發和研制工作,打下一個堅實的基礎。
二.實驗環境
1.硬件環境:
CPU:Pentium 1.8GHz內存:512M
硬盤:40G(局域網)
2.軟件環境:
操作系統:Windows 20xx
開發工具:Microsoft Visual C++ 6.0數據庫: Microsoft Access三.實踐內容3.1需求說明書
3.1.1概述
1.項目背景
科學技術日新月異的進步,讓人類生活發生了巨大的變化,計算機技術的飛速發展,21世紀是信息的社會,而計算機在數據信息處理上有著很大優越性。學生成績管理是學校的一項重要工作,原有的`人工管理存在這著很多不足,造成不足的原因是,在校學生人數眾多,并且每個學生的信息過于復雜,從而工作量非常大,給查詢、添加、修改、統計、刪除成績帶來了不便。因此,如何解決這些不足,使成績管理更快捷、更方便,具有更高的效率也就成了一個關鍵問題。隨著科學技術的迅速發展學校成績管理的自動化也越來越迫切,因此有必要開發成績管理系統的軟件系統來輔助學校的教學管理。
2.目標
軟件的目標:實現學生信息數據處理的自動化與智能化。 3.用戶特點
a)掌握計算機基本操作。 b)學校老師(可選)4.假定與約束
無
3.1.2具體要求
1.功能需求
對用戶所提需求進行梳理后,將用戶需求劃分如下:數據輸入功能:可輸入班級學生信息包括成績。數據保存功能:可保存學生信息。
數據修改功能:對學生信息進行更新修改。數據刪除功能:對學生進行刪除。
數據查詢功能::對學生信息進行詳細查詢和模糊查詢。數據統計功能:對學生平均成績統計,對單科成績統計,對學生班級成績進行統計等。
數據打印功能:將查詢的結果按一定報表格式進行打印。系統設置功能:設置系統登陸時的用戶名和密碼,并對用戶名和密碼可重設。 2.外部接口無
3.性能需求
1)數據庫記錄容量不小于10萬條。 2)數據庫實時性要高。 4.數據需求
1)數據為學生基本信息,沒有特殊數據或字段。 5.產品化需求無
3.1.3運行環境規定
1.硬件設備:CPU:P4或P4以上內存:256M硬盤:20G或20G以上
2.支持軟件
系統:Windows 20xx或Windows XP數據庫:Microsoft Access 3.2設計說明書3.2.1概要設計說明書1.總體設計
學生成績管理系統是專為教務工作者設計開發的,具有很強的專用性。由于系統功能比較簡單,并且系統處理的數據量不是很大,故設計開發時采用微軟的Access數據庫。微軟的Access數據庫在小型數據庫系統比較常用,Access是實時性較高的數據庫之一,存儲速度快,查詢效率高。考慮到數據查詢的實時性,主程序采用比較常用的ADO數據庫訪問技術,ADO是微軟訪問為自已數據庫,而專門開發的
數據庫訪問引擎,與Access數據庫配合使用具有無縫連接性能,主程序界面開發采用自己比較熟悉的Microsoft Visual C++ 6.0 + SP6。
2.模塊設計
系統按用戶需求說明書,可劃分成如下功能:a)數據輸入功能b)數據保存功能c)數據修改功能d)數據刪除功能e)數據查詢功能f)數據統計功能g)數據打印功能h)系統設置功能系統結構圖如下:
3.數據結構設計
1)在開發過程中要使用到數據庫,需要創建數據庫,并在數據庫中創建表和視圖。表的字段包含如下:數據庫名稱:XCSJ.mdb學生信息表
管理員信息表
? 軟件工程工作計劃
底盤控制軟件工程師是汽車行業中一個十分關鍵的職業。他們的工作是開發電子底盤控制系統(Electronic Chassis Control System)。底盤控制系統是現代汽車中最重要的一部分,它包含一系列的傳感器、控制單元和執行器,通過對這些電子元件的控制,使汽車具有更高的穩定性和安全性。作為一名底盤控制軟件工程師,我需要開發和維護電子底盤控制系統的相關軟件。我需要不斷地應對市場上新型汽車和新型底盤控制系統的不斷涌現,并嘗試利用新技術來不斷升級現有的軟件。因此,我需要制訂一系列計劃,以應對不斷變化的市場需求。
下面是我的工作計劃:
第一步:了解市場需求
作為一名合格的底盤控制軟件工程師,必須了解市場需求。我的首要任務是了解市場上新型汽車以及它們所采用的底盤控制系統的性能和功能。我需要對市場進行調研,關注市場的發展趨勢,并確定我需要追蹤的新技術。
第二步:研究新技術
我需要對新技術進行深入的研究和學習。我將使用各種可用的資源,例如研究論文和技術雜志,來了解新技術的工作原理和特點。此外,我還需要參加與該領域相關的會議和討論,以便更好地了解新技術的應用和局限性。
第三步:設計和編寫軟件
完成前兩步后,我將開始設計和開發新的底盤控制系統軟件。我將使用我在前兩步中獲得的知識和技能來編寫優化的、高效的代碼。我將使用適當的編程語言和工具,如C++,MATLAB和Simulink等,來設計和開發軟件。這需要對各種軟件開發工具的熟悉。
第四步:測試和調試
軟件的設計和開發只是我的工作的一部分。我必須對開發的軟件進行測試和調試,以確保軟件符合功能要求,并且能與其他系統和組件良好地協作。在測試過程中,我將使用必要的測試工具和技術,例如自動化測試和手動測試,來確保軟件質量。
第五步:發布軟件
一旦軟件成功通過測試和調試,我將準備發布軟件。發布軟件需要做好多方面的準備,例如準備軟件發布版、文檔等。我的軟件是否發布成功取決于我是否做好了充分的準備。
第六步:維護軟件
我的工作不僅限于軟件的開發和發布。我還需要關注軟件的維護和更新,以確保軟件的穩定性和持續改進。我將對我制定的發布的軟件進行監控,并嘗試改進軟件的性能和功能,以滿足客戶的不斷變化的需求。
綜上所述,作為一名底盤控制軟件工程師,我必須按照上述步驟來制定和實施工作計劃。我需要不斷地學習和了解新技術,以確保我能夠滿足市場需求,并且開發出優質的底盤控制軟件。只有這樣,我才能擁有一個成功的職業生涯。
? 軟件工程工作計劃
1.談談你對軟件工具的理解,你用過什么軟件工具
軟件工具是指為支持計算機軟件的開發、維護、模擬、移植或管理而研制的程序系統。它是為專門目的而開發的,在軟件工程范圍內也就是為實現軟件生存期中的各種處理活動(包括管理、開發和維護)的自動化和半自動化面開發的程序系統。
開發軟件工具的最終目的是為了提高軟件生產率和改善軟件的質量。
軟件工具分為六類:模擬工具、開發工具、測試和評估工具、運行和維護工具、性能質量工具和程序設計支持工具。
應該是看對象來選擇測試工具!比如:
功能測試工具:WinRunner
性能測試工具:LoadRunner
內存泄漏測試工具:Purify
單元測試工具:Junit
測試管理工具:TestDirector還有東軟的bugbaseIBM開發的 rational。
2.什么是軟件的可維護性:
軟件可維護性即維護人員對該軟件進行維護的難易程度,具體包括理解、改正、改動和改進該軟件的難易程度。
決定可維護性的因素:
1.系統的大小
2.系統的年齡
3.結構合理性
可維護性的度量:
可理解性
可測試性
可修改性
可移植性
3.軟件開發和寫程序有什么不同?軟件開發的內容是:需求、設計、編程和 測試 維護!
需求分析
軟件需求分析就是回答做什么的問題。它是一個對用戶的需求進行去粗取精、去偽存真、正確理解,然后把它用軟件工程開發語言(形式功能規約,即需求規格說明書)表達出來的過程。本階段的基本任務是和用戶一起確定要解決的問題,建立軟件的邏輯模型,編寫需求規格說明書文檔并最終得到用戶的認可。需求分析的主要方法有結構化分析方法、數據流程圖和數據字典等方法。本階段的工作是根據需求說明書的要求,設計建立相應的軟件系統的體系結構,并將整個系統分解成若干個子系統或模塊,定義子系統或模塊間的接口關系,對各子系統進行具體設計定義,編寫軟件概要設計和詳細設計說明書,數據庫或數據結構設計說明書,組裝測試計劃。
設計
軟件設計可以分為概要設計和詳細設計兩個階段。實際上軟件設計的主要任務就是將軟件分解成模塊是指能實現某個功能的數據和程序說明、可執行程序的程序單元。可以是一個函數、過程、子程序、一段帶有程序說明的獨立的程序和數據,也可以是可組合、可分解和可更換的功能單元。模塊,然后進行模塊設計。概要設計就是結構設計,其主要目標就是給出軟件的模塊結構,用軟件結構圖表示。詳細設計的首要任務就是設計模塊的程序流程、算法和數據結構,次要任務就是設計數據庫,常用方法還是結構化程序設計方法。
編碼
軟件編碼是指把軟件設計轉換成計算機可以接受的程序,即寫成以某一程序設計語言表示的“源程序清單”。充分了解軟件開發語言、工具的特性和編程風格,有助于開發工具的選擇以及保證軟件產品的開發質量。
測試
軟件測試的目的是以較小的代價發現盡可能多的錯誤。不同的測試方法有不同的測試用例設計方法。兩種常用的測試方法是白盒法測試對象是源程序,依據的是程序內部的的邏輯結構來發現軟件的編程錯誤、結構錯誤和數據錯誤。結構錯誤包括邏輯、數據流、初始化等錯誤。用例設計的關鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結果。白盒法和黑盒法依據的是軟件的功能或軟件行為描述,發現軟件的接口、功能和結構錯誤。其中接口錯誤包括內部/外部接口、資源管理、集成化以及系統錯誤。黑盒法用例設計的關鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。黑盒法。
維護
維護是旨在已完成對軟件的研制(分析、設計、編碼和測試)工作并交付使用以后,對軟件產品所進行的一些軟件工程的活動。即根據軟件運行的情況,對軟件進行適當修改,以適應新的要求,以及糾正運行中發現的錯誤。編寫軟件問題報告、軟件修改報告。
4.什么是軟件設計的”高內聚 低耦合”
內聚:一個模塊內各個元素彼此結合的緊密程度
耦合:一個軟件結構內不同模塊之間互連程度的度量
對于低耦合,(模塊的獨立性)
一個完整的系統,模塊與模塊之間,盡可能的使其獨立存在。也就是說,讓每個模塊,盡可能的獨立完成某個特定的子功能。模塊與模塊之間的接口,盡量的少而簡單。如果某兩個模塊間的關系比較復雜的話,最好首先考慮進一步的模塊劃分。這樣有利于修改和組合.對于高內聚:
在一個模塊內,讓每個元素之間都盡可能的緊密相連。也就是充分利用每一個元素的功能,各施所能,以最終實現某個功能。
5.case在軟件工程中的作用
CASE(Computer Aided(or Assisted)Software Engineering計算機輔助軟件工程。CASE的一個基本思想就是提供一組能夠自動覆蓋軟件開發生命周期各個階段的集成的、減少勞動力的工具。CASE已被證明可以加快開發速度,提高應用軟件生產率并保證應用軟件的可靠品質。CASE工具由許多部分組成,一般我們按軟件開發的不同階段分為上層CASE和下層CASE產品。上層或前端CASE工具自動進行應用的計劃、設計和分析,幫助用戶定義需求,產生需求說明,并可完成與應用開發相關的所有計劃工作。下層或后端CASE工具自動進行應用系統的編程、測試和維護工作。
除非下層CASE和上層CASE工具的供應商提供統一界面,否則用戶必須編寫或重新將所有信息從上層CASE工具轉換到下層CASE工具。獨立的CASE工具供應商愈來愈希望將它們的工具連接在一起建立統一的界面以減少用戶不必要的開發工作。
CASE工具帶來的好處
計算機專業人員利用計算機使他們的企業提高了效率,企業的各個部門通過使用計算機
提高了生產率和效率,增強了企業的競爭力并使之帶來了更多的利潤。
6.為什么要進行軟件測試?常用的軟件測試的方法有哪些?
軟件測試的目的:盡可能發現并改正被測試軟件中的錯誤,提高軟件的可靠性。
軟件測試方法主要包括單元測試,集成測試,系統測試,用戶測試,回歸測試。
還有就是自定而下,和自下而上的方法。
7.談談你對保證軟件質量的技術和方法的認識? 1.作為一個軟件質量保證人員需要良好的溝通能力,因為如果沒有良好的溝通能力,很多問題都沒有辦法解決,原因很簡單,測試人員發現了bug,開發人員或項目經理在怎么不理,但是他們都會想到,萬一測試人員發現了bug而自己忽視了,那么就有可能成為軟件里的一顆不定時地炸彈,那么作為一個開發人員或項目經理對bug的重視程度肯定相對比較高,至少要看測試人員發現的bug,但是QA就不一定了,因為QA保證的流程的正確的執行,相關人員就是認為流程不重要,只要我開發的產品沒有問題那就沒有問題,客戶肯定不會關注我的流程,在加上古人的名言“結果說明了一切”,所以沒有良好的溝通能力,一些問題將很難去解決,做起來就沒有成就感。
2.個人感覺比溝通能力更重要的是,堅持原則,在遇到困難的時候,是不是還能堅持原則,在遇到項目組的種種不理不睬的時候,是不是還能堅持原則,在項目組不按照計劃走的時候,是不是還能堅持原則。
3.個人心態,我工作三年的經歷告訴我,如果開發和測試相比,開發是天堂,測試是地獄的話,但如果測試和QA相比的話,那測試就是天堂,QA就是地獄,所以心態很重要,在三年里我就鍛煉成一個非常好的心態,隨便怎么說CMMI沒用,隨便怎么說CMMI就是寫文檔,隨便怎么說QA真煩人,我笑容依然燦爛,從容面對,而且一個QA要有堅定的信念,如果你都不相信過程能給項目開發帶來好處,那你還指望誰能相信。
8.提高軟件生產率有哪些手段?
1.挑選精干人員(管理 計劃不好 技術搭配不當)
2.提高階段效率 3消除人工階段
4.減少重復勞動 5.建造簡單產品
6.重用軟部件庫(已經存在的軟件功能部件
9.什么是軟件的可靠性和有用性
可靠性就是指軟件運行的穩定性,可用性就是操作的便利性。比如一輛汽車,可靠性好應該歸功于機械部分,可用性好則是內飾和中控系統的功勞。
10什么是軟件規格說明?作用是什么?將其形式化的意義是什么?
11.什么是軟件重用?實現軟件重用的方法有哪些?
軟件重用,是指在兩次或多次不同的軟件開發過程中重復使用相同或相似軟件元素的過程。軟件元素包括程序代碼、測試用例、設計文檔、設計過程、需要分析文檔甚至領域知識。通常,可重用的元素也稱作軟構件,可重用的軟構件越大,重用的粒度越大。
根據軟件開發的不同階段實現軟件重用主要有四個途徑:
抽象:對重用對象概括提煉,從而得到能全面描述側重算法和數據結構的軟件構件的各部分的描述。
選擇:是對重用對象進行存放,匹配和檢索的功能。
實例化:對數據類型中對象進行參數的提供 轉換。
集成:
12.什么是軟件移植?你認為構造一個工具實現windows到Unix的移植有意義嗎?難大不? 軟件可移植性是指代碼可以在不同平臺間移植,我們一般說的軟件的可移植性指的是軟件可移植性,簡單的說就是指源代碼移到不同的平臺下(不同的操作系統,例如從Windows
下移到Linux下)時,需要修改的內容越少,移植性越好。要保證軟件可移植性,就是少用或不用系統特有的東西,比如你用C語言編程,你可以使用C語言本身的庫,但不要用
WindowsAPI函數,因為WindowsAPI函數在Linux下是沒有的,如果想移植到Linux平臺下,使用WindowsAPI函數的部分代碼就要做出修改了。
? 軟件工程工作計劃
a.平臺上至少能夠提供兩種游戲(僅供兩人參加)供用戶選擇。
b. 服務器端實現用戶賬號、密碼的管理,監控用戶上下線狀態管理。
c. 服務器端實現用戶游戲數據及文本通信數據的中轉交換。
d. 客戶端能夠連接到服務器并選擇游戲種類和游戲桌面,并參與游戲。
e. 客戶端能夠通過服務器進行文本通信。
a. 人員安排:
第一階段 項目啟動(05-8-22----------05-8-23):? 實習分析;項目簡單分工。
第二階段 需求分析(05-8-24----------05-8-26):? 確定軟件性能;功能;編寫文檔。
第三階段 概要設計(05-8-29----------05-9-01):? 確定總體架構,程序模塊。
第四階段 詳細設計(05-9-02----------05-9-07):? 設計客戶端,服務器端細節。
第五階段 軟件實現(05-9-08----------05-9-16):? 編寫源代碼。
第六階段 軟件測試(05-9-19----------05-9-21):? 完成測試及文檔。
第七階段 項目總結(05-9-22----------05-10-07):? 總結提高,答辯。
1)用戶登陸:用戶運行客戶端軟件后,彈出登陸框,用戶通過輸入帳號和密碼登陸平臺,高級實現程度有記住密碼選項。
2)用戶注冊:登陸框有注冊選項,供用戶注冊新平臺帳號。用戶需要輸入新的帳號名,密碼,以及一些基本資料:姓名,性別,出 生日期,郵箱。
3)用戶修改資料:用戶可以在登陸后修改個人基本資料,除帳號外其他資料均可選擇修改。
4)用戶選擇游戲:用戶登陸后,平臺界面即會顯示所支持游戲,用戶可選擇要進行的游戲。平臺與游戲捆綁安裝,在高級實現程度下服務器新增加游戲通過新的安裝文件提供給用戶。
服務器端:
1)批準新用戶注冊:基本實現程度為由服務器自動批準,既用戶名不與現有用戶沖突并且用戶名和密碼長度符合規范(用戶名長度不超過十個單詞或字母,密碼不低于6位)及予以批準。高級實現程度為服務器與管理員雙重批準,既服務器批準后只具有參觀游戲和聊天等功能但不能參加游戲,需等管理員批準后賦予正式的用戶權利。
2)刪除用戶:服務器管理員可以從數據庫刪除任意已注冊用戶(所有用戶資料項同時刪除)。為防止誤操作等情況發生,高級實現程度中刪除用戶操作只是暫時禁止該用戶登陸,數據庫保留該用戶資料一周(或數周,示服務器硬件資源)后再自動刪除。
用戶在不同地點以相同的用戶名登錄。
注冊時對新用戶名的符號檢查。
? 軟件工程工作計劃
今天視頻看完了,可是沒有總結。還是感覺不會總結。一想到50講的課,怎么總結呢?開始聽的時候,是真不知道從哪里下手,因為開始看的時候有種迷迷糊糊的感覺。軟件工程,我期待的一門課就這么聽完了一遍。很有些囫圇吞棗的感覺,不過收獲還是很多的,至少知道了軟件工程的階段不是只有需求分析、編程和測試維護。當然這個很早之前就知道,只是以前根本沒有什么概念。
第一個階段,計劃階段,要首先對用戶的要求進行了解,對軟件的性能等進行了解。然后進行可行性分析研究,在各種可行性研究中,對于軟件開發人員來說,技術可行性研究最重要。之后就是需求分析階段了,需求分析階段也是計劃階段的最后一部分。需求分析定義了要做什么。把現實的需要用程序語言表達出來。但是這一階段并不解決怎么做。
解決怎么做的是下一個階段設計階段。設計階段分為概要設計和詳細設計。概要設計把每個組成部分的功能都給出意義明確的模塊,每個模塊都和一部分需求相對應。但是不考慮細節。詳細設計,把每個模塊的功能實現詳細的表示出來,為源程序的編寫打下基礎。然后就是編程階段,我們一般最初接觸的就是編程,所以編程階段比較了解,由于前期文檔已經做的很詳細,功能的實現數據和算法都已經清楚了,所以編程是比較簡單的。
編程完了就是測試階段了,測試階段的費用是最多的。測試階段是發現錯誤的階段,改錯是調試階段。然后就是交付用戶使用,及維護。
以上幾點是軟件工程的生命周期的六個階段。軟件工程過程和軟件工程生命周期也不能等同。
軟件工程過程如下:
軟件規格說明:規定軟件的功能及其運行的限制
軟件開發:產生滿足規格說明的軟件:
軟件的確認:確認軟件能夠完成客戶提出的要求:
軟件演進:為滿足客戶的變更要求。m比較多的團隊中。在軟件項目團隊中,技術水平是受人重視和尊重的重要砝碼。無論你是做管理、系統分析、設計、編碼,還是產品管理、測試、文檔、實施、維護,多少你都要有技術基礎。算我孤陋寡聞,我還真沒有親眼看到過一個外行帶領一個軟件開發團隊成功地完成過軟件開發項目,哪怕就一個,也沒有看到。倒是曾經看到過一個高學歷的牛人(非技術型)帶一堆人做完過一個項目,項目交付的第二天,項目組成員扔下一句再也受不了啦!四分五裂、各奔東西。那個項目的成功度大家可想而知了。
4、詳細制定自己軟件開發專業知識學習計劃,并注意及時修正和調整(軟件開發技術變化實在太快)。請牢記:如果一個軟件開發人員在1、2年內都沒有更新過自己的知識,那么,其實他已經不再屬于這個行業了。不要告訴自己沒有時間。來自時間管理領域的著名的三八原則告誡我們:另外的那8小時如何使用將決定你的人生成敗!本人自畢業以來,平均每天實際學習時間超過2小時。
5、書籍是人類進步的階梯,對軟件開發人員尤其如此。書籍是學習知識的最有效途徑,不要過多地指望在工作中能遇到世外高人,并不厭其煩地教你。對于花錢買書,我個人經驗是:千萬別買國內那幫人出的書!我買的那些家伙出的書,!00%全部后悔了,無一本例外。更氣憤的是,這些書在二手市場的地攤上都很難賣掉。擁有書籍并不表示擁有知識;擁有知識并不表示擁有技能;擁有技能并不表示擁有文化;擁有文化并不表示擁有智慧。只有將書本變成的自己智慧,才算是真正擁有了它。
6、不要僅局限于對某項技術的表面使用上,哪怕你只是偶爾用一、二次。對任何事物不究就里是任何行業的工程師所不應該具備的素質。開發fc、vcl、j2ee、net它們框架設計或者源碼;除了會用j2ee、jboss、spring、hibernate等等優秀的開源產品或者框架,抽空看看大師們是如何抽象、分析、設計和實現那些類似問題的通用解決方案的。試著這樣做做,你以后的工作將會少遇到一些讓你不明就里、一頭霧水的問題,因為,很多東西你知其然且知其所以然!
? 軟件工程工作計劃
公司:XX計算機有限公司
行業:計算機軟件
職位:嵌入式軟件開發
學歷
學歷:本科
專業:軟件工程
學校:上海工程技術大學
自我評價
本人多年嵌入式軟件領域開發經驗,英語流利。很強的軟件架構設計能力、嚴密的邏輯思維能力、快速分析解決問題的能力。熟悉多種軟件技術和業務,有項目管理經驗,有強的分析問題和解決問題的能力,勇于面對壓力和挑戰,并善于溝通。自信而樂觀,敢于迎接挑戰,具有團隊精神。
求職意向
到崗時間:一周之內
工作性質:全職
希望行業:計算機軟件
目標地點:北京
期望月薪:面議/月
目標職能:嵌入式軟件開發
工作經驗
20xx/9—至今:XX計算機有限公司
? 軟件工程工作計劃
個人信息
性 別:男
婚姻狀況:已婚 民 族:漢
戶 籍:深圳 年 齡:30
現所在地:上海 身 高:181
聯系電話:
E-mail:www..com/jianli
求職意向
希望崗位:信息技術主管
工作年限:7年 職稱:無職稱
求職類型:全職 可到職日期:隨時
月薪要求:面議
工作經歷
xx年3月—至今 xx有限公司,擔任IT部主管。主要工作是:負責企業信息化管理,IT制度的建立,IT規劃,流程梳理;跟進OA、麗晶、用友ERP的實施培訓、信息安全、規劃及搭建AD域管理等工作。
xx年3月—xx年7月 xx有限公司,擔任網絡管理員。主要工作是:
負責公司直營店各加盟商POS系統的維護及指導,數據庫維護及編程,企業內部客戶端用戶的技術支持,服務器的維護,開發公司內部適用的一些應用程序以及第三方接口程序,負責公司訂貨會現場的技術支持以及數據庫維護等。
xx年3月—xx年7月 xx有限公司,擔任系統維護員。主要工作是:
負責管理公司網絡系統、計算機系統以及周邊外設的正常運轉,維護公司ERP系統,組建過郵件服務器,FTP服務器,VPN服務器,處理突發的計算機系統及網絡故障,SQL數據庫的管理與維護,Oracle數據庫安裝與簡單的維護,全面負責公司用友人力資源系統的安裝、維護、技術支持,網絡布線,做網線,管理與維護公司網站,維護公司各零售門店的計算機系統以及收銀系統、數據庫、POS打印機以及ADSL的正常使用以及解決所出現的故障,處理被病毒感染的計算機系統,保障局域網與服務器的安全等等。
教育背景
畢業院校:廣州大學
最高學歷:大專
畢業日期:2006-07
專 業:軟件工程
語言能力
英語水平:良好
國語水平:優秀
粵語水平:優秀
項目經驗
2010/3——2010/3:公司固定資產管理系統
因公司發展壯大,需對原有公司固定資產進行盤點,并且要求更加系統化的管理好固定資產,應部門領導要求,開發出集打印,固定資產登記,編號,狀態更改,登記資產變動明細等功能的固定資產管理程序。
2009/12——2009/12:短信自動群發報數系統
開發工具:MicrosoftVisualStudio2008
項目描述:為了銷售部門及公司中高層領導及時掌握公司店鋪每日銷售數據,方便進行數據分析,本人利用短信公司提供的`SDK結合自身編程知識做了開發,結合公司數據庫,利用存儲過程,實現取數據,計算銷售業績,完成率,通過程序實現定時自動群發功能。并實現自定義取值,發送內容,通訊錄,計算已發送數量,剩余短信數,發送內容日志記錄,容錯處理。
自我評價
本人具備良好的職業操守、較強的責任心、良好的溝通能力及敬業精神,有很強的自學能力,熟練掌握Windows及Linux系統的管理以及維護,熟悉 Windows及Linux環境下常用服務器的搭建與配置,數據庫編程熟練,有一定的軟件編寫及二次開發能力,熟練掌握遠程維護,網絡設計,綜合布線,電話交換機以及網站管理。對500人規模以內的企業的網絡管理有一定的管理經驗及能力。
? 軟件工程工作計劃
理論知識用于指導實踐,親身體驗才能領悟軟件工程的妙用。雖然軟件工程這門課程沒有安排實驗課時,課后卻要花費大量的時間去實踐。我感覺到學習這門課花費了大量的時間思考,從而換取了寶貴的經驗。學習軟件工程的過程是痛苦的,它已經不單純是一種思想,而是處世的態度。
開發軟件必須嚴謹求實,脈絡清晰,還需要那么一點點敬業精神,犧牲部分休息娛樂的時間。運用工程學的思想開發軟件,就要跳出原本只注重編程的狹隘圈子,從宏觀上把握軟件的生命周期,強調整體性與協調性,不能任意妄為。特別是需求分析、總體設計和詳細設計階段的工作,更要做到細致、準確,為后期工作做好鋪墊。
起初,對軟件工程處于一知半解的狀態,分工比較混亂。在劃分模塊后明確了各自分工,漸漸形成良性循環。
團隊合作十分重要,爭議固然存在,但通過討論、協商,群策群力,在不斷磨合中能夠達成一致與默契。團隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協調,組員積極配合,才能合作愉快。
2、學習能力:
學習能力體現在能盡快接受新的知識,順應變化,學為所用。
樹立終身學習的理念,摸索有效的學習方式。MSDN的中文網站就是我學習的得力助手,給予我很多幫助。此外,在開小組討論會時,大家各抒己見,也開闊了我的思路。
3、有關系統:
文檔不夠詳盡,導致標準不統一。模塊集成時,做出來的半成品與原本的`設計方案有出入。
調試時出現了一些小問題,而個別次要的模塊還未開發。設計仍有不太合理處,需要進行完善性維護。
- 更多精彩軟件工程工作計劃內容,請訪問我們為您準備的專題:軟件工程工作計劃