a method for personal and contextual requirements engineering

advertisement
Method Engineering 2012 | Assignment 2
Sutcliffe, A., Fickas, S., & Sohlberg M. M. (2006).
PC-RE: a method for personal and contextual requirements engineering.
Requirements Engineering, 11(3), 157-173.
Arno Gregorian, 3375935, Group 1
PC-RE: a method for personal and contextual requirements engineering
Introduction
Requirement analysis should deliver “a condition or capability needed by a user to solve a problem or
achieve an objective” as defined by IEEE 610.12-1990 (1990). These conditions or capabilities apply
to a system or a system component and can be represented in various ways. Classifications for
requirements and users already exist. The authors (of PC-RE) however want to introduce a method
that includes the goals of users, their characteristics and how computer systems should support users to
achieve their goals. This results in a method that takes into account the personal and contextual
requirements of users.
A three layer framework is introduced to analyze changes in time and location that influence
requirements. The layers describe requirements for the following user groups: general stakeholders,
user characteristics and personal goals. Three implementations paths of requirements are suggested for
the layers of user characteristics and personal goals. The first path develops the requirement as a
conventional system function, the second as a user-customizable feature and the third as an automatic
system adaption.
The framework is developed into a scenario based road map with five different pathways. Every path
starts with an assessment of the application type and ends with a negotiation and validation of
requirements. The time and location dimensions of the framework are used to differentiate the
pathways. Every pathway has unique and overlapping activities that help in finding the right
requirements. The first two paths focus on the location dimension and describe requirements analysis
for international applications and mobile applications. The third and fourth path focus on the time
dimension and have predictable or unpredictable change as a starting point. The fifth path has an
individual user focus and is used to determine personal goals. The paths are iterative, one application
can by analyzed by one or more paths. Different pathways can result in different cost-benefit
distribution. A technique to analyze these distributions is also discussed by the authors.
The method extends requirements engineering by taking into account individuals and changes in time
and location for requirements analysis. The method delivers a set of personal and contextual
requirements but does not give any directions on how to validate and negotiate the requirements.
The authors (of PC-RE) have an extensive research background, Sutcliffe and Fickas provide a solid
requirements engineering background and Sohlberg the psychology expertise. Alistair Sutcliffe is a
professor of systems engineering at Manchester University and the director at the centre for HCI
design. He has authored 6 books and 200+ publications on human computer interaction and
requirements engineering. Stephen Fickas is a professor at the department of computer and
information science at the University of Oregon and a researcher of requirements engineering. McKay
Moore Sohlberg is a communication disorders and sciences professor at the University of Oregon and
is known for her work in cognitive rehabilitation.
Example
In this example we describe all the steps of the method in order to determine the requirements for a
desktop email application like MS Outlook or Mozilla Thunderbird for a student. The example is in
part based on the case study presented in the paper.
The final deliverable of the three layer framework should be a requirements document for the
application, the authors present this document in a simple table which can be found in Table 1. The
table takes into account the three layer framework by using the layers ‘Group’, ‘User characteristics’
and ‘Personal goals’ as rows and using the two dimensions of time (temporal) and space (spatial) as
columns.
Requirements layer and
goals
Group: students
Functional requirements
Temporal change
Spatial context
Basic email functions such
as reading, sending, replying
and deleting.
Overtime a backup option or
search options can be useful
to all users.
User characteristics: Young,
frequent use of the
application, probably large
amount of email traffic,
email checking at home and
at school.
Personal goals: More
efficient use of the
application and reduce
spam.
Additional functions such as
hints and reminders for
sending and reading emails.
Adding categories to email
for more structure in the
email inbox.
Spam detection based on
personal preferences and
choices.
Shortcuts and commands for
speeding up the use of the
applications for advanced
users.
Making sure that all emails
can be managed at different
locations and desktop
systems.
Making sure that in some
geographical locations the
emails are stored locally and
some other locations the
emails are left at the email
server.
None.
Table 1, a sample requirements table for one personal profile
Table 1 begins with some example requirements for the student, then takes into account his or her
special user characteristics and in the final row focuses on the wishes of the student to be more
efficient while using the application and reduce spam. It is important to notice that not all cells need a
value, for example if the personal goals do not specify any spatial conditions no spatial requirements
will be needed.
The method to gather the requirements is described in the scenario road map. The scenario starts with
an assessment of the application which will help determining which paths to take. In this case we can
leave out the mobile application path and focus on the international application, predictable time
change, unpredictable change and individual user focus paths. These paths all include three activities
that help analyzing, specifying and generalizing requirements. For example the culture of students can
be analyzed, requirements such as saving emails locally can be specified and smart shortcuts may be
generalized for all users. The paths all end in a negotiation and validation of the requirements. The
final path of ‘individual user focus’ is quite unique, it is the only path that sets achievement goals for
the student and has the unique step of trading off solutions where goals set by expert stakeholders are
compared to personal goals of specific users.
The scenario road map itself also can have a deliverable that presents the findings of all the activities
of the paths taken. The authors do not specify how this deliverable should look, but in this case it also
could be a table. The first path of ‘international applications’ could for example result in the following
deliverable Table 2.
International application pathway
Activity
Analyze cultural context
Refine requirements for localization
Specify local configurations
Requirements
For example, students are individualistic, avoid
uncertainty and ‘prefer precise instructions’.
…
…
Table 2, the requirements determined by the activities of the international application pathway
In the first column each activity in the pathway is given and the requirements found during this
activity are given in the second column.
Related literature
Classifying functional and non-functional requirements using taxonomies is not a new concept. The
taxonomies however usually focused on the subject or a part of the system and not on the users or
other agents involved with the system (Sutcliffe, Fickas, & Sohlberg, 2006). Adapting requirements to
the changes in time was first introduced by Fickas & Featjer (1995). The changes in time might
become more important with the ageing population in the US, Europe and Japan as suggested by
Newell & Gregor (2000).
Location, another important property of the PC-RE method was partly discussed in the Inquiry Cycle
by Potts, Takahashi & Anton (1994). The importance and possibilities of using spatial requirements
has been discussed by Cheverst, Davies, Michell, Firday & Efstratiou (2000). They showed to
advantages of using a context-aware tourist guide that used its location as an important requirement
for its features.
Defining requirements based on stakeholder groups has been included in other methods such as
ScenIC (Potts, 1999) and Volere (Robertson & Robertson, 1999). The research on cultural influences
on requirements is still in its infancy, however ethnographic studies suggest very different
requirements are needed in different cultures. The example mentioned by the authors is the privacy
requirement differences for ATM machines in the west and in India as researched by De Angeli,
Athavankar, Joshi, Coventry & Johnson (2004). The big power-distance in India created for example a
situation in which people, who considered themselves to be of a lower status, did not use the ATM
machines.
The PC-RE method also includes a layer that focuses on individual users. Two known approaches for
handling personal requirements are creating adaptable and adaptive systems. An adaptable system uses
explicit input provided by the users to change its behavior while an adaptive systems tailors its output
by implicit actions of the user (Van Velsen, Van der Geest, Klaassen, & Steehouder, 2008). Personal
approaches are also discussed in human computer interaction research. Two topics in this field are the
requirements for generic tasks and their support and how to select system features that can be
customized for individual users (Sutcliffe A. G., 2002). Norman (2004) makes the case for adaptability
from a human computer interaction standpoint in order to make a system ‘your own’ and to be
satisfied in using it.
Al these different dimension, stakeholders and architectural approaches give a different way of
analyzing requirements. The authors bring all these topics together in their PC-RE method for the first
time. Currently this method only has been evaluated by the authors themselves.
Product-Deliverable Diagram
The scenario-based requirements analysis is the most important new method introduced by the authors
of the PC-RE method. This method is modeled in Figure 1 as a Product-Deliverable Diagram (PDD)
(Weerd & Brinkkemper, 2008). In this diagram the important activities and deliverables are modeled
side by side. On the left side of the diagram we find the activities in rounded rectangles and on the
right side we find the so called ‘concepts’ in rectangles modeled as meta-data models. Each activity
that results in a concept is connected with a dotted arrow to the concept in belongs to. Each activity
and concept are explained in more detail in Table 3 and Table 4. The activities are almost all defined
by the activities in the road map of the article. The authors rarely assign any roles to the activities, two
roles are therefore modeled in the activities. These are the roles of the expert stakeholder and
application owner, all the other activities are performed by the consultant or researcher.
PDD
Figure 1, a PDD based on the PC-RE method
Activity table
Activity
Assess application type
Sub-activity
Analyze international
application
Analyze cultural context
Refine requirements for localization
Specify local configurations
Description
An assessment is done to identify which of
the five pathways will be taken for the
specific application and user. This results
in an APPLICATION ASSESSMENT.
This analysis provides a part of the spatial
dimension in the framework and results in
the CULTURAL CONTEXT.
The CULTURAL CONTEXT is refined for
requirements.
The analysis and refinement result in this
activity in the LOCAL
REQUIREMENT
CONFIGURATIONS.
Analyze mobile
application
Analyze spatial context
Specify requirements for
monitoring
Specify requirements for adaptation
Analyze predictable time
change application
Analyze temporal applications
Specify temporal monitoring
requirements
This analysis provides a part of the spatial
dimension in the framework and results in
the SPACIAL CONTEXT ANALYSIS.
The SPACIAL CONTEXT
ANALYSIS is used to specify the
MONITORING REQUIREMENTS.
The SPACIAL CONTEXT
ANALYSIS is used to specify the
MOBILE ADAPTATION
REQUIREMENTS.
This analysis provides a part of the
temporal dimension in the framework and
results in the TEMPORAL
IMPLICATIONS ANALYSIS.
Temporally significant events result in
requirements for monitoring, which are
determined and result in TEMPORAL
MONITORING REQUIREMENTS.
Specify requirements for adaptation
Temporally significant events result in
requirements for adaptation, which are
determined and result in PREDICTABLE
TIME CHANGE ADAPTATION
REQUIREMENTS.
Analyze unpredictable
change application
Analyze evolving requirements
Specify variation points
This analysis provides a part of the
temporal dimension in the framework and
results in the EVOLVING
REQUIREMENTS ANALYSIS. The
analysis is exhaustive and includes the
complete domain.
The points determine when requirements
change can be expected and results in
VARIATION POINTS.
Generalize evolving requirements
For future implementations the
requirements are made more adaptable
resulting in the GENERALISED
EVOLVING REQUIREMENTS that
use the VARIATION POINTS.
Analyze individual user
focus application
Define user profile
Set achievement levels
An expert stakeholder determines the
personal profile by using stereotypes
resulting in USER PROFILE.
The application owner sets his or her
personal achievement levels in
ACHIEVEMENT LEVELS.
Specify monitoring and adaptations
Important temporal events result in
monitoring and adaption requirements set
in the MONITORING AND
ADAPTION REQUIREMENTS.
Trade off solutions
The consultant compares the
ACHIEVEMENT LEVELS and the
USER PROFILE and creates a
combined list of TRADE OFF
SOLUTIONS.
Negotiate and validate
requirements
This is a closed activity and results in
VALIDATED REQUIREMENTS.
Table 3, a table of all the activities used in the PDD in Figure 1
Concept table
Concept
APPLICATION ASSESSMENT
INTERNATIONAL REQUIREMENT
CULTURAL CONTEXT
LOCAL REQUIREMENT CONFIGURATIONS
MOBILE REQUIREMENT
SPATIAL CONTEXT ANALYSIS
MONITORING REQUIREMENT
MOBILE ADAPTATION REQUIREMENT
PREDICTABLE TIME CHANGE
REQUIREMENT
TEMPORAL IMPLICATIONS ANALYSIS
TEMPORAL MONITORING REQUIREMENT
PREDICTABLE TIME CHANGE
Description
A consideration of the type of application to
determine requirements related to individuals and
changing requirement of a temporal and spatial
nature.
International requirements including
CULTURAL CONTEXT and LOCAL
REQUIREMENT CONFIGURATIONS.
A cultural context including and / or cultural
impact, authority relationships, work patterns,
literacy and local languages as defined by
Hofstede (1980) and Hall (1976).
A requirement created by refinement of the
CULTURAL CONTEXT.
A requirement of mobile requirements containing
SPACIAL CONTEXT ANALYSIS,
MONITORING REQUIREMENT and MOBILE
ADAPTATION REQUIREMENT.
Spatial context described in ‘locales’ models
(Fitzpatrick, 2003).
Monitoring includes the sensors, functions and
processes, interpreters and domain models of an
application (Dix, Rhodden, Davies, Trevor, &
Friday, 2000).
Requirements based on mobile adaptation using
SPATIAL CONTEXT ANALYSIS.
A requirement of predictable time change
requirements containing TEMPORAL
IMPLICATIONS ANALYSIS, TEMPORAL
MONITORING REQUIREMENT and
PREDICTABLE TIME CHANGE
ADAPTATION REQUIREMENT.
An analysis using as sensor the system clock and
the implications of time. Temporal dependencies
might be defined in a language such as KAOS
(Lamsweerde & Letier, 2000).
Requirements that are the result of events
specified in the predictable time change pathway
or others.
Requirement that is the result of events specified
ADAPTATION REQUIREMENT
UNPREDICTABLE CHANGE
REQUIREMENT
EVOLVING REQUIREMENTS ANALYSIS
VARIATION POINTS
GENERALISED EVOLVING REQUIREMENT
INDIVIDUAL USER FOCUS REQUIREMENT
USER PROFILE
ACHIEVEMENT LEVELS
MONITORING AND ADAPTION
REQUIREMENT
TRADE OFF SOLUTIONS
REQUIREMENT
REQUIREMENTS FRAMEWORK
in the predictable time change pathway or others.
A requirement of unpredictable change
requirement containing EVOLVING
REQUIREMENTS ANALYSIS, VARIATION
POINTS and GENERALISED EVOLVING
REQUIREMENTS.
A documentation of the anticipated changes in
the requirements.
A documentation of when the changes will occur,
the moments will be called variation points.
A generalization of processes and procedures,
parameters, run-time binding of procedures and
data structures, adding functionalities at variation
points and making the architecture loosely
coupled.
A requirement of an individual user focus
requirement consisting of a USER PROFILE,
ACHIEVEMENT LEVELS, MONITORING
AND ADAPTION REQUIREMENTS and
TRADE OFF SOLUTIONS.
A user stereotype description defined by an
expert stakeholder.
Achievement levels and personal goals set by the
application owner.
Contains a requirement (benchmarks) for
monitoring and adapting for the USER PROFILE
and ACHIEVEMENT LEVELS.
The list of solutions that remains after the
comparison of the USER PROFILE and
ACHIEVEMENT LEVELS.
“A statement on an action that the product is
requested to do, or a quality that the product is
requested to have.” (Robertson & Robertson,
1999)
A table consisting of requirements and an
application assessment to create a framework of
requirements for the development of applications.
Table 4, a table of all the concepts used in the PDD in Figure 1
References
Cheverst, K., Davies, N., Mitchell, K., Friday, A., & Efstratiou, C. (2000). Developing a contextaware electronic tourist guide: some issues and experiences. Proceedings of the Conference on human
factors in computing systems, New York, USA, 17–24.
De Angeli, A., Athavankar, U., Joshi, A., Coventry, L., & Johnson, G. I. (2004). Introducing ATMs in
India: a contextual enquiry. Interact Comput 16, 29–44.
Dix, A., Rhodden, T., Davies, N., Trevor, J., & Friday, A. (2000). Exploiting space and time as a
design framework for interactive mobile systems. ACM Trans Comput Hum Interact, 7, 285–321.
Fickas, S. (2005). Clinical requirements engineering. Proceedings of the ICSE 2005: 27th
International conference of software engineering. Los Alamitos, USA, 45-59.
Fickas, S., & Featjer, M. S. (1995). Requirements monitoring in dynamic environments. Proceedings
of the IEEE international symposium on requirements engineering, Los Alamitos, USA, 140–147.
Fitzpatrick, G. (2003). The locales framework: understandingand designing for wicked problems.
Dordrecht: Kluwer Academic.
Hall, E. T. (1976). Beyond culture. New York: Anchor Doubleday.
Hofstede, G. (1980). Cultures consequences: international differences in work related values.
Thousand Oaks: Sage.
IEEE Standards Coordinating Committee of Computer Society. (1990) IEEE Standard Glossary of
Software Engineering Terminology. New York: IEEE Publishing
Newell, A. F., & Gregor, P. (2000). User sensitive inclusive design: in search of a new paradigm.
Proceedings of the Conference on Universal Usability, New York , USA, 39–44.
Norman, D. A. (2004). Emotional design: why we love (or hate) everyday things. New York: Basic
Books.
Potts, C. (1999). ScenIC: a strategy for inquiry-driven requirements determination. Proceedings of the
4th IEEE international symposium on requirements engineering, Los Alamitos, USA, 58–65.
Potts, C., Takahashi, K., & Anton, A. I. (1994). Inquiry-based requirements analysis. IEEE Software
11 , 21–32.
Robertson, J., & Robertson, S. (1999). Mastering the requirements process. Harlow: Addison Wesley.
Sutcliffe, A. (2002). User-centred requirements engineering. London: Springer.
Sutcliffe, A., Fickas, S., & Sohlberg, M. M. (2006). PC-RE: a method for personal and contextual
requirements engineering. Requirements Engineering 11(3) , 157-173.
Van Lamsweerde, A., & Letier, E. (2000). Handling obstacles in goal-oriented requirements
engineering. IEEE Trans Softw En, 26, 978–100.
Van Velsen, L., Van der Geest, T., Klaassen, R., & Steehouder, M. (2008). User-centered evaluation
of adaptive and adaptable systems: a literature review. The Knowledge Engineering Review , Volume
23:3, 261–281.
Weerd, I., & Brinkkemper, S. (2008). Meta-modeling for situational analysis and design methods. In
M. Syed, S. Syed, J. Neidig, & J. Snavely (Eds.), Handbook of research on modern systems analysis
and design technologies and applications (pp. 133-162). Hershey, New York : Information Science
Reference.
Download