天天看點

個人作業——軟體工程實踐總結作業

>##一、回望暑假時的第一次作業,對于軟體工程課程的想象

>### 1) 對比開篇部落格你對課程目标和期待,“希望通過實踐鍛煉,增強計算機專業的能力和就業競争力”,對比目前的所學所練所得,在哪些方面達到了你的期待和目标,哪些方面還存在哪些不足,為什麼?

最開始暑假對這門課的期待就是很多個小夥伴們一起完成一個軟體,在學期末将至,的确完成了最初的目标,感覺很奇妙,很不可思議。

在暑假的時候學習了js,css,本來想要在這次軟工實踐中做一個web的前端,遇到不會的地方,還可以再學習學習,但是因為自己也學過ps,對于ui的設計需要很早完成,是以自己也就先做了美工。沒想到的是,兩個美工做着做着,分成了web端和Android端,我是Android端,頁面做着做着也就到了alpha階段,ui工作量也是比較大的,做好一個頁面就要立刻發給前端,慢慢的與web就分道揚镳了?是以随着軟工的程序,我變成了一個專門做美工的成員【笑哭】與最開始對于自己的定位略有偏差。

盡管如此,我在ui方面得到了很大的提升,了解了一個團隊ui是如何做的,并不是自己以前想象的那麼簡單,設計完界面就沒事兒了,然而,設計完界面要做的事情才是耗時最長的——切圖和标注。最開始有很多不懂的地方,有經驗的隊友們很細心的告訴我該怎麼做,最終還是如期完成了ui。

除此之外,我還了解到在團隊中工作的艱辛與不易,每個人之間的磨合,對于一個細節的不斷修改,都耗費了很長的時間。

然而對于就業競争力..其實我并沒有想要過從事這方面的工作...如果我想要從事軟工的話,當初可能會直截了當選擇軟工這個專業。是以就業競争力對我貌似并不存在..但是這次經曆也給了我很豐富的經驗,體驗了軟體工程将幾個小夥伴無意中冒出來的想法變成了一行行代碼,變成了一個軟體成品,是很有成就感的一件事情。

2)總結這門課程的實踐總結和給你帶來的提升,包括以下内容:

- 1.統計一下,你在這門軟體工程實踐中,完成了多少行的代碼;

很慚愧,在這次課中,除了制作classmate-book有寫過一些代碼之外,基本上沒有怎麼寫過其他的代碼了。身為一個美工,所有的耗時都是在photoshop上面。

- 2 軟工實踐的各次作業分别花了多少時間?

作業名稱 日期 耗時
大學之路(軟體工程實踐2017第一次作業) 2017年8月26日 3h
Sudoku(第二次作業) 2017年9月10日 15h30min
結隊項目——第一次作業 2017年9月22日 750min
結對第二次作業 2017年10月9日 820min
個人作業——軟體産品案例分析 2017年12月2日 120h
團隊作業-産品提前準備階段 -- 大概一周的時間
團隊作業-alpha階段
團隊作業-beta準備階段 一天
  • 3.哪一次作業讓你印象最深刻?為什麼?

    印象深刻還是團隊作業啊,畢竟耗時最長。雖然美工聽上去是一個很簡單的分工,但是其實工作的時間并不亞于其他成員。ui設計完成以後,時間最長的是要切圖,ps一點一點扣扣扣,切切切,還要分不同像素的檔案夾,分别切圖。剛開始切圖的那幾天,我基本上一整天都在切圖。最主要的是花了很長時間切圖之後還要修改,這就意味着之前切的圖白切了..還要再重新來一遍。比如說圖檔名稱的修改,布局的修改。修改的根本原因還是在開始巨大工工作量之前沒有溝通好,是以在之後沖刺的幾天,切圖快了不止一倍。

  • 4.累計花了多少個小時在軟工實踐上?平均每周花多少個小時?

    怎麼說呢,這麼說吧,在alpha階段以前幾天以及alpha階段,基本上空閑的時間全部都給了軟工實踐。沒課的時間,除了在寫作業,就是在軟工,再加上之前一些零零碎碎的作業,我有點數不清了。beta階段卻沒花多長時間,因為最後除了登入注冊界面,确實沒有我什麼事情了。

  • 5.學習和使用的新軟體;

    墨刀、Pxcook(一個标注軟體)

  • 6.學習和使用的新工具;

    ps的一些小細節吧,這次軟工讓我重新打開了photoshop的一些大門,知道原來ps還能這麼用,切圖還是有點友善。

  • 7.學習和掌握的新語言、新平台;

    慚愧。木有。

  • 8.學習和掌握的新方法;

    就是做ui的所有方法吧,畢竟是第一次接觸。

  • 9.其他方面的提升。

    uiuiui

二、寫下屬于自己的人月神話——個人或結對或團隊項目實踐中的經驗總結+執行個體/例證結合的分析

  • 1.在ui設計的時候一定要站在使用者的角度,不要想當然的去制作。
  • 2.越早開始動手,就會浪費越長的時間,就越晚完成。是以在動手之前,一定要有很充足的準備。
  • 3.隊友有時候會牽制你,但是永遠都是你的動力。越多的溝通就會有越少的麻煩和越高的效率。

三、對下一屆實踐的建議,或者對于開學初的你,對于大一的你,對于開學初的我,你有什麼想建議和告知的呢?對于後來人的期許。 特别地,特别地,下一屆要不要中途換隊員?

我覺得這門課是一種教學方法的改革,很好的體驗了開發軟體的過程,得到了很豐富的經驗,受益匪淺。但是我也想說一下,這學期課很多,我本人這學期有18門課,很多課都有很多的作業,基本上天天滿課,上午周一到周日天天滿課,時間很少很少,但是為了做軟工,不拖團隊後腿,我隻能選擇犧牲一些其餘的時間,比如少睡覺,甚至有時候我連做作業的時間都沒有,熬夜以後上課很困很困;亦或軟工一次結對作業沒有認真的做,導緻分數很低。這門課很好,但是真的太累了,有點顧此失彼。其實我覺得有些個人作業可以減免一些,畢竟這學期課太多太多了。

話雖如此,堅持就是勝利,這學期還是熬了下來,很累但是很充實。

後來人!一定要堅持下去!不管多苦多累多想罵人,堅持就是勝利!刷一下,一學期就過去了,沒有軟工的日子,還有點空虛??

對于換隊員,我個人認為,隻要是自願的,任何時候換隊員都是ok,但是要強制的話,可以早點強制換隊員,因為最後的beta階段,我們的新隊員基本上沒什麼存在感..beta階段基本功能已經做好了,核心功能還是大佬在做,是以我可能都沒有和新隊員說過幾句話..既然老師讓換,那必然有老師的道理,個人持中立态度吧~

四、分析一下自己所處的團隊。軟體工程實踐是大學裡少有的認真的團隊協作經驗。《建構之法》上說團隊的發展有幾個階段,你的團隊都經曆過麼,最後到達了“創造”階段了麼?(參考《建構執法》第17章 人、績效和職業道德)

- 萌芽階段:這個團隊裡基本上都是實驗班的同學,除了幾個同學,大家都比較熟悉。第一次開會就很自然的談論起來自己的想法,每個人都有各自很有趣的想法,但是卻很難确定下來一個既實用,又能在一個學期中完成的想法。雖說大家平時都有講話,不陌生,但是每個人有幾斤幾兩都不是很熟悉。對于選組長這件事情,一開始我覺得我應該可以當組裝,以為組長隻是寫寫文檔什麼的,但是經過了解以後,才發現組長是整個團隊的支架,因為我對于項目并沒有任何的經驗,是以最後還是拒絕了當組長,由項目經曆豐富的武成大佬來主持大局。

- 磨合階段:團隊中像我一樣的“萌新”不止一個,一開始都是一臉“萌比”,但是大佬們都會認真的告訴我們一步一步應該怎麼做。剛開始的時候,我忍不住按照自己的想法設計了一些ui,後來卻發現這些設計雖然很華麗,但是卻很難實作,最終隻能進行改動。是以溝通是在這個階段無比重要的事情。

- 規範階段:大家各司其職。每個人都在完成屬于自己的内容,完成了部分内容之後各個部分的成員就将已經完成的内容交錯起來,一步一步達到軟體的完善。

- 創造階段:這個階段是達到了的。在beta階段将各個部分的整合起來,進行了測試和完善,最終完成了預期中的功能。

五、怎樣證明你學會了軟體工程?

研發出符合使用者需求的軟體

必須公開釋出,有實際的使用者,一定的使用者量和持續使用量 (3 天後能保持10 - 100個使用者);而不是: 做沒有使用者使用的軟體

之是以開始想要開發這個軟體,正是因為我們的機率論老師喜歡讓我們在微信上照照片交作業。是以,我們聯系了機率論老師,于是今天實驗班的作業沒有在微信上面送出,反而使用了我們的app送出作業。真是很棒棒哦~

雖然自己親身體驗以後,發現有的ui真的是醜爆了...emm新手光環請籠罩一下我。

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

【之前的圖太風騷了,換一個比較正常的。還記得最初的起點,花了整整一天的時間很興奮的做出了這張圖。】

【we are???】

個人作業——軟體工程實踐總結作業