Artículos relacionados a Requirements Engineering: From System Goals to UML...

Requirements Engineering: From System Goals to UML Models to Software Specifications - Tapa blanda

 
9780470012703: Requirements Engineering: From System Goals to UML Models to Software Specifications

Sinopsis

The book presents both the current state of the art in requirements engineering and a systematic method for engineering high-quality requirements, broken down into four parts.  The first part introduces fundamental concepts and principles including the aim and scope of requirements engineering, the products and processes involved, requirements qualities to aim at and flaws to avoid, and the critical role of requirements engineering in system and software engineering.

The second part of the book is devoted to system modeling in the specific context of engineering requirements. It presents a multi-view modeling framework that integrates complementary techniques for modeling the system-as-is and the system-to-be. The third part of the book reviews goal-based reasoning techniques to support the various steps of the KAOS method. The fourth part of the book goes beyond requirements engineering to discuss the mapping from goal-oriented requirements to software specifications and to software architecture.

Online software will accompany the book and will add value to both classroom and self-study by enabling students to build models and specifications involved in the book’s exercises and case studies, helping them to discover the latest RE technology solutions. Instructor resources such as slides, figures and handouts are available from an accompanying website.

"Sinopsis" puede pertenecer a otra edición de este libro.

Acerca del autor

Axel van Lamsweerde is Professor in the Department of Computing Science at the Université catholique de Louvain (UCL), Belgium. He recently received the ACM SIGSOFT Outstanding Research Award for "deep and lasting contributions to the theory and practice of requirements engineering".

De la contraportada

This book provides a systematic and practical approach to the engineering of high-quality requirements. It covers the entire requirements lifecycle and integrates state-of-the-art techniques for requirements elicitation, evaluation, specification, analysis, and evolution. Modeling plays a central role. A method is presented for building and analyzing a multi-view model of the target system, where each step is supported by heuristic rules, tactics, modeling patterns, and bad smells to avoid.

Highlights include:

  • A comprehensive introduction to the fundamentals of requirements engineering, including techniques for: requirements elicitation and reuse, risk analysis, conflict management, and requirements prioritization; requirements specification, inspection, validation, and verification; traceability management and change control.
  • An in-depth treatment of system modelling for requirements engineering, including constructive techniques for modeling system goals, conceptual objects, responsibilities among system agents, operations, scenarios and intended behaviors, and countermeasures to anticipated hazards and threats.
  • A variety of techniques for model-based evaluation of alternative options, model refinement checking, model animation, property verification, inductive model synthesis, and analysis of conflicts, hazards, and security threats.
  • Use of standard UML notations wherever applicable. Most techniques are based on a solid formal framework, kept hidden throughout the major part of the book for wider accessibility.
  • Numerous examples from running case studies in a variety of domains, including security- and safety-critical ones. Rich set of problems and exercises at the end of each chapter together with bibliographical notes for further study.

The book is primarily written for undergraduates and masters students in software or system engineering to acquire a solid background in requirements engineering and system modelling. It is also intended for practitioners in need of systematic guidance for elaborating and analyzing requirements. The last part on model-based reasoning is more targeted to graduate students. A companion website with additional instructor resources and tool support can be found at www.wileyeurope.com/college/van lamsweerde

Fragmento. © Reproducción autorizada. Todos los derechos reservados.

Requirements Engineering

From System Goals to UML Models to Software SpecificationsBy Axel van Lamsweerde

John Wiley & Sons

Copyright © 2009 Axel van Lamsweerde
All right reserved.

ISBN: 978-0-470-01270-3

Chapter One

Setting the Scene

This chapter introduces requirements engineering (RE) as a specific discipline in relation to others. It defines the scope of RE and the basic concepts, activities, actors and artefacts involved in the RE process. In particular, it explains what requirements there are with respect to other key RE notions such as domain properties and environment assumptions. Functional and non-functional requirements will be seen to play specific roles in the RE process. The quality criteria according to which requirements documents should be elaborated and evaluated will be detailed. We will also see why a careful elaboration of requirements and assumptions in the early stages of the software lifecycle is so important, and what obstacles may impinge on good RE practice.

The chapter also introduces three case studies from which running examples will be taken throughout the book. These case studies will additionally provide a basis for many exercises at the end of chapters. They are taken from quite different domains to demonstrate the wide applicability of the concepts and techniques. Although representative of real-world systems, the case study descriptions have been simplified to make our examples easily understandable without significant domain expertise. The first case study is a typical instance of an information system. The second captures the typical flavour of a system partly controlled by software. The third raises issues that are typical of distributed collaborative applications and product families.

1.1 What is requirements engineering?

To make sure that a software solution correctly solves a particular problem, we must first correctly understand and define what problem needs to be solved. This seems common sense at first sight. However, as we shall see, figuring out what the right problem is can be surprisingly difficult. We need to discover, understand, formulate, analyse and agree on what problem should be solved, why such a problem needs to be solved and who should be involved in the responsibility of solving that problem. Broadly, this is what requirements engineering is all about.

1.1.1 The problem world and the machine solution

The problem to be solved arises within some broader context. It is in general rooted in a complex organizational, technical or physical world. The aim of a software project is to improve this world by building some machine expected to solve the problem. The machine consists of software to be developed and installed on some computer platform, possibly together with some input/output devices.

The problem world and the machine solution have their own phenomena while sharing others (Jackson, 1995b). The shared phenomena define the interface through which the machine interacts with the world. The machine monitors some of the shared phenomena while controlling others in order to implement the requirements.

Figure 1.1 illustrates this for a simple e-commerce world. In this example, the world owns the phenomena of items being delivered to buyers only once they have been paid; the machine owns the phenomena of payment records being created in the machine's database. The phenomena of payment notifications being sent to sellers are shared, as the machine can control them whereas the world can monitor them.

Requirements engineering is concerned with the machine's effect on the surrounding world and the assumptions we make about that world. As a consequence, it is solely concerned with world phenomena, including shared ones. Requirements and assumptions have their meaning in the problem world. In contrast, software design is concerned with machine phenomena.

The system-as-is and the system-to-be

In the system engineering tradition, the word system will be used throughout the book to denote a set of components interacting with each other to satisfy some global objectives. While being intrinsically composite, a system can be seen as a whole through the global properties emerging from component interactions. Such properties include the objectives underpinning component interactions and laws regulating such interactions.

Example 1. Consider an e-auction system on the Internet. This system is made up of components such as sellers, buyers, shipping companies, an independent e-payment subsystem, e-mail systems, and the software to be developed or extended for inserting and advertising items, handling bids, billing highest bidders, recording evaluations of sellers and buyers, securing transactions and so forth. Global properties emerging from component interactions include the satisfaction of buyers getting wider access to interesting items, the satisfaction of sellers getting wider access to potential buyers, auction rules regulating the system, trustworthiness relationships and so on. Example 2. A flight management system includes components such as pilots, air traffic controllers, on-board and on-ground instruments, the autopilot software to be developed, an independent collision-avoidance subsystem and so forth. Global properties emerging from component interactions include the objectives of rapid and safe transportation of passengers, regulating laws about wind directions, aircraft speed, minimal distance between aircrafts and so forth.

In a machine-building project, our business as requirements engineers is to investigate the problem world. This leads us to consider two versions of the same system:

The system-as-is, the system as it exists before the machine is built into it.

The system-to-be, the system as it should be when the machine will be built and operated in it.

In the previous example of an auction world, the system-as-is is a standard auction system with no support for electronic bidding. The system-to-be is intended to provide such support in order to make items biddable from anywhere at any time. In a flight management world, the system-as-is might include some autopilot software with limited capabilities; the system-to-be would then include autopilot software with extended capabilities. In the former example the system-to-be is the outcome of a new software project, whereas in the latter example it results from a software evolution project.

Note that there is always a system-as-is. Consider a project aimed at developing control software for a MP4 player, for example. The system-as-is is the conventional system allowing you to listen to your favourite music on a standard hi-fi subsystem. The system-to-be is intended to mimic the listening conditions of the system-as-is while providing convenient, anywhere and any-time access to your music.

The software-to-be and its environment

The machine's software to be developed or modified is just one component of the system- to-be. We will refer to it as the software-to-be. Other components will in general pertain to the machine's surrounding world. They will form the environment of the software-to-be. Such components may include:

People or business units playing specific roles according to organizational policies. Physical devices operating under specific rules in conformance with physical laws - for example sensors, actuators, measurement instruments or communication media. Legacy, off-the-shelf or foreign software components with which the software-to-be needs to interact.

As we are concerned with the problem world, we need to consider both the system-as-is, to understand its objectives, regulating laws, deficiencies and limitations, and the system-to-be, to elaborate the requirements on the software-to-be accordingly together with assumptions on the environment.

The systems-to-be-next

If we want to build an evolvable machine in our problem world, we need to anticipate likely changes at RE time. During software development or after deployment of the system-to-be, new problems and limitations may arise. New opportunities may emerge as the world keeps changing. We may then even need to consider more than two system versions and foresee what the next system versions are likely to be. Beyond the system-as-is and the system-to-be, there are systems-to-be-next. Requirements evolution management is an important aspect of the RE process that will be discussed at length in Chapter 6.

Requirements engineering: A preliminary definition

In this setting, we may apprehend requirements engineering more precisely as a coordinated set of activities for exploring, evaluating, documenting, consolidating, revising and adapting the objectives, capabilities, qualities, constraints and assumptions that the system-to-be should meet based on problems raised by the system-as-is and opportunities provided by new technologies. We will come back to those various activities in Section 1.1.6 and will have a much closer look at them in subsequent chapters.

1.1.2 Introducing our running case studies

To make the nature of RE more apparent and more concrete, we will consider a variety of case studies. The following descriptions are intended to set up the context in which our running examples will be used throughout the book. They will also provide further insights into the scope and dimensions of the problem world. We should not consider them as problem statements, but rather as fragmentary material collected from preliminary investigations of the problem world (perhaps by use of the elicitation techniques discussed in Chapter 2).

1.1.3 The WHY, WHAT and WHO dimensions of requirements engineering

The preceding case-study descriptions give us a preliminary idea of the wide range of issues we need to consider in the RE process.

As noted before, the investigation of the problem world leads us to consider two versions of the system. The system-as-is has problems, deficiencies and limitations. For example, money is wasted in the UWON library system-as-is by the acquisition of duplicate or rarely used resources; access to bibliographical search facilities is severely limited in both time and location. In the WAX transportation system-as-is, flight connections are missed due to slow bus transportation and poor information to passengers. In the meeting scheduling system-as-is, meeting initiators are overloaded and meeting dates are not chosen well enough, which sometimes results in poor meeting attendance.

The system-to-be is intended to address those problems based on technology opportunities. It will do so only if the software-to-be and the organizational and physical components defining the environment are able to cooperate effectively. In the UWON library system-to-be, the new software has to cooperate effectively with environmental components such as patrons, staff, anti-theft devices, digital libraries and external library systems. In the WAX train system-to-be, the train-control software has to operate in conjunction with environmental components such as track sensors, train actuators, passengers, information panel devices and so forth. In the meeting scheduling system-to-be, the scheduler software has to cooperate effectively with environmental components such as meeting initiators and participants, e-mail systems, e-agenda managers, the communications network and so on. In the end, what really matters is the satisfactory working of the software-environment pair.

The problem world may thus be structured along three dimensions. We need to figure out why a system-to-be is needed, what needs must be addressed by it, and who in this system will take part in fulfilling such needs (see Figure 1.2).

The WHY dimension

The contextual reasons for a new version of a system must be made explicit in terms of objectives to be satisfied by it. Such objectives must be identified with regard to the limitations of the system-as-is and the opportunities to be exploited. This requires some careful analysis. What are those objectives precisely? What are their ramifications? How do they interact? How do they align with business objectives?

As we will see more thoroughly in subsequent chapters, such analysis along the WHY dimension is generally far from simple.

Acquiring domain knowledge We need to get a thorough understanding of the domain in which the problem world is rooted. This domain might be quite complex in terms of concepts, regulating laws, procedures and terminology. If you are not sufficiently convinced by the complexity of library management or meeting scheduling, think of domains such as air traffic control, proton therapy, power plants or stock exchanges. (Chapter 2 will present techniques to help us acquire domain knowledge.)

Evaluating alternative options in the problem world There can be alternative ways of satisfying the same identified objective. We need to assess the pros and cons of such alternatives in order to select the most preferable one. (Chapters 3 and 16 will present techniques to support this task.)

Example: Library management. We could satisfy the objective of extensive coverage of the literature through a non-selective journal subscription policy or, alternatively, through access to digital libraries. The two alternatives need to be evaluated in relation to their pros and cons. Example: Train control. We could satisfy the objective of avoiding train collisions by ensuring that there will never be two trains on the same block or, alternatively, by ensuring that trains on the same block will always be separated by some worst-case stopping distance. The pros and cons of each alternative must be assessed carefully. Example: Meeting scheduling. The objective of knowing the time constraints of invited participants could be satisfied by asking them their constraints via e-mail or, alternatively, by accessing their electronic agenda directly.

Evaluating technology opportunities We also need to acquire a thorough understanding of the oppportunities provided by technologies emerging in the domain under consideration, together with their implications and risks. For example, what are the strengths, implications and risks associated with digital libraries, driverless trains or e-agendas?

Handling conflicts The objectives that the system-to-be should satisfy are generally identified from multiple sources which have conflicting viewpoints and interests. As a result, there may be different perceptions of what the problems and opportunities are; and there may be different views on how the perceived problems should be addressed. In the end, a coherent set of objectives needs to emerge from agreed trade-offs. (Chapters 3, 16 and 18 will present techniques to support that task.)

Example: Library management. All parties concerned with the library system-to-be will certainly agree that access to state-of-the-art books and journals should be made more effective. There were sufficient complaints reported about this in the system-as-is. Conflicts are likely to arise, though, when this global objective is refined into more concrete objectives in order to achieve it. Everyone will acclaim the objective of improving the effectiveness of bibliographical search. However, university authorities are likely to emphasize the objective of cost reduction through integration of department libraries. Departments might be reluctant to accede to the implications of this, such as losing their autonomy. On the other hand, library staff might be concerned by strict enforcement of rules limiting library opening periods, the length of loan periods or the number of loans to the same patron. In contrast, library patrons might want much more flexible usage rules. Example: Train control. All parties will agree on the objectives of faster and safer transportation. Conflicts will, however, appear between the railway company management and the unions while exploring the pros and cons of alternative options with or without drivers, respectively.

(Continues...)


Excerpted from Requirements Engineeringby Axel van Lamsweerde Copyright © 2009 by Axel van Lamsweerde. Excerpted by permission.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.

"Sobre este título" puede pertenecer a otra edición de este libro.

  • EditorialWiley
  • Año de publicación2009
  • ISBN 10 0470012706
  • ISBN 13 9780470012703
  • EncuadernaciónTapa blanda
  • IdiomaInglés
  • Número de páginas714
  • Contacto del fabricanteno disponible

Comprar usado

Condición: Aceptable
Your purchase helps support Sri...
Ver este artículo

EUR 4,59 gastos de envío desde Reino Unido a España

Destinos, gastos y plazos de envío

Comprar nuevo

Ver este artículo

GRATIS gastos de envío desde Estados Unidos de America a España

Destinos, gastos y plazos de envío

Otras ediciones populares con el mismo título

9788126545896: Requirements Engineering: From System Goals to UML Models to Software Specifications

Edición Destacada

ISBN 10:  8126545895 ISBN 13:  9788126545896
Editorial: WILEY INDIA, 2014
Tapa blanda

Resultados de la búsqueda para Requirements Engineering: From System Goals to UML...

Edición internacional
Edición internacional

Lamsweerde
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Nuevo Tapa blanda
Edición internacional

Librería: Romtrade Corp., STERLING HEIGHTS, MI, Estados Unidos de America

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: New. Brand New. Soft Cover International Edition. Different ISBN and Cover Image. Priced lower than the standard editions which is usually intended to make them more affordable for students abroad. The core content of the book is generally the same as the standard edition. The country selling restrictions may be printed on the book but is no problem for the self-use. This Item maybe shipped from US or any other country as we have multiple locations worldwide. Nº de ref. del artículo: ABNR-53443

Contactar al vendedor

Comprar nuevo

EUR 28,26
Convertir moneda
Gastos de envío: GRATIS
De Estados Unidos de America a España
Destinos, gastos y plazos de envío

Cantidad disponible: 5 disponibles

Añadir al carrito

Edición internacional
Edición internacional

Lamsweerde
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Nuevo Tapa blanda
Edición internacional

Librería: Romtrade Corp., STERLING HEIGHTS, MI, Estados Unidos de America

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: New. Brand New. Soft Cover International Edition. Different ISBN and Cover Image. Priced lower than the standard editions which is usually intended to make them more affordable for students abroad. The core content of the book is generally the same as the standard edition. The country selling restrictions may be printed on the book but is no problem for the self-use. This Item maybe shipped from US or any other country as we have multiple locations worldwide. Nº de ref. del artículo: ABNR-6781

Contactar al vendedor

Comprar nuevo

EUR 28,26
Convertir moneda
Gastos de envío: GRATIS
De Estados Unidos de America a España
Destinos, gastos y plazos de envío

Cantidad disponible: 1 disponibles

Añadir al carrito

Imagen de archivo

van Lamsweerde, Axel
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Antiguo o usado Tapa blanda

Librería: Phatpocket Limited, Waltham Abbey, HERTS, Reino Unido

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: Good. Your purchase helps support Sri Lankan Children's Charity 'The Rainbow Centre'. Ex-library, so some stamps and wear, but in good overall condition. Our donations to The Rainbow Centre have helped provide an education and a safe haven to hundreds of children who live in appalling conditions. Nº de ref. del artículo: Z1-U-005-01811

Contactar al vendedor

Comprar usado

EUR 25,26
Convertir moneda
Gastos de envío: EUR 4,59
De Reino Unido a España
Destinos, gastos y plazos de envío

Cantidad disponible: 1 disponibles

Añadir al carrito

Imagen de archivo

Axel van Lamsweerde
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Antiguo o usado Tapa blanda

Librería: medimops, Berlin, Alemania

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: good. Befriedigend/Good: Durchschnittlich erhaltenes Buch bzw. Schutzumschlag mit Gebrauchsspuren, aber vollständigen Seiten. / Describes the average WORN book or dust jacket that has all the pages present. Nº de ref. del artículo: M00470012706-G

Contactar al vendedor

Comprar usado

EUR 27,65
Convertir moneda
Gastos de envío: EUR 5,50
De Alemania a España
Destinos, gastos y plazos de envío

Cantidad disponible: 2 disponibles

Añadir al carrito

Imagen de archivo

van Lamsweerde, Axel
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Antiguo o usado Tapa blanda

Librería: SecondSale, Montgomery, IL, Estados Unidos de America

Calificación del vendedor: 4 de 5 estrellas Valoración 4 estrellas, Más información sobre las valoraciones de los vendedores

Condición: Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Nº de ref. del artículo: 00071513434

Contactar al vendedor

Comprar usado

EUR 14,51
Convertir moneda
Gastos de envío: EUR 30,18
De Estados Unidos de America a España
Destinos, gastos y plazos de envío

Cantidad disponible: 2 disponibles

Añadir al carrito

Edición internacional
Edición internacional

LAMSWEERDE A.V.
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Nuevo Tapa blanda
Edición internacional

Librería: Basi6 International, Irving, TX, Estados Unidos de America

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: Brand New. New.SoftCover International edition. Different ISBN and Cover image but contents are same as US edition. Expediting shipping for all USA and Europe orders excluding PO Box. Excellent Customer Service. Nº de ref. del artículo: ABEJUNE24-328227

Contactar al vendedor

Comprar nuevo

EUR 28,26
Convertir moneda
Gastos de envío: EUR 25,87
De Estados Unidos de America a España
Destinos, gastos y plazos de envío

Cantidad disponible: 12 disponibles

Añadir al carrito

Imagen del vendedor

Van Lamsweerde, Axel
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Antiguo o usado Tapa blanda

Librería: GreatBookPrices, Columbia, MD, Estados Unidos de America

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: good. May show signs of wear, highlighting, writing, and previous use. This item may be a former library book with typical markings. No guarantee on products that contain supplements Your satisfaction is 100% guaranteed. Twenty-five year bookseller with shipments to over fifty million happy customers. Nº de ref. del artículo: 3132267-5

Contactar al vendedor

Comprar usado

EUR 47,89
Convertir moneda
Gastos de envío: EUR 17,23
De Estados Unidos de America a España
Destinos, gastos y plazos de envío

Cantidad disponible: 5 disponibles

Añadir al carrito

Imagen de archivo

van Lamsweerde, Axel
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Nuevo Paperback

Librería: Toscana Books, AUSTIN, TX, Estados Unidos de America

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Paperback. Condición: new. Excellent Condition.Excels in customer satisfaction, prompt replies, and quality checks. Nº de ref. del artículo: Scanned0470012706

Contactar al vendedor

Comprar nuevo

EUR 43,17
Convertir moneda
Gastos de envío: EUR 25,87
De Estados Unidos de America a España
Destinos, gastos y plazos de envío

Cantidad disponible: 1 disponibles

Añadir al carrito

Imagen de archivo

Axel van Lamsweerde
Publicado por John Wiley and Sons Inc, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Nuevo PAP

Librería: PBShop.store UK, Fairford, GLOS, Reino Unido

Calificación del vendedor: 4 de 5 estrellas Valoración 4 estrellas, Más información sobre las valoraciones de los vendedores

PAP. Condición: New. New Book. Shipped from UK. Established seller since 2000. Nº de ref. del artículo: FW-9780470012703

Contactar al vendedor

Comprar nuevo

EUR 63,73
Convertir moneda
Gastos de envío: EUR 5,41
De Reino Unido a España
Destinos, gastos y plazos de envío

Cantidad disponible: 15 disponibles

Añadir al carrito

Imagen de archivo

LAMSWEERDE, AXEL VAN
Publicado por Wiley, 2009
ISBN 10: 0470012706 ISBN 13: 9780470012703
Nuevo Tapa blanda

Librería: Speedyhen, London, Reino Unido

Calificación del vendedor: 5 de 5 estrellas Valoración 5 estrellas, Más información sobre las valoraciones de los vendedores

Condición: NEW. Nº de ref. del artículo: NW9780470012703

Contactar al vendedor

Comprar nuevo

EUR 60,06
Convertir moneda
Gastos de envío: EUR 9,33
De Reino Unido a España
Destinos, gastos y plazos de envío

Cantidad disponible: 2 disponibles

Añadir al carrito

Existen otras 25 copia(s) de este libro

Ver todos los resultados de su búsqueda