Managing Technical Debt: Reducing Friction in Software Development
暫譯: 管理技術負債:減少軟體開發中的摩擦

Kruchten, Philippe, Nord, Robert, Ozkaya, Ipek

買這商品的人也買了...

相關主題

商品描述


"This is an incredibly wise and useful book. The authors have considerable real-world experience in delivering quality systems that matter, and their expertise shines through in these pages. Here you will learn what technical debt is, what is it not, how to manage it, and how to pay it down in responsible ways. This is a book I wish I had when I was just beginning my career. The authors present a myriad of case studies, born from years of experience, and offer a multitude of actionable insights for how to apply it to your project."
-Grady Booch, IBM Fellow
Master Best Practices for Managing Technical Debt to Promote Software Quality and Productivity
As software systems mature, earlier design or code decisions made in the context of budget or schedule constraints increasingly impede evolution and innovation. This phenomenon is called technical debt, and practical solutions exist. In Managing Technical Debt, three leading experts introduce integrated, empirically developed principles and practices that any software professional can use to gain control of technical debt in any software system.

Using real-life examples, the authors explain the forms of technical debt that afflict software-intensive systems, their root causes, and their impacts. They introduce proven approaches for identifying and assessing specific sources of technical debt, limiting new debt, and "paying off" debt over time. They describe how to establish managing technical debt as a core software engineering practice in your organization.

  • Discover how technical debt damages manageability, quality, productivity, and morale-and what you can do about it
  • Clarify root causes of debt, including the linked roles of business goals, source code, architecture, testing, and infrastructure
  • Identify technical debt items, and analyze their costs so you can prioritize action
  • Choose the right solution for each technical debt item: eliminate, reduce, or mitigate
  • Integrate software engineering practices that minimize new debt

Managing Technical Debt will be a valuable resource for every software professional who wants to accelerate innovation in existing systems, or build new systems that will be easier to maintain and evolve.

商品描述(中文翻譯)

「這是一本非常智慧且實用的書。作者在交付重要的高品質系統方面擁有相當的實務經驗,他們的專業知識在這些頁面中熠熠生輝。在這裡,您將學習什麼是技術負債、什麼不是技術負債、如何管理技術負債,以及如何以負責任的方式償還技術負債。這是一本我希望在剛開始我的職業生涯時就能擁有的書。作者提供了無數的案例研究,這些案例源自多年的經驗,並提供了多種可行的見解,幫助您將其應用於您的專案。」
-Grady Booch, IBM Fellow
掌握管理技術負債的最佳實踐,以促進軟體質量和生產力
隨著軟體系統的成熟,早期在預算或時間限制下所做的設計或程式碼決策越來越妨礙演進和創新。這種現象稱為技術負債,並且存在實用的解決方案。在管理技術負債一書中,三位領先的專家介紹了任何軟體專業人員都可以用來控制任何軟體系統中技術負債的綜合、經驗性發展的原則和實踐。

作者使用真實案例來解釋影響軟體密集系統的技術負債形式、其根本原因及其影響。他們介紹了識別和評估特定技術負債來源的有效方法,限制新負債,以及隨著時間的推移「償還」負債的策略。他們描述了如何在您的組織中建立將管理技術負債作為核心軟體工程實踐的方式。
  • 了解技術負債如何損害可管理性、質量、生產力和士氣,以及您可以採取的措施
  • 澄清負債的根本原因,包括業務目標、源代碼、架構、測試和基礎設施之間的聯繫角色
  • 識別技術負債項目,並分析其成本,以便您可以優先採取行動
  • 為每個技術負債項目選擇合適的解決方案:消除、減少或緩解
  • 整合最小化新負債的軟體工程實踐

管理技術負債將成為每位希望加速現有系統創新或構建更易於維護和演進的新系統的軟體專業人員的寶貴資源。

作者簡介

Philippe Kruchten is a professor of software engineering at the University of British Columbia in Vancouver, Canada. He joined academia in 2004, after a 30]-year career in industry, where he worked mostly with large software-intensive systems design in the domains of telecommunication, defense, aerospace, and transportation. Some of his experience in software development is embodied in the Rational Unified Process (RUP), whose development he directed from 1995 until 2003. He's the author or co-author of Rational Unified Process: An Introduction (Addison-Wesley, 1998), RUP Made Easy: A Practitioner's Guide (Addison-Wesley, 2003), and Software Engineering with UPEDU (Addison-Wesley, 2003), as well as earlier books about programming in Pascal and Ada. He received a doctoral degree in information systems (1986) and a mechanical engineering degree (1975) from French engineering schools.

Robert Nord is a principal researcher at the Carnegie Mellon University Software Engineering Institute, where he works to develop and communicate effective methods and practices for agile at scale, software architecture, and managing technical debt. He is coauthor of the practitioner-oriented books Applied Software Architecture (Addison-Wesley, 2000) and Documenting Software Architectures: Views and Beyond (Addison-Wesley, 2011) and lectures on architecture-centric approaches. He received a PhD in computer science from Carnegie Mellon University and is a distinguished member of the ACM.

Ipek Ozkaya is a principal researcher at the Carnegie Mellon University Software Engineering Institute. Her primary work includes developing techniques for improving software development efficiency and system evolution, with an emphasis on software architecture practices, software economics, agile development, and managing technical debt in complex, large-scale software-intensive systems. In addition, as part of her responsibilities, she works with government and industry organizations to improve their software architecture practices. She received a PhD in Computational Design from Carnegie Mellon University. Ozkaya is a senior member of IEEE and the 2019--2021 editor-in-chief of IEEE Software magazine.

作者簡介(中文翻譯)

菲利普·克魯赫滕是加拿大不列顛哥倫比亞大學的軟體工程教授。他於2004年進入學術界,此前在業界擁有30年的職業生涯,主要從事大型軟體密集系統設計,涵蓋電信、國防、航空航天和交通運輸等領域。他在軟體開發方面的一些經驗體現在理性統一過程(Rational Unified Process, RUP)中,他自1995年至2003年負責該過程的開發。他是Rational Unified Process: An Introduction(Addison-Wesley, 1998)、RUP Made Easy: A Practitioner's Guide(Addison-Wesley, 2003)和Software Engineering with UPEDU(Addison-Wesley, 2003)的作者或合著者,並且還曾撰寫過有關Pascal和Ada編程的早期書籍。他於1986年獲得資訊系統博士學位,1975年獲得機械工程學位,均來自法國的工程學校。

羅伯特·諾德是卡內基梅隆大學軟體工程研究所的首席研究員,他致力於開發和傳播有效的方法和實踐,以實現大規模敏捷開發、軟體架構以及管理技術負債。他是面向實務的書籍Applied Software Architecture(Addison-Wesley, 2000)和Documenting Software Architectures: Views and Beyond(Addison-Wesley, 2011)的合著者,並且講授以架構為中心的方法。他獲得了卡內基梅隆大學的計算機科學博士學位,並且是ACM的傑出會員。

伊佩克·奧茲卡亞是卡內基梅隆大學軟體工程研究所的首席研究員。她的主要工作包括開發提高軟體開發效率和系統演進的技術,重點在於軟體架構實踐、軟體經濟學、敏捷開發以及在複雜的大型軟體密集系統中管理技術負債。此外,作為她職責的一部分,她與政府和行業組織合作,以改善其軟體架構實踐。她獲得了卡內基梅隆大學的計算設計博士學位。奧茲卡亞是IEEE的資深會員,並擔任IEEE Software雜誌的2019至2021年主編。