|
|
> Workshops
> Tutorials
> Doctoral
Symposium
Download tutorial notes
Tutorials
Full-Day
Tutorial
Half-Day
Tutorials
F1: Context:
Its Discovery, its Forms, and its Management in
Non-Functional Requirements
Don Gause, Savile Row, LLC and Binghamton University
(USA)
Tuesday, September 12 - Full Day
Abstract:
Looking back to the early days of computing, our clients
expected our systems to just work - where work meant
producing functionally correct, crash-free results. Today
our clients demand much more than running hardware and
functional correctness. We are increasingly expected to
produce systems with functional completeness. This
completeness includes consideration of the 'ilities' - from
accessibility to usability - to help us
realize full design opportunity. In short we must understand
and define, more completely than ever before, the business,
operating, client, social, and cultural environments of our
yet-to-be systems. We have many fine requirements processes
for specifying form. This tutorial deals with
requirements processes for discovering and specifying
context.
We will illustrate, in a highly interactive manner, a series
of elicitation, documentation, and design management
heuristics that we have found to be especially effective in
teasing out the many critical environmental issues and
nuances. These heuristics have been developed to help us get
a better handle on those implicit, ill-defined factors of
context that can spell design success or failure. These
heuristics help us to identify greater numbers of essential
features on our way to uncovering more of those market
titillating gee whiz features.
Presenter's
Biography:
Donald C. Gause is a Principal at Savile
Row, LLC and a Professor Emeritus at the Department of
Bioengineering, Thomas J. Watson School of Engineering,
SUNY/Binghamton, USA.
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 38 years, has lectured in many
universities and institutes around the world, served as a
national lecturer for a number of professional societies and
on the editorial boards of several professional
journals.
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 productive innovation within
large organizations. He has advised very large (Fortune 100)
and very small (Internet start-up) companies, alike, in the
development of strategic systems and products incorporating
highly innovative features.
He is the author (with G. M. Weinberg) of Are Your Lights
On? and Exploring Requirements: Quality BEFORE
Design.
Download tutorial notes (password required)
>
Top
H1: Ten Simple
Steps to Better Requirements
Ian Alexander, Independent Consultant (UK)
Monday, September 11 - Morning
Abstract:
If you want to know how to get started with practical
requirements for your project, this tutorial is for you. The
basic elements of working out what you want, and writing
them down clearly, are simple and straightforward. In this
half-day tutorial, participants learn how to begin with
requirements. The tutorial takes you through ten simple
steps to better requirements: mission & scope,
stakeholders, goals & goal conflicts, scenarios,
traditional "the system shall" requirements, project
dictionary, justifications, assumptions, priorities, and
finally acceptance criteria. Using the minimum of theory,
you will learn how to apply practical techniques for each
step. These are illustrated with diagrams and examples from
industry.
Participants will take away a basic understanding of how to
structure their requirements into the ten products;
templates for stakeholder analysis and requirement types; a
glossary; and a book list.
The tutorial is designed for people relatively new to
requirements work. It is also a suitable introduction to
requirements for professionals in other areas such as
testing, quality assurance, and configuration management who
would like to gain a practical insight into requirements
engineering. No prior knowledge of requirements is assumed,
but experience on development projects is a definite
advantage.
Presenter's
Biography:
Ian Alexander is an independent
consultant specialising in Requirements Engineering for
systems in sectors such as automotive, aerospace, transport,
telecommunications and public service. He has served as a
consultant to DaimlerChrysler Research & Technology
since 2001. He is an experienced instructor and has written
several training courses, as well as numerous technical
papers and popular articles (www.scenarioplus.org.uk). He
was the lead editor of the book Scenarios, Stories, Use
Cases (John Wiley 2004) and lead author of Writing Better
Requirements (Addison-Wesley 2002). He edits the newsletter
of the BCS Requirements Engineering Specialist Group
(www.resg.org.uk) and heads the requirements section of the
IET Professional Network for Systems Engineers. He is a
Chartered Engineer.
Download tutorial notes (password required)
>
Top
H2: Change
Agency for Requirements Engineers
Erik Simmons, Intel (USA)
Monday, September 11 - Afternoon
Abstract:
If requirements engineering is such a good thing to do, why
aren't more companies and teams embracing it? The answer to
this question is complex, but one major reason more
companies don't effectively embrace requirements engineering
is that they are unable to change their culture and
behaviors. However, there is a set of skills that can be
applied within this setting to greatly increase the odds of
successful requirements engineering adoption or improvement:
change agency skills. A requirements engineer who is also a
skilled change agent can be successful in applying
requirements engineering within a variety of corporate and
cultural settings.
In this tutorial, we'll examine some foundation practices of
change agency as they apply specifically to requirements
engineering, including Diffusion of Innovations,
Evolutionary Delivery, and influence skills. We will also
examine the details of a proven business model for change
agency within a corporate setting. Examples and exercises
reinforce the presented materials. After completing this
tutorial, attendees will be able to discuss change agency
using a common language and framework, apply that framework
to requirements engineering as an innovation, and tailor an
approach to improving requirements engineering practices
within a variety of corporate settings and cultures.
Presenter's
Biography:
Erik Simmons is a change agent in Intel's Corporate Platform
Office, where he is responsible for requirements engineering
practices within product and platform development at Intel
and works regularly with the methods and practices taught in
this tutorial. In addition to his requirements
responsibilities, Erik also assists with several other
corporate initiatives in systems and software engineering.
He writes and speaks regularly on requirements engineering,
usage models, change agency, process improvement, risk,
software development, and related topics both inside Intel
and in the industry at large. Erik holds an MS in
mathematical modeling from Humboldt State University, and
was appointed to the Clinical Faculty of Oregon Health
Sciences University in 1991.
Download tutorial notes (password required)
>
Top
H3: Building a
Platform-Independent Model with MDA
Chris Armstrong
Monday, September 11 - Morning
Abstract:
Model-Driven Architecture® (MDA®) describes a
framework of integrated models for driving system
development: a Computation-Independent Model (CIM), a
Platform-Independent Model (PIM), and a Platform-Specific
Model (PSM). A system use case model and supplemental
requirements represent the lowest level of the CIM.
Analyzing the use cases in the CIM is the most critical step
in transforming the requirements in the use case model into
a platform-independent analysis model. on which you can base
the design. The speaker will demonstrate how to use Unified
Modeling Language (UML) collaborations to create analysis
realizations and identify the initial candidate analysis
classes using boundary, control, and entity classes. Then
the behavior of the use case is distributed as
responsibilities to the analysis classes using a
communication diagram or sequence diagram - one per flow of
events for the use case. Then the structure required to
support the collaborations is documented in a participants
class diagram. The result is a simple and concise model of
the preliminary design classes, their relationships, and
responsibilities. The process of transforming the
requirements into the PIM also helps uncover "issues" with
the requirements in the use case model as well.
Presenter's
Biography:
Chris Armstrong, President of Armstrong Process Group, Inc.,
is an internationally recognized thought leader and expert
in iterative software development, object-oriented analysis
and design, architecture, the Unified Modeling Language
(UML), use case driven requirements, and process
improvement. Over the past twenty years, Chris has worked to
bring modern software engineering best practices to
practical application at many different private companies
and government organizations all over the world. Chris has
spoken at over 30 conferences over the last seven years and
has written a number of articles for various publications.
Chris is the technical representative for APG at the Object
Management Group (OMG) and is currently contributing to the
UML 2.0 specification and the Software Process Engineering
Metamodel (SPEM) 2.0 specification. Chris is also the APG
representative to The Open Group Architecture Forum. Chris
also co-chairs the TOGAF/MDA process modeling effort. Chris
also represents APG at the Eclipse Process Framework
project.
Download tutorial notes (password required)
>
Top
H4: Successful
Product Line Development with Strong Requirements
Engineering and Management
Andreas Birk and Gerald Heller
Monday, September 11 - Afternoon
Abstract:
This tutorial presents industrial requirements engineering
and management (REM) practices that have proven successful
for product-line software development. Many software
products evolve gradually into product lines, as they mature
along their lifecycle, branching more and more variants that
share a common core. Software organizations that
intentionally set up product lines target higher levels of
reuse, cost savings, productivity, flexibility, and quality.
The advantages of software product lines do not come for
free. They demand mature software management and development
practices, which are capable of coping with new levels of
organizational and architectural complexity. Requirements
engineering and management is a central point of product
line development. It must be able to deal with factors like
the constant flow of requirements, a heterogeneous
stakeholder community, a complex development organization,
long-term release planning, demanding software architecture,
and challenging testing processes. For successful product
line development, a collection of essential REM practices
must be in place, which need to support the meta project
management capabilities. Many REM practices must be tailored
appropriately to the specific demands of product lines. The
tutorial explains the specific challenges inherent to
requirements engineering and management in the context of
product line organizations. The authors, two experienced
software engineering professionals in large and renowned
software organizations, share their in-depth experience from
various product line projects. They point out common
challenges and pitfalls, and show strategies for making
requirements engineering and management a key driver of
successful product line implementation. Tutorial
participants receive a toolbox full of advanced REM
practices that are fit for industrial-strength software
projects. They learn how to adapt these practices to the
many occurrences of product line architectures and
organizations.
Presenters'
Biographies:
Andreas Birk is a senior consultant and
project lead at sd&m;, software design and management in
Germany. His special interests include requirements,
architecture, the software process, and process improvement.
He holds a Dr.-Ing. in software engineering and a
Dipl.-Inform. in computer science and economics from the
University of Kaiserslautern, Germany. Andreas is an
experienced speaker at international conferences, and has
given numerous in-house seminars and conference
tutorials.
Gerald Heller is a senior software engineering consultant at
Hewlett-Packard in Germany. He has worldwide responsibility
for the requirements engineering process at HP's largest
software organization. Gerald regularly provides in-house
training and coaching about requirements management
practices in several countries around the world. He has
presented HP's implementation of requirements management at
conferences and working groups. Other areas of interest
include collaborative, component based development agile
development. He received his Dipl.-Inform. in computer
science from Friedrich Alexander University of Erlangen,
Germany.
Download tutorial notes (password required)
>
Top
H5: Security
Requirements Engineering Methodologies
Fabio Massacci, John Mylopoulos and Nicola
Zannone
Tuesday, September 12 - Morning
Abstract:
The last years have seen a growing interest for
methodologies for Software Engineering able to deal with
trust and security requirements from the very early stage of
the software development process. However, the major
limitation of current proposals is that they focus on
protection aspects of security and explicitly deal with low
level protection mechanisms. Actually, attackers bypass
security mechanisms by exploiting weaknesses embedded in
socio-technical systems rather than break them. This reveals
the necessity of modeling and analyzing high-level
organizational security requirements together with
functional requirements.
The focus of this tutorial is the development of
Goal-oriented Security Requirements Engineering
methodologies. In this setting, the standard approach is to
treat security as a non-functional requirement. Although it
supports the representation and analysis of design decisions
that can contribute to a security goal and the modeling of
attackers along with their malicious goals, it fails to
support the notions of ownership and permission that are at
the very foundation of all security concerns. To this
intent, we propose the Secure Tropos methodology. It is
founded on three main notions: ownership, delegation and
trust. We show how such concepts support requirements
engineers from modeling activities up to security
requirements verification.
Presenters'
Biographies:
Fabio Massacci received a M.Eng. in 1993
and Ph.D. in Computer Science and Engineering at University
of Rome "La Sapienza" in 1998. He visited Cambridge
University in 1996-1997. He joined University of Siena as
Assistant Professor in 1999 and was visiting researcher at
IRIT Toulouse in 2000. In 2001 he joined the University of
Trento as Associate Professor.
In 2001 he received the Intelligenza Artificiale award, a
young researchers career award from the Italian Association
for Artificial Intelligence. He is member of AAAI, ACM, IEEE
Computer society and a chartered engineer.
His research interests are in automated reasoning at the
crossroads between artificial intelligence and computer
security. He has worked on automated deduction for modal and
dynamic logics and their application to access control. In
1999 he worked on the encoding of cryptographic algorithms
(DES, RSA, etc) into satisfiability problem for verification
and cryptanalysis.
John Mylopoulos received his BEng degree
from Brown University in 1966 and his PhD degree from
Princeton in 1970, the year he joined the faculty of the
University of Toronto. His research interests include
requirements engineering, conceptual modeling, data
semantics and knowledge management.
Mylopoulos is the recipient of the first-ever Outstanding
Services Award given by the Canadian AI Society (CSCSI), a
co-recipient of the best-paper award of the 1994
International Conference on Software Engineering, a fellow
of the American Association for AI (AAAI) and the elected
president of the VLDB Endowment (1997-2003). He is co-editor
of the Requirements Engineering Journal (published by
Springer-Verlag). He has also contributed to the
organization of major international conferences, including
program co-chair of the International Joint Conference of AI
(1991), general chair of the Entity-Relationship conference
(1994), program chair of the International IEEE Symposium of
Requirements Engineering (1997), and general chair of the
Very Large Databases Conference (2004).
Nicola Zannone received a MS Degree in
Computer Science at the University of Verona in 2003. He is
currently a PhD student in the Department of Information and
Communication Technology at the University of Trento. He
visited the Center for Secure Information Systems at George
Mason University in 2005. He received the IBM Ph.D.
Fellowship Award for the 2006-2007 Academic Year.
His research interests include computer security and formal
verification. He is mostly interested in Security
Requirements Engineering and in particular in the
application of formal analysis techniques to the design of
socio-technical systems. He has also worked on system
security and protocol verification.
Download tutorial notes (password required)
>
Top
H6:
Aspect-Oriented Requirements Engineering
Awais Rashid, Ana Moreira, João Araújo and
Ruzanna Chitchyan
Tuesday, September 12 - Afternoon
Abstract:
Most RE approaches, e.g. viewpoints and use cases, partition
requirements into sets of partial specifications, thus
promoting separation of concerns. However, certain
requirements (e.g., security, information retrieval, etc.)
crosscut these partial specifications and cannot be
naturally modularised into use cases/viewpoints. Even if
such crosscutting requirements are modularised using
existing RE abstractions, ensuring analysability of their
influence on other requirements is a challenging task. This
tutorial aims to provide practical knowledge on how to
effectively modularise and analyse such crosscutting
requirements and their influences using Aspect-Oriented
Requirements Engineering (AORE).
AORE works in tandem with the existing requirements
approaches, by offering additional abstraction and
composition mechanisms for systematically handling
crosscutting (or so-called aspectual) requirements. The
influence of these crosscutting requirements shapes the
prioritisation of system requirements and, eventually,
delimits the various architectural choices.
The tutorial starts by discussing practical scenarios
involving crosscutting requirements in viewpoints- and use
case-based models, demonstrating how a lack of
modularisation and analysis of aspectual requirements
negatively affects requirements and, consequently, clarity
of architectural choices. We then demonstrate how to
identify, modularise, compose and analyse trade-offs amongst
aspectual requirements and discuss how AORE analysis
provides insights into conflicting architectural choices
even before the architecture is derived.
Presenters'
Biographies:
Dr. Awais Rashid is a faculty member in
the Computing Department, Lancaster University where he
leads research in aspect-oriented (AO) software engineering.
His principal research interests are in early aspects,
advanced join point models and AO databases. He is the
founding co-editor-in-chief of the Transactions on
Aspect-Oriented Software Development journal by
Springer-Verlag. He has co-edited two special issues of IEE
Proceedings - Software, including one on AO RE and
Architecture Design, and a special section of the BCS
Computer Journal on topics in AO. He has been closely
involved in the program and organising committees of the
AOSD conference since its inception, and many other
AO-related events, including the Early Aspects workshops. He
was program co-chair for AOSD 2006 and is coordinating the
European Network of Excellence on AOSD; he also leads its AO
Analysis and Design Lab. He has published over 40 papers and
given several invited talks, seminars and tutorials on
relevant topics.
Dr. Ana Moreira is an Assistant
Professor in the Computer Science Department at Universidade
Nova de Lisboa, Portugal. She holds a PhD in computer
science. Her main research areas are aspect-oriented
requirements engineering and architecture design. She is a
co-editor of the IEE Software Proceedings special issue on
Early Aspects and is a member of the editorial board of the
journals "Transactions on AOSD" and "Software and Systems
Modeling". She is chair of the Steering Committee for MoDELS
2006 and has been involved, both as organizer and program
committee member, in several international conferences, such
as ECOOP, CAiSE, UML, MoDELS and AOSD. She has co-organised
the various editions of the Early Aspects workshop
(www.early-aspect.net). She publishes regularly in
international events relevant to her research topics.
Dr.
João Araújo is an Assistant Professor in
the Computer Science Department at Universidade Nova de
Lisboa, Portugal. He holds a PhD in Computer Science from
Lancaster University, United Kingdom, in the area of
Requirements Engineering. Currently his main research
interest is in aspect-oriented requirements engineering,
having several papers on this topic in international
conferences and workshops. He was a co-organizer of the
early aspects workshop series at AOSD 2002, AOSD 2003, AOSD
2004, OOPSLA 2004, OOPSLA 2005, AOSD 2005, AOSD 2006 and
ICSE 2006. Moreover, he served on the organization
committees as Tutorials Chair of UML'03, and as Co-publicity
Chair of UML'04 and MoDELS 2005. He was also a PC co-chair
of WER 2005 (Workshop on Requirements Engineering),
co-located with CAiSE'05. Additionally, he is co-editing a
special issue on Early Aspects (Transactions on AOSD
journal).
Ruzanna Chitchyan is a researcher in the Computing
Department at Lancaster University. Her principal research
interests are in AO requirements engineering and early
architecture design, multidimensional separation of
concerns, and development of composition mechanisms in the
requirements and early architecture context. She is one of
the researchers leading the work on AO Requirements
Engineering in the European Network of Excellence on AOSD.
She is co-editing for a special issue on iDependencies and
Interactions with Aspectsi for the Transitions on AOSD
journal (http://www.aosd-europe.net/events/dia_taosd/) and
has co-organised the First Workshop on Analysis of
Aspect-Oriented Software at ECOOP 2003, and the workshop on
Aspects, Dependencies, and Interactions at ECOOP
2006.
Download tutorial notes (password required)
>
Top
|