Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Social modeling for requirements engineering
Yu E., Giorgini P., Maiden N., Mylopoulos J., The MIT Press, Cambridge, MA, 2011. 760 pp. Type: Book (978-0-262240-55-0)
Date Reviewed: Apr 7 2011

Reading this book has changed the way I look at the world. Waiting for the bus, I realized that I depended on the bus driver to get me to work on time. On the bus, I saw that the driver depends on passengers to get on and off quickly in order for the bus to remain on time. This is an “intentional” view inspired by the istar, or intentional strategic actor relationships modeling (i*) framework that this collection of papers explores. Instead of focusing on data and other flows to uncover problems and opportunities, this approach studies dependencies. It is an approach that is on the edge of moving from research to practice.

i* is the original version. Many similar derived notations exist, including Tropos and goal-oriented requirements language (GRL). GRL is part of a European standard [1] language for requirements engineering. This book republishes the seminal thesis by Eric Yu, adds papers that test and extend the i* framework, and finishes by defining a reference meta-model and notation for i* and for Tropos.¿

Yu’s i* framework has two notations: the¿strategic dependency (SD) diagram and the strategic rationale (SR) diagram. The SD diagram shows how actors depend on each other for resources, goals, tasks, and “softgoals.” It is a directed graph with dependencies for arcs. The nodes can be actors, agents, roles, and positions. The SR diagram delves more deeply into the reasoning that goes on inside agents. Yu uses formal logic to express the semantics in his work, but I am suspicious of a loss of referential transparency in some predicates about beliefs. However, the notation has been translated into Telos, and tools exist for checking models and extracting information.¿I, along with others, think that the¿notation could be improved [2]. It is easy to define a unified modeling language (UML) profile with dependencies between actors and with tagged values such as {softgoal=“on time(bus)”}. A simple addition to the current UML standard would express i*.¿

The book is unusually well edited, with consolidated indexes of authorities and of topics, but it does not make a good textbook; it consists mostly of research papers. Learners need the kinds of exercises mentioned on page 172 of the book.¿

Practitioners who need to analyze systems should look at this book. The important ideas are in chapter 2, and the experiences recounted in chapter 3 provide very useful pointers, including the suggestion that tables are more effective than diagrams (pages 171-172). I don’t think practitioners need to own it or study all 700-plus pages, however. A short handbook based on the first section, chapter 17, and the appendix would be ideal.

Researchers need to study the research in chapters 3 through 16, if only to reject dead ends. Many chapters describe extensions to Yu’s work, such as GRL, Tropos, secure Tropos, trust and distrust, and risks. ¿

Other papers attempt to link the analysis of dependencies between actors to the architecture or design of software. Intentional models may map well to agent-oriented software, but¿I find most of the attempts in this book to be naive. The i* framework will uncover and specify quality (nonfunctional) requirements well. In general, though, you cannot just deduce design from requirements. Only special types of problems have solutions that can be computed from the requirements; indeed, methodologies that attempt to do this have never been popular. Current object-oriented (OO) design methods use patterns and code-oriented evolution. For general problems, you can only show that, under assumptions about the domain, a particular design will fulfill the given requirements. Chapter 8 contains an interesting example, where Alloy is used to find inconsistencies between organizational policies (expressed in formal Tropos)¿at different levels. Figure 13.5 (the result of mapping i* into a OO design), however, is an egregious example of the “God object” anti-pattern. The weak knowledge of UML demonstrated by Figures 11.2, 11.4, 12.10, and 12.11 further lowered my faith in some of the research chapters.¿This contrasts with the excellent use of UML in Figure 17.11. The book does not mention Desai’s work on conditional commitments [3] or the Flores/Winograd language/action perspective [4], which are other goal-oriented approaches.

I do intend to introduce my students to the use of dependencies to analyze existing systems. This book is a valuable addition to such concepts as using flows, scenarios, data models, logic, and mathematics.

Reviewer:  Richard Botting Review #: CR138969 (1112-1234)
1) ITU-T Recommendation Z.151 (11/2008),Z Series: User requirements notation (URN) -- Language definition 2008 http://www.itu.int/rec/T-REC-Z.151-200811-I/en.
2) Moody, D.L.; Heymans, P.; Matuleviius, R. Visual syntax does matter: improving the cognitive effectiveness of the i* visual notation. Requirements Engineering 15, 2(2010), 141–175.
3) Desai, N.; Chopra, A.K.; Singh, M.P. Amoeba: a methodology for modeling and evolving cross-organizational business processes. ACM Transactions on Software Engineering and Methodology 19, 2(2009), 6.1–6.45.
4) Winograd, T.; Flores, F. Understanding computers and cognition. Ablex, Norwood, NJ, 1986.
Bookmark and Share
  Editor Recommended
Featured Reviewer
 
 
Methodologies (D.2.1 ... )
 
 
Elicitation Methods (D.2.1 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Methodologies": Date
Multilevel specification of real time systems
Gabrielian A., Franklin M. Communications of the ACM 34(5): 50-60, 1991. Type: Article
May 1 1992
Software requirements
Davis A., Prentice-Hall, Inc., Upper Saddle River, NJ, 1993. Type: Book (9780138057633)
Nov 1 1994
The automated production control documentation system
Trammell C., Binder L., Snyder C. ACM Transactions on Software Engineering and Methodology 1(1): 81-94, 1992. Type: Article
Mar 1 1993
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy