Worship to God.

烙印2019

0
這個農曆年想必會在我的一生留下深刻的印記,原本應該是很一般的年,但這個世間的安排還是受到上帝的完善安排。 父親在八年八個月前診斷出大腸癌三期,經過幾次手術後,總算一切順利圓滿,度過了幾年的平安時光,這兩年卻重新診斷出了肺腺癌,而且越來越嚴重,父親用盡了他的意志力撐過了這段時光,前幾個月診斷出了淋巴癌,那時醫生就有提醒可能要有所準備。 父親一直都是個不喜歡麻煩別人的人,所以即使他很不舒服,大都會自己忍住,不想讓大家擔心,而最辛苦的莫過於在一旁陪伴的母親,雖然他的離開讓母親最是傷心,但總算也放下個大石可以好好休息。 經過了幾十次的標靶治療與化療,也放棄了很多次,終於在今年的1/17表達他想要去安寧病房的意願,應該算是他能忍受的最大極限了,淋巴帶來的疼痛他還能忍受,但肺腺癌造成的呼吸困難是他怎樣也無法解決的問題,加上最後這段時間大量使用嗎啡,其實他的許多生理反應已經不是他能控制的,所以大家都覺得讓他到安寧病房安享最後這段時間是對他最好的安排,1/23終於搬進了彰基中華路的安寧病房,安寧病房的照顧相信是對他最後這段時間的最好安排。 母親辛苦了好幾年,最後的這11天才請了個看護照顧父親,加上安寧病房的體貼照顧讓我門感激萬分,安寧病房這段時間去看了父親很多次,每一次都讓自己不得不承受那無能為力的感受,父親一定也很害怕死亡的來臨,但他堅強面對了,而我們卻只能等待,原以為這個過程中自己不會掉淚,但真正遇到了,卻還是不爭氣地掉了不少眼淚。 2/1中午,母親說醫生覺得時候快到了,我交代了一些工作之後就出發要去看看父親,我記得大概是兩點左右,當車子開在高速公路上時,天上居然下起了毛毛雨,或許是天父也在一同悲傷吧,這陣雨深深地沁入了心扉,也在車上哭了一場。 回到家裡大概是兩點10分,收拾點東西準備出門時接到母親的電話,說父親離開了,這時候想起剛剛那陣雨,終於知道為什麼了,父親於兩點九分離開了。 父親或許是刻意挑選農曆連假的前一天,讓整個後事的處理過程都可以在假期過程中完成,這段假期大都是在守靈的過程中渡過,雖然累,雖然也許因為信仰問題,會有些矛盾產生,但想想那是照顧自己一輩子的父親,一切就都無所謂了。 連假的最後一天,父親的後事完成了,這個農曆年不管如何都會在自己的一生中,留下最深刻的紀錄,烙進自己的心裡。 2019/2/13筆

CMMI-DEV簡介

CMMI-DEV是基於CMMI發展出來的開發專用規範指引,以下將分別介紹何謂CMMI、CMMI的目的,一直談到CMMI-DEV有哪些成熟度等級等等。 CMMI 指的是能力成熟度整合模式(Capability Maturity Model Integration : CMMI),是美國國防部委託卡內基美隆大學軟體工程學院 (Software Engineer Institute : SEI)所發展的,目前有以下版本問市 v1.1: 2002年問世,為CMMI的第一個版本 v1.2: 2006年問世 v1.3: 2010年問世,為最後一版免費版本,並包含DEV/SVC/ACQ等三個版本 v2.0: 2018年問世,但開始要收費了,所以我也拿不到相關細節,也因此大家大都還是以v1.3為主要參考內容 CMMI分為三個分部 CMMI-DEV: 軟體開發指引 CMMI-SVC: 服務提供引 CMMI-ACQ:...

回顧與展望 – 成長篇

0
過去一年在許多面向都有不少成長,開始思考長久面向的問題。 被動收入 開始思考例如如何創造有效的被動收入,在這方面,自己開始錄製Udemy的課程內容,雖然收益有限,但積少成多,只要持續有新的課程投入就可以有個固定而且長久的被動收入產生,目前已有兩個課程上線 目前可能會規劃一個比較實用的小課程,介紹 如何使用Office管理日常專案 如何使用Google Doc管理日常專案 製作投影片小技巧 團隊資訊分享 持續看到大家的需求並發現不同點,自然會讓自己有各種不同的收穫。 激勵課程 三月份參加了一個Money & You課程,這個課程的重點是要讓Money與You平衡,並在平衡中取得越來越的Money,金錢無法填補心靈上的空虛,要用平衡的方式來充實自己,九月份參加MMi課程,這是Money&You的加強版,但更多在Money,而老師也強調沒人告訴你在追求Moeny的過程就要放棄You,很多事情是有方法的,當然在這樣的刺激下,有許許多多的新想法在腦中成形,也讓自己有許多機會與課程中認識的好友持續交流,這是非常充足的一年,讓自己經歷許多過去沒有機會經歷過的體驗,在新的一年也期望可以收穫滿滿。 技能增進 過去都在底層程式開發多所研究,也在專案管理面多所著墨,但很少對於前台呈現有所了解,這一年因為工作所需,要求自己開始學習前台技能,包括CSS與Twitter Bootstrap都是自己全新的旅程經歷,這些技能在過去確實很少經歷,但這一年讓自己在這方面有很充實的體驗,期望新的一年還可以有更多的新技能著墨,目前可以想到的目標有 手機App開發 前台技能持續精進-AJAX 更多前台框架的研究 - WordPress, Laravel, Drupal, ... 社區管理 三月社區管委會成立,在偶然的機會下被選為管委會主委,在這個體驗中,也獲得了許多有趣的經驗,也讓自己可以運用專案管理的經驗進行管委會的有效管理,包括 用雲端硬碟管理管委會相關檔案 用Google試算表管理各種工作與公設點交 利用專案管理技能追蹤所有待辦事項 在第一屆管委會將制度完善建立並資訊化,包括公告資訊化 過程中也學到許多公設相關知識並妥善結合工作上所需技能,總之,在這個位子上學到了許多的細節技能。 展望 關於2019年的展望,我自己也說不上來,但過去這一年有一個很重要的決定,就是重新開始寫文章,並將文章發表在網路,現在的文章很難做推廣行銷,要結合SEO等等技能,算是個練習,也是想將自己的許多經驗留下紀錄,希望新的一年結束之後可以讓文章突破兩百,目前有許多文章是之前的老文章,勉強可以突破100,但還是要穩紮穩打地寫出更多文章,期待一切如願。

軟體開發評估流程簡介

首先,軟體開發評估流程有兩種,一種是產品,一種是客製化。 產品是比較容易預估人力的,而且都是天價人天,但這邊說的容易只是一個比較值,還是有難度的,但變數跟客製化比起來會少上許多,主要的評估流程如下 可能有人會有不同想法,但應該不會有太大的差異才對,這裡面的重點包括 產品定義的確認 團隊的確認,包括開發與測試 時程的確認 行銷的確認 這裡面最重要的有人可能認為是開發團隊的成本評估,但這裡面要強調開發、測試與行銷的平衡,不應該只注重在開發的成本評估,畢竟這是個產品,所有人都會期待他不需要客製化就可以快速上線,而且品質穩定。   接下來是本文的重點─客製化成本,客製化成本評估流程可以參考下圖   這裡面有個重點是需求到底是甚麼,這個問題是很難有好的方案的,因為客戶永遠都會覺得你做的不是我要的,但客戶也說不出,這時候就需要進行需求發展,需求發展的過程會遇到很多溝通問題,絕大多數的心力會花在說服客戶你的方案才是他真正要的,或者說服客戶他要的東西是不可能做出來的,這是整個軟體開發評估最重要的流程,足以影響開發成敗,也可以預防客戶事後大幅修改系統範疇,因為客製化軟體是根據客戶量身訂製的,所以除非你很了解客戶真正要的,不然很難符合客戶的需求,當然,你也可以透過說服客戶使用產品來符合客戶的需求,但這一般是在客戶有預算問題的時候才會這樣處理。 以上簡單介紹軟體開發評估流程,請大家參考。 ※ 如果您想得到更多相關資訊,歡迎訂閱我的Udemy新課程"軟體工程兩三事",Udemy隨時都有優惠,價格很便宜,如果暫時調回原價,可以用以下連結前往訂閱 https://www.udemy.com/course/softengine/?referralCode=27A7A463769D3E25C793

[課程] 軟體工程兩三事

這是我最新的Udemy課程,會針對軟體工程的概念做個基本的介紹,並將一些實務上會碰到的問題一一說明,點選下圖可以前往課程首頁 目前共有七個章節,未來會再視狀況增加章節,目前七個章節分別描述 軟體開發會遇到的問題 需求分析與發展 系統分析與設計 專案管理 專案驗收 專案管理基礎 CMMI-DEV 對於這些領域的基本概念有興趣的朋友可以前往訂閱。 Udemy大都有一些很便宜的優惠價格,歡迎使用以下連結訂閱 https://www.udemy.com/course/softengine/?referralCode=27A7A463769D3E25C793 當然,如果有看到更好的價格就可以用更低的價格購買了。 相關資訊也可以參考本站文章:CMMI-DEV簡介、軟體開發評估流程簡介與軟體開發人天成本的計算方法等。
Worship to God.

回顧與展望 – 工作篇

0
回顧2018 過去一整年是人生變化很大的一年,從住了快20年的台北回到台中,從大型軟體客製化團隊轉變為小型雲端服務開發團隊,在這整個過程中學到了許多東西,有人問我是否後悔做下這麼重大的工作轉戾?我的回答是,儘管這個新環境讓我從舒適圈脫離,讓自己進入不同壓力境界,但我並不後悔,如果再做一次決定,我想我還是會放手一搏。 這一整年跟過去的軟體開發經驗有很大的不同點,過去強調的是以客為尊,他要客製化甚麼,我就給他甚麼,所以只要用人海戰術加上一些專案管理技巧就可以熟能生巧,儘管也是有客製化專案的壓力,但那個壓力並不難克服。今年的轉變是讓自己由技術的研究轉到行銷的體驗,開始要思考的是一個雲端服務平台要怎麼吸引客戶?如何行銷這個平台?如何去理解客戶到底要甚麼?如何將客戶帶進平台中使用並且留在平台之中?但這不代表技術不需要精進,過去的經驗都著重於系統後台的技術探索,但新系統的客戶並不在乎底層的效率,而是在乎前台是否符合使用者體驗,因此開始需要學習更多前台的開發技能,讓自己有更多的能力可以完成工作所需,過去根本不懂甚麼是SEO?甚麼是GA?甚麼是Google Cloud Platform?這些都是為了讓自己有解決問題能力所需要學習的領域。 在面臨一個新的產業,過去的許多思維都要妥善修正,營建業的客戶都有固定的工作模式,客戶要的並不是表面上的東西,而是要幫他解決遇到的問題,包括 輕易地找到所需資源:這個議題牽涉到了使用者體驗層面的問題,並不是把功能做好就可以,因此功能必須不斷精進 增進自我效率:客戶要的是增進效率,而不是用一個不熟悉的系統造成自己的效率更差 增加生意機會:有部分客戶期望在平台上找到更多的生意機會,所以要吸引的不只是營建廠商,也要吸引更多的終端客戶,而吸引終端客戶就需要讓這些客戶可以在平台中找到要的東西 這些都是這一整年慢慢學到的東西,隨著時間前進,可能會有更多的問題會遇到,也會學到更多東西。 展望2019 未來的一年,主要展望還是讓整個平台可以更貼近客戶所需,可以讓客戶在服務平台中輕易地取得他要的資料,讓客戶可以進一步找到自己需要的資源,並在平台中獲得他要的工作效率,如果要將這些量化,大概會是 流量的增加 使用者體驗的持續改善 更加貼近終端客戶的需求 更加貼近營建客戶的期望 持續增加會員 提供更多雲端服務 要達成這些目標,也是要增進自己更多的技能,包括 更熟悉前台開發技巧 找到更有效的團隊管理效率 學習更好的需求管理技能 發掘更好更有效率的開發框架 總之,要做的事情很多,要達成的目標很多,期望再過一年的回顧可以看到更多要改善的地方,讓自己與公司持續精進。

[課程] Linux概論─以CentOS 7為例

這是我在網路上的第一個課程,算是Linux入門課程,主要是很快說明一下Linux CentOS的基本概念 網址在  https://www.udemy.com/course/linuxcentos-7/?referralCode=9261A024CE3B1DF607DC 目前學生大約70名,因為Udemy的促銷價格並不貴,所以大家有興趣可以聽聽看 目前正在準備下一個課程,主要是講一些軟體功能的概念,從需求分析講到系統分析設計,然後繼續講到專案管理與驗收議題,敬請期待。 同時也歡迎參觀本站與Linux相關的文章。

甚麼是RWD

RWD是指Responsive Web Design,翻譯成響應式網頁設計,他的意思就是會根據畫面的條件呈現不同結果,例如在電腦上是一個樣子,在手機上是一個樣子,在平版上又是一個樣子,那該怎麼做這樣的設計,目前主要都是透過CSS技術來達成,在CSS語法中指定螢幕寬度來決定要用甚麼方式呈現,一般大都會分為 PC:寬度在768px以上一般都會被當成PC 平板:一般是指寬度在768px以內的螢幕 手機:一般是指寬度在360px以內的狀況,不過大都會讓手機和平板設計一樣,所以分介一般式在768px 所以我們會在CSS中針對寬度作設定,下面是個範例 @media only screen and (max-width: 768px) {display: block;}@media only screen and (max-width: 480px) {display: flex;}@media only screen and (max-width: 320px) {display: inline-flex;} 上面這一段就是分別對不同的寬度作不同的dispay風格作設定,不過這只是個小範例,如果你沒用過CSS,看不懂是正常的,只是讓你知道程式設計師平常條畫面時大概是在幹嘛,而且真正的CSS調整不會是單純這樣的格式,比較可能像下面這個樣子,他的目的是把一張底圖放進某個區塊 @media...

ISO 9001:2015

我們常常在說ISO,但你真的知道ISO是指甚麼嗎?其實ISO是一個組織名稱,他代表International Organization for Standardization,主要是用來做一些國際標準的定義,那我們常常在說你的公司有沒有做ISO,指的又是甚麼,其實這邊指的是ISO 9000這一組標準,其中包括 ISO 9000:ISO 9000的主要詞彙與定義指引 ISO 9001:ISO 9000的主要要求 ISO 9004:ISO 9000績效改善指引 ISO 19001:ISO 9000環境審核指南 因此我們在說的ISO應該是指ISO 9001,尤其公司有研發性質的就會以ISO 9001為主要要求規範,ISO 9000有幾個版本,第一個版本為1987版,接下來為1994→2000→2008,最新版本為2015,以下大致介紹ISO 9001:2015的精隨。 下圖是ISO很重要的一個概念,所有ISO的的流程都叫做Process,他的重點是要讓某些輸入資訊轉化(transform)為有用的資訊,而不是GIGO(Garbage In Garbage Out),也就是說進入時是垃圾沒關係,但出來之後要變成有用的資訊,如果輸出的資訊是沒用的,那這個Process就是個失敗的流程。 那公司有那些資訊是需要做轉化的呢?每個公司因為性質不同而有不同的結果,例如研發團隊的客行性評估就是一個Process,在這樣的過程中,我們會收集相關的輸入資訊,包括各單位意見、市場分析等等資訊,經過可行性評估的過程,可能包括評估報告的撰寫、開會與會簽等等,最後輸出成可行性評估報告,便可以用來決定是否進行這個專案計畫,這就是ISO文件要定義的資訊,這並不代表ISO要寫一大堆報告,他只是要各個公司是著找出對自己最有用的流程,有些傳產公司的ISO也許只有一張A4文件就夠了,但研發團隊的文件可能就會很多,因為他有很多研發要遵守的流程。 ISO有幾個很重要的工作要做,包括 ...

軟體開發人天成本的計算方法

軟體開發成本的正確與否關係到專案的成敗,很多人都無法理解為何人天成本這麼高,如果可以好好解釋為何需要這麼多,客戶應該比較能理解為何這麼昂貴。之前有幫人規畫過形象網站,他們的目的是要有一個屬於自己的網站來做產品行銷,因為官網代表著公司的形象,也是進行網路行銷的入門磚,但是當我告訴他一個有些許客製化的形象網站可能會落在三到五萬,對方的反應是,怎麼這麼高,我問他的預算在哪,他也講不出來,我猜他可能覺得一個網站大概只要三到五千吧,這篇文章主要是想讓大家知道軟體開發的人力成本是如何計算的,但這並不是唯一個算法,只是一種大家比較常用來計算的方法。 人天評估流程的問題另有專文說明,這邊想要解釋的是為什麼一個人天經常會被估成8,000台幣,這有兩個參考理論,第一個是以月薪為假設,我們假設一個還不錯的開發工程師一個月月薪是45,000,那一個月上班22天,他每一天的成本大約會是2,000,如果把公司的開銷都放進去的話,經常會乘以2,也就是4,000元的成本,假設公司獲利20%,大概就是5,000元左右,那3,000的差距為何會存在,因為他是用來配合幾個可能成本 被殺價 需求被一改再改 客戶不配合驗收 因此8,000是一個比較好的起點,但有很多地方已經把價格殺到5,000-6,000,其實根本沒空間了。 另外一個參考資料是採用比較有公信力的一些建立,尤其是資策會公布的『資訊委外服務人員計價參考要點』,可以到以下連結下載 http://admin.must.edu.tw/upfiles/ADUpload/c23_downmul1330722846.pdf 或者政府提供的『資訊服務委外經費估算原則』,連結如下 https://www.dgbas.gov.tw/public/Data/9821937570ZT9Y70G.pdf 這兩個規範都是將軟體系統分成第一類、第二類與第三類,他的區分主要是系統的規模以及需要的人月,而一般的系統會是第一類和第二類為主,所以他的建議是一個開發工程師的月成本大約是15萬台幣,除以22天,大約是7,000元,基於上面說到的殺價需求,一般大概也會加到8,000元整,因此,這是一個比較有理論基礎的算法。 如果你發現有人跟你說,我一天只要2,000,這時候你就要考慮一下是否要採用這個廠商,因為根據上面的算法,一個月薪45,000的工程師,一天的成本大概就要4,000,而且公司完全不賺錢,假設今天公司用22,000找了一個工程師來寫程式,公司都不賺錢也要2,000,那這家公司要賺甚麼,他也許只是要你的頭期款,然後你的專案也許永遠不會結案,因此一個比較合理的人天價格建議是6,000元,低於這個就可能會有品質問題,這也會是一個正規軟體公司會想要守住的一道牆,低於這道牆可能就無法維持公司的運作。 一分錢一分貨,以上給大家參考。