/dev/reading
Category

Requirements Analysis

6 books
Order by
View
An Introduction to Object-Oriented Analysis and Design and Iterative Development
by Craig Larman

Applying UML and Patterns is the world’s #1 business and college introduction to “thinking in objects”—and using that insight in real-world object-oriented analysis and design. Building on two widely acclaimed previous editions, Craig Larman has updated this book to fully reflect the new UML 2 standard, to help you master the art of object design, and to promote high-impact, iterative, and skillful agile modeling practices.

Developers and students will learn object-oriented analysis and design (OOA/D) through three iterations of two cohesive, start-to-finish case studies. These case studies incrementally introduce key skills, essential OO principles and patterns, UML notation, and best practices. You won’t just learn UML diagrams—you’ll learn how to apply UML in the context of OO software development.

Drawing on his unsurpassed experience as a mentor and consultant, Larman helps you understand evolutionary requirements and use cases, domain object modeling, responsibility-driven design, essential OO design, layered architectures, “Gang of Four” design patterns, GRASP, iterative methods, an agile approach to the Unified Process (UP), and much more. This edition’s extensive improvements include

  • A stronger focus on helping you master OOA/D through case studies that demonstrate key OO principles and patterns, while also applying the UML
  • New coverage of UML 2, Agile Modeling, Test-Driven Development, and refactoring
  • Many new tips on combining iterative and evolutionary development with OOA/D
  • Updates for easier study, including new learning aids and graphics
  • New college educator teaching resources
  • Guidance on applying the UP in a light, agile spirit, complementary with other iterative methods such as XP and Scrum
  • Techniques for applying the UML to documenting architectures
  • A new chapter on evolutionary requirements, and much more

Applying UML and Patterns, Third Edition, is a lucid and practical introduction to thinking and designing with objects—and creating systems that are well crafted, robust, and maintainable.

Behavior-Driven Development for the whole software lifecycle
by John Ferguson Smart and Jan Molak

Deliver software that does what it’s supposed to do! Behavior-Driven Development guides your software projects to success with collaboration, communication techniques, and concrete requirements you can turn into automated tests.

In BDD in Action, Second Edition you’ll learn how to:

  • Implement and improve BDD practices
  • Prioritize features from business goals
  • Facilitate an example mapping session
  • Write automated acceptance tests
  • Scale up your automated acceptance tests
  • Deliver accurate reporting and documentation

Around half of all software projects fail to deliver on requirements. Behavior-Driven Development (BDD) helps make sure that yours isn’t one of them.

Behavior-Driven Development in Action, Second Edition teaches you how to ensure that everyone involved in a software project—from developers to non-technical stakeholders—are in agreement on goals and objectives. It lays out the communication skills, collaborative practices, and useful automation tools that will let you seamlessly succeed with BDD. Now in its second edition, this revised bestseller has been extensively updated with new techniques for incorporating BDD into large-scale and enterprise development practices such as Agile and DevOps.

by Karl Wiegers and Joy Beatty

Now in its third edition, this classic guide to software requirements engineering has been fully updated with new topics, examples, and guidance. Two leaders in the requirements community have teamed up to deliver a contemporary set of practices covering the full range of requirements development and management activities on software projects.

  • Describes practical, effective, field-tested techniques for managing the requirements engineering process from end to end.
  • Provides examples demonstrating how requirements "good practices" can lead to fewer change requests, higher customer satisfaction, and lower development costs.
  • Fully updated with contemporary examples and many new practices and techniques.
  • Describes how to apply effective requirements practices to agile projects and numerous other special project situations.
  • Targeted to business analysts, developers, project managers, and other software project stakeholders who have a general understanding of the software development process.
  • Shares the insights gleaned from the authors’ extensive experience delivering hundreds of software-requirements training courses, presentations, and webinars.

New chapters are included on specifying data requirements, writing high-quality functional requirements, and requirements reuse. Considerable depth has been added on business requirements, elicitation techniques, and nonfunctional requirements. In addition, new chapters recommend effective requirements practices for various special project situations, including enhancement and replacement, packaged solutions, outsourced, business process automation, analytics and reporting, and embedded and other real-time systems projects.

Core Practices for Successful Business Analysis
by Karl Wiegers and Candase Hokanson

Software Requirements Essentials presents 20 core practices for successful requirements planning, elicitation, analysis, specification, validation, and management. Leading requirements experts Karl Wiegers and Candase Hokanson focus on the practices most likely to deliver superior value for both traditional and agile projects, in any application domain. These core practices help teams understand business problems, engage the right participants, articulate better solutions, improve communication, implement the most valuable functionality in the right sequence, and adapt to change and growth.

Concise and tightly focused, this book offers just enough pragmatic "how-to" detail for you to apply the core practices with confidence, whether you're a business analyst, requirements engineer, product manager, product owner, or developer. Using it, your entire team can build a shared understanding of key concepts, terminology, techniques, and rationales--and work together more effectively on every project.

Learn how to:

  • Clarify problems, define business objectives, and set solution boundaries
  • Identify stakeholders and decision makers
  • Explore user tasks, events, and responses
  • Assess data concepts and relationships
  • Elicit and evaluate quality attributes
  • Analyze requirements and requirement sets, create models and prototypes, and set priorities
  • Specify requirements in a consistent, structured, and well-documented fashion
  • Review, test, and manage change to requirements
by Alan Dennis, Barbara Haley Wixom and Roberta M. Roth

Alan Dennis' 5th Edition of Systems Analysis and Design continues to build upon previous issues with it hands-on approach to systems analysis and design with an even more in-depth focus on the core set of skills that all analysts must possess. Dennis continues to capture the experience of developing and analyzing systems in a way that readers can understand and apply and develop a rich foundation of skills as a systems analyst.

A Brief Guide to the Standard Object Modeling Language
by Martin Fowler

More than 300,000 developers have benefited from past editions of UML Distilled. This third edition is the best resource for quick, no-nonsense insights into understanding and using UML 2.0 and prior versions of the UML.

Some readers will want to quickly get up to speed with the UML 2.0 and learn the essentials of the UML. Others will use this book as a handy, quick reference to the most common parts of the UML. The author delivers on both of these promises in a short, concise, and focused presentation.

This book describes all the major UML diagram types, what they're used for, and the basic notation involved in creating and deciphering them. These diagrams include class, sequence, object, package, deployment, use case, state machine, activity, communication, composite structure, component, interaction overview, and timing diagrams. The examples are clear and the explanations cut to the fundamental design logic.

If you are like most developers, you don't have time to keep up with all the new innovations in software engineering. This new edition of Fowler's classic work gets you acquainted with some of the best thinking about efficient object-oriented software design using the UML--in a convenient format that will be essential to anyone who designs software professionally.

  • Would you like to understand the most important elements of Class diagrams? (See page 35.)
  • Do you want to see the new UML 2.0 interaction frame notation for adding control flow to sequence diagrams (see page 58) and the unofficial notation that many prefer? (See page 60.)
  • Do you want to know what changes have been made to all versions of the UML? (See page 151.)
  • Do you want a quick reference to the most useful parts of the UML notation? (See the inside covers.)
  • Do you want to find out what diagram types were added to the UML 2.0 without wading through the spec? (See page 11.)