RE'01 Logo

RE'01 Program

The preliminary program for RE'01 is now available. This page contains information on:

A printable flier with program hightlights is also available.
For a full schedule see the RE'01 Schedule Page


Keynote Speakers

Dr. Pamela Zave, AT&T Laboratories
Requirements for Evolving Systems: A Telecommunications Perspective
Wednesday 29th August, 9:00am

In many software application domains, constant evolution is the dominant problem, shaping both software design and the software process. Telecommunication software is the prototypical example of such an application domain. This talk examines how requirements engineering, formal description techniques, and formal methods should be adapted to work well in these application domains.

Dr. Pamela Zave received the A.B. degree in English from Cornell University, Ithaca, New York, and the Ph.D. degree in computer sciences from the University of Wisconsin--Madison. She began her career as an Assistant Professor of Computer Science at the University of Maryland, College Park. Since 1981 she has been with AT&T Research, and is now a Technology Advisor in the Network Services Research Laboratory.

Dr. Zave has approximately 70 publications, of which "A Compositional Approach to Multiparadigm Programming" won the Best Paper of 1989 award from IEEE Software. She also has two patents and two patents pending in the telecommunication area. She has given numerous talks all over the world, including invited lectures at 20 conferences. She is a member of IFIP Working Group 2.3 (Programming Methodology) and IFIP Working Group 2.9 (Requirements Engineering).

Dr. Zave is an associate editor of Requirements Engineering, a former associate editor of IEEE Transactions on Software Engineering, a former associate editor of ACM Computing Surveys, and a former officer of the ACM Special Interest Group on Software Engineering. She served as a guest editor of the January 1986 special issue of IEEE Transactions on Software Engineering on software design methods. She has served on the program committees of many conferences, including chairing the program committee of the Second IEEE International Symposium on Requirements Engineering, and co-chairing the program committee of Formal Methods Europe 2001.


Prof. Gene Spafford, CERIAS/Purdue University
The Hidden Meta-Requirements of Security and Privacy
Tursday 30th August, 9:00am

When collecting requirements for software, designers may learn of needs for specific forms of protection to be present. These needs may be translated into requirements for encryption or authentication. But what about the non-obvious aspects of security -- including privacy, auditability, and assurance -- that are usually overlooked in the requirements capture process? When we overlook these issues, we get software that doesn't deserve our trust. In this talk, I'll discuss some of the aspects of security that are regularly overlooked by designers, and suggest some standard questions that should be addressed in *every* design.

Eugene H. Spafford is a professor of Computer Sciences at Purdue University, a professor of Philosophy, and is Director of the Center for Education Research Information Assurance and Security. CERIAS is a campus-wide multi-disciplinary Center, with a broadly-focused mission to explore issues related to protecting information and information resources. Spaf has written extensively about information security, software engineering, and professional ethics. He has published over 100 articles and reports on his research, has written or contributed to over a dozen books, and he serves on the editorial boards of most major infosec-related journals.

Dr. Spafford is a Fellow of the ACM, Fellow of the AAAS, Fellow of the IEEE, and is a charter recipient of the Computer Society's Golden Core award. In 2000, he was named as a CISSP, honoris causa. Among his many activities, he is chair of the ACM's U.S. Public Policy Committee, is a member of the Board of Directors of the Computing Research Association, and is a member of the US Air Force Scientific Advisory Board. He was the year 2000 recipient of the NIST/NCSC National Computer Systems Security Award, generally regarded as the field's most significant honor in information security research, and was named as one of the "Five Most Influential Leaders in Information Security" by the readers and editors of Information Security in 1999. In 2001, he was named as one of the recipients of the "Charles B. Murphy" awards, Purdue University's highest award for outstanding undergraduate teaching.

In his spare time, Spaf wonders why he has no spare time.


Prof. Lucy Suchman, Lancaster University
Practice-based Design
Friday 31st August, 9:00am

Beginning in the late 1980s, a small cohort of anthropologists and computer scientists at Xerox Palo Alto Research Center developed an interdisciplinary research program concerned with the design and use of information technologies. Our projects over the years joined ethnographies of work and technologies-in-use with design interventions. This talk briefly reviews this program of research, illustrated with specific examples. Our ethnographic approach is exemplified in an early research project on information and communications technologies-in-use within a particular workplace. This project led, among other things, to a reconceptualization of what makes up an "information system" that informed all of our subsequent work. The latter turned increasingly to interventions aimed at exploring what I characterize here as practice-based design, combining elements of workplace ethnography and cooperative prototyping. These efforts are illustrated by a collaborative research and development project involving the transformation of a particular collection of documents - the project files of a civil engineering team engaged in designing a bridge - from paper to digital media.

Lucy Suchman is a Professor in the Centre for Science Studies and Department of Sociology at Lancaster University. She received a Ph.D. in Social/Cultural Anthropology from the University of California at Berkeley, and spent twenty years as a researcher at Xerox's Palo Alto Research Center. She is currently preparing a 2nd revised edition of her 1987 book, Plans and Situated Actions: The problem of human-machine communication, which will include an extended new Introduction looking at relevant developments since the mid 1980s both in computing and in social studies of technology. The focus will be on agent systems and new forms of human-computer interaction on the one hand, and on recent theorizing regarding humans, machines and relations between them on the other.


Dr. Michael Lowry, NASA Ames Research Center
Requirements Engineering and Program Synthesis: Mutually Exclusive or Synergistic?
Friday 31st August, 4:00pm

There has often been a clash within the formal methods community between early life-cycle proponents such as the requirements engineering community and late life-cycle proponents such as the program synthesis community. This talk will first characterize these positions and their underlying assumptions, and then expose a common set of problems and approaches. The talk will then propose an integrated life-cycle framework, and expound on its potential benefits. Technical challenges to achieving this integrated life-cycle framework will be described, as well as some preliminary work towards that goal.

Michael Lowry received his BS/MS from MIT, and his PhD from Stanford University in 1989, all in computer science. His PhD thesis work focused on problem reformulation: automated abstraction of a problem specified in an application domain to an algebraic domain, and then reformulation to a software engineering implementation domain for algorithm and data structure refinement. He joined the Kestrel Institute in 1989, and in the same year edited the book Automating Software Design by MIT/AAAI press. Subsequently he was invited by NASA Ames to start a research group in the area of automation of software engineering. The efforts of the group initially focused on developing practical program synthesis technology through automated reasoning. Amphion/NAIF demonstrated that deductive synthesis technology could generate programs in the domain of space observation geometries. Subsequent research extended this to the avionics domain and the data analysis domain. In developing all of these program synthesis systems, domain engineering has been the dominant labor-intensive cost.

The Meta-Amphion project was initiated to develop technology to aid manual domain engineering for program synthesis systems. A paper describing preliminary results won the best paper award at the Knowledge-Based Software Engineering Conference in 1995. Many of the research issues that inspired this work are still outstanding. In the mid-nineties the group expanded its research scope to include verification and validation technology. It also formed collaborations with other institutions such as the NASA IV&V center to investigate the full range of V&V issues from the requirements level through to the implementation level. As with program synthesis, domain modeling plays a crucial role in verification of software systems. Current research includes tools and methods to model the environment of a software system for software model-checking V&V.

Dr. Lowry is a member of the editorial board for the Journal of Automated Software Engineering (published by Kluwer), and was the program chair of the IEEE Automated Software Engineering conference held in fall 1997 (formerly the KBSE conference). He was the principle author of a tutorial on knowledge-based software engineering that was part of the Handbook of Artificial Intelligence. Lowry has chaired workshops sponsored by AAAI on AI and Software Engineering, as well as workshops on problem reformulation, and served on numerous conference program committees.


Tutorials

T1: Requirements Elicitation through Scenarios — a hands-on tutorial

Karen Breitman and
Julio Leite
Monday 27th August, 9:00-12:30 (half day)

At the beginning of any software project there is a stage, commonly referred to as requirements elicitation, whose main goal is to acquire knowledge about the system to be built, so as to best determine its software requirements. During this stage software engineers try to understand and model the Universe of Discourse of the application, i.e., the environment in which the system is to be deployed.

This task includes, among others, recognizing the actors, entities and phenomena that have direct influence over the software to be build. Few are the methods that offer support to the sofware engineer to unveil the application elements that are relevant to the system. Object Oriented Methods, in particular, lack adequate support to most requirement engineering tasks. Available strategies are often based in the analysis of written documentation, which is aggravated by the fact that the results are directly dependent on the ability and common sense of the people assigned to the job.

Notwithstanding, systems are continuosly being built and greater numbers of people are embracing object oriented approaches to software development. This tutuorial is aimed at software engineers at large but, specifically to those who are having trouble in requirements elicitation. We present a technique that uses scenarios to capture the aspects and dynamics of the application domain that will be later translated into the software requirements. The technique is straightforward and easy to be applied in real life settings.We will show tutorial attendees how to write clear and effective scenarios and how to infer functional and non-functional requirements out of them. The tutorial is a hands on, crash course in scenario usage, so attendees are expected to work in the supervised case studies provided by the instructors during the tutorial. As a result we expect our attendees to be acquainted and able to apply a new technique that will help them in eliciting software requirements.

Although the scope of the tutorial is to show how to write scenarios and derive requirements from them, we also intend to demonstrate how we have been applying scenarios in the context of object oriented software development. In particular, we will demonstrate how to derive CRC cards from the scenarios, thus contextualizing the tutorial to mainstream object oriented practices.

The tutorial will be divided in two parts. During the first part we present a quick introduction to scenarios used as a means to elicit requirements, passing on to the scenario notation and syntax that will be used in the tutorial. This exposition will be illustrated by a series of examples, that will be made available to attendees at the end of the course. During the presentation we will emphasize some of the style guidelines that we have been collecting during the last years working with scenarios. We hope those to help ensure clarity and good style of the resulting scenarios. We show how to infer requirements from the scenarios and finish by making an exposition of an exampleof a system developed using a scenario based approach from the requirements to its deployment.The second part consists of a supervised exercise. At this point attendees will have a chance to access the real difficulties and pitfalls involved in using scenarios.

Prof. Julio Cesar Sampaio do Prado Leite is an associate professor at the Departamento de Informática da Pontifícia Universidade Católica do Rio de Janeiro. Dr. Leite received his PhD in computer science from University of California at Irvine in 1988. He is a member of the editorial board of the "Requirements Engineering Journal", member of the sub committee in software reuse of the IEEE Computer Society and a member of the IFIP WG 2.9 (Software Requirements Engineering). Dr. Leite concentrates his research efforts in requirements engineering, software reuse and reverse engineering. Dr. Leite was the chair of the Program Comittee for the VII SBES, that took place in Rio de Janeiro in 1993 and chair of the 1998 and 2000 editions of the Workshop in Requirements Engineering (WER) that also took place in Rio de Janeiro. He has been a member of the Program Committee of all the editions of the International Symposium on Requiments Engineering (RE), including this one, starting from 1993. He belongs to ACM, IEEE and is a founding member of the Brazilian Computing Society (SBC).

Karin Koogan Breitman received her DSc. from the Departamento de Informática da Pontifícia Universidade Católica do Rio de Janeiro, where she is currently teaching and continues to work in her research. Her interests are software requirements engineering, scenario based software process and software evolution. She was part of the Program Committee of the last two editions of the International Conference on Requirements Engineering (ICRE). Dr. Breitman belongs to ACM, IEEE and the Brazilian Computing Society (SBC).

T2: Use Case Maps ­ Bridging The Gap Between Requirements And Design

Daniel Amyot and
Gunter Mussbacher
Monday 27th August, 2:00-5:30 (half day)

Two important aspects of future software engineering techniques will be the ability to seamlessly move from analysis models to design models and the ability to model dynamic systems where scenarios and structures may change at run-time. Use Case Maps (UCMs) are a scenario-based software engineering technique that addresses these aspects. UCMs are used as a visual notation for describing causal relationships between responsibilities of one or more use cases. A map-like diagram shows related use cases. The map shows the progression of scenarios along use cases. UCMs have a history of application to the description of object-oriented systems and reactive systems in various areas, including wireless, mobile, and agent domains.

This tutorial to be of interest because:

  1. There is a need in the software engineering community to bridge the gap between requirements and design – UCMs are most useful at the early stages of software development and are applicable to use case capturing and elicitation, use case validation, as well as high-level architectural design and test case generation. UCMs provide a behavioural framework for evaluating and making architectural decisions at a high level of design. Architectural decisions may be based on performance analysis of UCMs. UCMs bridge the gap between requirements and design by combining behaviour and structure in one view and by flexibly allocating scenario responsibilities to architectural structures.
  2. Software systems will become more dynamic in nature (i.e. communicating entities and protocols will not be known at design time but rather evolve at run-time; e.g. e-commerce applications or agent-based telecommunication systems) – UCMs provide its users with dynamic (run-time) refinement capabilities for variations of scenarios and structure and allow incremental development and integration of complex scenarios.
  3. UCMs are currently proposed to ITU-T as a new standard for a user requirements notation (URN). ITU-T is responsible for other design and testing standards such as message sequence charts (MSCs), the specification and description language (SDL), and the tree and tabular combined notation (TTCN). The URN standard is scheduled for publication in 2003

In this tutorial we intend to discuss Use Case Maps (UCMs) concepts, the UCM notation, and how UCMs fit into the software development process. The tutorial will show how UCMs address functional requirements expressed in use cases and performance requirements as well as high-level design and testing. The tutorial will include exercises for the participants and a brief demonstration of the freely available UCM Navigator tool.

Daniel Amyot and Gunter Mussbacher hold research/software engineer positions in the Strategic Technology department of Mitel Networks, Kanata, Canada. Daniel is finishing his Ph.D., in the area of specification and validation of telecommunication systems with UCMs, at the University of Ottawa where he has been a part-time lecturer for the last seven years. He has been working extensively with UCMs for the last eight years and is responsible for the UCM user group. Gunter holds a M.Sc. in the area of requirements engineering from Simon Fraser University where he has taught software engineering. He is currently applying and teaching UCM concepts and styles at Mitel Networks. The authors are leading the URN (User Requirements Notation) effort on functional requirements at ITU-T and are contributing members of the UML community.

Both tutors have published a number of papers on UCMs including "On the Extension of UML with UCM Concepts" (UML 2000, York, UK), "Use Case Maps for the Capture and Validation of Distributed Systems Requirements" (RE'99, Limerick, Ireland) and “Use Case Maps as a Feature Description Notation” (Language Constructs for Describing Features, Springer, 2001). Daniel and Gunter’s tutorials “Bridging the Requirements/Design Gap in Dynamic Systems with Use Case Maps (UCMs)” and “Use Case Maps (UCMs) as a User Requirements Notation – From Requirements to Design in Dynamic Systems” were previously offered at ICSE 2001 in Toronto, Canada, May 2001 and at the SDL Forum 2001 in Copenhagen, Denmark, June 2001, respectively.

T3: Problem Frames

Michael Jackson
Monday 27th August, 9:00-5:30 (full day)

Disastrous inadequacies in software-intensive systems are often due to requirements failures: that is, to failures in problem capture and analysis. This tutorial will show how to use problem frames to structure software development problems and to identify, analyse and resolve concerns and difficulties.

A problem frame defines a class of problem in terms of:

  • the problem domains - that is, the parts of the world where the problem is located and where the system’s benefits will be evaluated;
  • the requirements - that is, the benefits and effects that the customer expects the system to deliver in the problem domains;
  • the domain classes and characteristics - to be discovered and expressed in explicit description of domain properties;
  • the frame concern - that is, the basic criterion of problem solution; and
  • additional concerns and difficulties that typically arise in problems of the class.

Problem frames are too small and simple to capture problems of realistic size and complexity. A realistic problem must therefore be decomposed into subproblems, each one of which fits a known problem frame. This approach brings important advantages:

  • the excessively optimistic, but still common, practice of unguided problem decomposition, in which an unknown whole is decomposed into unknown parts, is avoided;
  • the concerns and complexities of the individual subproblems are clearly distinguished from the concerns and complexities that arise purely from their composition;
  • problem complexity is controlled because the individual subproblems are simple and the difficulties of their composition are not addressed until it is clearly understood what is to be composed; and
  • the problem taxonomy provided by problem frames gives a useful structure for acquiring, recording and exploiting knowledge of problem analysis.

Some example problems are presented and discussed; both the underlying principles of the approach and its application to the decomposition and analysis of realistic examples are brought out and explored.

Michael Jackson has been active in software development methodology for nearly forty years. He has described his work in many seminars, courses and invited presentations, in his books Principles of Program Design (Academic Press 1975), System Development (Prentice Hall 1983) and Software Requirements and Specifications (Addison-Wesley/ACM Press 1995), and also in many papers in books, journals and conference proceedings. His book on the topic of the proposed tutorial, Problem Frames: Analysing and Structuring Software Development Problems, was published by Addison-Wesley at the beginning of 2001.

Having established his own company in 1970 and run it for many years, he now works as an independent consultant in London, and as a part-time researcher at AT&T Research in Florham Park, NJ. He has held several visiting posts at universities in England and Scotland.

T4: Bridging the Gap: from User Needs to Solution Definition

Anthony Hall and Rosamund Rawlings
Tuesday 28th August, 9:00-12:30 (half day)

Our customers have a problem. Their executives and marketing people know what they want. Their analysts and engineers know how to define business processes, hardware or software systems. But they do not know how to ensure that the solutions defined by the analysts will actually meet the business needs.

REVEAL® is a requirements engineering method which includes powerful techniques for solving this problem. It is a complete RE method based on the principles enunciated by Michael Jackson. These principles, which emphasise the crucial role of the environment, allow us to explain how the environment and the solution collaborate to achieve the desired result. We state clearly what assumptions we are making about the environment - for example, the users of a computer system. We then construct solutions which, taken together with these assumptions, satisfy the needs.

This tutorial presents the principles and part of the analysis process from REVEAL. We have used this process to derive specifications for business processes and IT systems in a bank, for hardware and software used in protecting trains, and many other examples. We use descriptive techniques, scenarios and a variety of semi-formal and formal notations to ensure, with an appropriate degree of confidence, that the solution defined will meet its objectives.

Anthony Hall is a Principal Consultant with Praxis Critical Systems Ltd. He is a specialist in requirements and specification methods and the development of software-intensive systems.
Anthony has worked for many years on the development of critical operational systems. During this time he has pioneered the application of formal methods to industrial practice. He has been chief designer of major operational systems in air traffic control and financial security developed using formal methods.

Anthony has carried out requirements engineering for many projects in areas including aviation, railway engineering, secure systems and communications. He has also been closely involved in academic and professional developments in requirements engineering. Together with colleagues in Praxis Critical Systems he has brought together extensive practical experience and the latest research findings to develop REVEAL, a principled yet practical approach to requirements engineering.

As well as carrying out projects and consulting for clients, Anthony teaches and lectures widely. He has been a keynote speaker at the International Conference on Software Engineering, at the IEEE conference on Requirements Engineering and other conferences. He has published several papers on formal methods. During 1994 he spent a semester at Carnegie Mellon University, researching and teaching a course on Methods of Software Development in the Master of Software Engineering program.

Rosamund Rawlings is a Principal Consultant with Praxis Critical Systems Ltd. She is a Chartered Engineer with extensive knowledge of operating systems, commercial and technical applications, maintenance, requirements analysis, formal methods, object-oriented design and project management.

Rosamund took a leading role in the early application of the concepts used in REVEAL and now specialises in requirements engineering and system design. She is both a practitioner, leading requirements and design teams for transport system developments, and a consultant, helping others to establish sound processes.

T5: A Requirements Architecture for Assessing Design Risk

Don Gause
Tuesday 28th August, 2:00-5:30 (half day)

Design can be viewed as many things. It is the process of: 1) solving a problem, 2) creating an opportunity, 3) removing ambiguity, 4) defining the inside of a black box, 5) defining essential features, 6) deciding on expected features and, 7) inventing gee whiz features. We look at design from each of these perspectives and add one more; DESIGN IS THE PROCESS OF ASSUMING RISK.

Our premise for this workshop is that there is nothing wrong with taking risks (in design or in life). In fact, it is impossible to design without risk. As designers, we have all experienced (that all too frequent) occasion of expeditious design resulting in the wrong product hitting the market in a very timely manner. But, when we practice great diligence and care at "getting it just right", we risk getting to market too late with an otherwise great product. We will address lost opportunity, surprise, natures last laugh, unintended consequences, scope paralysis and creep, schedule and resource risk factors.

We will build, in a highly interactive manner, a requirements architecture which looks at design from these many perspectives for the explicit purpose of better understanding, defining, and documenting, in a traceable manner, the design risks associated with ongoing design projects. We will illustrate the surfacing and resolution of those costly invisible design issues and assumptions that contribute to product inconsistency and failure to meet customer expectations. We will provide mechanisms that encourage management to make critical, business dependant design decisions at the appropriate organizational levels.

This workshop is intended for all professionals involved in the development of complex computer systems. This includes executives making funding decisions, product managers, planners, systems analysts, requirements engineers, software developers, systems maintenance, and, what the heck, even end users.

Donald C. Gause is a Principal of Savile Row, LLC as well as a Bartle Professor in Systems Science in the Thomas J. Watson School of Engineering, SUNY/Binghamton. He has worked as an engineer and computer programmer and has managed engineering, programming and education groups with General Motors and IBM. He has been active as a consultant and professor for the past 33 years and served for many of these years as an adjunct member of IBM's Systems Research Institute (SRI). He has been a visiting scholar and has lectured at many universities and institutes around the world, has been an associate editor of the International Journal of Cybernetics and Systems, and has served as a national lecturer for a number of professional societies.

Mr. Gause's consulting and research interests include the development and analysis of requirements engineering and systems design processes, the design of user-oriented systems, and the management of innovation within large organizations. He has advised in the elicitation and documentation of business plans and requirements for Internet start-ups and Fortune 100 companies. He has also consulted on the development of strategic business systems, new products and processes for many leading firms.

Mr. Gause is the author (with G.M. Weinberg) of Are Your Lights On?: How to Figure Out What the Problem REALLY Is, Dorset House, N.Y., 1990 and Exploring Requirements: Quality BEFORE Design, Dorset House, N.Y., 1989.

T6: Requirements-Based Product Line Engineering

Mike Mannion and
Hermann Kaindl
Tuesday 28th August, 9:00-5:30 (full day)

Reuse and requirements are very important for efficient and successful systems development. However there are many open issues about performing them well, in particular the reuse of requirements. This tutorial presents the experiences of requirements reuse using a Method for Requirements Authoring and Management (MRAM).

For modern, highly complex, high reliability systems, the need for properly structured, carefully controlled requirements specifications, which are understandable, complete and consistent is essential in order for the resultant computer-based system to be delivered on time, within budget and to the desired high level of quality. One approach to managing these problems is to establish a pool of reusable product line requirements and to construct the requirements for a new system by making a selection from the pool. A product line is a group of products within the same market segment e.g. mobile phones. A concern of this approach is the efficient and clean selection of a valid combination of requirements. A valid combination is one in which the requirements selected satisfy any constraints imposed by the product line model.

MRAM is a method for establishing and selecting from product line requirements that addresses this concern. Using MRAM means the management of the requirements definition process is more effective and efficient, producing more accurate and complete requirements documents. TRAM (Tool for Requirements Authoring and Management) is a software tool to support MRAM that utilises current proven office technology (MS-Word, MS-Access). The tutorial presents the results of MRAM/TRAM as it has been applied to Product-Line Engineering of a real-world application.

The tutorial is an in-depth treatment of building a requirements-based product-line model. It is aimed at practitioners and academics who want to achieve significant reuse and have an intermediate or advanced knowledge of requirements engineering, component identification and the problems of developing medium to large computer-based systems. The audience does not need to know about the Spacecraft Command and Control System used for the case study. Sufficient introduction will be provided about this product for the audience to understand the principles of product line engineering.

Prof Michael Mannion is Head of Department of Computing, Glasgow Caledonian University, Glasgow, Scotland, UK. He has a BSc in Computer Science from Brunel University and a PhD in Artificial Intelligence from Bristol University. He worked as a Software Engineer for GEC Marconi Radar and Praxis Systems. He lectured at Napier University, Edinburgh 1992-2000. He is a member of IEEE, ACM, British Computer Society (BCS) and since June 1997 has been chairman of the BCS Special Interest Group on Software Reuse.

Dr. Hermann Kaindl is a senior consultant with the division of program and systems engineering at Siemens AG Österreich for requirements engineering. At Siemens he has gained more than twenty years of experience in software development. He contributes to the application of relevant theories of requirements engineering that underpin industrial projects. He is also an adjunct professor at the Technical University of Vienna. Dr. Kaindl has published three books, including "Methodik der Softwareentwicklung: Vorgehensmodell und State-of-the-Art der professionellen Praxis" (Vieweg, 1998, co-authored with B. Lutz and P. Tippold) and more than sixty papers in refereed journals, books and conference proceedings. He has given tutorials at international conferences on requirements reuse (with M. Mannion), and in-house courses about object-oriented modeling as it relates to requirements, domain models and their transition to design models. Dr. Kaindl is a senior member of the IEEE, a member of AAAI, and the ACM, and is on the executive board of the Austrian Society for Artificial Intelligence.


Full Papers

P1: Representing & Communicating Requirements

Events and Constraints: A Graphical Editor for Capturing Logical Requirements of Programs
Margaret H. Smith, Bell Laboratories, USA
Gerard J. Holzmann, Bell Laboratories, USA
Kousha Etessami, Bell Laboratories, USA

Virtual Environment Modeling for Requirements Validation of High Consequence Systems
Victor Winter, Sandia National Laboratories, USA
Dejan Desovski, West Virginia University, USA
Bojan Cukic, West Virginia University, USA
Sourav Bhattacharya, Arizona State University, USA

Metaphors of Intent
Colin Potts, Georgia Institute of Technology, USA

P2: Requirements for Product Lines

Consistency Management of Product Line Requirements
Juha Savolainen, Helsinki University of Technology, Finland
Juha Kuusela, Nokia Research Center, Finland

Developing a Product-Line Requirements Specification (PRS)
Stuart R. Faulk, University of Oregon, USA

Extending the Product Family Approach to Support n-Dimensional and Hierarchical Product Lines
Jeffrey M. Thompson, University of Minnesota, USA
Mats P.E. Heimdahl, University of Minnesota, USA

P3: Organisational Issues I

Matching ERP System Functionality to Customer Requirements
Colette Rolland, Université Paris1 Panthéon Sorbonne, USA
Naveen Prakash, British Council, India

Software Acquisition: a Business Strategy Analysis
Barbara Farbey, University College London, UK
Anthony Finkelstein, University College London, UK

An industrial survey of requirements interdependencies in software product release planning
Pär Carlshamre, Ericsson Radio Systems AB, Sweden
Kristian Sandahl, Ericsson Radio Systems AB, Sweden
Mikael Lindvall, Fraunhofer USA Center for Experimental Software Engineering, USA
Björn Regnell, Lund University, Sweden
Johan Natt och Dag, Lund University, Sweden

P4: RE Methods & Processes

Evolving Beyond Requirements Creep: A Risk-Based Evolutionary Prototyping Model
Ryan A. Carter, North Carolina State University,USA
Annie I. Antón, North Carolina State University,USA
Aldo Dagnino, Asea Brown Boveri Inc., Power T&D Company, USA
Laurie Williams, North Carolina State University,USA

Will it work?
Jonathan Hammond, Praxis Critical Systems, UK
Rosamund Rawlings, Praxis Critical Systems, UK
Anthony Hall, Praxis Critical Systems, UK

Requirements Engineering for Complex Collaborative Systems
Alistair Sutcliffe, UMIST, UK

P5: Scenarios & Requirements Negotiation

Domain Independent Regularities in Scenarios
Marcela Ridao, INTIA, Argentina
Jorge Doorn, INTIA, Argentina
Julio C. Sampaio do Prado Leite, PUC - Río, Brazil

An Empirical Study of Facilitation of Computer-Mediated Distributed Requirements Negotiations
Daniela E.H. Damian, University of Calgary, Canada
Armin Eberlein, University of Calgary, Canada
Brian Woodward, The Corporate Corner Inc., Canada
Mildred L.G. Shaw, University of Calgary, Canada
Brian R. Gaines, University of Calgary, Canada

P6: Organisational Issues II

The Role of Policy and Stakeholder Privacy Values in Requirements Engineering
Annie I. Antón, North Carolina State University, USA
Julia B. Earp, North Carolina State University, USA
Colin Potts, Georgia Institute of Technology, USA
Thomas A. Alspaugh, North Carolina State University, USA

Integrating Organizational Requirements and Object Oriented Modeling
Jaelson F. Castro, Universidade Federal de Pernambuco, Brazil
Fernanda M. R. Alencar, Universidade Federal de Pernambuco, Brazil
Gilberto A. Cysneiros Filho, Universidade Federal de Pernambuco, Brazil
John Mylopoulos, University of Toronto, Canada

Requirements Modeling for Organization Networks: A (Dis-)Trust-Based Approach
G. Gans, RWTH Aachen, Germany
M. Jarke, RWTH Aachen and GMD-FIT, Germany
S. Kethers, RWTH Aachen, Germany
G. Lakemeyer, RWTH Aachen, Germany
L. Ellrich, Universität Freiburg, Germany
C. Funken, Universität Freiburg, Germany
M. Meister, Universität Freiburg, Germany

P7: Formal Methods & Tools

XML-based Method and Tool for Handling Variant Requirements in Domain Models
Stan Jarzabek, National University of Singapore, Singapore
Hongyu Zhang, National University of Singapore, Singapore

Model Checking Early Requirements Specifications in Tropos
Ariel Fuxman, University of Toronto
Marco Pistore, IRST-ITC, Italy
John Mylopoulos, University of Toronto, Canada
Paolo Traverso, IRST-ITC, Italy

An Algorithm for Strengthening State Invariants Generated from Requirements Specifications
Ralph D. Jeffords, Naval Research Laboratory, USA
Constance L. Heitmeyer, Naval Research Laboratory, USA

P8: Requirements & Design

Residual Requirements and Architectural Residues
David S. Wile, Teknowledge Corp., USA

Reconciling Software Requirements and Architectures: The CBSP Approach
Paul Grünbacher, Austria
Alexander Egyed, Teknowledge Corporation, USA
Nenad Medvidovic, University of Southern California, USA

Requirements-Based Dynamic Metrics In Object-Oriented Systems
Jane Cleland-Huang, University of Illinois at Chicago, USA
Carl K. Chang, University of Illinois at Chicago, USA
Hosung Kim, University of Illinois at Chicago, USA
Arun Balakrishnan, University of Illinois at Chicago, USA

P9: Requirements for Critical Systems

Evolution of Safety-Critical Requirements Post-Launch
Robyn R. Lutz, Jet Propulsion Laboratory, USA
Ines Carmen Mikulski, Jet Propulsion Laboratory, USA

Deriving Safety Requirements Using Scenarios
Karen Allenby, University of York, UK
Tim Kelly, University of York, UK

Re-engineering Fault Tolerance Requirements: A Case Study in Specifying Fault Tolerant Flight Control Systems
Diego Del Gobbo, West Virginia University, USA
Ali Mili, West Virginia University, USA


State of the Practice Talks

Jeff Voas, Cigital
Discovering Unanticipated Software Output Modes

Software risk management is particularly important when the target environment of the software is a safety-critical system. Adequate development standards and methods for building software functionally that is "close to correct'' exist. But unfortunately, we often fail to imagine particular classes of system hazards that the software's behavior could induce, because quite simply, we cannot foresee everything that could go wrong from the outset of a new project. And therefore we will fail to build in the needed software protection mechanisms against these hazards.

This paper presents a software risk management technology that partially addresses this problem. Our technology is based on software fault injection's unique ability to warn about software-induced hazards that were inadvertently overlooked during the creation of the software requirements and system-level hazard analysis. Software-induced hazards occur as a result of software behaviors that are unknown.

Jeffrey Voas is a Co-founder and Chief Scientist of Cigital. Cigital has been listed in the Inc 500 in both 1999 and 2000. Voas has coauthored two Wiley books: (1) Software Assessment: Reliability, Safety, Testability (1995), and (2) Software Fault Injection: Inoculating Programs Against Errors (1998). Voas is working on a third book, "Software certificates and warranties: ensuring quality, reliability, and interoperability." Voas was the General Chair for COMPASS'97, the Program Chair for ISSRE'99, the Program Co-Chair for ICSM 2000, and will be the Program Chair for ECBS 2001. Voas is a Senior Member of the IEEE, received a Ph.D. in computer science from the College of William & Mary in 1990, was named the 1999 Young Engineer of the Year by the District of Columbia Council of Engineering and Architectural Societies. Voas was co-recepient of the IEEE's Reliability Engineer of the Year award in 2000, and received a Third Millennium Medal from the IEEE in 2000. In 2000, Voas also received a Meritorious Service award from the IEEE Computer Society. Voas is also on the editorial boards of 4 scientific magazines/journals and is a Vice-President of the IEEE Reliability Society.

Merlin Dorfman, Cisco Systems
Early Experience with Requirements Traceability in an Industrial Environment

Cisco Systems, a major provider of networking and network management solutions, traditionally builds products incrementally, so that the complexity of each development is low. Current projects are more complex, motivating more formal systems engineering. Company studies show that requirements issues, particularly missing requirements, cause delays and defects.

A pilot project of a tool-assisted requirements traceability process was conducted in one Business Unit using Rational Software's RequisitePro®. There was some concern that the project selected for this pilot was too far along in its development cycle for traceability to be of sufficient benefit; this concern was not warranted, as a number of problems were found, such as marketing requirements not incorporated into the engineering specification.

The pilot project demonstrated the value of the process, convincing management to extend it to other projects, and additional Business Units. The process required significant training and continuing direct process and tool support. Weaknesses were revealed in the requirements development process, including the lack of a consistent elicitation process. Process extensions and changes are planned to address these weaknesses.

Merlin Dorfman is a Quality Systems Staff Engineer at Cisco Systems in San Jose, California. He represents Quality Systems Engineering to the Communications Software Group of Cisco's Service Provider Line of Business. Merlin retired in 1997 from Lockheed Martin Corp., where he was a Technical Consultant in the System Engineering organization, Space Systems Product Center. He specialized in systems engineering for software-intensive systems (requirements analysis, top-level architecture, and performance evaluation), in software process improvement, and in algorithm development for data processing systems. He was the first chairman of Space Systems Division's Software Engineering Process Group. He represented the Lockheed Corporation on the Embedded Computer Software Committee of the Aerospace Industries Association, and was Vice-Chairman of the Committee.

Dr. Merlin Dorfman is a Fellow of the American Institute of Aeronautics and Astronautics (AIAA), winner of its Aerospace Software Engineering Award for 1999, a former member of its System Engineering Technical Committee, past chairman of the Software Systems Technical Committee, past Chairman of the San Francisco Section, past Assistant Director of Region 6 (West Coast), and currently a member of the Ethical Conduct Panel. He is an affiliate member of the Institute of Electrical and Electronics Engineers (IEEE) Computer Society and a member of the American Society for Quality (ASQ) and its Software Division. He is co-editor of three IEEE Tutorial volumes, "Software Engineering," "Software Requirements Engineering," and "Standards, Guidelines, and Examples for System and Software Requirements Engineering," and co-editor of a volume, "Aerospace Software Engineering," in the AIAA "Progress in Aeronautics and Astronautics" Series. He was a member of the Steering Committee for the IEEE International Conferences on Requirements Engineering in 1994, 1996, 1998, and 2000.

Dr. Dorfman has a BS and MS from the Massachusetts Institute of Technology and a PhD from Stanford University, all in Aeronautics and Astronautics. He is a registered Professional Engineer in the states of California and Colorado, and is a member of the Tau Beta Pi and Sigma Gamma Tau honorary societies.

Michael Jackson, Independent Consulant
Formalism and Informality in RE

Requirements Engineering lies at the meeting place between the formal and the informal in software development. Computer programs are effectively formal constructs, admitting treatment by mathematical methods based on type theory, preconditions and postconditions, and invariants. But the world of human beings and physical objects in which the requirements are located is informal, and can not be adequately treated by purely formal methods.

This talk explores the relationship between the formal and the informal in Requirements Engineering. Some ideas are put forward that can help in the crucial but very difficult task of formalising essentially informal requirements and devising adequate software specifications to satisfy them.

Michael Jackson has been active in software development methodology for forty years. He has described his work in many seminars, courses and invited presentations, in his books Principles of Program Design (Academic Press 1975), System Development (Prentice Hall 1983) and Software Requirements and Specifications (Addison-Wesley/ACM Press 1995), and also in many papers in books, journals and conference proceedings. His most recent book , Problem Frames: Analysing and Structuring Software Development Problems, was published by Addison-Wesley at the beginning of 2001.

Having established his own company in 1970 and run it for many years, he now works as an independent consultant in London, and as a part-time researcher at AT&T Research in Florham Park, NJ. He has held several visiting posts at universities in England and Scotland.

Ben Kovitz, Vertel Corp.
Is Backtracking so Bad? The Role of Learning in Software Development

One of the hopes of good requirements engineering is that it prevents backtracking later in the development process. We hope that by researching customer needs well, we can prevent costly re-work after coding.

This talk proposes a different view of backtracking. The key is to see that analogies to manufacturing, plausible and attractive as they are, mislead when applied to software development. Software is a mental product, created by learning. The economics of learning are completely different from the economics of manufacturing.

Ben Kovitz is a humble computer programmer at the Vertel Corporation in San Diego, California. He has worked in software development since 1984, as tester, programmer, analyst, technical writer, and user-interface designer, on everything from children's educational software to financial software to a CORBA ORB for embedded systems. His résumé is a mess. Ben is the author of "Practical Software Requirements: A Manual of Content & Style".

Ivy Hooks, Compliance Automation Inc.
What Happens With Good Requirements Practices

We've heard of the problems with bad requirements. We all have horror stories about the things that go wrong, the cost overruns, the schedule slips, the lost opportunities. What happens when you do it right. Some companies and government organizations are making requirement process changes and seeing some wonderful results. We will look at what has been done and what has resulted from several real programs. We'll talk about the things that have worked best, things that did not get the expected results and things that have yet to be tried.

Ms. Hooks is President of Compliance Automation Inc. Her over-20-year career with NASA included Integration Manager Shuttle Separation Systems and Manager Shuttle Flight Software Verification. She is a recognized expert, teacher, and consultant in requirements management and engineering. Her first book Customer-Centered Products - Creating Successful Products Through Smart Requirements Management was published in September 2000. She is a Fellow of the Society of Women Engineers, a charter member of INCOSE, a member IEEE and PMI. She has received the NASA Exceptional Service Medal and the NASA Outstanding Speaker Award.

Hermann Kaindl, Siemens AG Österreich, PSE
Adoption of Requirements Engineering: Conditions for Success

This talk will be about technology transfer from Requirements Engineering (RE) research results into mainstream RE practice. Panels at CAiSE'00 and ICRE'00 organized by us about this topic identified several obstacles as well as incentives that seem to apply world-wide. Here, we will focus on our own experience. What are the conditions for successfully adopting RE in practice?

Whenever the customer does not impose a method to be used, we develop software using our own methodology SEM, e.g., stdSEM® for "standard" projects or ooSEM® for object-oriented development. For systematically acquiring and representing requirements, we developed additional support through a more specific method and a supporting tool called RETH (Requirements Engineering Through Hypertext). Although we think that not all our findings are specific to those methods, we will sketch them in order to clarify the background.

We found many challenges faced by requirements practitioners and developed practical solutions and techniques. In a nutshell, success is not for granted. We observed that it depends on certain conditions. So, successful adoption of requirements engineering in practice is possible, but it is not easy!

Dr. Hermann Kaindl is a senior consultant with the division of program and systems engineering at Siemens AG Österreich for requirements engineering. At Siemens he has gained more than twenty years of experience in software development. He contributes to the application of relevant theories of requirements engineering that underpin industrial projects. He is also an adjunct professor at the Technical University of Vienna.

Dr. Kaindl has published three books, including "Methodik der Softwareentwicklung: Vorgehensmodell und State-of-the-Art der professionellen Praxis" (Vieweg, 1998, co-authored with B. Lutz and P. Tippold) and more than sixty papers in refereed journals, books and conference proceedings. He has given tutorials at international conferences on requirements reuse (with M. Mannion), and in-house courses about object-oriented modeling as it relates to requirements, domain models and their transition to design models.

Dr. Kaindl is a senior member of the IEEE, a member of AAAI, and the ACM, and is on the executive board of the Austrian Society for Artificial Intelligence.

Anthony  Hall, Praxis Critical Systems
A Unified Approach to Systems and Software Requirements

Praxis Critical Systems Ltd carries out systems and software engineering and we develop requirements using our own method called REVEAL®. REVEAL is a general method and makes no distinction between software and any other method of implementing a system. The same principles and the same process apply to all kinds of requirements, but the particular issues, notations and tools depend on the scale and nature of the problem and to some extent on the technology of the system being developed. This commonality is important because it means we can use insights and methods from one discipline to solve problems in other disciplines.

This talk will describe the principles behind REVEAL and explain how they generalise ideas from software (for example Parnas' four variable model) and from systems engineering. It will outline the REVEAL process which ensures that we understand the way that the system and its environment interact to satisfy the mission needs.

We have applied this process to projects ranging from a $1 million software development to a $10 billion railway upgrade. Clearly the nature of the environment is very different in these two extremes. In the software project the environment is a collection of other software and hardware, plus a few system users. The important concerns include software interfaces, and the system is specified using fairly traditional software notations. In the rail upgrade the environment includes the geography of the UK and the behaviour of rail passengers, train drivers and many other people and systems. Concerns include the safety and performance of the system in the face of human and natural unpredictability. The system specification uses a wide variety of notations including for example track layouts, electrification, signalling and human procedures.

In both cases having a common method gave us important insights and ideas which we could carry over from one kind of development to the other. For example, within the software project we used scenarios of operation, typically associated with systems engineering, to determine what functions the software had to provide to its users. In the railway project we used context diagrams, a notation from the software world, to show how the railway fitted into its environment.

Our experience suggests that requirements engineering can be applied in a unified way across a wide range of projects in many disciplines.

Dr. Anthony Hall is a Principal Consultant with Praxis Critical Systems Ltd. He is a specialist in requirements and specification methods and the development of software-intensive systems.

Anthony has worked for many years on the development of critical operational systems. During this time he has pioneered the application of formal methods to industrial practice. He has carried out requirements engineering for many projects in areas including aviation, railway signalling, secure systems and communications. He has also been closely involved in academic and professional developments in requirements engineering. Together with colleagues in Praxis Critical Systems he has brought together extensive practical experience and the latest research findings to develop REVEAL, a principled yet practical approach to requirements engineering.

Anthony has a D Phil from Oxford and is a Chartered Engineer and a Fellow of the British Computer Society.

Dr. Richard Stevens, Telelogic
Systems engineering at the enterprise level

The principles of systems and software engineering can be re-applied beyond the range of the individual project. Traditional enterprise-wide tasks such as technology management, decision-making, organizational objectives, re-use, innovation and outsourcing are amenable to systems engineering. Examples of all of these areas will be presented. The rewards from a disciplined approach are clearly higher when applied at this level. Indeed some aspects (such as re-use) are only possible across projects. The problem of introducing this change is primarily cultural, because of the wide range of skills (including non-technical areas) involved in this coordination. Moreover the time-scales and commitment needed are higher than for individual projects. Shaping systems processes around traditional tasks and terminology helps convince management of the need for system engineering.

Dr Richard Stevens was awarded INCOSE Fellow status in 1998 to recognise his outstanding achievements in systems engineering. He has over 15 years experience as a requirements engineering consultant, auditor and trainer to organizations such as AT&T, DERA, ESA, Motorola, Ford and GM. Formerly Head of Methodology, Technology and Quality for Information Systems in the European Space Agency. As a member of ESA's Board for software standards (1987-1993), he helped develop the ESA PSS-05 software standards, used by thousands of European software engineers.

Dr Stevens is author of books such as 'Systems Engineering -coping with complexity' (Prentice-Hall 1998), 'Software Engineering Standards' (Prentice-Hall 1994), 'Software Engineering Guidelines' (Prentice-Hall 1996), and 'Understanding Computers (Oxford University Press 1986), plus numerous academic papers and newspaper articles. The first book is now the standard text within MoD for teaching systems engineering.

In 1993, Dr Stevens co-founded QSS at the Oxford Science Park. As CTO, he shaped the development of DOORS, which grew to a 250-people company, and the world's leading requirements management tool. QSS was awarded "BCS IT Company of the Year" in November 1998. QSS was acquired by the Swedish company Telelogic in September 2000, and Dr Stevens became part-time Advisor to the Telelogic CTO. Recently this work has evolved to applying a systems approach at the business level within organizations. He has written many methods training courses and books, including 'Structured Requirements', 'Requirements for e-business', and 'Managing the Business Objectives' and presented them to Fortune 500 companies worldwide. For more info, look at www.telelogic.com

Don Gause, Savile Row, LLC and SUNY/Binghamton
Where are we on the "fend off the alligators - drain the swamp" continuum?

Over the past ten years, we have seen many useful developments in software specification tools, languages, processes, and practices as well as the creation of a number of excellent requirements management tools. Numerous books and articles have been produced on requirements elicitation and development. We have learned to explicitly specify complex synchronous and asynchronous processes using Petri nets, state diagrams, and structured decision tables. We are exploring the use of fuzzy logic and imprecise probabilities to improve our management of uncertainty in the design process. But, WAIT JUST A MINUTE! Where is the industry with respect to all of this? In spite of this dramatic progress, are there remaining holes and/or opportunities in our practice of Requirements Engineering? We find the industry to be all over the map as the answer to the former and an emphatic YES as an answer to the latter.

We take a friendly look at the industry in terms of: 1) requirements practices already in place - from none to some to plenty, 2) what the industry means by "requirements", and 3) what companies say to their stockholders and customers versus what their end products reflect. We will suggest a few simple ideas for enhancing the value of requirements over the full life cycle of the product. We will propose a more moderate strategy for realizing, in a practical way, greater opportunity through requirements engineering. We feel that, with modest but consistent effort, we can experience relatively large benefits. We suggest charming the alligators.

Prof. Donald C. Gause is a Principal of Savile Row, LLC as well as a Bartle Professor in Systems Science in the Thomas J. Watson School of Engineering, SUNY/Binghamton. He has worked as an engineer and computer programmer and has managed engineering, programming and education groups with General Motors and IBM. He has been active as a consultant and professor for the past 33 years and served for many of these years as an adjunct member of IBM's Systems Research Institute (SRI). He has been a visiting scholar and has lectured at many universities and institutes around the world, has been an associate editor of the International Journal of Cybernetics and Systems, and has served as a national lecturer for a number of professional societies.

Mr. Gause's consulting and research interests include the development and analysis of requirements engineering and systems design processes, the design of user-oriented systems, and the management of innovation within large organizations. He has advised in the elicitation and documentation of business plans and requirements for Internet start-ups and Fortune 100 companies. He has also consulted on the development of strategic business systems, new products and processes for many leading firms.

Mr. Gause is the author (with G.M. Weinberg) of Are Your Lights On?: How to Figure Out What the Problem REALLY Is, Dorset House, N.Y., 1990 and Exploring Requirements: Quality BEFORE Design, Dorset House, N.Y., 1989.

Brian Lawrence, Coyote Valley Software
Rethinking Requirements

This talk presents a set of common misconceptions about requirements which I've experienced in my consulting practice, together with some ideas about how to look at requirements differently:

  • In my travels, I see many different views about what requirements are, and how to deal with them.
  • There are more and less useful ways to view requirements
  • I believe many people could be thinking about requirements in a more useful way, which would help them build better software more effectively

Brian Lawrence is a principal at Coyote Valley Software, a Silicon Valley software consulting firm. His primary focus is teaching and facilitating requirements analysis, inspection, project planning, risk management, life cycles, and design specification techniques. He served as the editor of Software Testing and Quality Engineering Magazine for 2000. In addition to teaching in the University of California Santa Cruz Extension program in software engineering, he has also served as program chair for 1998 International Conference on Requirements Engineering. Brian currently serves on the editorial board of IEEE Software. Contact him at brian@coyotevalley.com

Ian Alexander, Independent Consultant
Capturing Use Cases with DOORS

If Use Cases can do what people claim for software requirements, they should be able to improve systems specifications and business process descriptions too. Many activities fit into the pattern of more-or-less sequential conversations, elaborated by alternatives and exceptional cases. If we are willing to allow machines to play roles, then the workings of distributed systems can be treated as dialogues even when people are not directly involved. I have been exploring how to help people describe processes and hardware/software systems as Use Cases.

Many large organisations use DOORS to manage their requirements. There are definite advantages to holding Use Cases in the same environment as requirements. Scenario steps can directly represent business activities, and, at lower level, system functions. In an appropriate framework, these can be associated with other elements such as constraints and preconditions to create simple and clear specifications. Requirements can be traced to designs and tests as usual. Use Case diagrams and metrics can then be generated automatically.

I have therefore developed software on the DOORS platform to help people create, edit, and manage Use Cases as requirements. It is available free as the Scenario Plus for Use Cases toolkit. In the talk I will describe my experiences with it.

Ian Alexander is an independent consultant specialising in Requirements Engineering and Business Process Modelling. He provides consultancy and training on requirements in many countries, though he specially likes Scandinavia. He is currently assisting a car maker by investigating whether recasting automobile specifications as use case models separated from design details can make them easier to reuse.

He helps to run the BCS Requirements Engineering Specialist Group. He is setting up a Requirements Engineering Task Group for the new IEE Professional Network for Systems Engineers. He is a Chartered Engineer.

Brian Miller, GroceryGateway.com
Business implications on the requirements process

There is no question that well-defined, modeled and traceable requirements increases the probability of correct feature behaviour. However, not all requirements are created equal. With a look at business lifecycles and operational characteristics, I will discuss how the requirements process has been adapted to meet real-world business needs.

Brian C. Miller is Vice-President, Technology at GroceryGateway.com. Brian leads Grocery Gateway's web group (architecture and design), database group and QA team. He is responsible for taking advantage of every technological advancement to maximize the ease, speed and functionality of the company's web site to keep customer's shopping experience simple, straightforward and seamless. He joined Grocery Gateway in August 2000 from Algorithmics Inc., where he was Director of Development and Product Management. In this previous position Brian oversaw the strategic direction of Algorithmics' expanding set of risk management software components. Before joining Algorithmics, Brian spent 12 years in software development at IBM Canada.

Linda Rosenburg, NASA GSFC
Requirements management at NASA

Requirements have always been acknowledged as the backbone of any system. However, in many past development efforts, requirements were paid little heed. At NASA, in recent years, the hue and cry for project development has been "Faster, Better, Cheaper and Safer". This has impacted the way we develop software; it has increased the risks to quality, safety and reliability. At NASA, the Software Assurance Technology Center (SATC) is working with projects to emphasize the criticality of requirements throughout development, not just in the initial phases. This emphasis is on requirements relationship to all aspects of quality, including reliability and safety. In this presentation, we will look at some of these relationships through the eyes of quality.

Dr. Linda H. Rosenberg is the Chief Scientist for Software Assurance at NASA's Goddard Space Flight Center. She is also acting Division Chief of the Software Assurance Technology Office in the Office of Systems Safety and Mission Assurance. In these roles, she is responsible for identifying and developing new techniques and technologies to continually improve the quality and safety of NASA's mission software. Dr. Rosenberg is recognized internationally as an expert in the areas of software reliability, requirements and metrics and sits on the IEEE program committees for these fields. Prior to coming to NASA, Dr. Rosenberg was a College professor. Dr. Rosenberg holds a Ph.D. in Computer Science, a Masters of Engineering Science, and a Bachelors in Mathematics.

Ron Kohl, Titan Systems - AverStar Inc.
Changes in the Requirements Engineering Processes for COTS-based systems

As COTS products (hardware, software, components, subsystems, etc) are considered for integration into ever more complex systems, some process changes need to be considered in the area of Requirements Development.

In systems that relied primarily on custom developed subsystems, it was entirely appropriate to development the majority of requirements, at all levels, before the construction of subsequent systems components (h/w or s/w). But with the increased use of COTS products, the very nature of the COTS products are likely to have an impact on the system requirements themselves. Because COTS products provide a fixed set of capabilities (and sometimes even unknown capabilities), not all of which are required or even desired, and because some of the candidate system requirements may not be satisfied by any COTS product, there is an increased likelihood that not all system needs can or will be satisfied by any collection of COTS products.

Thus, a new problem arises for such COTS-intensive systems, namely that an early understanding of the available COTS products in the appropriate marketplace is now required. This implies a need to iterate between requirements definition/development and COTS product evaluations, much earlier in the system lifecycle than has been traditional. This presentation addresses some general challenges with using COTS in large, complex systems, and then addresses some of the paradigm shifts necessary to increase the success of using such COTS products.

Ron Kohl has been involved in the large systems integration business for 22 years, working on NASA's Space Shuttle and Space Station programs (Onboard Flight Software systems) while with IBM's Federal Systems Division in Houston. Ron has provided process, training and program/proposal support in Systems and Software Engineering areas during several years with Loral's and Lockheed Martin's Federal Systems Headquarters Technical Staff and then with Lockheed Martin's Software and Systems Resource Center (SSRC).

Ron is now with AverStar Co. (formerly known as Intermetrics), in Fairmont, WV, as the Chief Systems Engineer for NASA programs, where we provide software IV&V and other systems and software engineering services to NASA for various Space programs (Space Shuttle, Space Station, EOSDIS, X-33, Mars 98) and other Federal Agencies.

Ron is actively involved in several external professional and industry associations: EIA's G-47 TC ('owner' of EIA 731 and 632, Systems Engineering Process Capability Model and Process Standards), INCOSE's Measurements WG and Risk Management WG and IEEE's Architecture WG (co-author of IEEE 1471, "Recommended Practices for Architecture Descriptions). Ron is also the past chair of the AIAA's Software Systems TC. Ron has a B.S. in Mathematics from the University of Wisconsin - Oshkosh and an M.S. in Mathematics from Southern Illinois University - Edwardsville.


Mini-Tutorials

Dave Parnas, McMaster University
Systematic Documentation of Requirements

When writing a requirements document, it is almost impossible to know when you are done, If one works with a a list of assertions (whether formal or informal) checking for completeness and consistency is almost impossible. This tutorial explains how an application of the Four Variable Model and Tabular Notation allows one to produce documents that are demonstrably complete and consistent.

David Lorge Parnas is the Director of the Software Engineering Programme at McMaster University, Canada. He has been Professor at the University of Victoria, the Technische Hochschule Darmstadt, the University of North Carolina at Chapel Hill, Carnegie Mellon University and the University of Maryland. He has also held non-academic positions advising Philips Computer Industry (Apeldoorn), the United States Naval Research Laboratory in Washington, D.C. and the IBM Federal Systems Division. At NRL, he instigated the Software Cost Reduction (A-7) Project, which develops and applies software technology to aircraft weapon systems. He has advised the Atomic Energy Control Board of Canada on the use of safety-critical real-time software at the Darlington Nuclear Generation Station.

The author of more than 200 papers and reports, Prof. Parnas is interested in most aspects of computer system design. In his teaching, as well as in his research, Dr. Parnas seeks to find a "middle road" between theory and practice, emphasising theory that can be applied to improve the quality of our products.

Professor Parnas received his B.S., M.S. and Ph.D. in Electrical Engineering - Systems and Communications Sciences from Carnegie Mellon University, and honorary doctorates from the ETH in Zurich and the Catholic University of Louvain in Belgium. Dr. Parnas won an ACM "Best Paper" Award in 1979, and two "Most Influential Paper" awards from the International Conference on Software Engineering. He is the 1998 winner of ACM SIGSOFT's "Outstanding Research Award". Dr. Parnas is a Fellow of the Royal Society of Canada and a Fellow of the Association for Computing Machinery (ACM). He is licensed as a Professional Engineer in the Province of Ontario.

Axel van Lamsweerde, Universite Catholique de Louvain
Goal-Oriented Requirements Engineering

Goals capture, at different levels of abstraction, the various objectives the system under consideration should achieve. Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring, specifying, analyzing, negotiating, documenting, and modifying requirements. This area has received increasing attention over the past few years.

This mini-tutorial will review various research efforts undertaken along this line of research. The arguments in favor of goal orientation will be first briefly discussed. The talk will then compare the main approaches to goal modeling, goal specification and goal-based reasoning in the many activities of the requirements engineering process. To make the discussion more concrete, a real case study will be used to suggest what a goal-oriented requirements engineering method may look like. Experience with such approaches and tool support will be briefly discussed as well.

Axel van Lamsweerde is Full Professor of Computing Science at the University of Louvain, Belgium. He received the M.S. degree in Mathematics from that university, and the Ph. D. degree in Computing Science from the University of Brussels. From 1970 to 1980, he was Research Associate with the Philips Research Laboratory in Brussels where he worked on proof methods for parallel programs and on knowledge-based approaches to automatic programming. He was then Professor of Software Engineering at the Universities of Namur and Brussels before joining UCL in 1990. He is co-founder of the CEDITI technology transfer institute partially funded by the European Union. He has also been a research fellow at the University of Oregon and the Computer Science Laboratory of SRI International, Menlo Park, CA.

van Lamsweerde's professional interests are in technical approaches to requirements engineering and, more generally, in lightweight formal methods for reasoning about software engineering products and processes. van Lamsweerde is an ACM fellow. He was program chair of the Third European Software Engineering Conference (ESEC'91), program co-chair of the Seventh IEEE Workshop on Software Specification and Design (IWSSD-7), and program co-chair of the ACM-IEEE Sixteenth International Conference on Software Engineering (ICSE-16). He is member of the Editorial Boards of the Automated Software Engineering Journal and the Requirements Engineering Journal. From 1995 to 2001, he was Editor-in-Chief of the ACM Transactions on Software Engineering and Methodology (TOSEM).


Panel Sessions

Designing for the User: An Evening Panel Session

Panel Chair: Dr. monica schraefel, Dept of Computer Science, University of Toronto

Panelists:
Prof. Ron Baecker, Dept of Computer Science, U. of Toronto
Dr. Gale Moore, Executive Director of the Knowledge Media Design Institute, U. of Toronto
Prof. Andrew Clement, Faculty of Information Studies, U. of Toronto
Dr. Jutta Treviranus, Manager, Adaptive Technology Resource Centre, U. of Toronto

For the development of interactive systems, the requirements and design processes are inevitably intertwined. Good design requires a detailed understanding of the users' needs and capabilities, but the the very act of design can change the user community in subtle and interesting ways. For example, some design decisions will affect who will end up actually using the system, by excluding some potential users or by attracting others. Demonstrating and evaluating new designs will change the expectations of potential users, often opening up new possibilities for further design. In such a context, the idea of a complete and consistent statement of user requirements is meaningless. Instead, the design process itself becomes a process of exploring users' requirements.

Many different approaches to design of interactive systems have been proposed over the years: participatory design, user-centered design, universal design, human-centred design, and so on. But how well do these design techniques capture and incorporate the users' real needs? What are the differences and similarities between them? To what types of design are they suited, and how and when can they be applied?

This evening panel session aims to explore these questions in a lighthearted and entertaining manner. During the evening, we will attempt to match up a real live user with one of our panelists, who are all experts in various different design disciplines. In the tradition of the British TV Show, "Blind Date", the identities of the panelists will be concealed from the user, and our user will have to select between them based purely on what they say in answer to her questions, and the questions from the audience, who will be invited to help our user to make a choice.

This panel session is organised and sponsored by the University of Toronto's Knowledge Media Design Institute, and will take place in the Ballroom of the Royal York Hotel. Buffet food and refreshments will be served.

Systems or Software: What should the 'S' in SRE stand for?

Panel Chair: Dr. Regina Gonzales, Project Manager, Technology, Management and Analysis (TMA) Corporation / New Mexico State University

Panelists:
Dr. Anthony Hall, Principal Consultant, Praxis Critical Systems Ltd.
Ivy Hooks President and CEO, Compliance Automation Inc.
Dr. Byron Purves Technical Fellow in System Engineering, The Boeing Company.

Are we putting the cart before the horse in making software the focus of Requirements Engineering? Although requirements analysis has long been at the heart of Systems Engineering, the community that is moving forward many of the methodologies for Requirements Engineering is primarily the Software Engineering community. Over the years, separate requirements specialist groups have grown up within the systems engineering community and within the software engineering community. The problems and solutions addressed by these groups are similar, but the level of communication between them had been minimal. Software Engineers recognise the unique complexities of software, but tend to assume that all the interesting problems are software problems. Systems engineers take a broader perspective of the the system as a whole in order to avoid solution bias, but tend to assume that software is just one component to which requirements can eventually be allocated.

The purpose of this panel is to have a frank disscussion about the schism that has occurred over the years between how the Software Engineering community approaches requirements and how the Systems Engineering community approaches requirements. The panel will explore commonalities between the disciplines with regards to RE, and discuss the role of each discipline as we push the frontiers of requirements engineering.

Dr. Anthony Hall is a Principal Consultant with Praxis Critical Systems Ltd. He is a specialist in requirements and specification methods and the development of software-intensive systems. Anthony has worked for many years on the development of critical operational systems. During this time he has pioneered the application of formal methods to industrial practice. He has carried out requirements engineering for many projects in areas including aviation, railway signalling, secure systems and communications. He has also been closely involved in academic and professional developments in requirements engineering. Together with colleagues in Praxis Critical Systems he has brought together extensive practical experience and the latest research findings to develop REVEAL, a principled yet practical approach to requirements engineering. Anthony has a D Phil from Oxford and is a Chartered Engineer and a Fellow of the British Computer Society.

Ivy Hooks is President and CEO of Compliance Automation Inc. For the past 12 years she has laectured and consulted with government agencies and major corporations to improve their requirement management processes. Prior to working in the private sector, Ivy had a twenty year career at NASA where she was a member of the original Space Shuttle Design Team and manager of Fliight Software Verification. Her broad experience in large and small projects, systems, hardware, and software have made her seminars and her book "Customer Centered Products" popular with many types of organizations.

Dr. Byron Purves is a Technical Fellow in System Engineering at The Boeing Company in Huntsville, Alabama. Over the past thirty years he has worked in automatic speech recognition, aircraft noise reduction, electric utility control systems, spacecraft data systems, space automation and robotics and missile systems. His career has included management time in software engineering and system engineering, and as an adjunct professor of Electrical Engineering at Vanderbilt University. He currently supports projects across the corporation.

Dr. Regina M. Gonzales is a Project Manager/Site Manager at Technology, Management and Analysis (TMA) Corporation. She is also a College Assistant Professor at New Mexico State University. Regina has worked and consulted in industry and government in the areas of requirements capture and modeling, computer and software design, process, project management and training for over 16 years. She is the current chair of the Requirements Working Group within INCOSE. She has a Ph.D. in Computer Engineering with a specialty in Requirements Engineering from New Mexico State University, an MS in Computer Science from University of Colorado, an MS in Electrical and Computer Engineering from University of Arizona, B.S. in Electrical and Computer Engineering from New Mexico State University.

Extreme RE: What if there's no time for Requirements Engineering?

Panel Chair: Dr. Sol Greenspan, Verizon Communications.

Panelists:
Dr. Ralph R. Young, Director of Software Engineering, Systems and Process Engineering, PRC
Martin Fowler, Chief Scientist, ThoughtWorks
Jim Heumann, RE Evangelist, Rational
Dr. Julio Leite, Associate Professor, Universidade Católica do Rio de Janeiro

The term "Extreme RE," like "Extreme Sports," is supposed to conjure up images of people performing activities under novel and challenging conditions, where risks are inherent, and extreme measures are needed to overcome adversity, push boundaries, explore limits, or just get by. Imagine surfers seeking some of the world's highest waves, bike racing through deserts, golfers playing a course built on a frozen fjord in Northern Greenland. Well, maybe Extreme RE isn't quite as dramatic as Extreme Sports, and maybe we aren't seeking the same kind of adrenaline rush, but the analogy is there in spirit.

This panel will discuss how to do RE in the "real-world" and, in particular, in the presence of severe time constraints. Increasingly, businesses are making time-to-market their dominant business driver, with other drivers such as cost and quality often taking a back seat. Anything that slows the delivery of the software is viewed as an obstacle to success.

For years we have been characterizing RE as an up-front activity whose goal is to determine requirements - correctly, consistently, and completely. We have warned that not doing enough RE is risky, since errors that persist after the so-called requirements phase will be orders of magnitude more difficult and expensive to detect and correct in retrospect. We generally advocate a controlled process of careful elicitation, comprehensive documentation, systematic modeling, formal analysis, among other time-consuming activities. We contend that it is worth the time and effort to do RE, and to do it well, and that it is worth the time to acquire, apply and improve RE methods, tools, and processes.

However, organizations under tight time (and budget) constraints are not finding our arguments sufficiently persuasive, and as a result, when time is tight, RE activities seem to be among the first ones to become neglected. Requirements-related activities are seen as time-consuming, labor-intensive, and hard to control and evaluate. If one listens closely, one can even find practitioners saying that each day spent on requirements makes the project another day late, whereas each day of coding is a day closer to meeting the deadline.

How can we adapt RE to what has become a much different, more competitive, and in many ways more extreme environment than the one that existed when we started rationalizing and justifying RE years ago. This panel will address all these questions and more!

Ralph R. Young is the Director of Software Engineering, Systems and Process Engineering, PRC, Inc., a leading provider of information technology and systems-based solutions, and a CMM Level 5 organization. He leads PRC's "Requirements Working Group" of requirements engineers, which teaches requirements courses and consults in requirements engineering and process improvement. He has been awarded PRC's Teamwork, Leadership, Continuous Improvement, and Publishing Awards. He is the author of Effective Requirements Practices (Addison Wesley Publishers, 2001).

Martin Fowler is Chief Scientist at ThoughtWorks, a consulting and application development company. Over the last decade he has pioneered many software development techniques in the development of business information systems. He is well known for his work on OO analysis and design, software patterns, Unified Modeling Language, agile software processes (particularly XP), and refactoring. He edits the design column for IEEE Software. He is the author of Analysis Patterns, Refactoring, Planning Extreme Programming, and UML Distilled.

Jim Heumann has worked in the software industry since 1982 in programming, analysis and design, training and project management. He has worked in industry segments such a defense (SAIC) and government (NOAA) and has also worked for several different independent software vendors. Since joining Rational in 1998, he has focused on helping customers understand and implement software development processes and tools. As Rational's Requirements Management Evangelist, he specializes in requirements engineering. He holds an MS in Management Information Systems from the University of Arizona.

Prof. Julio Cesar Sampaio do Prado Leite is an associate professor at the Departamento de Informática da Pontifícia Universidade Católica do Rio de Janeiro. Dr. Leite received his PhD in computer science from University of California at Irvine in 1988. He is a member of the editorial board of the "Requirements Engineering Journal", member of the sub committee in software reuse of the IEEE Computer Society and a member of the IFIP WG 2.9 (Software Requirements Engineering). Dr. Leite concentrates his research efforts in requirements engineering, software reuse and reverse engineering. Dr. Leite was the chair of the Program Comittee for the VII SBES, that took place in Rio de Janeiro in 1993 and chair of the 1998 and 2000 editions of the Workshop in Requirements Engineering (WER) that also took place in Rio de Janeiro. He has been a member of the Program Committee of all the editions of the International Symposium on Requiments Engineering (RE), including this one, starting from 1993. He belongs to ACM, IEEE and is a founding member of the Brazilian Computing Society (SBC).

Sol Greenspan was with GTE Laboratories for 14 years when it became part of Verizon last year. His work there has included the development of methods, tools and strategies for requirements engineering, process re-engineering, operations architecture, and the infusion of other I.T. technologies such as business rules, metadata repositories, and component-based software development.


Poster Presentation and Research Demos

There will be fourteen posters and three research demos presented at RE'01. Posters will be available for viewing throughout Wednesday 29th, and Thursday 30th August, and there will be two special sessions in the technical program for presenters to give overviews of their work. The proceedings will contain a two-page summary of each poster, and a one-page overview for each demo.

Posters and Demos Session 1

Wednesday 29th August, 2:00pm

Demos:

Ask Pete, Software Planning and Estimation through Project Characterization
Tim Kurtz
Science Applications International Corporation/NASA Glenn Research Center

An Integrated V&V Environment for Critical System Development
Issa Traoré
Department of Electrical and Computer Engineering, University of Victoria

Risk Reduction using DDP (Defect Detection and Prevention): Software Support for, and Software Applications of.
Martin S. Feather
Jet Propulsion Laboratory, California Institute of Technology

Specification Modeling and Validation Applied to Network Security Gateways.
Robert J. Hall
AT&T Labs Research, New Jersey.

Poster Presentations:

The Single Model Principle
Richard Paige and Jonathan Ostroff
Department of Computer Science, York University, Toronto, Canada.

Integrating Informal and Formal Approaches to Requirements Modeling and Analysis
Betty H. C. Cheng and Laura A. Campbell
Department of Computer Science and Engineering, Michigan State University

Requirements Elicitation using Visual and Textual Information
J. Michael Moore, Frank M. Shipman III
Department of Computer Science, Texas A&M University

What Happens before Requirements Engineering?
Bridgette Wessels, School of Management, University of Newcastle upon Tyne
John Dobson, Centre for Software Reliability, University of Newcastle upon Tyne

Scenario-Based Systems Architecting
Galal H. Galal
School of Informatics and Multimedia Technology, University of North London

Posters and Demos Session 2

Thursday 30th August, 2:00pm

Poster Presentations:

Acquiring Software Requirements As Conceptual Graphs
Harry S. Delugach, Brian E. Lampkin
Computer Science Department, University of Alabama in Huntsville

Scenario Patterns Based on Case Grammar Approach
Kenji Watahiki and Motoshi Saeki
Dept. of Computer Science, Tokyo Institute of Technology,

Geographic Problem Frames
Maria Nelson, Donald Cowan, and Paulo Alencar
Department of Computer Science, University of Waterloo

Empowering Requirements for a Product Family
Elena Pérez-Miñana, Philips Research Laboratories, United Kingdom
Paul Krause, Philips Research Laboratories, United Kingdom
Pierre America, Philips Research, Eindhoven, The Netherlands

Experiences On Outsourcing Requirements Specifications
Friedemann Kiedaisch, Martin Pohl, Joachim Weisbrod, Siegfried Bauer, and Stefan Ortmann
DaimlerChrysler AG

Process-Oriented Metrics for Software Architecture Adaptability
Lawrence Chung, Department of Computer Science, University of Texas, Dallas
Nary Subramanian, Anritsu Company, Richardson, Texas

A Requirements Negotiation Model Based on Multi-Criteria Analysis
Hoh In, Dept. of Computer Science, Texas A&M University
David Olson, Dept. of Info. Operations and Management, Texas A&M University
Tom Rodgers, Dept. of Info. Operations and Management, Texas A&M University

Issues of Visualized Conflict Resolution
Hoh In, Dept. of Computer Science, Texas A&M University
Siddhartha Roy, Dept. of Computer Science, Texas A&M University

Evolving System Architecture to Meet Changing Business Goals: an Agent and Goal-Oriented Approach
Daniel Gross & Eric Yu
Faculty of Information Studies, University of Toronto


Exhibition

RE'01 will include an exhibition of systems, tools and services related to Requirements Engineering. The exhibition will be open from 8am to 6:30pm on Wednesday 29th and Thursday 30th August. In addition, exhibitors will be giving formal presentations of their tools and services in a special presentation session on Thursday 30th August from 11:30am to 5:30pm.

Confirmed exhibitors include:


Birds of a Feather Sessions

Birds-of-a-feather sessions are open meetings for people interested in a particular topic to meet one another and discuss and review progress on a joint activity. Currently, we have two BOF sessions planned. If you are interested in organising further BOF sessions on other topics, please contact the symposium chairs at info@re01.org

Towards the Standardization of a User Requirements Notation

Birds-of-a-feather session, Wednesday 29th August, 5:30pm.
Open to all - come along if you're interested.

The International Telecommunication Union - Telecommunication Standardization Sector (ITU-T) is currently creating a User Requirements Notation (URN) as part of the ITU-T Study Group 10 family of languages (which includes MSC, SDL, ASN.1, and TTCN). ITU-T recognizes the lack of standard notations in the areas of functional and non-functional requirements, and the URN effort targets the creation of such a standard by the end of 2003. This session aims to present the main motivations behind URN, together with the current proposal based on the Goal-oriented Requirements Language (GRL) for non-functional requirements and on Use Case Maps (UCM) for scenario-oriented functional requirements. The participants are strongly encouraged to provide feedback on this unique opportunity for the RE community to get involved in the standardization of such a requirements notation. The current proposal is available at http://www.UseCaseMaps.org/pub/Z_URN_20001107.pdf

Formation of a Southern Ontario Regional Chapter of INCOSE

Birds of a feather session, Thursday 30th August, 5:30pm.
Open to all - come along if you're interested.

Details of this meeting will appear here shortly.


Doctoral Workshop

The Program for the Doctoral Workshop will appear here in late June. For submission information, see the doctoral workshop call for papers.


Social Events

RE'01 Opening Reception

Tuesday 28th August, 7pm

The opening Reception will be held in the Upper Canada Room of the Royal York Hotel. When it was built, the Royal York Hotel was the tallest building in the Commonwealth. Although the hotel is now dwarfed by recent office towers, the Upper Canada Room still affords great views out over Lake Ontario and the waterfront.

KMDI Sponsored Reception and Panel Session

Wednesday 29th August, 7pm

This evening event, organised and sponsored by the University of Toronto's Knowledge Media Design Institute will be held in the Ballroom of the Royal York Hotel. The evening will include a delicious buffet, as well as stimulating intellection nourishment in the form of a lighthearted debate on the role of users in the design process.

RE'01 Symposium Banquet

Thursday 30th August, 7pm

  For contractual reasons, we have had to move the banquet from the Royal Ontario Museum to the Royal York Hotel. The food will be amazing, though. If you have already bought additional banquet tickets on the basis that the banquet is at the ROM, and would like a refund, please contact us at info@re01.org, or tell us when you arrive at the symposium.
 

Last Updated: 20th August 2001