"Overlooked or poorly defined nonfunctional requirements are widely recognized to be among the most expensive and difficult errors to correct following the implementation of a software system. The Quest for Software Requirements presents over 2,000 suggested questions as a first-of-its-kind reference guide to help you master the elicitation of these hard-to-identify, yet vital, requirements. Its proven step-by-step techniques, insightful tips and tools, easy-to-use checklists, examples of nonfunctional requirements, and requirements-gathering questions can help you succeed in developing and installing software requirements" -- Provided by publisher.
Apply best practices for capturing, analyzing, and implementing software requirements through visual models—and deliver better results for your business. The authors—experts in eliciting and visualizing requirements—walk you through a simple but comprehensive language of visual models that has been used on hundreds of real-world, large-scale projects. Build your fluency with core concepts—and gain essential, scenario-based context and implementation advice—as you progress through each chapter. Transcend the limitations of text-based requirements data using visual models that more rigorously identify, capture, and validate requirements Get real-world guidance on best ways to use visual models—how and when, and ways to combine them for best project outcomes Practice the book’s concepts as you work through chapters Change your focus from writing a good requirement to ensuring a complete system
In Software Requirements, you'll discover practical, effective techniques for managing the requirements engineering process all the way through the development cycle--including tools to facilitate that all-important communication between users, developers, and management. Use them to: Book jacket.
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.
This book has two audiences: the practising Requirements Engineer and the advanced student of software engineering or computer science. The book is unique because it introduces latest research results and, at the same time, presents highly practical and useful techniques. This book is complementary to texts on software requirements and system Requirements Engineering because of its focus on the problems caused by the fact that Requirements Engineering involves people. Throughout this book the author has sought to introduce the reader to a number of techniques which have not previously been included within mainstream computer science literature. The techniques chosen have been shown to work in practice in both commercial and research pro jects. The appendices contain step-by-step guides to particular tech niques; sufficient detail is provided for readers to try the techniques for themselves. The problem faced by the Requirements Engineer is complex, it con cerns meeting the needs of the customer and at the same time meeting the needs of the designer.
20 Best Practices for Developing and Managing Requirements on Any Project 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 "I once read the ten best-selling requirements engineering books of the prior ten years. This one book succinctly presents more useful information than those ten books combined." --Mike Cohn, author of User Stories Applied and co-founder, Scrum Alliance "Diamonds come about when a huge amount of carbon atoms are compressed. Karl and Candase have done something very similar: they have compressed their vast requirements knowledge into 20 gems they call 'core practices.' These practices are potent stuff, and I recommend that they become part of everyone's requirements arsenal." --James Robertson, author of Mastering the Requirements Process and Business Analysis Agility "Long story short: if you are going to read only one requirements book, this is it. Software Requirements Essentials distills the wealth of information found in Software Requirements and many other texts down to twenty of the most important requirements activities that apply on nearly all projects. Today's busy BA simply doesn't have the time to read a lengthy instructive guide front-to-back. But they should find the time to read this book." --From the Foreword by Joy Beatty, COO, ArgonDigital "Software Requirements Essentials will be a high-value addition to your business analysis library. Anyone looking to improve their business analysis practices will find great practical advice they'll be able to apply immediately." --Laura Paton, Principal Consultant, BA Academy, Inc. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Software Architecture for Big Data and the Cloud is designed to be a single resource that brings together research on how software architectures can solve the challenges imposed by building big data software systems. The challenges of big data on the software architecture can relate to scale, security, integrity, performance, concurrency, parallelism, and dependability, amongst others. Big data handling requires rethinking architectural solutions to meet functional and non-functional requirements related to volume, variety and velocity. The book's editors have varied and complementary backgrounds in requirements and architecture, specifically in software architectures for cloud and big data, as well as expertise in software engineering for cloud and big data. This book brings together work across different disciplines in software engineering, including work expanded from conference tracks and workshops led by the editors. - Discusses systematic and disciplined approaches to building software architectures for cloud and big data with state-of-the-art methods and techniques - Presents case studies involving enterprise, business, and government service deployment of big data applications - Shares guidance on theory, frameworks, methodologies, and architecture for cloud and big data
"If you're looking for solid, easy-to-follow advice on estimation, requirements gathering, managing change, and more, you can stop now: this is the book for you."--Scott Berkun, Author of The Art of Project Management What makes software projects succeed? It takes more than a good idea and a team of talented programmers. A project manager needs to know how to guide the team through the entire software project. There are common pitfalls that plague all software projects and rookie mistakes that are made repeatedly--sometimes by the same people! Avoiding these pitfalls is not hard, but it is not necessarily intuitive. Luckily, there are tried and true techniques that can help any project manager. In Applied Software Project Management, Andrew Stellman and Jennifer Greene provide you with tools, techniques, and practices that you can use on your own projects right away. This book supplies you with the information you need to diagnose your team's situation and presents practical advice to help you achieve your goal of building better software. Topics include: Planning a software project Helping a team estimate its workload Building a schedule Gathering software requirements and creating use cases Improving programming with refactoring, unit testing, and version control Managing an outsourced project Testing software Jennifer Greene and Andrew Stellman have been building software together since 1998. Andrew comes from a programming background and has managed teams of requirements analysts, designers, and developers. Jennifer has a testing background and has managed teams of architects, developers, and testers. She has led multiple large-scale outsourced projects. Between the two of them, they have managed every aspect of software development. They have worked in a wide range of industries, including finance, telecommunications, media, nonprofit, entertainment, natural-language processing, science, and academia. For more information about them and this book, visit stellman-greene.com
This is the first handbook to cover comprehensively both software engineering and knowledge engineering -- two important fields that have become interwoven in recent years. Over 60 international experts have contributed to the book. Each chapter has been written in such a way that a practitioner of software engineering and knowledge engineering can easily understand and obtain useful information. Each chapter covers one topic and can be read independently of other chapters, providing both a general survey of the topic and an in-depth exposition of the state of the art. Practitioners will find this handbook useful when looking for solutions to practical problems. Researchers can use it for quick access to the background, current trends and most important references regarding a certain topic.The handbook consists of two volumes. Volume One covers the basic principles and applications of software engineering and knowledge engineering.Volume Two will cover the basic principles and applications of visual and multimedia software engineering, knowledge engineering, data mining for software knowledge, and emerging topics in software engineering and knowledge engineering.
Poor requirements management is one of the top five contributors to poor project performance. In extreme, safety critical or emergency-relief situations, failure to satisfy the real needs of the project stakeholders may well lead directly to loss of life or human suffering; other, more mundane, projects can also be severely compromised. Dr Mario Kossmann’s Requirements Management looks at the process from the perspectives of both Program and Project Management and Systems Engineering, showing the crucial role of RM in both contexts. The author puts great emphasis on the human aspects of any project, which is also significant given that over-emphasis on technical or technological aspects at the expense of the human side is another major source of project shortfalls. The book offers illustrated examples of systems of different levels of complexity (one simple system, one complex, and one highly complex system) to help you categorize your own system and enable you to select the right level of formality, a suitable organization and a set of techniques and tools to carry out your requirements work. It includes a series of comprehensive checklists which can be used immediately to improve urgent requirements aspects. This is a practical and realistic guide to requirements management that provides a flexible, hands-on and innovative approach to developing and managing program, project and system requirements at different levels of complexity; read it and use the advice offered to ensure your projects can actually deliver, first time, without the need for costly and time-consuming rework.