方便閱讀。
4. action工程師,根據(jù)業(yè)務(wù)的需求寫Action類(兼配置文件)以控制用戶數(shù)據(jù)交互,主要依據(jù)UI工程師的結(jié)果并調(diào)用Service工程師寫的接口。在Action中不執(zhí)行業(yè)務(wù)邏輯,只做一些簡單的界面邏輯判斷和數(shù)據(jù)封裝。比如把頁面提交的數(shù)據(jù)封裝為類的實例,或者從會話中取得用戶的狀態(tài)。
5.service工程師,根據(jù)業(yè)務(wù)的需求寫service接口和實現(xiàn)(兼配置文件),供Action工程師調(diào)用,service的實現(xiàn)依賴于dao工程師的接口。在service層,把action的調(diào)用作為一個業(yè)務(wù)進行封裝,并返回業(yè)務(wù)執(zhí)行的結(jié)果,比如,在action層調(diào)用登陸驗證,在service層進行驗證,驗證成功后填寫用戶登錄日志。是否填寫用戶登錄日志這樣的業(yè)務(wù)對于action的調(diào)用者是未知的,action只調(diào)用service的接口并對返回結(jié)果進行判斷。
6. dao工程師,顧名思義,dao工程師提供dao接口和實現(xiàn)(兼配置文件),供service層使用,dao層只關(guān)注的數(shù)據(jù)的存取,并返回封裝后的結(jié)果。在dao層不應(yīng)該包含任何業(yè)務(wù)邏輯判斷的代碼。
7.db工程師,根據(jù)業(yè)務(wù)需求設(shè)計滿足業(yè)務(wù)需求的數(shù)據(jù)庫定義,并對數(shù)據(jù)庫進行相應(yīng)的優(yōu)化,提交的內(nèi)容為數(shù)據(jù)庫定義的Sql語句、相應(yīng)的說明文檔,以及包含測試數(shù)據(jù)的sql語句。
8. test工程師,測試工程師的主要工作是對action層,service層,dao層,數(shù)據(jù)庫寫測試代碼,包括測試類和測試的sql語句。
9. 綜合管理角色(可以為團隊中的任何人),主要工作為開發(fā)環(huán)境的搭建,代碼版本控制,編程規(guī)范擴展,代碼規(guī)范執(zhí)行檢查,爭端仲裁,進度控制,技術(shù)選擇。并隨時準備為團隊中遇到困難的成員解決問題。這個角色很重要,必須能有單獨的一個人能有足夠的時間解決團隊的問題,并為團隊中的成員提供技術(shù)支持等服務(wù),這個角色在某些特定的場景下可以由團隊中的任何人承擔,尤其在技術(shù)咨詢方面,部分團隊成員對某一個特定問題的理解更深刻。
以上9種角色可以進行合并,在中小軟件公司中,由于資源的限制,不得不合并一些角色。美工可以擔任部分UI工程師角色,service工程師可以同時擔任dao,db,test工程師角色,action工程師擔任部分UI工程師,項目經(jīng)理擔任綜合管理和需求調(diào)研角色。在需求確定的情況下,一個用例經(jīng)過充分溝通后,應(yīng)該產(chǎn)生以下幾種類型的文檔:數(shù)據(jù)庫設(shè)計,dao接口,service接口,action類,UI數(shù)據(jù)交互,界面設(shè)計,測試代碼。這些文檔需要團隊成員共同討論并確認,以此形成項目任務(wù),作為制定項目計劃的參考。
無論團隊人員有多少,對于一個好的項目實現(xiàn)來說,研發(fā)團隊中應(yīng)該包含以上角色。這樣做的好處是:團隊成員任務(wù)明確,分工精細,責任到位,合作愉快,方便制定計劃。這樣寫出來的程序方便擴展和維護,遇到問題時可以快速定位并進行響應(yīng),有利于制定代碼規(guī)范,新團隊成員能較快的融入團隊,增強項目的可延續(xù)性(部分團隊成員的流動不會對程序的開發(fā)造成大的損失,很少出現(xiàn)只有一個成員了解某些代碼邏輯的情況)。Good Luck,祝愿你所在的團所有成員合作愉快。
本文出自 “凌輝” 博客,請務(wù)必保留此出處http://tianli.blog.51cto.com/190322/213915