Growing Object-Oriented Software, Guided by Tests

Growing Object-Oriented Software, Guided by Tests
Author :
Publisher : Pearson Education
Total Pages : 762
Release :
ISBN-10 : 9780321699763
ISBN-13 : 0321699769
Rating : 4/5 (63 Downloads)

Synopsis Growing Object-Oriented Software, Guided by Tests by : Steve Freeman

Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this "simple" idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and “grow” software that is coherent, reliable, and maintainable. Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you’ll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD—from integrating TDD into your processes to testing your most difficult features. Coverage includes Implementing TDD effectively: getting started, and maintaining your momentum throughout the project Creating cleaner, more expressive, more sustainable code Using tests to stay relentlessly focused on sustaining quality Understanding how TDD, Mock Objects, and Object-Oriented Design come together in the context of a real software development project Using Mock Objects to guide object-oriented designs Succeeding where TDD is difficult: managing complex test data, and testing persistence and concurrency

Growing Software

Growing Software
Author :
Publisher : No Starch Press
Total Pages : 428
Release :
ISBN-10 : 9781593271831
ISBN-13 : 1593271832
Rating : 4/5 (31 Downloads)

Synopsis Growing Software by : Louis Testa

As the technology leader at a small software company, you need to focus on people, products, processes, and technology as you bring your software to market, while doing your best to put out fires and minimize headaches. Growing Software is your guide to juggling the day-to-day challenges of running a software company while managing those long-term problems and making sure that your business continues to grow. With practical, hands-on advice, Growing Software will teach you how to build and lead an effective team, define and sell your products, work with everyone from customers to CEOs, and ensure high-quality results. Instead of learning by trial and error, you'll benefit from author Louis Testa's 20+ years of management experience. Testa combines big-picture advice, specific solutions, and real-life anecdotes to teach you how to: –Work effectively with your CEO and executive team –Improve development team efficiency and enthusiasm –Evaluate your software methodology to improve effectiveness and safeguard against failure –Use product prototypes to bridge the gap between marketing and engineering –Defuse technology time bombs Whether you're new to managing software or newly lost, Growing Software will help you and your growing company thrive.

Growing Better Software

Growing Better Software
Author :
Publisher : Lulu.com
Total Pages : 369
Release :
ISBN-10 : 9780955982408
ISBN-13 : 0955982405
Rating : 4/5 (08 Downloads)

Synopsis Growing Better Software by : Marc Brevoort

Based on decades of real-life software development experience, this book will help you produce best-of-breed, world class software. Set up both as a manual and reference, this book will help both novice and experienced software developers to take their skills to the next level. Learn how to produce lean, mean, structured code; how to keep bugs out of your programs; to make your software more user-friendly; to improve maintainability; to troubleshoot your projects; and to guarantee software quality.

Customer Success

Customer Success
Author :
Publisher : John Wiley & Sons
Total Pages : 256
Release :
ISBN-10 : 9781119167969
ISBN-13 : 1119167965
Rating : 4/5 (69 Downloads)

Synopsis Customer Success by : Nick Mehta

Your business success is now forever linked to the success of your customers Customer Success is the groundbreaking guide to the exciting new model of customer management. Business relationships are fundamentally changing. In the world B.C. (Before Cloud), companies could focus totally on sales and marketing because customers were often 'stuck' after purchasing. Therefore, all of the 'post-sale' experience was a cost center in most companies. In the world A.B. (After Benioff), with granular per-year, per-month or per-use pricing models, cloud deployments and many competitive options, customers now have the power. As such, B2B vendors must deliver success for their clients to achieve success for their own businesses. Customer success teams are being created in companies to quarterback the customer lifecycle and drive adoption, renewals, up-sell and advocacy. The Customer Success philosophy is invading the boardroom and impacting the way CEOs think about their business. Today, Customer Success is the hottest B2B movement since the advent of the subscription business model, and this book is the one-of-a-kind guide that shows you how to make it work in your company. From the initial planning stages through execution, you'll have expert guidance to help you: Understand the context that led to the start of the Customer Success movement Build a Customer Success strategy proven by the most competitive companies in the world Implement an action plan for structuring the Customer Success organization, tiering your customers, and developing the right cross-functional playbooks Customers want products that help them achieve their own business outcomes. By enabling your customers to realize value in your products, you're protecting recurring revenue and creating a customer for life. Customer Success shows you how to kick start your customer-centric revolution, and make it stick for the long term.

An Elegant Puzzle

An Elegant Puzzle
Author :
Publisher : Stripe Press
Total Pages : 281
Release :
ISBN-10 : 9781953953339
ISBN-13 : 1953953336
Rating : 4/5 (39 Downloads)

Synopsis An Elegant Puzzle by : Will Larson

A human-centric guide to solving complex problems in engineering management, from sizing teams to handling technical debt. There’s a saying that people don’t leave companies, they leave managers. Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to the good solutions for complex management challenges can make the difference between fulfillment and frustration for teams—and, ultimately, between the success and failure of companies. Will Larson’s An Elegant Puzzle focuses on the particular challenges of engineering management—from sizing teams to handling technical debt to performing succession planning—and provides a path to the good solutions. Drawing from his experience at Digg, Uber, and Stripe, Larson has developed a thoughtful approach to engineering management for leaders of all levels at companies of all sizes. An Elegant Puzzle balances structured principles and human-centric thinking to help any leader create more effective and rewarding organizations for engineers to thrive in.

The Nature of Software Development

The Nature of Software Development
Author :
Publisher : Pragmatic Bookshelf
Total Pages : 264
Release :
ISBN-10 : 9781680505085
ISBN-13 : 1680505084
Rating : 4/5 (85 Downloads)

Synopsis The Nature of Software Development by : Ron Jeffries

You need to get value from your software project. You need it "free, now, and perfect." We can't get you there, but we can help you get to "cheaper, sooner, and better." This book leads you from the desire for value down to the specific activities that help good Agile projects deliver better software sooner, and at a lower cost. Using simple sketches and a few words, the author invites you to follow his path of learning and understanding from a half century of software development and from his engagement with Agile methods from their very beginning. The book describes software development, starting from our natural desire to get something of value. Each topic is described with a picture and a few paragraphs. You're invited to think about each topic; to take it in. You'll think about how each step into the process leads to the next. You'll begin to see why Agile methods ask for what they do, and you'll learn why a shallow implementation of Agile can lead to only limited improvement. This is not a detailed map, nor a step-by-step set of instructions for building the perfect project. There is no map or instructions that will do that for you. You need to build your own project, making it a bit more perfect every day. To do that effectively, you need to build up an understanding of the whole process. This book points out the milestones on your journey of understanding the nature of software development done well. It takes you to a location, describes it briefly, and leaves you to explore and fill in your own understanding. What You Need: You'll need your Standard Issue Brain, a bit of curiosity, and a desire to build your own understanding rather than have someone else's detailed ideas poured into your head.

Growing Modular

Growing Modular
Author :
Publisher : Springer Science & Business Media
Total Pages : 185
Release :
ISBN-10 : 9783540274308
ISBN-13 : 3540274308
Rating : 4/5 (08 Downloads)

Synopsis Growing Modular by : Milan Kratochvíl

A starter to the concepts of modularization and mass customization. Condensed and application-oriented approach for a broad audience in engineering, production, sales and marketing. Provides an extensive configurator evaluation checklist for future users and a supplement of business cases.

User Stories Applied

User Stories Applied
Author :
Publisher : Addison-Wesley Professional
Total Pages : 291
Release :
ISBN-10 : 9780132702645
ISBN-13 : 0132702649
Rating : 4/5 (45 Downloads)

Synopsis User Stories Applied by : Mike Cohn

Thoroughly reviewed and eagerly anticipated by the agile community, 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. You'll learn what makes a great user story, and what makes a bad one. You'll discover practical ways to gather user stories, even when you can't speak with your users. Then, once you've compiled your user stories, Cohn shows how to organize them, prioritize them, and use them for planning, management, and testing. User role modeling: understanding what users have in common, and where they differ Gathering stories: user interviewing, questionnaires, observation, and workshops Working with managers, trainers, salespeople and other "proxies" Writing user stories for acceptance testing Using stories to prioritize, set schedules, and estimate release costs Includes end-of-chapter practice questions and exercises User Stories Applied will be invaluable to every software developer, tester, analyst, and manager working with any agile method: XP, Scrum... or even your own home-grown approach.

Notes to a Software Team Leader

Notes to a Software Team Leader
Author :
Publisher :
Total Pages : 236
Release :
ISBN-10 : 829993320X
ISBN-13 : 9788299933209
Rating : 4/5 (0X Downloads)

Synopsis Notes to a Software Team Leader by : Roy Osherove

Are you an architect? Scrum Master? team leader? project manager? If you are any of these, you will find that leadership, done right, is a very tough job. This book deals with the hard parts. Not with tools, but with people. Here is the manifesto that drives this book: For us as team leaders, the goal and the way we measure our work is the overall growth in skills of self-organization and self-maintenance in each member of our team and the team as a whole. To that end: We accept that the team's needs from us change continuously based on their skills for handling the current reality of work, so we embrace a continuously changing leadership style over a one-style-fits-all leadership approach. We believe in challenging ourselves and our teams to always get better, so: * We create slack time for the team to learn and be challenged. * We embrace taking risks for our team over staying safe. * We embrace fear and discomfort while learning new skills over keeping people within their comfort zone. * We embrace experimentation as a constant practice over maintaining the status quo: * With people * With tools * With processes * With the environment * We believe our core practice is leading people, not wielding machines, so: * We embrace spending more time with our team than in meetings. * We embrace treating software problems as people problems. * We learn people skills and communication techniques. About the notes The second part of this book allows a peek into the minds of some of the best leaders, consultants, and managers as they give advice to a new team leader. Hear from Johanna Rothman, Kevlin Henney, Dan North, Uncle Bob Martin, and many others about the one thing they would like to teach you if you ever become a team leader, Scrum Master, project manager, or architect.

Building Mobile Apps at Scale

Building Mobile Apps at Scale
Author :
Publisher :
Total Pages : 238
Release :
ISBN-10 : 1638778868
ISBN-13 : 9781638778868
Rating : 4/5 (68 Downloads)

Synopsis Building Mobile Apps at Scale by : Gergely Orosz

While there is a lot of appreciation for backend and distributed systems challenges, there tends to be less empathy for why mobile development is hard when done at scale. This book collects challenges engineers face when building iOS and Android apps at scale, and common ways to tackle these. By scale, we mean having numbers of users in the millions and being built by large engineering teams. For mobile engineers, this book is a blueprint for modern app engineering approaches. For non-mobile engineers and managers, it is a resource with which to build empathy and appreciation for the complexity of world-class mobile engineering. The book covers iOS and Android mobile app challenges on these dimensions: Challenges due to the unique nature of mobile applications compared to the web, and to the backend. App complexity challenges. How do you deal with increasingly complicated navigation patterns? What about non-deterministic event combinations? How do you localize across several languages, and how do you scale your automated and manual tests? Challenges due to large engineering teams. The larger the mobile team, the more challenging it becomes to ensure a consistent architecture. If your company builds multiple apps, how do you balance not rewriting everything from scratch while moving at a fast pace, over waiting on "centralized" teams? Cross-platform approaches. The tooling to build mobile apps keeps changing. New languages, frameworks, and approaches that all promise to address the pain points of mobile engineering keep appearing. But which approach should you choose? Flutter, React Native, Cordova? Native apps? Reuse business logic written in Kotlin, C#, C++ or other languages? What engineering approaches do "world-class" mobile engineering teams choose in non-functional aspects like code quality, compliance, privacy, compliance, or with experimentation, performance, or app size?