The Dream Team Nightmare


Portia Tung - 2012
    You've just been introduced to your new team as their Agile Coach. The team calls themselves The Dream Team. You are responsible for coming up with a plan to get the team back on track to achieve their project goals.Shortly after the initial product launch, The Dream Team was set a challenge by the Management Team to try out an alternative way of working called Agile. Eighteen months on and the team is working anything but like a dream. In fact, life's become a bit of a nightmare. Morale is low. Productivity has ground to a halt. Quality has become a taboo subject.Management believes the project has reached an impasse. They demand results and are prepared to outsource the remainder of the project. You have 5 days to figure out how to help the team move forward.Your fate and that of your team is entirely in your hands. What choices will you make? Choose badly and you’ll come to a sticky end. Choose wisely and you and your team stand a chance of living happily ever after. What will you choose to do?

Test-Driven JavaScript Development


Christian Johansen - 2010
     Test-Driven JavaScript Development is a complete, best-practice guide to agile JavaScript testing and quality assurance with the test-driven development (TDD) methodology. Leading agile JavaScript developer Christian Johansen covers all aspects of applying state-of-the-art automated testing in JavaScript environments, walking readers through the entire development lifecycle, from project launch to application deployment, and beyond.Using real-life examples driven by unit tests, Johansen shows how to use TDD to gain greater confidence in your code base, so you can fearlessly refactor and build more robust, maintainable, and reliable JavaScript code at lower cost. Throughout, he addresses crucial issues ranging from code design to performance optimization, offering realistic solutions for developers, QA specialists, and testers.Coverage includes - Understanding automated testing and TDD - Building effective automated testing workflows - Testing code for both browsers and servers (using Node.js) - Using TDD to build cleaner APIs, better modularized code, and more robust software - Writing testable code - Using test stubs and mocks to test units in isolation - Continuously improving code through refactoring - Walking through the construction and automated testing of fully functional softwareThe accompanying Web site, tddjs.com, contains all of the book's code listings and additional resources.

The Professional Product Owner: Leveraging Scrum as a Competitive Advantage


Don McGreal - 2018
    Scrum recognizes this -- but unfortunately, many companies, agile resources, and training curricula focus primarily on the mechanics of product ownership. Mechanics are important, but only as a means to an end: value. The Professional Product Owner will help product owners and their organizations refocus on value as the primary objective. The authors offer detailed practices for identifying where value can be found, measuring it, and maximizing it throughout the entire product lifecycle. Drawing on their combined 40+ years of experience in using agile and Scrum in product delivery, the authors show how to go beyond merely writing requirements and managing product backlogs, to take accountability and drive the process from vision to value.

Pro Git


Scott Chacon - 2009
    It took the open source world by storm since its inception in 2005, and is used by small development shops and giants like Google, Red Hat, and IBM, and of course many open source projects.A book by Git experts to turn you into a Git expert. Introduces the world of distributed version control Shows how to build a Git development workflow.

The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary


Eric S. Raymond - 1999
    According to the August Forrester Report, 56 percent of IT managers interviewed at Global 2,500 companies are already using some type of open source software in their infrastructure and another 6 percent will install it in the next two years. This revolutionary model for collaborative software development is being embraced and studied by many of the biggest players in the high-tech industry, from Sun Microsystems to IBM to Intel.The Cathedral & the Bazaar is a must for anyone who cares about the future of the computer industry or the dynamics of the information economy. Already, billions of dollars have been made and lost based on the ideas in this book. Its conclusions will be studied, debated, and implemented for years to come. According to Bob Young, "This is Eric Raymond's great contribution to the success of the open source revolution, to the adoption of Linux-based operating systems, and to the success of open source users and the companies that supply them."The interest in open source software development has grown enormously in the past year. This revised and expanded paperback edition includes new material on open source developments in 1999 and 2000. Raymond's clear and effective writing style accurately describing the benefits of open source software has been key to its success. With major vendors creating acceptance for open source within companies, independent vendors will become the open source story in 2001.

The Scrum Field Guide: Practical Advice for Your First Year


Mitch Lacey - 2012
    If you're one of them, The Scrum Field Guide will give you skills and confidence to adopt Scrum more rapidly, more successfully, and with far less pain and fear. Long-time Scrum practitioner Mitch Lacey identifies major challenges associated with early-stage Scrum adoption, as well as deeper issues that emerge after companies have adopted Scrum, and describes how other organizations have overcome them. You'll learn how to gain "quick wins" that build support, and then use the flexibility of Scrum to maximize value creation across the entire process. In 30 brief, engaging chapters, Lacey guides you through everything from defining roles to setting priorities to determining team velocity, choosing a sprint length, and conducting customer reviews. Along the way, he explains why Scrum can seem counterintuitive, offers a solid grounding in the core agile concepts that make it work, and shows where it can (and shouldn't) be modified. Coverage includes Getting teams on board, and bringing new team members aboard after you've started Creating a "definition of done" for the team and organization Implementing the strong technical practices that are indispensable for agile success Balancing predictability and adaptability in release planning Keeping defects in check Running productive daily standup meetings Keeping people engaged with pair programming Managing culture clashes on Scrum teams Performing "emergency procedures" to get sprints back on track Establishing a pace your team can truly sustain Accurately costing projects, and measuring the value they deliver Documenting Scrum projects effectively Prioritizing and estimating large backlogs Integrating outsourced and offshored components Packed with real-world examples from Lacey's own experience, this book is invaluable to everyone transitioning to agile: developers, architects, testers, managers, and project owners alike.

Scrum: a Breathtakingly Brief and Agile Introduction


Chris Sims - 2012
    A pocket-sized overview of roles, artifacts and the sprint cycle, adapted from the bestseller The Elements of Scrum by Chris Sims & Hillary Louise Johnson

Scrum: A Pocket Guide: A Smart Travel Companion


Gunther Verheyen - 2013
    The book covers all roles, rules and the main principles underpinning Scrum, and is based on the Scrum Guide Edition 2013. A broader context to this fundamental description of Scrum is given by describing the past and the future of Scrum. The author, Gunther Verheyen, has created a concise, yet complete and passionate reference about Scrum. The book demonstrates his core view that Scrum is about a journey, a journey of discovery and fun. He designed the book to be a helpful guide on that journey. Ken Schwaber, Scrum co-creator says that this book currently is the best available description of Scrum around. The book combines some rare characteristics: It describes Scrum in its entirety, yet places it in a broader context (of past and future). The author focuses on the subject, Scrum, in a way that it truly supports the reader. The book has a language and style in line with the philosophy of Scrum. The book shows the playfulness of Scrum. David Starr and Ralph Jocham, Professional Scrum trainers and early agile adopters, say that this is the ultimate book to be advised as follow-up book to the students they teach Scrum to and to teams and managers of organizations that they coach Scrum to."

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions


Gregor Hohpe - 2003
    The authors also include examples covering a variety of different integration technologies, such as JMS, MSMQ, TIBCO ActiveEnterprise, Microsoft BizTalk, SOAP, and XSL. A case study describing a bond trading system illustrates the patterns in practice, and the book offers a look at emerging standards, as well as insights into what the future of enterprise integration might hold. This book provides a consistent vocabulary and visual notation framework to describe large-scale integration solutions across many technologies. It also explores in detail the advantages and limitations of asynchronous messaging architectures. The authors present practical advice on designing code that connects an application to a messaging system, and provide extensive information to help you determine when to send a message, how to route it to the proper destination, and how to monitor the health of a messaging system. If you want to know how to manage, monitor, and maintain a messaging system once it is in use, get this book.

How Google Tests Software


James A. Whittaker - 2012
    Legendary testing expert James Whittaker, until recently a Google testing leader, and two top Google experts reveal exactly how Google tests software, offering brand-new best practices you can use even if you're not quite Google's size...yet! Breakthrough Techniques You Can Actually Use Discover 100% practical, amazingly scalable techniques for analyzing risk and planning tests...thinking like real users...implementing exploratory, black box, white box, and acceptance testing...getting usable feedback...tracking issues...choosing and creating tools...testing "Docs & Mocks," interfaces, classes, modules, libraries, binaries, services, and infrastructure...reviewing code and refactoring...using test hooks, presubmit scripts, queues, continuous builds, and more. With these techniques, you can transform testing from a bottleneck into an accelerator-and make your whole organization more productive!

Agile Game Development with Scrum


Clinton Keith - 2010
    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. Keith has spent more than fifteen years developing games, seven of them with Scrum and agile methods. Drawing on this unparalleled expertise, he shows how teams can use Scrum to deliver games more efficiently, rapidly, and cost-effectively; craft games that offer more entertainment value; and make life more fulfilling for development teams at the same time. You'll learn to form successful agile teams that incorporate programmers, producers, artists, testers, and designers--and promote effective collaboration within and beyond those teams, throughout the entire process. From long-range planning to progress tracking and continuous integration, Keith offers dozens of tips, tricks, and solutions--all based firmly in reality and hard-won experience. Coverage includes Understanding Scrum's goals, roles, and practices in the context of game development Communicating and planning your game's vision, features, and progress Using iterative techniques to put your game into a playable state every two to four weeks-- even daily Helping all team participants succeed in their roles Restoring stability and predictability to the development process Managing ambiguous requirements in a fluid marketplace Scaling Scrum to large, geographically distributed development teams Getting started: overcoming inertia and integrating Scrum into your studio's current processes Increasingly, game developers and managers are recognizing that things can't go on the way they have in the past. Game development organizations need a far better way to work. Agile Game Development with Scrum gives them that--and brings the profitability, creativity, and fun back to game development.

Getting Real: The Smarter, Faster, Easier Way to Build a Web Application


37 Signals - 2006
    At under 200 pages it's quick reading too. Makes a great airplane book.

Scrum Shortcuts Without Cutting Corners: Agile Tactics, Tools, & Tips


Ilan Goldstein - 2013
    But when new Scrum practitioners attempt to apply Scrum theory and high-level approaches in actual projects, they often find it surprisingly difficult. In Scrum Shortcuts without Cutting Corners, Scrum expert Ilan Goldstein helps you translate the Scrum framework into reality to meet the Scrum challenges your formal training never warned you about. Drawing on his extensive agile experience in a wide range of projects and environments, Goldstein presents thirty proven, flexible shortcuts for optimizing Scrum processes, actions, and outcomes. Each shortcut walks you through applying a Scrum approach to achieve a tangible output. These easy-to-digest, actionable patterns address a broad range of topics including getting started, quality and metrics, team members and roles, managing stakeholders, estimation, continuous improvement and much more. Whatever your role, Scrum Shortcuts without Cutting Corners will help you take your Scrum skills to the next level and achieve better results in any project you participate in.

Kafka: The Definitive Guide: Real-Time Data and Stream Processing at Scale


Neha Narkhede - 2017
    And how to move all of this data becomes nearly as important as the data itself. If you� re an application architect, developer, or production engineer new to Apache Kafka, this practical guide shows you how to use this open source streaming platform to handle real-time data feeds.Engineers from Confluent and LinkedIn who are responsible for developing Kafka explain how to deploy production Kafka clusters, write reliable event-driven microservices, and build scalable stream-processing applications with this platform. Through detailed examples, you� ll learn Kafka� s design principles, reliability guarantees, key APIs, and architecture details, including the replication protocol, the controller, and the storage layer.Understand publish-subscribe messaging and how it fits in the big data ecosystem.Explore Kafka producers and consumers for writing and reading messagesUnderstand Kafka patterns and use-case requirements to ensure reliable data deliveryGet best practices for building data pipelines and applications with KafkaManage Kafka in production, and learn to perform monitoring, tuning, and maintenance tasksLearn the most critical metrics among Kafka� s operational measurementsExplore how Kafka� s stream delivery capabilities make it a perfect source for stream processing systems

Design Patterns: Elements of Reusable Object-Oriented Software


Erich Gamma - 1994
    Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently. Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design. All patterns are compiled from real systems and are based on real-world examples. Each pattern also includes code that demonstrates how it may be implemented in object-oriented programming languages like C++ or Smalltalk.