Domain-Driven Design: Tackling Complexity in the Heart of Software


Eric Evans - 2003
    "His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric thinks that learning about your problem domain is as likely to happen at the end of your project as at the beginning, and so refactoring is a big part of his technique. "The book is a fun read. Eric has lots of interesting stories, and he has a way with words. I see this book as essential reading for software developers--it is a future classic." --Ralph Johnson, author of Design Patterns "If you don't think you are getting value from your investment in object-oriented programming, this book will tell you what you've forgotten to do. "Eric Evans convincingly argues for the importance of domain modeling as the central focus of development and provides a solid framework and set of techniques for accomplishing it. This is timeless wisdom, and will hold up long after the methodologies du jour have gone out of fashion." --Dave Collins, author of Designing Object-Oriented User Interfaces "Eric weaves real-world experience modeling--and building--business applications into a practical, useful book. Written from the perspective of a trusted practitioner, Eric's descriptions of ubiquitous language, the benefits of sharing models with users, object life-cycle management, logical and physical application structuring, and the process and results of deep refactoring are major contributions to our field." --Luke Hohmann, author of Beyond Software Architecture "This book belongs on the shelf of every thoughtful software developer." --Kent Beck "What Eric has managed to capture is a part of the design process that experienced object designers have always used, but that we have been singularly unsuccessful as a group in conveying to the rest of the industry. We've given away bits and pieces of this knowledge...but we've never organized and systematized the principles of building domain logic. This book is important." --Kyle Brown, author of Enterprise Java(TM) Programming with IBM(R) WebSphere(R) The software development community widely acknowledges that domain modeling is central to software design. Through domain models, software developers are able to express rich functionality and translate it into a software implementation that truly serves the needs of its users. But despite its obvious importance, there are few practical resources that explain how to incorporate effective domain modeling into the software development process. Domain-Driven Design fills that need. This is not a book about specific technologies. It offers readers a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software development. Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis--refactoring not just the code but the model underlying the code--in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:Getting all team members to speak the same language Connecting model and implementation more deeply Sharpening key distinctions in a model Managing the lifecycle of a domain object Writing domain code that is safe to combine in elaborate ways Making complex code obvious and predictable Formulating a domain vision statement Distilling the core of a complex domain Digging out implicit concepts needed in the model Applying analysis patterns Relating design patterns to the model Maintaining model integrity in a large system Dealing with coexisting models on the same project Organizing systems with large-scale structures Recognizing and responding to modeling breakthroughs With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.

A Project Guide to UX Design: For User Experience Designers in the Field or in the Making


Russ Unger - 2009
    If you are an organization that really needs to start grokking UX this book is also for you. " -- Chris Bernard, User Experience Evangelist, Microsoft User experience design is the discipline of creating a useful and usable Web site or application--one that's easily navigated and meets the needs of both the site owner and its users. But there's a lot more to successful UX design than knowing the latest Web technologies or design trends: It takes diplomacy, project management skills, and business savvy. That's where this book comes in. Authors Russ Unger and Carolyn Chandler show you how to integrate UX principles into your project from start to finish. - Understand the various roles in UX design, identify stakeholders, and enlist their support- Obtain consensus from your team on project objectives- Define the scope of your project and avoid mission creep- Conduct user research and document your findings- Understand and communicate user behavior with personas- Design and prototype your application or site- Make your product findable with search engine optimization- Plan for development, product rollout, and ongoing quality assurance

Kill It with Fire: Manage Aging Computer Systems (and Future Proof Modern Ones)


Marianne Bellotti - 2021
    Aging computer systems present complex technical challenges for organizations both large and small, and Kill It with Fire provides sound strategies for spearheading modernization efforts.Kill It with Fire examines aging computer systems, the evolution of technology over time, and how organizations can modernize, maintain, and future-proof their current systems.In playful and engaging prose, Marianne Bellotti uses real-world case studies to illustrate the technical challenges of modernizing complex legacy systems, as well as the organizational challenges of time-intensive maintenance efforts. The book explains how to evaluate existing architecture, create upgrade plans, and handle communication structures. Team exercises and historical analyses of complex computer systems make this a valuable resource for those in both older and newer companies, and will help readers restore or create systems built to evolve as time goes on.

Enterprise Architecture As Strategy: Creating a Foundation for Business Execution


Jeanne W. Ross - 2006
    In Enterprise Architecture as Strategy: Creating a Foundation for Business Execution, authors Jeanne W. Ross, Peter Weill, and David C. Robertson show you how.The key? Make tough decisions about which processes you must execute well, then implement the IT systems needed to digitize those processes. Citing numerous companies worldwide, the authors show how constructing the right enterprise architecture enhances profitability and time to market, improves strategy execution, and even lowers IT costs. Though clear, engaging explanation, they demonstrate how to define your operating model—your vision of how your firm will survive and grow—and implement it through your enterprise architecture. Their counterintuitive but vital message: when it comes to executing your strategy, your enterprise architecture may matter far more than your strategy itself.

Value Proposition Design: How to Create Products and Services Customers Want


Alexander Osterwalder - 2013
    It shows you how to use the Value Proposition Canvas, a practical business tool to design, test, create, and manage products and services customers want. It compliments and perfectly integrates with the Business Model Canvasfrom "Business Model Generation" so you can succeed with great value propositions embedded in scalable and profitable business models.Practical exercises, process illustrations, and workshop suggestions help you immediately apply the tools in the book to your daily work. The book includes an online access to Strategyzer.com to complete and assess exercises interactively, learn from peers, and download pdfs, checklists, and more.You'll love "Value Proposition Design" if you've been overwhelmed by the task of true customer value creation, frustrated by unproductive product meetings and misaligned teams, involved in bold shiny projects that blew up, or simply disappointed by the failure of a good idea."Value Proposition Design" will help you successfully understand the patterns of value creation, leverage the experience and skills of your team, avoid wasting time with ideas that won't work, and guide you through the design and test of products and services that customers want.

Working Effectively with Legacy Code


Michael C. Feathers - 2004
    This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.

Pmp Exam Prep: Rita's Course in a Book for Passing the Pmp Exam


Rita Mulcahy - 1999
    Is it Rita's years of PMP exam preparation experience? The endless hours of ongoing research? The interviews with project managers who failed the exam, to identify gaps in their knowledge? Or is it the razor-sharp focus on making sure project managers don't waste a single minute of their time studying any more than they absolutely have to? Actually, it's all of the above. PMP Exam Prep, Sixth Edition by Rita Mulcahy contains hundreds of updates and improvements from previous editions--including new exercises and sample questions never before in print. Offering hundreds of sample questions, critical time-saving tips plus games and activities available nowhere else, this book will help you pass the PMP exam on your first try.

Rocket Surgery Made Easy: The Do-It-Yourself Guide to Finding and Fixing Usability Problems


Steve Krug - 2009
    But with a typical price tag of $5,000 to $10,000 for a usability consultant to conduct each round of tests, it rarely happens. In this how-to companion to Don't Make Me Think: A Common Sense Approach to Web Usability, Steve Krug spells out an approach to usability testing that anyone can easily apply to their own web site, application, or other product. (As he said in Don't Make Me Think, "It's not rocket surgery".)In this new book, Steve explains how to: -Test any design, from a sketch on a napkin to a fully-functioning web site or application-Keep your focus on finding the most important problems (because no one has the time or resources to fix them all)-Fix the problems that you find, using his "The least you can do" approachBy pairing the process of testing and fixing products down to its essentials (A morning a month, that's all we ask ), Rocket Surgery makes it realistic for teams to test early and often, catching problems while it's still easy to fix them. Rocket Surgery Made Easy adds demonstration videos to the proven mix of clear writing, before-and-after examples, witty illustrations, and practical advice that made Don't Make Me Think so popular.

Upstream: The Quest to Solve Problems Before They Happen


Dan Heath - 2020
    We put out fires. We deal with emergencies. We stay downstream, handling one problem after another, but we never make our way upstream to fix the systems that caused the problems ... [This book] probes the psychological forces that push us downstream--including 'problem blindness,' which can leave us oblivious to serious problems in our midst. And Heath introduces us to the thinkers who have overcome these obstacles and scored ... victories by switching to an upstream mindset.

Reinventing Organizations: A Guide to Creating Organizations Inspired by the Next Stage of Human Consciousness


Frederic Laloux - 2014
    Deep inside, we sense that more is possible. We long for soulful workplaces, for authenticity, community, passion, and purpose.In this groundbreaking book, the author shows that every time, in the past, when humanity has shifted to a new stage of consciousness, it has achieved extraordinary breakthroughs in collaboration. A new shift in consciousness is currently underway. Could it help us invent a more soulful and purposeful way to run our businesses and nonprofits, schools and hospitals?A few pioneers have already cracked the code and they show us, in practical detail, how it can be done. Leaders, founders, coaches, and consultants will find this work a joyful handbook, full of insights, examples, and inspiring stories.ADVANCE PRAISE"Congratulations on a spectacular treatise! This is truly pioneering work. In terms of integral sophistication, there is simply nothing like it out there."--Ken Wilber, from the Foreword"The most exciting book I've read in years on organization design and leadership models."--Jenny Wade, Ph.D., Author of Changes of Mind"A book like Reinventing Organizations only comes along once in a decade. Sweeping and brilliant in scope, it is the Good To Great for a more enlightened age. What it reveals about the organizational model of the future is exhilarating and deeply hopeful."--Norman Wolfe, Author of The Living Organization"A comprehensive, highly practical account of the emergent worldview in business. Everything you need to know about building a new paradigm organization!"--Richard Barrett, Chairman and Founder, Barrett Values Center"Frederic Laloux has done business people and professionals everywhere a signal service. He has discovered a better future for organizations by describing, in useful detail, the unusual best practices of today."--Bill Torbert, Author of Action Inquiry"As the rate of change escalates exponentially, the old ways of organizing and educating, which were designed for efficiency and repetition, are dying. Frederic Laloux is one of the few management leaders exploring what comes next. It's deeply different."--Bill Drayton, Founder, Ashoka: Innovators for the Public

Working in Public: The Making and Maintenance of Open Source Software


Nadia Eghbal - 2020
    In the late 1990s, it provided an optimistic model for public

The Progress Principle: Using Small Wins to Ignite Joy, Engagement, and Creativity at Work


Teresa Amabile - 2011
    The worst managers undermine inner work life, often unwittingly.As Teresa Amabile and Steven Kramer explain in The Progress Principle, seemingly mundane workday events can make or break employees’ inner work lives. But it’s forward momentum in meaningful work—progress—that creates the best inner work lives. Through rigorous analysis of nearly 12,000 diary entries provided by 238 employees in 7 companies, the authors explain how managers can foster progress and enhance inner work life every day.The book shows how to remove obstacles to progress, including meaningless tasks and toxic relationships. It also explains how to activate two forces that enable progress: (1) catalysts—events that directly facilitate project work, such as clear goals and autonomy—and (2) nourishers—interpersonal events that uplift workers, including encouragement and demonstrations of respect and collegiality.Brimming with honest examples from the companies studied, The Progress Principle equips aspiring and seasoned leaders alike with the insights they need to maximize their people’s performance.

Universal Principles of Design: 100 Ways to Enhance Usability, Influence Perception, Increase Appeal, Make Better Design Decisions, and Teach Through Design


William Lidwell - 2003
    Because no one can be an expert on everything, designers have always had to scramble to find the information and know-how required to make a design work - until now. Universal Principles of Design is the first cross-disciplinary reference of design. Richly illustrated and easy to navigate, this book pairs clear explanations of the design concepts featured with visual examples of those concepts applied in practice. From the 80/20 rule to chunking, from baby-face bias to Ockham's razor, and from self-similarity to storytelling, 100 design concepts are defined and illustrated for readers to expand their knowledge.This landmark reference will become the standard for designers, engineers, architects, and students who seek to broaden and improve their design expertise.

Blitzscaling: The Lightning-Fast Path to Building Massively Valuable Companies


Reid Hoffman - 2018
    So what separates the startups that get disrupted and disappear from the ones who grow to become global giants?The secret is blitzscaling: a set of techniques for scaling up at a dizzying pace that blows competitors out of the water. The objective of Blitzscaling is not to go from zero to one, but from one to one billion -as quickly as possible.When growing at a breakneck pace, getting to next level requires very different strategies from those that got you to where you are today. In a book inspired by their popular class at Stanford Business School, Hoffman and Yeh reveal how to navigate the necessary shifts and weather the unique challenges that arise at each stage of a company's life cycle, such as: how to design business models for igniting and sustaining relentless growth; strategies for hiring and managing; how the role of the founder and company culture must evolve as the business matures, and more.Whether your business has ten employees or ten thousand, Blitzscaling is the essential playbook for winning in a world where speed is the only competitive advantage that matters.

Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software


Scott Rosenberg - 2007
    Along the way, we encounter black holes, turtles, snakes, dragons, axe-sharpening, and yak-shaving—and take a guided tour through the theories and methods, both brilliant and misguided, that litter the history of software development, from the famous ‘mythical man-month’ to Extreme Programming. Not just for technophiles but for anyone captivated by the drama of invention, Dreaming in Code offers a window into both the information age and the workings of the human mind.