作為 <現代軟體工程> 的一個作業,  我要求同學們把 英文的敏捷開發原則 翻譯成中文並解釋。 大部分同學都提供了持續重構, 不斷提高的版本。 技術翻譯專家餘晟老師也對其中較難翻譯的三條原則提了很好的建議。 下面是我的嘗試, 翻譯要做到 信, 達, 雅, 很難,  而且中國的軟體工程實踐有自己的特色, 別家的格言警句有時候未必能引起共鳴。不管如何, 我們先得有一個靶子, 然後大家才能拍磚, 是不是?  歡迎提意見。


1: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software



2: Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage

翻譯:敏捷流程歡迎需求的變化, 並利用這種變化來提高使用者的競爭優勢。


3: Deliver working software frequently, from a couple of weeks to a couple of months, with a preference for the shorter timescale



(Team1 MicroTeam 的翻譯)


4: Business people and developers must work together daily throughout the project. 



5: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 



6: The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.



(Team2 ASE 的翻譯)


7: Working software is the primary measure of progress.

翻譯: 可用的軟體是衡量專案進展的主要指標


8: Agile processes promote sustainable development.  The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

翻譯: 敏捷流程應能保持可持續的發展。 領導, 團隊和使用者應該能按照目前步調持續合作下去。


9: Continuous attention to technical excellence and good design enhances agility.

翻譯: 只有不斷關注技術和設計才能越來越敏捷.


(由於某種尚未明瞭的原因, Team3 沒有翻譯這一段, 他們翻譯了4-6, 10-12, 但是就是沒有翻譯 7-9).


10: Simplicity–the art of maximizing the amount of work not done–is essential.

翻譯: 保持簡明 – 儘可能簡化工作量的技藝 – 極為重要。英文說 maximizing the amount of work not done.  我的理解是 – 任何還沒有明確的工作都會花不可知的時間,因此要 maximize,  不要把那些還沒有做的工作和正在做的工作混起來。      


11: The best architectures, requirements, and designs emerge from self-organizing teams.

翻譯: 只有能自我管理的團隊才能創造優秀的架構, 需求和設計.


12: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

翻譯: 時時總結如何提高團隊效率, 並付諸行動。

(Team4 CodingCrazy 的翻譯)