第一篇:計算機軟件工程教學總結
計算機軟件工程教學總結
本學期的教學工作已結束, 在本學期里,我擔任的是大三計算機專業1、2、3、4、5、6班的計算機軟件工程課,每周(12)節。在學校的親切關懷下,本人刻苦努力,認真的完成了教學任務,現在將本人的總結如下:
(一)加強思想認識:
在本學期,本人認真的學習了江澤民同志的“三個代表”重要思想,并結合自身的實際,以自己的行動,全身心的投入到教學中去,為了更好的服務群眾,我首先加強自身的思想認識,并充分的認識到,開設計算機課程,是為了培養學生的動手動腦能力,是培養學生創新能力的重要武器,有利于開發學生的智力,有利于培養學生的想像、觀察和實踐能力。學好計算機,對學生了解世界,了解知識,并對學生的發展具有重要的意義!
(二)認真的完成教學任務:
本學期,我按照教務處的安排,科學的設置教學計劃,認真執教,讓學生切實得到了提高。
1.課堂教學
在本學期《軟件工程》課教學中,采取了以課堂引例為主導,實用工具為主要掌握內容的方法進行教學。通過實例來說明方法、優缺點和注意問題,啟發學生用自己的思維去考慮所選定的模擬系統,收到比較好的效果。2.實踐教學
對于《軟件工程》課學生既熟悉又陌生,《軟件工程》框架僅是粗略的了解,做起來感到無從下手,困難重重。在教學中針對學生的素質狀況,采取細化實驗講義的方法,在原基本要求的實驗基礎上,增加具有貫穿性質的舉例,作為學生實驗的模版,從而使學生能找到分析的落筆點。
在教學實踐的多環節中,第一步采用模仿方法。在編寫文檔之前,給出針對某一簡單系統的較詳細例證,學生通過例證來進行模仿。隨著次數增加引例的細化程度逐漸降低,以此提高學生個性的分析設計能力。另外,可選擇較簡單的系統通過網絡查找相關資料,按給定要求格式進行修改。作為設計能力較差的學生也是一種做法。通過例證和資料查詢來修改系統設計過程文檔,使學生從不知到較熟知。
除了講授軟件工程以外,我還講授了一些有關電腦知識的其它操作,通過學習,讓學生更好的掌握軟件工程的理論知識;通過上機的操作,提高了學生實際操作能力;通過生動有趣的講解,讓學生鍛煉了思維,提高了學生的理解能力。
(三)今后工作展望:
通過這學期的工作,我還存在一些不足之處,為了以后的工作,我要進一步加強自身的業務,努力提高自己的教學水平。加強學習,多聽課,學習同事的方法和經驗。認真備課,深研教材,經心設計課堂教學過程。多看業務雜志,上網查閱他人的經驗心得。虛心向同事,向他人學習。
一個學期結束了,回顧了一下這學期以來,學生在知識上和技能上得到了鍛煉,培養了學生良好的品德和習慣,并取得了良好的成績,下學期,我將繼續努力,我會在以后的工作中虛心向同事們學習,改掉不足,力求更加完美。爭取取得更好的成績!
劉xxx 2008年1月8日
第二篇:軟件工程總結
軟件工程總結
軟件的特點
? 軟件是一種邏輯實體。
? 軟件的開發,是人的智力的高度發揮,而不是傳統意義上的硬件制造。? 軟件維護與硬件的維修有著本質的差別。
? 軟件的開發和運行常常受到計算機系統的限制,對計算機系統有著不同程度的依賴性。
? 軟件的開發至今尚未完全擺脫手工藝的開發方式,使軟件的開發效率受到很大限制。
? 軟件的開發是一個復雜的過程。
? 軟件的成本非常高昂。軟件工程就是建立和使用一套合理的工程原理,從而經濟地獲得可靠的、可以在實際機器上高效運行的軟件。軟件工程的特性:
1.軟件工程關注于大型程序的構造 2.軟件工程的中心課題是控制復雜性 3.軟件經常變化
4.開發軟件的效率非常重要 5.和諧地合作是開發軟件的關鍵 6.軟件必須有效地支持它的用戶
7.在軟件工程領域中是由具有一種文化背景的人替具有另一種文化背景的人
? PM(Project Manager):負責整個項目計劃的制定、進度的跟蹤、監督以及與客戶的溝通等。
? PL(Project Leader):負責與項目有關的技術問題的調研、指導、培訓以及項目進度的跟蹤等。
Page 1of 17
? CS(Consultant):負責與客戶確認項目中所涉及的業務流程以及向項目組其他成員說明項目的業務流程。
? SE(Software Engineer):負責項目的概要設計、詳細設計以及開發架構的制定和系統測試用例的書寫。? PG,也叫CD(Coder):負責寫代碼以及單體測試.? TE(Tester):負責集成測試、壓力測試以及用戶測試。
1.2 軟件工程定義
? 用分階段的生命周期計劃嚴格管理 ? 堅持進行階段評審 ? 實行嚴格的產品控制 ? 采用現代程序設計技術 ? 結果應能清楚地審查 ? 開發小組的人員應該少而精
Page 2of 17
? 承認不斷改進軟件工程實踐的必要性
Page 3of 17
增量模型的優點
1.在較短時間內向用戶提交可完成部分工作的產品,并分批、逐步地向用戶提交產品。從第一個構件交付之日起,用戶就能做一些有用的工作。
2.整個軟件產品被分解成許多個增量構件,開發人員可以一個構件一個構件地逐步開發。
3.逐步增加產品功能可以使用戶有較充裕的時間學習和適應新產品,從而減少一個全新的軟件可能給客戶組織帶來的沖擊。
采用增量模型比采用瀑布模型和快速原型模型需要更精心的設計,但在設計階段多付出的勞動將在維護階段獲得回報。增量模型的困難
1.在把每個新的增量構件集成到現有軟件體系結構中時,必須不破壞原來已經開發出的產品。此外,必須把軟件的體系結構設計得便于按這種方式進行擴充,向現有產品中加入新構件的過程必須簡單、方便,也就是說,軟件體系結構必須是開放的。
2.開發人員既要把軟件系統看作整體。又要看成可獨立的構件,相互矛盾。多個構件并行開發,具有無法集成的風險
螺旋模型(Spiral Model)螺旋模型將瀑布模型和增量模型結合起來,加入了風險分析。在該模型中,軟件開發是一系列的增量發布,早期的迭代中,發布的增量可能是一個紙上的模型或原型,在以后的迭代中,逐步產生系統更加完善的版本。螺旋模型的基本思想是降低風險。
Page 4of 17
統一開發過程(RUP)極限編程(敏捷開發過程)(XP)
軟件 =程序+數據+文檔軟件危機: 原因,現象,辦法(軟件工程學)軟件工程(學):開發、運行和維護軟
Page 5of 17
件的系統方法軟件工程3 個要素:方法、工具和過程。軟件生命周期:定義,開發,運行維護 軟件過程:瀑布模型+RUP
第二章
可行性研究的目的:
用小的代價在盡可能短的時間內確定問題是否能夠解決??尚行匝芯康膬热?(1)技術可行性(2)經濟可行性(3)操作可行性
? ? ?
(4)社會可行性(法律可行性)(5)抉擇
可行性研究過程: 1.復查系統規模和目標
?確保分析員提交的報告書確實是用戶要求解決的問題。2.研究目前正在使用的系統
? 現有系統要完成的工作,就是新系統所必需具備的功能。
? 現有系統存在的缺點,新系統必需加以改進。
? 現有系統所不具備功能,又是用戶必須的,則新系統一定要予以增加。3.導出新系統的高層邏輯模型 4.進一步定義問題 用戶使用可能性 時間進度可行性 組織和文化上的可行性
Page 6of 17
? 定義系統目標‐復查系統目標和規模‐研究現有系統‐設計新系統‐再定義系統目標。重復這個過程,直到提出新的系統邏輯模型。
5.導出和評價供選擇的解法;針對多種供選方案,用戶應從下面三個方面進行篩選:
? 從技術角度排除那些不現實的方案; ? 從操作角度去掉那些用戶不能接受的方案;
? 從經濟角度估算每個可能的系統的成本/效益。6.推薦建議方案 向用戶提出推薦的方案,在推薦方案中應清楚地表明:
? 本項目的開發價值; ? 推薦這個方案的理由; ? 制定實現項目的進度表。7.草擬開發計劃
? 工程的進度;
? 人才資源的需求及使用;
? 設備資源的需求及使用(軟、硬件工具)、估算生存周期每個階段的成本; ? 給出下一階段(需求分析)的詳細進度表和成本估計。8.書寫文檔提交審查
Page 7of 17
Page 8of 17
Page 9of 17
數據流圖和數據字典共同構成系統的邏輯模型 沒有數據字典數據流圖就不嚴格,沒有數據流圖 數據字典也難于發揮作用。第3 章需求分析
需求分析是軟件定義時期的后一個階段,它的基本任務不是確定系統怎樣完成它的工作,而是確定系統必須完成哪些工作,也就是對目標系統提出完整、準確、清晰、具體的要求。
獲取的需求的表達方式:(1)需求列表
需求與系統的特殊視角或環境的關系(2)業務流程圖(狀態/活動圖)(3)數據流圖(4)實體‐聯系圖 ER 圖: 實體關系屬性
驗證軟件需求的正確性,一般應從4 個方面進行:(1)一致性所有需求必須是一致的,任何一條需求不能和其 他需求互相矛盾。
(2)完整性需求必須是完整的,規格說明書應該包括用戶需
Page 10of 17
要的每一個功能或性能。
(3)現實性指定的需求應該是用現有的硬件技術和軟件技術基本上可以實現的。(4)有效性必須證明需求是正確有效的,確實能解決用戶面 對的問題。第四章總體設計
總體設計過程一般分為兩個階段
?系統設計階段:確定系統的物理實現方案
?結構設計階段:確定軟件的結構設計模塊的衡量標準:
內聚耦合
耦合: 數據耦合控制耦合公共環境耦合內容耦合結論:盡量使用數據耦合,少用控制耦合,限制公共
環境耦合的范圍,完全不用內容耦合。
內聚:標志著一個模塊內各個元素彼此間結合的 緊密程度。內聚有六種,由弱到強分別為:(1)偶然內聚:
一個模塊程序A 和程序B 內有一組語句在兩處或多處出現,于是把這組語句作為一個模塊以節省內存,叫偶然內聚。(2)邏輯內聚
Page 11of 17
(3)時間內聚
? 例如,模塊完成各種初始化工作或當一個模塊處理
意外故障時,這個模塊必須在中斷處理的同時完成關閉文件、報警和保留現場等任務,這就構成了時間內聚。(4)通信內聚(5)順序內聚(6)功能內聚
對于一個模塊而言,模塊自身的內聚越強,模塊間的耦合就越小,模塊所具有的獨立性就越好??梢哉f高內聚低耦合是我們進行軟件設 計的一貫原則
面向數據流的設計方法:
信息流的兩種類型: 變換流事務流(重點)
Page 12of 17 事務流Page 13of 17
第七章 實現 軟件測試準則
(1)所有測試都應該能追溯到用戶需求。(2)盡早的完成測試計劃
(3)把parteo 原理運用到軟件測試中(4)應該從小模塊測試開始,逐步進行測試(5)窮舉測試時不可能的
Page 14of 17
(6)好由獨立的第三方進行測試測試方法
1.白盒測試知道詳細的內部構造,知道是怎么運行的
2.黑盒測試只知道軟件的詳細功能,以及各個功能之間的的產生結果(也就是流程)
測試步驟
1.模塊測試 ‐‐‐ 單元 2.子系統測試 ‐‐‐ 局部 3.系統測試 ‐‐‐ 集成
4.驗收測試 ‐‐‐ 用戶參與 5.平行運行 ‐‐‐ 新舊共存集成測試:
1、非漸增式測試方法,即:先分別測試每個模塊,再把所有模塊按設計要求放在一起結合成所要的程序進行測試。
2、漸增式測試,即:先把下一個要測試的模塊同已經測試好的那些模塊結合起來進行測試,測試完以后再把下一個應該測試的模塊結合進來測試。這種每次增加一個模塊的方法實際上同時完成單元測試和集成測試.目前在進行集成測試時普遍采用漸增式測試方法。第八章軟件維護
維護的類型有四種: 改正性維護(改正錯誤)適應性維護(硬件環境)擴充與完善性維護(功能完善)
預防性維護(方法的改進)提高可維護性的方法:
? 建立明確的軟件質量目標和優先級 ? 使用提高軟件質量的技術和工具
Page 15of 17
? 進行明確的質量保證審查 ? 選擇可維護的程序設計語言 ? 改進程序的文檔
第十三章軟件項目管理評估軟件規模的技術: 技術 功能點技術
依據軟件的信息與特性,以及軟件的復雜度工作量的估算
依據模型估算出軟件的開發工作量軟件項目的特點:
無形的產品,難于理解,算法,概念等的集合目標系統具有一定的模糊性
軟件看法具有異變性
開發文檔量大 開發技術強代碼行軟件開發人員的特點:
1.高知識、高技術、個人作用突出
2.多層次
3.知識更新快,知識更新快這是軟件行業顯著的特點。4.流動性大
軟件質量保證的措施:
Page 16of 17
技術審查的必要性
走查 審查 序正確性 甘特圖
在進度報告中很有效在作管理陳述時易于讀懂和使用。作為計劃編制工具不是太強。沒有表示活動間的邏輯關系。程
Page 17of 17
第三篇:計算機軟件工程學科評估報告
計算機軟件工程學科評估報告
計算機軟件工程學科是一門以信息技術為主的學科,其主要內容是對計算機的軟件有足夠的了解和應用能力,可以在各種情況下駕馭使用計算機提高工作效率,以及為不同人群提供他們所需要各種服務的技術。隨著計算機軟件的發展,軟件業從計算機工業中獨立出來成為一枝新秀,成為帶動經濟社會發展的高新技術,越來越體現出在當前信息時代的重要地位。
我區計算機軟件應用和引進是在1985年開始,當時主要以無硬盤的IBM XT/AT機為主,1990年開始陸續在我區銀行、稅務、工商、郵電、公安、規劃院、設計院等主要部門開始應用,現在我區各行業及城鎮大部分家庭都已購買微機并上網。我區自大規模計算機應用以來,發展速度較快。軟件應用開始階段以C、Basic、Fortran、Dbase、Autocad開發為主,后來發展到gps、gis、rs、.net、html、3dmax設計等應用,大規模提高生產效率、工作效率及資料的保存率。主要表現在稅務、工商、銀行、醫保等部門全部實現電子自動化辦公,設計、規劃部門全部甩掉手工制圖實現CAD(計算機輔助設計)和林業地理信息系統開發,教育實現校校通工程,引進遠程教育以及排課、課件制作的電子化。建設了多個應用系統:地區醫院的掛號收費系統,通信公司的通信、1 / 11
收費系統、勞動社會保障系統、金卡、金稅、金盾、金保系統、視頻會議系統、防火監測系統、資源監測系統、營造林系統、林產品交易系統、貯木場管理系統、政務網絡系統等等,到2009年全區共建網站86個,服務器106個到網絡資源總量12960兆;建成數據庫179個,數據庫總容量6萬兆;對原資料、圖紙、數據庫、數字地圖的合并、修改、更新就可以生成新的資料、新的圖紙、新的數據庫、新的地圖,極大地提高工作效率;同時在地區規模企業和林業局木材、森林管護、視頻會議、辦公等實施信息化管理后,每年節約成本、提高效益近千萬元。
一、學科(專業)梯隊成員的培養和使用情況 學科(專業)梯隊帶頭人張殿臣1968年出生,1992畢業于東北林業大學計算機應用專業,歷任地區規劃院助理工程師、工程師,計算機室副主任、地區科技與信息產業局信息科科長,2007年就讀東北林業大學信息與計算機工程學院,系統學習了農業、林業信息化的專業知識,取得農業信息化碩士學位,在一定程度上提高了知識和業務水平,主要負責全區企業信息化工作。
學科(專業)梯隊后備帶頭人劉鐵斌1977年出生,1999年畢業于哈爾濱金融高等??茖W校,金融專業,2000年就職于大興安嶺地區行署林業集團公司辦公室,2002年任政務值班室副主任科員,2009年任政務值班室主任。負責全區政
/ 11
務信息化工作。
學科(專業)梯隊成員王巍,女,1982年1月4日出生,本科學歷,2000年畢業于黑龍江省農校計算機專業,2001年考入行林辦網絡中心,負責大興安嶺政府網站的運行和維護工作,曾在??倒竞蜁緦W習。
我們不但注重自身的學習和提高,同時也注重學科(梯隊)的培養和實踐。主要做法有:一是以內部培養為主、外部培訓為輔。就如何更好的培養人才并讓他們充分發揮自己的特長,一直是我在梯隊管理中積極研究的課題。為了合理地挖掘、開發、培養專業人才,我們建立和完善了人才培養機制。內部培養首先是進行人員規范教育,在網絡中心鍛煉1-3個月,讓其在了解和實踐計算機相關知識的同時,感受梯隊文化氛圍,認同梯隊價值取向,再通過測評合格后選派到合適的崗位;外部培養是與與北京書生、哈爾濱??档染W絡公司建立了人才培養的合作關系,每年定期選派優秀技術人員到這些公司進行學習深造。二是注重綜合知識學習。結合全區軟件工程的分類的實際情況,軟件工程學科梯隊成員認真自學專業書籍,提高地理信息系統、數據庫、電子政務、網站建設、計算機網絡和軟硬件知識等專業技術水平,進行不同技術崗位間的交流學習。學科梯隊實行了技術骨干進行輪流講課(每月1次)的制度,通過參加高層次的培訓和網絡學習的方式提高專業技術人員的實際技術水平和解決實
/ 11
際問題的能力。截至目前學科梯隊進行了3次大型培訓,培訓人員300余人,建立鍛煉了梯隊人才隊伍。
二、學科(專業)梯隊建設成果情況
學科(專業)梯隊近幾年在梯隊建設和信息化建設方面取得了很多成果,主要有:
1、完成全區林業局森林資源二類調查、全區森林資源監測、第四、第五次更新普查以及天然林保護工程計劃上報的數據統計工作,修改完善了二類調查和資源監測的統計、打印程序,進行全區引進數字林業基礎性工作,制作基礎林相圖注記符號及標記數據的數據庫修改工作,現在全區林相圖制作一直在使用。撰寫《我區國民經濟和社會信息化情況的調查報告》、《大興安嶺地區信息網絡和信息資源調查報告》、《大興安嶺地區數字林業可行性研究報告》、《大興安嶺地區信息產業中長期規劃》、《塔河數字化林業示范局可性行研究報告》和《實施方案》、《大興安嶺地區“十一五”科技與信息發展規劃綱要》、《大興安嶺林業信息化發展過程及現狀》、《大興安嶺林業信息化建設情況》等專業分析報告及規劃。
2、負責完成大興安嶺地區政務網絡規劃及建設全國森林防火網絡規劃及建設;大興安嶺會展中心和大興安嶺地區視頻會議系統建設;全區辦公自動化系統升級改造;大興安嶺地區政府網站升級改版;負責黨政辦公樓網絡建設及升級
/ 11
改造;制定《大興安嶺地區林業信息化建設規劃》。
3、進行了政務辦公自動化系統的開發、實施、流程配臵、人員的權限設定、客戶端機器的調試、人員的培訓等基礎工作,制定了《政務辦公系統應用推進方案》、《大興安嶺地區政務系統電子公文傳輸管理暫行辦法》,針對相關部門在使用政務辦公自動化系統遇到的難題,對使用單位進行了3次大型培訓,培訓人員300余人,為客戶端上門維護200余次,真正的實現了辦公自動化和公文無紙化傳輸,減少了公文流轉的時間,提高了公文的運行效率。
4、獲地區科技進步二等獎兩項、省科技進步三等獎一項。
三、產學研結合情況
學科梯隊特別注重產學研結合,軟件就是為實際生產辦公和提高工作效率服務,通過指導各企業的信息化建設和改造,有力推動我區數字林業和企業信息化的發展。
1、在學科梯隊的主持帶領下,首先對政務網絡核心路由器及辦公樓核心交換機進行更換,并運用自身的專業知識獨立完成核心交換機的配臵,并實現核心路由的冗余備份,確保全區政務外網的穩定運行;針對目前的設備老化問題,提出了政務網絡升級改造方案;為了保證政府網站的安全、穩定運轉,重新制定并完善了《大興安嶺政府網站管理規定》,服務器數據做到每兩周進行一次備份。對大興安嶺政
/ 11
府網站現有的老化欄目進行了徹底清理,并提出了《大興安嶺政府網站升級改版方案》;根據實際使用中出現的問題,升級了OA辦公系統軟件,增加了督辦流程、領導察看流程,進一步調試和修改書生系統,加快OA辦公系統與書生公文傳輸系統的對接和整合的進程;對網絡系統中容易出現問題的設備進行重點監護,每日對設備運行情況進行檢查;完成了漠河、塔河和呼瑪防汛網的接入;工商局縣區分局和統計局VPN接入政務外網工作;針對我區視頻會議系統設備購臵時間長,故障頻發的實際情況,做到勤調試、勤檢修,確保全區視頻會議系統的正常運行和會議的質量。截止全年為各種會議進行服務工作共計209次,其中,召開國家林業局視頻會議3次,網通電視電話會議44次,全區視頻會議73次,收到了較好的效果。
2、指導全區9家規模企業信息化工作,先后爭取省信息化資金400萬元。主要有麗雪公司的DCS控制系統,馬鈴薯收購過程中的測重、去雜、淀粉含量的測定;恒友公司的CAD家具設計系統、數控機床;北奇神的辦公及商務網絡平臺;筑安集團的建筑CAD及工程的概、預算系統。通過信息化建設,使生產成本不斷下降,產生了較好的經濟效益:麗雪公司使用原料收購信息系統后,與未使用這一信息系統時相比,可節約成本100多萬元。恒友公司利用信息化后,企業減少原材料資金占用70萬元,生產成本比應用信息化前
/ 11
降低8個百分點,管理人員由原來70人減少為40人,節省人力42%。北奇神保健品公司使用信息化管理系統后,生產周期由原來的24天減到18天,原材料庫存由241萬降低為80萬,使賒欠款降低了33%—50%。北奇神系列產品單位成本由原來每盒1.30元下降為每盒1.27元,同比下降2%,累計增加效益38萬元。
3、建設數字林業局管理系統。建立以局辦公自動化、木材生產、防火、營造林、森調主伐、視頻會議、財務等系列子系統為主的綜合性林業服務平臺。每年提高工作效率10%以上,節約各種辦公經費達100多萬元,堵塞木材生產、運輸、銷售漏洞,增加產值近千萬元,同時可將空間數據和應用領域數據有機地結合在一起,它所提供的數據和信息將在企業宏觀決策和科學管理、林業資源利用、生態環境規劃及建設、災害監測、資源變化等方面得到廣泛的應用。
4、建設森林智能巡護系統。智能巡護系統通過森林防火巡護人員到指定巡護點用手持讀卡機IC卡刷卡,記錄下接收數據的時間、地點、巡護人員姓名。如果巡護員在巡護過程中發現火情,可以在讀卡機中輸入相對號碼,并采取快速方式向指揮中心報告火情。如果巡護人員沒有在指定時間、地點、卡號上打卡,通過計算機系統中的漏點查詢可以一目了然地看到。該系統是2002年末在塔河林業局推行使用,2003年起發揮作用。2001年發生火警火災7起,過火
/ 11
林地面積46公頃,發生撲火費39.86萬元;2002年發生火警火災57起,過火林地面積237公頃,發生撲火費用271.6萬元;2003年發生火警1起,過火林地面積0.3公頃,發生撲火費用2.7萬元。截止去年,塔河林業局一直沒有大的火災發生,這和該系統的運行有直接關系。
四、基礎設施建設情況
學科(專業)以地區行署信息中心為依托,先后建立了縣區級網絡中心13個,中省直、地林直專業網絡中心40余個,企業部門級網絡中心18個。2001年至今,全區用于各類網絡信息系統建設資金達5000余萬元,先后兩次對地縣兩級政務信息化骨干網和視頻會議系統進行擴容升級改造,完成辦公樓宇綜合布線80余處;網絡節點達1000余個;共建成地理信息、林業信息、政務信息和企業信息數據庫179余個,數據庫總容量6萬兆;現已建成上聯省及國家林業局,下聯各縣區局,橫向聯接中省直、地林直機關各部門的
堅持高標準建設的同時,實行了統一規劃設計、統一技術標準、統一設備選型、統一公用網絡平臺、統一數據格式的“五統一‘基礎上,相繼開發應用了森林防火輔助決策系統、森林資源林政管理系統、數字營林綜合管理系統、森林管護信息系統、大興安嶺地區視頻會議系統、政府電子郵件系統、OA公文無紙化傳輸系統、財務管理電算化系統、大興安嶺政務信息發布系統。
/ 11
五、學科(專業)的發展前景
大興安嶺地處祖國北疆,與發達地區相比,我區的知識經濟尚處于剛剛起步的階段,經濟發展還受到傳統產業的束縛,而經濟增長的模式仍以資源消耗為主。改變這種狀態的有效途徑之一就是迅速推進我區保護森林資源和原生態環境,利用信息技術大力開展數字林業建設和信息產業的發展。但是,我區軟件產業目前還相對薄弱。呈現出規模小、創新能力弱、缺乏長遠目標等特點。這就必然需要大量的高層次軟件人才作為新鮮血液充實到這些企業中去。再者,隨著電子政務、電子商務、制造業信息化的不斷發展,各級政府部門和企事業機構也將需要大量的軟件技術人才來推動信息化建設的進程。
我們本著以科學發展為導向,以實際應用為目標和落腳點,以培訓和實踐相結合的指導方針,以軟件公司和職業學院為培訓基地,注重梯隊人才的選拔和培養,建立一直理念先進、技術過硬、能打敢拼的學科梯隊隊伍,準備在以下幾個方面開展軟件工程研究,為地區社會經濟發展提供網絡信息服務。
1、逐步進行數據庫一致性更新
根據國家林業局統一的數字林業標準,對大興安嶺地區的屬性數據庫和空間地理數據庫進行逐步更新,使其達到規范的數據標準,便于上與國家林業局下至各林業局的數據連
/ 11
接和更新,同時各部門行業之間的基礎數據實現共享,為統一全區數字林業的發展打下基礎。
2、逐步進行統計軟件和制圖軟件的更新
隨著數字林業標準的改變,數據統計軟件和制圖軟件也應作相應的更新,這樣才能使得表、圖和數據庫一致。比如現在我們主要的衛星圖片數據來自spot星,該星數據以80坐標為基礎,而現在我區主要的地形圖的都已54坐標為基礎,這就使地形圖和衛星照片不符,必須做相應調整,才能進行深度開發和應用,而這項工作現在實現起來比較困難,必須對制圖軟件進行更新。
3、進行森林生態旅游地理信息系統開發
在穩步推進數字林業在森林防火、資源經營管理的基礎上,開展以旅游為基礎的地理信息系統的開發,結合我區資源管理地理信息系統,進一步增加景點分布圖和景點的特色簡介,植物、動物分布、習性及藥用價值等信息,在三維系統中模擬我區森林資源的概況和對下游水量和氣候的調節作用,一方面加強資源管理的深度、廣度,一方面擴大我區生態作用和旅游的知名度,推進我區生態旅游的發展。
4、進行基于礦產資源管理的地理信息系統開發 大興安嶺近年來發現很多礦產資源,但基于礦產資源管理的地理信息系統還有待開發。所以從現在開始就應盡快開發基于礦產資源管理的地理信息系統,對礦產資源開發與生
/ 11
態環境破壞進行虛擬,在基本不破壞大興安嶺生態環境的前提下對礦產資源進行科學、合理、有效的開發。邊開發邊治理以最小的代價換取最大的利益,推動地方經濟發展。
5、對森林資源經營管理的進行深層研究
在現有資源經營管理的前提下,開發深層次、多角度的資源環境數學模型的建立,模擬10年、20年甚至是50年以上森林群落的生態環境下,資源的有效保護和合理利用。實現森林生態環境和人類生產活動相互之間的協調、平衡和可持續發展,以及社會、經濟高速發展,發揮森林巨大的生態效益、經濟效益和社會效益。
6、積極引進和培養軟件工程和信息化梯隊人才 積極引進信息化高級人才,引領全區信息化向高、精、新的方向發展,同時在本區各中、高等院校要加大對計算機應用及相關專業等社會急需人才的培養,加大在職人員信息技術培訓力度,制定優惠政策,采取多種方法,吸引更多的信息技術人才參與地區的信息化建設;要充分重視發揮現有人才作用,建立人才共享機制,最大程度地發揮他們的作用,提高全社會的信息化應用水平,造就一支過硬的信息化應用人才隊伍。
/ 11
第四篇:軟件工程總結
軟件工程課程總結
摘要:
計算機是20世紀最重大的科學技巧成就之一,使當代社會的經濟、軍事、科研、教育、服務等方面在概念和技巧上發生了性的變化,對人類社會的進步已經并還將產生極為深刻的影響。目前,計算機是世界各發達國度劇烈競爭的科學技巧領域之一。
電子計算機早期功效主要是計算,后來已遠遠超越單純計算的功效,還可模擬、思維、進行自適應反饋處理等等,把它叫做“電腦”更為合實際。由于電子計算機功效的飛躍性發展,應用于生產和生活的各個方面,直接和顯著地提高了生產、工作和生活的效率、節奏和水平,在軟科學研究和應用中它也起著關鍵作用,因此它已被公認是現代技巧的神經中樞,是未來信息社會的心臟和錄魂。計算機學科分為四個領域,分別是計算機科學,計算機工程,軟件工程和信息系統。
正文:
軟件工程是研究和應用如何以系統性的、規范化的、可定量的過程化方法去開發和維護軟件,以及如何把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來的學科。包括項目管理,分析,設計,程序的編寫,測試和質量控制。它涉及到程序設計語言、數據庫、軟件開發工具、系統開發平臺、標準、設計模式等方面。
學了《軟件工程》這門課程和一些有關資料后,感覺一些東西都曾經接觸過,但在實際工作中有些理論要完全遵循可能還有些障礙,軟件工程只是提供了理論上的一些結論,但對項目的具體可操作性的規范的制定方面卻做的很少,《軟件工程》發展了幾十年,光是開發模型就達到了10多種,對不同的項目采用合適的開發模式,有些項目在不同的開發階段可能還要轉換開發模式,把它們靈活的應用到實際中還是很困難的。
軟件技術是信息技術產業的核心之一,軟件技術的發展是與信息技術產業的發展互相促進的。當今世界,信息技術正處于新一輪重大技術突破的前夜。預計今后 20~30 年是信息科學技術的變革突破期,可能導致 21 世紀下半葉一場新的信息技術革命。近年來,從 IT 界到一些國家首腦,都高度關注以物聯網為標志的新一輪信息技術的發展態勢,認為這是繼 20 世紀 80 年代 PC 機、90 年代互聯網、移動通信網之后,將引發 IT 業突破性發展的第三次 IT 產業化浪潮。每一次重大的技術變革都會引起企業間、產業間甚至國家間競爭格局的重大變化,也促進了軟件技術與軟件產業的重大變革與發展。
近年來,信息技術、軟件技術、軟件系統與軟件產業的發展備受關注,已有不少論述、分析與判斷。近10 年內網絡技術經歷寬帶化、移動化和三網融合將走向基于 Ipv6 的下一代互聯網,2010 年 1 月,國家 863 計劃信息技術領域辦公室和國家 863 計劃信息技術領域專家組,在上海舉辦“信息-物理融合系統 CPS發展戰略論壇”,提出“信息-物理融合系統 CPS 是一個綜合計算、網絡和物理環境的多維復雜系統,是信息和物理世界的深度的融合交互,可實現大型工程系統的實時感知、動態控制和信息服務,使系統更加可靠、高效與實時協同,使得人類物理現實和虛擬邏輯逐步融合,具有重要而廣泛的應用前景。業界關于軟件工程的代表性觀點創立與使用健全的工程原則,以便經濟地獲得可靠且高效率的軟件。應用系統化,遵從原則,可被計量的方法來發展、操作及維護軟件;也就是把工程應用到軟件上。與開發、管理及更新軟件產品有關的理論、方法及工具。一種知識或學科,目標是生產品質良好、準時交貨、符合預算,滿足用戶所需的軟件。實際應用科學知識在設計、建構電腦程序,與相伴而來所產生的文件,以及后續的操作和維護上。
6使用與系統化生產和維護軟件產品有關之技術與管理的知識,使軟件開發與修改可在有限的時間與費用下進行。
7建造由工程師團隊所開發之大型軟件系統有關的知識學科。對軟件分析、設計、實施及維護的一種系統化方法。系統化地應用工具和技術于開發以計算機為主的應用。
10軟件工程是關于設計和開發優質軟件。
《軟件工程》是一門綜合性和實踐性很強的核心課程,它屬于是一門交叉學科,包含有:軟件開發技術(軟件開發方法學、軟件開發過程、軟件工具和軟件工程環境)、軟件工程管理(軟件管理學、軟件經濟學、軟件心理學)。主要內容包括軟件工程概述、可行性分析、需求分析、概要設計、詳細設計、面向對象分析與設計、編碼、軟件測試、項目計劃與管理。
本課程是面向準備從事軟件開發的畢業生而開設的一門專業課程。針對計算機教學中軟件工程這一薄弱環結,結合目前軟件開發商對人才的要求,對計算機專業的畢業生進行軟件工程強化培訓,目的是使畢業生能夠了解和掌握軟件工程的基本理論和方法,并在實際軟件開發中運用這些方法。
我理解,軟件工程是按照工程學的管理方式,有組織、有計劃的,在一定的質量基礎、時間限度和成本范圍內,實現功能明確的軟件系統。而且,軟件工程在企業范圍內運行,一定需要企業資源的支持,要與企業的經營、決策、管理體系聯系在一起,才能夠被踏踏實實的落實下來。
軟件工程項目是一個需要一步一步的計算,分析思考而來的,需要不斷思考,研究不斷進步,軟件業作為一個服務業,要想得到發展,首先必須形成一個對軟件服務有迫切需要的市場。其次,這個市場中的消費者必須具備足夠的購買力。軟件的消費群體簡單一點,可以分為個體消費和企業消費。中國的企業群體,數量龐大,但是質量不高。上規模的企業極少。國內目前能夠形成比較大規模的獨立市場的,肯定是小規模的軟件系統。
隨著信息化時代的到來其地位越來越受到人們的重視,軟件工程從一個學科,或是某一個研究方向來說,人員僅僅是過程,方法的執行者,所以人員素質往往被忽略,軟件工程是一門實踐性很強的學科,所以在實際的軟件研究過程中,人員的素質占有很重要的地位。要有出色的軟件問世,研發人員的素質至關重要!
作為軟件工程的學習者應該不斷創新,不斷嘗試、實踐,不斷研究和學習,中國的軟件工程技術依舊滯后于國外一些軟件工程技術,作為新一代的學習者應該擔當起振興起中國軟件事業,使中國科技得到高速發展!
現在已經是信息化時代,信息化潮流不斷涌現,想要掌握主動權就是掌握信息化的發展方向,這就需要我們不斷學習,時間,研究,學習國外的先進技術,轉變自己的技術,然后融合,創新。
軟件技術不是一成不變的,是隨著社會的進步的不斷進步,不需要不斷的創新,不斷的改善的,需要我們不斷的學習,不斷的研究,不斷進步。
第五篇:軟件工程總結
1.Software is a product and can be manufactured using the same technologies used for other engineering artifacts Answer: b 2.WebApps are a mixture of print publishing and software development, making their development outside the realm of software engineering practice.Answer: b 3.Software engineering umbrella activities are only applied during the initial phases of software development projects.Answer: b 4.Planning ahead for software reuse reduces the cost and increases the value of the systems into which they are incorporated.Answer: a 5.The essence of software engineering practice might be described as understand the problem, plan a solution, carry out the plan, and examine the result for accuracy.Answer: a 6.In agile process models the only deliverable work product is the working program.Answer: b 7.A most software development projects are initiated to try to meet some business need.Answer: a 8.In general software only succeeds if its behavior is consistent with the objectives of its designers.Answer: b 9.Software processes can be constructed out of pre-existing software patterns to best meet the needs of a software project.Answer: a 10.Process technology tools allow software organizations to compress schedules by skipping unimportant activities.Answer: b 11.It is generally accepted that one cannot have weak software processes and create high quality end products.Answer: a 1.Requirements engineering is a generic process that does not vary from one software project to another.Answer: a 2.A stakeholder is anyone who will purchase the completed software system under development.Answer: b 3.It is relatively common for different customers to propose conflicting requirements, each arguing that his or her version is the right one.Answer: a 4.Developers and customers create use-cases to help the software team understand how different classes of end-users will use functions.Answer: a 5.Use-case actors are always people, never system devices.Answer: b 6.Analysis patterns facilitate the transformation of the analysis model into a design model by suggesting reliable solutions to common problems.Answer: a 7.In win-win negotiation, the customer’s needs are met even though the developer’s need may not be.Answer: b 8.In requirements validation the requirements model is reviewed to ensure its technical feasibility.Answer: b
1.Object-oriented domain analysis is concerned with the identification and specification of reusable capabilities within an application domain.Answer: a 2.In structured analysis models focus on the structure of the classes defined for a system along with their interactions.Answer: b 3.Creation and refinement of use cases if an important part of scenario-based modeling.Answer: a 4.It is important to consider alternative actor interactions when creating a preliminary use case.Answer: b 5.Brainstorming is one technique that may be used to derive a complete set of use case exceptions.Answer: a 6.In many cases there is no need to create a graphical representation of a usage scenario.Answer: a 7.One or more attributes of a data object must be defined as a key to allow the location of an instance of the data object.Answer: a 8.Attributes are chosen for an object by examining the problem statement and identifying the entities that appear to be related.Answer: b 9.An analysis package involves the categorization of analysis model elements into useful groupings.Answer: a 10.The data flow diagram must be augmented by min-spec that can serve as a guide the design of the software component that will implement the process.Answer: a 11.The UML sequence diagram show the order in which system events are processed.Answer: b 12.Analysis patterns are discovered, they are not explicitly created.Answer: a 13.It is not possible to justify the time required for WebApp requirements analysis.Answer: b 14.UML activity diagrams can be used to represent the user observable functionality delivered by the WebApp as well as the operations contained in each analysis class.Answer: a 15.Configuration analysis focuses on the architecture of the user’s web browsing environment.Answer: b 16.Content objects are extracted from use cases by examining the scenario description for direct or indirect content references.Answer: a 1.With thorough testing it is possible to remove all defects from a program prior to delivery to the customer.Answer: b 2.Program flow graphs are identical to program flowcharts.Answer: b 3.The cyclomatic complexity of a program can be computed directly from a PDL representation of an algorithm without drawing a program flow graph.Answer: a 4.Graph-based testing methods can only be used for object-oriented systems Answer: b 5.Equivalence testing divides the input domain into classes of data from which test cases can be derived to reduce the total number of test cases that must be developed.Answer: a 6.Boundary value analysis can only be used to do white-box testing.Answer: b 7.Orthogonal array testing enables the test designer to maximize the coverage of the test cases devised for relatively small input domains.Answer: a 8.Client/server architectures cannot be properly tested because network load is highly variable.Answer: b 1.The best representation of system architecture is an operational software prototype.Answer: b 2.The architectural representations can be an enabler for communication among project stakeholders.Answer: a 3.An architectural description is often documented using an architecture template.Answer: b 4.An architectural genre will often dictate the architectural approach that may used for the structure to be built.Answer: a 5.Before an architectural pattern can be chosen for use in a specific system it must have a code implementation to facilitate its reuse.Answer: b 6.Once selected, archetypes always need to be refined further as architectural design proceeds.Answer: a 7.Quantitative methods for assessing the quality of proposed architectural designs are readily available.Answer: b
Chapter 10 Self-Check Quiz
1.In the most general sense a component is a modular building block for computer software.a.True b.False
Answer: a(Section 10.1)
2.In the context of object-oriented software engineering a component contains
a.attributes and operations b.instances of each class c.roles for each actor(device or user)d.set of collaborating classes
Answer: d(Section 10.1.1)
3.In traditional software engineering modules must serve in which of the following roles?
a.Control component b.Infrastructure component c.Problem domain component d.All of the above
Answer: d(Section 10.1.2)
4.Software engineers always need to cerate components from scratch in order to meet customer expectations fully.a.True b.False
Answer: b(Section 10.1.3)
5.Which of the following is not one of the four principles used to guide component-level design?
a.Dependency Inversion Principle b.Interface Segregation Principle c.Open-Closed Principle d.Parsimonious Complexity Principle
Answer: d(Section 10.2.1)
6.The use of stereotypes can help identify the nature of components at the detailed design level.a.True b.False
Answer: a(Section 10.2.2)
7.Classes and components that exhibit functional, layer, or communicational cohesion are relatively easy to implement, test, and maintain.a.True b.False
Answer: a(Section 10.2.3)
8.Software coupling is a sign of poor architectural design and can always be avoided in every system.a.True b.False
Answer: b(Section 10.2.4)
9.WebApp content design at the component level focuses on content objects and the manner in which they interact.a.True b.False
Answer: b(Section 10.4.1)
10.A WebApp functional architecture describes the key functional components and how they interact with each other.a.True b.False
Answer: a(Section 10.4.2)
11.Which of these is a graphical notation for depicting procedural detail?
a.box diagram b.decision table c.ER diagram d.flowchart
Answer: d(Section 10.5.1)
12.A decision table should be used
a.to document all conditional statements b.to guide the development of the project management plan c.only when building an expert system d.when a complex set of conditions and actions appears in a component
Answer: d(Section 10.5.2)
13.A program design language(PDL)is often a
a.combination of programming constructs and narrative text b.legitimate programming language in its own right c.machine readable software development language d.useful way to represent software architecture
Answer: a(Section 10.5.3)
14.In component-based software engineering, the development team examines the requirements to see which are amenable to composition, rather than construction, before beginning detailed design tasks.a.True b.False
Answer: a(Section 10.6)
15.Which of the following is not one of the major activities of domain engineering?
a.analysis b.construction c.dissemination d.validation
Answer: d(Section 10.6.1)
16.Which of the following factors would not be considered during component qualification?
a.application programming interface(API)b.development and integration tools required c.exception handling d.testing equipment required
Answer: d(Section 10.6.2)
17.Which is the following is a technique used for component wrapping?
a.black-box wrapping b.clear-box wrapping c.gray-box wrapping d.white-box wrapping
Answer: b(Section 10.6.2)
18.Which of the following is not one of the issues that form a basis for design for reuse?
a.object-oriented programming b.program templates c.standard data d.standard interface protocols
Answer: a(Section 10.6.3)
19.In a reuse environment, library queries are often characterized using the ________ element of the 3C Model.a.concept b.content c.context d.all of the above
Answer: c(Section 10.6.4)
1.The importance of software design can be summarized in a single word a.b.c.d.Answer: d(Section 8.1)
2.Which of the following is not a characteristic common to all design methods?
a.configuration management b.functional component representation c.quality assessment guidelines d.refinement heuristics
Answer: a(Section 8.2.2)
3.Which of the following can be used to represent the architectural design of a piece of software?
a.Dynamic models b.Functional models c.Structural models d.All of the above
Answer: d(Section 8.3.2)
4.Design patterns are not applicable to the design of object-oriented software?
a.True b.False
Answer: b(Section 8.3.3)
5.Since modularity is an important design goal it is not possible to have too many modules in a proposed design.a.True b.False
Answer: b(Section 8.3.5)
6.Information hiding makes program maintenance easier by hiding data and procedure from unaffected parts of the program.accuracy complexity efficiency quality
a.True b.False
Answer: a(Section 8.3.6)
7.Cohesion is a qualitative indication of the degree to which a module
a.can be written more compactly.b.focuses on just one thing.c.is able to complete its function in a timely manner.d.is connected to other modules and the outside world.Answer: b(Section 8.3.7)
8.Coupling is a qualitative indication of the degree to which a module
a.can be written more compactly.b.focuses on just one thing.c.is able to complete its function in a timely manner.d.is connected to other modules and the outside world.Answer: d(Section 8.3.7)
9.When using structured design methodologies the process of stepwise refinement is unnecessary.a.True b.False
Answer: b(Section 8.3.8)
10.Software designs are refactored to allow the creation of software that is easier to integrate, easier to test, and easier to maintain.a.True b.False
Answer: a(Section 8.3.10)
11.Which of the following is not one of the five design class types
a.Business domain classes b.Entity classes c.Process classes d.User interface classes
Answer: b(Section 8.3.13)
12.Which design model elements are used to depict a model of information represented from the user’s view?
a.Architectural design elements b.Component-level design elements c.Data design elements d.Interface design elements
Answer: c(Section 8.4.1)
13.Which design is equivalent to the floor plan of a house?
a.Architectural design b.Component-level design c.Data design d.Interface design
Answer: a(Section 8.4.2)
14.Which design model is equivalent to the detailed drawings of the access points and external utilities for a house?
a.Architectural design b.Component-level design c.Data design d.Interface design
Answer: d(Section 8.4.3)
15.Which design model is equivalent to a set of detailed drawings for each room in a house?
a.Architectural design b.Component-level design c.Data design d.Interface design
Answer: b(Section 8.4.4)
16.The deployment design elements specify the build order for the software components.a.True b.False
Answer: b(Section 8.4.5)