- 翻譯公司資訊
-
世聯(lián)翻譯公司完成安全系統中文翻譯
發(fā)布時(shí)間:2018-02-12 08:46 點(diǎn)擊:
世聯(lián)翻譯公司完成安全系統中文翻譯
- 目的:
- 建議:
-
需要增強輔助工具.
- 定義:能夠提高工作效率(減少錯誤、降低重復性工作難度和時(shí)間)的非產(chǎn)品核心的工具。
- 事例:安裝過(guò)程需要配置文件(這可能會(huì )因為安裝人員不熟悉技術(shù)或者操作系統而增長(cháng)了安裝的時(shí)間并容易產(chǎn)生錯誤,還有培訓新員工的成本也比較高。安裝人員,需要對linux的了解、需要熟悉我們的系統、需要對照篇幅較長(cháng)的說(shuō)明)。
- 建議:對于重復性的復雜的工作,我們一次性投入資源進(jìn)行輔助性工具的開(kāi)發(fā).
-
好處:
- 減少持續性投入成本。
- 縮短重復性工作的時(shí)間。
- 降低人工出錯的可能。
- 降低對安裝人員技術(shù)和水平的要求。
- 減少培訓成本。
- 簡(jiǎn)化了復雜的工作,縮短幫助手冊的篇幅。
-
缺點(diǎn):
- 增加了非核心功能的投入(分析、開(kāi)發(fā)、測試、文檔)。
- 需要定期維護工具。(新需求、需求變化等)
-
分析和總結:
- 從上邊的優(yōu)缺點(diǎn)對比中,我們看出大部分重復性、操作復雜的工作,我們都可以用一次性的投入換來(lái)較大的收益。我們只要識別出這些工作并進(jìn)行輔助工具的開(kāi)發(fā)來(lái)解決這些問(wèn)題。
-
關(guān)于工作模式。
- 環(huán)境:由于現今的商業(yè)化軟件需求趨于復雜化,定制化,需求膨脹和需求快速變化成為了一個(gè)很大的問(wèn)題。
- 分析:我對于這種現狀提出了一個(gè)比較好的實(shí)現方式,這并不一定特別的適合我們現有的工作模式,但是我希望其中的一些優(yōu)秀的實(shí)踐方法可以作為我們的參考。
- 工作模式流程圖:
-
解釋?zhuān)荷线厛D例中,左側是瀑布模型的簡(jiǎn)單圖例,右邊是基于XP極限編程的一種開(kāi)發(fā)模式實(shí)踐
-
需求分析:
- 首先理解用戶(hù)需求,將其梳理成軟件需求列表。
-
需求分類(lèi)
- 關(guān)鍵需求(高風(fēng)險、復雜)10%,影響項目成敗,需要盡早處理,減低風(fēng)險,合理評估項目計劃的關(guān)鍵。
- 主要需求20%,項目的主體,不容易發(fā)生改變,完成將增加士氣。
- 高增值需求 40%,低投入高產(chǎn)出(易用性等需求),盡量不在第一迭代處理,完成將增加用戶(hù)滿(mǎn)意度。
- 低增值需求20%,高投入低產(chǎn)出(用戶(hù)可能不會(huì )使用的功能),盡量延遲開(kāi)發(fā),時(shí)間緊迫的情況下,有時(shí)到后期客戶(hù)自己就會(huì )主動(dòng)放棄這些需求。
- 錯誤需求:不應該做的需求和客戶(hù)也沒(méi)有描述清楚,或者他自己也沒(méi)有想明白的需求。這部分如果是不應該做的需求就用延遲開(kāi)發(fā)的辦法處理,如果是不明確的需求要等到和用戶(hù)明確了需求,再重新分類(lèi)到其他類(lèi)型中。(當然為了避免無(wú)必要的爭執,我們一般是不會(huì )對用戶(hù)說(shuō)這是錯誤的需求的,我們可以告訴他這是低附加值的需求,到項目后期,隨著(zhù)他們對項目的了解,他們會(huì )明白的)。
- 做迭代計劃,大約以1周到1個(gè)月甚至幾個(gè)月為1迭代(這要視工程的規模決定)大概3-5個(gè)迭代是比較適宜的。
-
需求分析:
中間的迭代我們應該根據需求的優(yōu)先級進(jìn)行分配,先完成高附加值的需求,而推延低附加值的需求,這點(diǎn)客戶(hù)是可以接受的。隨著(zhù)項目的推進(jìn),客戶(hù)也越來(lái)越明白他們自己想要的是什么,當他看到主要功能和高附加值功能都很好的運行時(shí),我們把關(guān)注點(diǎn)集中在低附加值的需求上,這時(shí)客戶(hù)往往會(huì )根據成本(主要指時(shí)間)和產(chǎn)出比,做出比較合理的取舍。
- 接下來(lái)我們做項目的初步架構,這次架構應盡可能考慮到可擴展性、易維護性、易測試性、安全等軟件指標,然后在項目迭代過(guò)程中,不斷反思和完善架構。
-
迭代(開(kāi)發(fā)組)
- 首先是修改上一次迭代中測試組提出的問(wèn)題。
- 然后進(jìn)行關(guān)于本次迭代的細致需求分析。
- 然后進(jìn)行軟件設計。
- 當設計遇到不好處理的情況時(shí),重新審視我們的架構,并在需求時(shí),重構。
- 進(jìn)行組件層的白盒單元測試(組件好比一臺機器的零件),由于它是業(yè)務(wù)無(wú)關(guān)的,所以功能穩定,開(kāi)發(fā)組能夠更好的測試它保證質(zhì)量(代碼和測試代碼的時(shí)間投入比例大約是1:1的),這將覆蓋代碼路徑測試和邊界測試等白盒單元測試相關(guān)的情況。
- 定期進(jìn)行代碼審查和走查工作,這將保證代碼質(zhì)量在一定得級別以上,并可以提高初級員工的能力。
- 提交本迭代的代碼給測試組。
-
迭代(測試組)
- 測試用例設計(主要關(guān)注在邏輯組件層),這是業(yè)務(wù)相關(guān)也容易變化的,測試人員要根據需求的變化不斷的更新。這要覆蓋正常流程異常流程,覆蓋所有業(yè)務(wù)分支。
- 測試上一個(gè)迭代的產(chǎn)品。
- 回歸測試。
- 提交測試報告(BUG列表)。
- 提交一個(gè)迭代的產(chǎn)品給客戶(hù)(給他們信心和信任,并階段性的給他們一個(gè)逐步深入了解真實(shí)需求的機會(huì ))
- 對下個(gè)迭代進(jìn)行初步的分析,并用圖形的方式(只是畫(huà)圖而不用代碼)把我們的想法提前可客戶(hù)進(jìn)行交流,盡可能早的取得下一個(gè)迭代功能相關(guān)的真實(shí)需求。
- 總結本迭代遇到的問(wèn)題,并考慮應對方法,在下一個(gè)迭代進(jìn)行實(shí)踐來(lái)驗證他。
- 迭代結束,定期的慶祝一下給項目的成員信心,并稍微緩解下大家緊繃神經(jīng),讓大家調整好狀態(tài),以應對下一個(gè)迭代。
- 當所有迭代都結束時(shí),可能還有一些維護工作。其實(shí)在迭代過(guò)程中已經(jīng)在進(jìn)行DEBUG等維護工作,如果剩下的需求很多。(這將是一個(gè)新的項目,有新的合同和新的收入,我們不應該無(wú)償的做太多額外的工作,除非我們認為值得)。
-
關(guān)于軟件設計方面,在需求變化快速的今天,我們要適當的增加可擴展性和易維護性的投入。無(wú)論什么項目都有相對固定的部分、相對變化的部分,我們在容易變化的部分的設計投入將會(huì )降低我們因為變化產(chǎn)生的成本。下邊我會(huì )舉一個(gè)設計的例子用來(lái)說(shuō)明這個(gè)問(wèn)題。
- 需求:軟件工作流
- 場(chǎng)景:流程經(jīng)常變化、會(huì )增加新的工作節點(diǎn)
- 類(lèi)圖和構建圖(只是為了說(shuō)明問(wèn)題的簡(jiǎn)化設計)
-
說(shuō)明:
- 首先把實(shí)際的工作流節點(diǎn)從主流程中抽離出來(lái),采用接口模式以庫的形式動(dòng)態(tài)加載,能夠解決新增工作流的問(wèn)題。
- 另外用工具可視化編輯工作流能力降低配置的風(fēng)險(手工錯誤)和減少時(shí)間、降低配置難度。
-
一些非功能性的內部需求(區別于用戶(hù)需求):
- 可擴展性,在易發(fā)生變化的部分,利用設計模式做一些可擴展的設計,這雖然會(huì )增加設計的難度,增加開(kāi)發(fā)的時(shí)間,但是當你發(fā)現一個(gè)新的需求或者需求變更,因為我們的設計只用配置或者很少的很獨立的代碼就可以解決時(shí),你將會(huì )覺(jué)得這個(gè)設計時(shí)超值的。
- 易維護性,在經(jīng)常需要維護的部分增加設計。比如說(shuō):一個(gè)日志服務(wù),能讓我們方便的記錄和查詢(xún)想要的日志信息,這個(gè)組件就是很有意義的。再舉個(gè)例子,有的 XML文件需要經(jīng)常的修改(關(guān)于用戶(hù)界面樣式的定制配置文件),我們寫(xiě)一個(gè)工具去可視化的配置,能夠提高這種效率。
- 易測試性,我們需要白盒測試的組件,不光需要容易看懂,而且需要容易測試,這方面的工作,有時(shí)會(huì )同時(shí)達到高內聚低耦合的高質(zhì)量設計的效果。
- 安全性,安全性需求要盡早進(jìn)行分析,當項目已經(jīng)完成時(shí),你再想提高他就難了。比如數據傳輸保密性、權限控制…
-
建議采取的其他實(shí)踐:
- 結對編程測試,兩個(gè)人互相寫(xiě)對方的白盒測試,互相代碼審查。
- 市場(chǎng)人員,架構設計師,主要開(kāi)發(fā)人員、測試經(jīng)理和客戶(hù)定期的交流討論,可以拉近大家的距離并達到集思廣益的效果。
- 定期代碼走查,將提高整體團隊的水平并讓更多人熟悉別人完成的部分。
- 我的建議包括了,在需求變動(dòng)頻繁年代中,我所遇到或者聽(tīng)到的問(wèn)題的解決建議,有些來(lái)自cogent,有些來(lái)自其他公司,可能這并不能很適當的應對我們現在遇到的問(wèn)題。但很喜歡我們公司主動(dòng)去了解分析并嘗試解決問(wèn)題的工作態(tài)度。有什么針對性的問(wèn)題嗎,或者以后以郵件或者其他形式交流,我希望morpho中國能為整個(gè)公司發(fā)揮更大的作用。世聯(lián)翻譯公司完成安全系統中文翻譯