CPE is a software developing methodology focuses on serving the needs of standalone software developers, and small work teams that work on developing small systems. For big projects, CPE also can be used within other methodologies, where independent small teams can use it to achieve their own targets as long as the integration with the overall designs and plans is been taken into account.
Books Guide: Agile & Lean Software Development
Agile & Lean Software Development
A new agile book with many exercises for facilitating retrospectives, supported with the “what” and “why” of retrospectives, the business value and benefits that they bring, and advice for introducing and improving retrospectives.
This is a book for agile coaches, scrum masters, project managers, product managers and facilitators who already have some experience with retrospectives.
Great user experiences (UX) are essential for products today, but designing one can be a lengthy and expensive process. With this practical, hands-on book, you’ll learn how to do it faster and smarter using Lean UX techniques. UX expert Laura Klein shows you what it takes to gather valuable input from customers, build something they’ll truly love, and reduce the time it takes to get your product to market.
Many software projects fail unnecessarily because of unclear objectives, redundant and unproductive work, cost overruns, and a host of other avoidable process problems. In response, agile processes and lightweight tooling have begun to replace traditional engineering processes throughout the development lifecycle.
This book presents a fresh approach that is tested by fire: developed by the author in over twenty years of experience hiring software professionals at both small companies and large. Drawing on principles from the "agile" software development movement, this book offers a different way to think about hiring.
This comprehensive set of cards is an indispensable resource for agile teams. The deck of Agile in a Flash cards teaches leadership, teamwork, clean programming, agile approaches to problem solving, and tips for coaching agile teams. Team members can use the cards as reference material, ice breakers for conversations, reminders (taped to a wall or monitor), and sources of useful tips and hard-won wisdom.
Agile has become today’s dominant software development paradigm, but agile methods remain difficult to measure and improve. Essential Skills for the Agile Developer fills this gap from the bottom up, teaching proven techniques for assessing and optimizing both individual and team agile practices.
Are you a software developer? Do you manage software developers? Are you using scrum? Are you thinking of using scrum? Then you must have this book!
Scrum is the most popular agile software development process in use today, but implementing it has proven difficult for many people. Dan and Doug wrote this book in order to help people with their implementations of Scrum.
Great emphasis is typically placed on the “mechanics” of agile development--its processes and tools. It’s easy to forget that the Agile Manifesto values individuals and interactions ahead of processes and tools. You can gain powerful benefits by refocusing on the people side of agile development. This book will show you how.
Making Sense of Agile Project Management helps project managers think outside the box by presenting a deep exploration of agile principles, methodologies, and practices.
In many organizations, management is the biggest obstacle to successful Agile development. Unfortunately, reliable guidance on Agile management has been scarce indeed. Now, leading Agile manager Jurgen Appelo fills that gap, introducing a realistic approach to leading, managing, and growing your Agile team or organization.
This is the first comprehensive, practical guide for Scrum practitioners working in large-scale distributed environments. Written by three of IBM’s leading Scrum practitioners—in close collaboration with the IBM QSE Scrum Community of more than 1000 members worldwide—this book offers specific, actionable guidance for everyone who wants to succeed with Scrum in the enterprise.
Agile Development and Business Goals describes a unique, state-of-the-art methodology that aligns the critical but often "silo-ed" software development process with core company goals. Eschewing long-winded "agile philosophy" in favor of a formally prioritized process, this book serves as a distilled learning guide for managing technical resources in a manner that directly boosts your bottom line.
Organizations are constantly struggling with complex development projects and are in search for a few, straightforward, and easy to learn methods to help deal with their problems. For this reason, more and more software companies are rapidly turning to Agile development to cope with fast changing markets, unknown or changing product requirements, borderless competition, and to solve complex problems.
Game development is in crisis—facing bloated budgets, impossible schedules, unmanageable complexity, and death march overtime. It’s no wonder so many development studios are struggling to survive. Fortunately, there is a solution. Scrum and Agile methods are already revolutionizing development outside the game industry. Now, long-time game developer Clinton Keith shows exactly how to successfully apply these methods to the unique challenges of game development.
In "Agile Product Management with Scrum," leading Scrum consultant Roman Pichler uses real-world examples to demonstrate how product owners can create successful products with Scrum. He describes a broad range of agile product management practices, including making agile product discovery work, taking advantage of emergent requirements, creating the minimal marketable product, leveraging early customer feedback, and working closely with the development team.
Agile approaches are business practices with a proven track record for helping organizations achieve greater efficiency, higher-quality outputs and increased customer satisfaction. They enable organizations to avoid the trappings of extensive up-front planning and up-front budget commitments by encouraging staff to regularly produce high-value business outputs; and by basing ongoing financial and resource commitments on the delivered outcomes.
All software projects face the challenges of diverse distances -- temporal, geographical, cultural, lingual, political, historical, and more. Many forms of distance even affect developers in the same room. The goal of this book is to reconcile two mainstays of modern agility: the close collaboration agility relies on, and project teams distributed across different cities, countries, and continents.
As an agile coach, you can help project teams become outstanding at agile, creating products that make them proud and helping organizations reap the powerful benefits of teams that deliver both innovation and excellence.
This book offers a start-to-finish blueprint for melding CMMI and agile process improvement methodologies. It presents six detailed case studies, along with essential real-world lessons, big-picture insights, and mistakes to avoid.
Kanban is becoming a popular way to visualize and limit work-in-progress in software development and information technology work. Teams around the world are adding kanban around their existing processes to catalyze change and deliver better business agility.
This book shares practical tips, examples, and case studies to help you establish a culture of continuous improvement to deliver IT operational excellence and business value to your organization.
This is the first start-to-finish, real-world guide to ATDD for every agile project participant. Leading agile consultant Ken Pugh begins with a dialogue among a customer, developer, and tester, explaining the “what, why, where, when, and how” of ATDD and illuminating the experience of participating in it.
In Managing Software Debt, leading Agile expert Chris Sterling shows how understanding software debt can help you move products to market faster, with a realistic plan for refactoring them based on experience.
A Tale of Two Systems: Lean and Agile Software Development for Business Leaders reviews two different fictional systems development projects: Cremins United (CU) and Troubled Real Estate Information Management (TRIM). Both were done at the imaginary Cremins Corporation, a venerable printing company trying to transform itself to survive in the Internet age.
To lead change, you need to expand your toolkit, and this book gives you the tools you need to make the transition from agile practitioner to agile coach.
Agile Coaching is all about working with people to create great agile teams. You'll learn how to build a team that produces great software and has fun doing it. In the process, you'll grow a team that's self-sufficient and skillful.
Best practices for managing projects in agile environments–now updated with new techniques for larger projects
Software Development is moving towards a more agile and more flexible approach. It turns out that the traditional "waterfall" model is not supportive in an environment where technical, financial and strategic constraints are changing almost every day. But what is agility? What are today’s major approaches? And especially: What is the impact of agile development principles on the development teams, on project management and on software architects?
Agile methods are revolutionizing software development, and one of the key principles of agile development is that developers write tests. But if that's the case, what’s the role of a tester? Do agile teams need members with QA backgrounds? And what does it really mean to be an "agile tester?"
In an IT world in which there are differently sized projects, with different applications, differently skilled practitioners, and on-site, off-site, and off-shored development teams, it is impossible for there to be a one-size-fits-all agile development and testing approach. This book provides practical guidance for professionals, practitioners, and researchers faced with creating and rolling out their own agile testing processes.
You want to write professional-grade applications: Rails is a full-stack, open-source web framework, with integrated support for unit, functional, and integration testing. It enforces good design principles, consistency of code across your team (and across your organization), and proper release management.
Many books discuss Agile from a theoretical or academic perspective. Becoming Agile takes a different approach and focuses on explaining Agile from a case-study perspective. Agile principles are discussed, explained, and then demonstrated in the context of a case study that flows throughout the book. The case study is based on a mixture of the author's real-world experiences.
Bridging the Communication Gap is a book about improving communication between customers, business analysts, developers and testers on software projects, especially by using specification by example and agile acceptance testing. These two key emerging software development practices can significantly improve the chances of success of a software project. They ensure that all project participants speak the same language, and build a shared and consistent understanding of the domain.
Enterprise-Scale Agile Software Development is the collective sum of knowledge accumulated during the full-scale transition of a 1400-person organization to agile development—considered the largest implementation of agile development and Scrum ever attempted anywhere in the world.
Building on their breakthrough bestsellers Lean Software Development and Implementing Lean Software Development, Mary and Tom Poppendieck’s latest book shows software leaders and team members exactly how to drive high-value change throughout a software organization—and make it stick. They go far beyond generic implementation guidelines, demonstrating exactly how to make lean work in real projects, environments, and companies.
Lean-Agile Software Development shows how to extend Scrum processes with an Enterprise view based on Lean principles. The authors present crucial technical insight into emergent design, and demonstrate how to apply it to make iterative development more effective. They also identify several common development "anti-patterns" that can work against your goals, and they offer actionable, proven alternatives.
Agile methods promise to help you create software that delivers far more business value—and do it faster, at lower cost, and with less pain. However, many organizations struggle with implementation and leveraging these methods to their full benefit. In this book, Amr Elssamadisy identifies the powerful lessons that have been learned about successfully moving to agile and distills them into 30 proven agile adoption patterns.
So you think you want to be Agile. But what does it mean? How can you develop software in an agile manner? How can you reap the benefits of agile modelling or Extreme Programming (XP)? What tools might you use to help you become more agile? This book tells you!
Agile methods are a collection of different techniques and practices that share the same values and basic principles. Agile Software Development Quality Assurance provides in-depth coverage of the most important concepts, issues, trends, and technologies in agile software. This Premier Reference Source presents the research and instruction used to develop and implement software quickly, in small iteration cycles, and in close cooperation with the customer in an adaptive way.
For software to consistently deliver promised results, software development must mature into a true profession. Emergent Design points the way. As software continues to evolve and mature, software development processes become more complicated, relying on a variety of methodologies and approaches. This book illuminates the path to building the next generation of software. Author Scott L.
Accelerating Process Improvement Using Agile Techniques enhances the likelihood of success for IT projects. This volume describes a proven method for accelerating process improvement that helps set the goals and directions of organizations. The book offers several real-world scenarios describing situations prevalent throughout IT organizations regardless of the primary business in which a company may be engaged.
Agile Java™ Development With Spring, Hibernate and Eclipse is a book about robust technologies and effective methods which help bring simplicity back into the world of enterprise Java development. The three key technologies covered in this book, the Spring Framework, Hibernate and Eclipse, help reduce the complexity of enterprise Java development significantly.
With the award-winning book Agile Software Development: Principles, Patterns, and Practices, Robert C. Martin helped bring Agile principles to tens of thousands of Java and C++ programmers. Now .NET programmers have a definitive guide to agile methods with this completely updated volume from Robert C. Martin and Micah Martin, Agile Principles, Patterns, and Practices in C#.
See how to mine the experience of your software development team continually throughout the life of the project. The tools and recipes in this book will help you uncover and solve hidden (and not-so-hidden) problems with your technology, your methodology, and those difficult "people" issues on your team.
The agile model of software development has taken the world by storm. Now, in Agile Software Development, Second Edition, one of agile’s leading pioneers updates his Jolt Productivity award-winning book to reflect all that’s been learned about agile development since its original introduction.
Driven by the need for global excellence and customer value, agility and innovation have become imperative for business. However, most business process engineering and information system approaches address only operational efficiency and economics. This unique book closes this gap. It shows you how innovation can be systematized with normalized patterns of information.
This book draws on the Poppendiecks' unparalleled experience helping development organizations optimize the entire software value stream. You'll discover the right questions to ask, the key issues to focus on, and techniques proven to work. The authors present case studies from leading-edge software organizations, and offer practical exercises for jumpstarting your own Lean initiatives.
Lean Software Strategies: Proven Techniques for Managers and Developers, shows how the most advanced concepts of lean production can be applied to software development and how current software development practices are inadequate.
This book describes using the ICONIX Process (an object modeling process) in an Agile software project. To do this, the book defines a core Agile subset, so those of you who want to "get Agile" need not spend years learning to do it. Instead, you can simply read this book and apply the core subset of techniques. The book follows a real-life .NET/C# project from inception and UML modeling, to working code--through several iterations.
This book goes beyond the strategy of just enough planning and estimating, and shows readers how to make Agile practices truly work organizationally. Save time, conserve organizational resources, and manage software projects more efficiently by learning to anticipate future needs. Key points are supported by case studies derived from real-world projects.
Master Java 5.0, object-oriented design, and Test-Driven Development (TDD) by learning them together. Agile Java weaves all three into a single coherent approach to building professional, robust software systems. Jeff Langr shows exactly how Java and TDD integrate throughout the entire development lifecycle, helping you leverage today's fastest, most efficient development techniques from the very outset.
A breakthrough approach to managing Agile software development . . . Agile methods might just be the alternative to outsourcing. However, Agile development must scale in scope and discipline to be acceptable in the boardrooms of the Fortune 1000. In "Agile Management for Software Engineering," David J.
The "Agile Method" was coined in February 2001 to refer to software development methods designed to respond to change during software projects and stressing "individuals and interactions over processes and tools" and customer collaboration. Koch (president of the training and consulting company, ASK Process, Inc.) provides an introduction to Agile software development that he hopes will allow managers to weigh its costs and benefits.
eXtreme .NET shows developers and team leaders how to incorporate eXtreme programming (XP) practices with .NET-connected technologies to create high quality, low-cost code that will build better software. This practical, realistic guidebook systematically covers key elements of XP methodology in the specific context of the .NET Framework, Visual Studio .NET, Microsoft Visual C#, and related Microsoft .NET-enabled applications.
Software development projects can be fun, productive, and even daring. Yet they can consistently deliver value to a business and remain under control. Extreme Programming (XP) was conceived and developed to address the specific needs of software development conducted by small teams in the face of vague and changing requirements.
The Fit open source testing framework brings unprecedented agility to the entire development process. Unlike previous testing tools, Fit fully addresses the business value of software, not just technical quality. Using it, software customers, developers, and testers can clarify what software should do, compare that to what it does do, and systematically address the differences.
This is your hands-on, "in-the-trenches" guide to successfully leading Agile projects. Agile methods promise to infuse development with unprecedented flexibility, speed, and value; and these promises are attracting IT organizations worldwide. However, agile methods often fail to clearly define the manager's role, and many managers have been reluctant to buy in.
This is the definitive guide for managers and students to agile and iterative development methods: what they are, how they work, how to implement them—and why you should. Using statistically significant research and large-scale case studies, noted methods expert Craig Larman presents the most convincing case ever made for iterative development.
Apply the principles of Scrum, one of the most popular agile programming methods, to software project management -and focus your team on delivering real business value. Author Ken Schwaber, a leader in the agile process movement and a co-creator of Scrum, brings his vast expertise to helping you guide the product and software development process more effectively and efficiently.
Agile or "lightweight" processes have revolutionized the software development industry. They're faster and more efficient than traditional software development processes. They enable developers to:
*embrace requirement changes during project
*deliver working software in frequent iterations
*focus on the human factor in software development
A software developer and systems engineer join forces, using examples and case studies to illustrate the differences and similarities between agile and plan-driven methods, showing that the best development strategies combine both attributes. -Book News, Inc.
Carefully researched over ten years and eagerly anticipated by the agile community, Crystal Clear: A Human-Powered Methodology for Small Teams is a lucid and practical introduction to running a successful agile project in your organization. Each chapter illuminates a different important aspect of orchestrating agile projects.
As the popularity of agile development has grown, IT professionals have begun to struggle with ways to integrate agile practices and processes into traditional project environments. Integrating Agile Development in the Real World provides programmers and managers with specific and implementable ways to use agile processes in everyday software development projects.
This book presents the fundamentals of creating sustainable organizations, based on in-depth studies of over 100 real software development organizations.
User Stories Applied offers a requirements process that saves time, eliminates rework, and leads directly to better software. The best way to build software that meets users' needs is to begin with "user stories": simple, clear, brief descriptions of functionality that will be valuable to real users. In User Stories Applied, Mike Cohn provides you with a front-to-back blueprint for writing these user stories and weaving them into your development lifecycle.
In Lean Software Development, Mary and Tom Poppendieck identify seven fundamental "lean" principles, adapt them for the world of software development, and show how they can serve as the foundation for agile development approaches that work. Along the way, they introduce 22 "thinking tools" that can help you customize the right agile practices for any environment.
From the Back Cover
The one-stop guide for everyone getting started with eXtreme Programming!
* Making XP principles work in the real world
* Best practices for the entire project lifecycle: conceptualization through delivery
* Understand the role of every participant: developer, manager, and customer
* Specific solutions to the most common XP transitioning problems
Extreme Programming (XP) and the Unified Process (UP) have both caused quite a sensation in the software development community. Although XP offers a methodology for faster software development, many developers find that it does not explicitly include modeling time, which is crucial to ensure that a project meets its proposed requirements. UP developers, on the other hand, have found that the UP approach to modeling is too documentation-intensive and top heavy, thus impeding progress.
In a highly volatile software development environment, developers must be nimble, responsive, and able to hit a moving target--in short, they must be agile. Agile software development is designed to address this need for speed and flexibility. Agility describes a holistic, collaborative environment in which you can both create and respond to change by focusing on adaptability over predictability, people over process.
Best selling author and world-renowned software development expert Robert C. Martin shows how to solve the most challenging problems facing software developers, project managers, and software project leaders today.
This comprehensive, pragmatic tutorial on Agile Development and eXtreme programming, written by one of the founding fathers of Agile Development:
Web development teams have been operating in the dark for far too long. The lack of proven development methodologies for the Web environment has meant a constant struggle for developers to produce quality Web-based projects, on time and within budget.
Written as instruction for team members and leaders new to pair programming and as an improvement guide for experienced pair programmers, Pair Programming Illuminated explains both the principles underlying this method and its best practices. The authors, drawing on their own extensive experience, explain what works and what does not, what should be emphasized and what should be avoided.
Software Configuration Management Patterns alleviates software engineers' most common concerns about software configuration management (SCM)--perceived rigidity and an overemphasis on process. This book demonstrates how effective SCM strategies promote a healthy, team-oriented culture that produces better software. Through the use of patterns, the authors show that properly managed workflow can avert delays, morale problems, and cost overruns. The patterns approach illustrates how SCM can be easily and successfully applied in small- to mid-sized organizations. By learning how these patterns relate to each other, readers can avoid common mistakes that too often result in frustrated developers and reduced productivity. Key coverage includes instruction on how to: develop the next version of a product while fixing problems with the current one; develop code in parallel with others and join up with the current state of code line; identify what versions of code went into a particular component; analyze where a change happened in the history of a component's development; use current tools more effectively, and decide when to use a manual process; introduce good practices into individual workspaces and throughout the organization; identify crucial aspects of the software process, so that team projects can run smoothly; build and foster a development environment focused on producing optimal teamwork and quality products.
Arguably the most important book about managing technology and systems development efforts, this book describes building systems using the deceptively simple process, Scrum. Readers will come to understand a new approach to systems development projects that cuts through the complexity and ambiguity of complex, emergent requirements and unstable technology to iteratively and quickly produce quality software.
(From the Back Cover) "Coming of age for software developers means understanding that software is a cooperative effort, not something individuals do in isolation. This is a book that teams of software developers can thrive upon, full of sensible advice for a cooperative development approach." --Tom DeMarco, The Atlantic Systems Guild
(From the Back Cover)
(From the Back Cover)
Software that performs required tasks and meets expectations; accurate estimation of time to completion and cost of development; the opportunity to decide which features to include and which to defer; frequent small releases that incorporate continual customer feedback; constant integration and automated testing that insures clean code and robust performance...These are some of the many benefits of Extreme Programming (XP), a software development approach especially geared for smaller teams f
To survive in today's turbulent eBusiness world, software project teams must exhibit adaptability, speed, and collaboration. This book targets software teams where competition creates extreme pressure on the delivery process.