天天看點

軟體工程個人總結軟體工程個人總結

軟體工程個人總結

一、學習和使用的新軟體

Git

Git是一款免費的、開源的分布式版本控制系統,用于靈活高效的處理任何或大或小的項目。Git是Linux Torvalds為了幫助管理Linux核心開發而開發的一個開源碼的版本控制軟體。Git 是用于 Linux核心開發的版本控制工具。與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必伺服器端軟體支援(wingeddevil注:這得分是用什麼樣的服務端,使用hhtp協定或者git協定等不太一樣。并且在push和pull的時候和伺服器端還是有互動的。),使源代碼的釋出和交流極其友善。 Git 的速度很快,這對于諸如 Linux kernel 這樣的大項目來說自然很重要。 Git 最為出色的是它的合并跟蹤(merge tracing)能力。

二、學習和使用的新工具

Enterprise Architect

     Enterprise Architect是一個完全的UML分析和設計工具,它能完成從需求收集經步驟分析、模型設計到測試和維護的整個軟體開發過程。它基于多使用者Windows平台的圖形工具可以幫助您設計健全可維護的軟體。除此,它還包含特性靈活的高品質文檔輸出。使用者指南可以線上擷取。我們用這個軟體主要就是用來畫用例圖,流程圖,以及畫類圖。

三、學習和掌握的新語言、新平台

SQL Server 2005

        SQL是一種特殊目的的程式設計語言,是一種資料庫查詢和程式設計語言,用于存取資料以及查詢、更新和管理 關系資料庫系統;同時也是 資料庫腳本檔案的擴充名。結構化查詢語言是進階的非過程化程式設計語言,允許使用者在高層 資料結構上工作。它不要求使用者指定對資料的存放方法,也不需要使用者了解具體的資料存放方式,是以具有完全不同底層結構的不同 資料庫系統, 可以使用相同的結構化查詢語言作為資料輸入與管理的接口。結構化查詢語言語句可以嵌套,這使它具有極大的靈活性和強大的功能。

ASP

ASP是微軟公司開發的代替CGI腳本程式的一種應用,它可以與資料庫和其它程式進行互動,是一種簡單友善的程式設計工具。ASP是一種伺服器端腳本編寫環境,可以用來建立和運作動态網頁或web應用程式,ASP網頁可以包含HTML标記、普通文本、腳本指令一COM元件等,利用ASP可以向網頁添加互動式内容,也可以建立使用HTML網頁作為使用者界面的web應用程式。

四、統計一下,你在這軟體工程實踐中,完成了多少行的代碼

由于此次的項目比較簡單,是以完成的代碼大概有七、八百行。

五、學習和掌握的新方法

    通過一學期的軟體工程的課程的學習,再加上做的項目,讓我對一個軟體的開發過程有了比較直覺的了解,明白了開發一個項目的基本步驟是什麼,一個項目應該如何開發等等。

總結與展望

一、記錄在軟體工程課程上的經驗總結

通過上軟體工程課,知道了做一個項目應該必須經過一定的步驟,少了每一步,可能都會給後面的進展帶來很大的阻撓。

二、對于下一屆的學弟學妹你有什麼建議和告知呢?

    現在的我深刻的感受到,我們這個專業的課程學習看起來并沒有什麼聯系,但實際上,這些課程中的專業知識都是環環相扣的,是以以後的學弟學妹,一定要打好自己的專業知識基礎,以免将來像我們一樣,什麼都學過,但什麼都不精通,到時候又苦了自己啊!

三、分析一下自己所處的團隊。軟體工程實踐是大學裡少有的認真的團隊協作經驗。《建構之法》團隊合作的階段,你們團隊經曆過麼?最後到達了哪一階段?

    我們團隊的成員是一個宿舍裡的,因為當時想的是大家總是在一起,這樣讨論什麼問題也會比較友善,不用像别的團隊一樣,總是找不齊人,可是,後來我們發現,在宿舍根本沒辦法讨論問題,因為影響的因素太多了,後來,我們就決定去自習室一起讨論項目,那樣之後,我們的效率明顯很高。對比了書上的團隊合作的幾個階段,我們團隊經過了萌芽階段、磨合階段,最後我覺得我們團隊達到了規範階段。

四、個性發揮,包括圖文、照片和創意等

    說實話,這門課程是我們這學期最忙的一個課程,作業也多,任務也多,可是這門課也正是讓我們收獲最多的一門課程。我相信,在這門課上學到的東西,以後會很有用處的!

軟體工程個人總結軟體工程個人總結
軟體工程個人總結軟體工程個人總結

對“軟體工程第一次作業”的五個問題的重新回答

問題:  

(1)在看到《成長和代碼量的關系》時,作者提到代碼量和工程師的水準是線性的嗎?可是作者似乎并沒有給出明确的答案,但我希望能了解具體的關系。

答:在經過一學期的軟體工程課程的學習,和看了《建構之法》這本書之後,我自認為代碼量和工程師的水準是線性的,因為一個好的軟體工程師,他之是以被稱為工程師,就說明他在軟體編寫方面已經有了一定的成就,而一個軟體工程師基本都是從程式員發展而來的,程式員都是會有大量的代碼基礎的,并且鄒欣老師也說了“當代碼是在2,000行以下,程式員可以用 ‘寫了再改’ 的蠻幹方法,并且靠記憶力搞定一個程式,但是, 如果你的代碼規模達到20,000行,你要用結構化程式設計(類,子產品,API,細節隐藏,面向對象的其它方法,等)來保證程式不變成一團亂麻。”是以隻有當自己的代碼量達到了一定的高度,自然而然就會寫出更好的程式,是以自己的水準就高了!

(2)我在看第十章《典型使用者和場景》時,第二小節講到了USE CASE 用例圖,書中說了很多概念性的定義,但卻沒有具體的USE CASE用例圖的畫法,是以我想知道USE CASE用例圖具體的定義形勢以及畫法到底是什麼樣的?

答:USE CASE 用例圖雖然在課本中沒有詳細的說明,但老師上課的時候給我們講的很詳細,還講了類圖和順序圖,到現在也基本掌握了這幾類圖的畫法了。 

(3)書中第五章為我們軟體團隊的模式和開發流程,但我不明白團隊模式和團隊的開發流程有什麼關系?是一種團隊模式就有一種開發流程嗎?  

答:

軟體團隊的模式包括以下幾種:

(1)主治醫師模式:一人為主,其他人為此人服務。

(2)明星模式:主治醫師模式到達極緻,一人的光芒掩蓋所有人。

(3)社群模式:每個人參與自己感興趣的項目,貢獻力量,大部分人不拿報酬。

(4)業餘劇團模式:在不同項目中每個人扮演着不同的角色,可能随着項目的改變,自己的角色也會發生變化。

(5)秘密團隊模式:一些軟體項目在秘密狀态下進行,别人不知道他們具體在做什麼。

(6)特工團隊模式:有一些有特殊技能的專業人士組成的團隊。

(7)交響樂團模式:人員工具齊全,準備充足的團隊。

(8)爵士樂模式:相對自由,有風險,人少且不靠譜。

(9)功能團隊模式:具備不同能力的同僚們平等協作,共同完成一個功能。

(10)官僚模式:層層上司的團隊模式。

團隊的開發流程有:

(1)寫了再改模式:和一窩蜂團隊模式比較像。

(2)瀑布模型及其各種變形。

(3)RUP統一流程。

(4)老闆驅動的流程。

(5)漸進傳遞的流程。

(6)TSP的原則。

    至于團隊模式和團隊的開發模式的關系,我個人的了解是一群人在一起做軟體開發,總是要一些方式方法。而這裡團隊模式就是這一群人的定性,團隊的開發模式則是這群人使用的方法的定性。有了團隊中人的定性,那麼這些人所使用的方法不就是更好定義了嗎?并且有了團隊模式,有了開發流程,那麼這個團隊的工作效率也會很明顯的提高的!

(4)在《使用者體驗》這一章中,說要情感設計,那麼在設計一個程式的過程中,應該帶入什麼樣的情感?

    答:在我看來,程式設計是一個必須要帶感情的過程,因為隻有用心做出來的産品才會讓顧客喜歡,當你在設計一個産品的某個功能時你應該先想想如果是自己使用,那麼你會滿意自己的設計嗎?你會不會想“如果這個功能是那樣的就好了”,當你這樣想的時候你就是把自己放到使用者的位置上了,而不是一個設計者,那麼這樣你設計出來的産品才會被别人所接受和喜愛,是以我覺得軟體工程是在設計一個車須的時候應該帶入的就是“設身處地”的感情。 

(5)在第十三章《軟體測試》中,我看到說“有錯不改“,為什麼明明知道一個程式有Bug但卻不改?

    答:一個軟體等到完全完善,裡面至少得有好幾百個bug,其中有些bug會在軟體上市之前就改正好,而又的暫時未被發現的就會延續到下一個版本中再改正,但有些bug明明程式設計人員早已經發現了并且也有能力修複好它,但是在修複好這個bug之後後面可能會引發更多的bug,而修複這些bug的工作量是無法估計的,是以程式設計人員在這個bug沒有什麼大礙的情況下就不會去修複這個bug了。

轉載于:https://www.cnblogs.com/majixian/p/7077267.html