=Paper= {{Paper |id=Vol-1217/paper1 |storemode=property |title=Using Non-Profit Partners to Engage Students in RE |pdfUrl=https://ceur-ws.org/Vol-1217/paper1.pdf |volume=Vol-1217 |dblpUrl=https://dblp.org/rec/conf/re/PenzenstadlerRKCCW14 }} ==Using Non-Profit Partners to Engage Students in RE== https://ceur-ws.org/Vol-1217/paper1.pdf
Using Non-Profit Partners to Engage Students in RE
     Birgit Penzenstadler, Debra Richardson                              Beth Karlin                            Allison Cook
   School of Computer and Information Sciences                   School of Social Ecology                   Story of Stuff Project
     University of California, Irvine, CA, USA           University of California, Irvine, CA, USA        Berkeley, CA, 94709, USA
                 bpenzens@uci.edu                                     bkarlin@uci.edu                      allison@storyofstuff.org

            David Callele                                                    Krzysztof Wnuk
   Experience First Design Inc.                                       Blekinge Institute of Technology
        Saskatoon, Canada                                             SE - 371 79, Karlskrona, Sweden
dcallele@experiencefirstdesign.com                                        Krzysztof.Wnuk@bth.se



   Abstract—To improve requirements engineering education and         students to learn these techniques and to experiment with
training, experience reports serve as guidance on how courses can     different ways of achieving a consensus among a variety of
be taught and which methods and approaches work with specific         stakeholders from a non-engineering background.
types of audiences.
   One problem when teaching undergraduate audiences is often            With the majority of our students being interested and re-
a lack in motivation for the course because of misconceptions         sponsible citizens (as emerging data suggests that Millennials
about requirements engineering as well as simple work overload        are interested in doing more purpose-driven work or just being
by the curricula or other imposing constraints with regard to         “socially-conscious” [5]), we predicted that using a case study
the students’ time budget.                                            on empowering citizens would engage them more thoroughly
   A way to overcome this motivational problem and to make
students want to actively contribute to a requirements engineer-      with the responsibilities of requirements engineering.
ing class project is to let them perform a case study on a socially        Contribution and Outline: This paper reports on expe-
relevant system in collaboration with an industrial partner.          riences gathered with using the Citizen Muscle Boot Camp
   This paper provides an experience report of such an in-class       (CMB), an online learning program currently under develop-
project on an online-learning platform for civic engagement in        ment at the Story of Stuff Project for environmental activism,
cooperation with the Story of Stuff Project. We provide the
structure of the course as well as the assignments, excerpts          as student project in a requirements engineering course for
from the students’ results, and observations made throughout          undergraduate students at the University of California, Irvine.
the course, all of which may serve as input for other instructors.    The goal of the Boot Camp is to train a subset of the 500,000
                                                                      members of the Story of Stuff community into citizen activists
   Index Terms—requirements engineering; requirements educa-          to work toward social change on sustainability issues. After
tion; environmental sustainability; civic engagement;
                                                                      introducing the project, we present the course details, how the
                            I. I NTRO                                 students performed the assignments, and the observations from
                                                                      their results.
   Requirements Engineering (RE) as a discipline provides the
foundation to making successful software systems by eliciting                               II. BACKGROUND
the appropriate information from the relevant stakeholders            A. The RE Undergraduate Course at UCI
and by offering the methodological means to analyze and
document the findings such that they can be incorporated                 The undergraduate course in RE at the University of Califor-
throughout design and implementation.                                 nia, Irvine, has been taught by a number of different lecturers
   In the undergraduate course on RE at the University of             with each slightly adapting the style and focus to personal
California, Irvine, we want to integrate the theory in class with     preferences and current research and practice. In the spring
as much real-world experience as the classroom constraints            quarter of 2014, it was taught by the first author of this paper.
allow for. Therefore, we integrate case studies and examples             One of the definitions for RE that is used in the course
from ongoing software system development and collaborate              is the one by Nuseibeh and Easterbrook [13]: Requirements
with industry and/or non-profit partners to give the students         engineering is concerned with interpreting and understand-
an impression of RE in practice.                                      ing stakeholder terminology, concepts, viewpoints and goals.
   Web content has become an increasingly common way of               Hence, RE must concern itself with an understanding of
disseminating important information to people and engaging            beliefs of stakeholders (epistemology), the question of what
them in social causes [12]. The challenge of educating people         is observable in the world (phenomenology), and the question
online in civic engagement, as developed by the Story of              of what can be agreed on as objectively true (ontology). Such
Stuff Project1 , provides a well-suited example case study for        issues become important whenever one wishes to talk about
                                                                      validating requirements, especially where stakeholders may
  1 http://www.storyofstuff.org                                       have divergent goals and incompatible belief systems [13].
Furthermore, RE facilitates the process of consolidating dif-      several artifact models, such as the one of Berenbach et
ferent stakeholders’ concerns and agreeing on a system vi-         al. [4, ch. 2], who describe RE artifact modeling with the
sion [11].                                                         key components to be a measurable reference model and
   The major learning goals that arise from this view and shall    respective process guidelines. To tackle the problem of a
be incorporated in the course are the following:                   blurry terminology and to foster the discussions about this
   1) Knowledge areas: RE terminology RE contents, RE              paradigm, Mendez et al. introduced a meta model for artifact-
      principles and methods for eliciting, analyzing, spec-       based RE [10]. This meta model defines the basic concepts of
      ifying, validating, verifying requirements, and quality      artifact-based RE, i.e. which elements are necessary to define
      assurance                                                    an artifact (structure, content), or how an artifact relates to
   2) Competencies and skills: analysis, abstraction, phrasing,    further software process concepts like “method” or “role”.
      communication, sensitivity for customers, method com-        This supports the systematic creation of artifact-based RE
      petencies                                                    approaches covering all elements of software processes, and
   The course occurs over 10 weeks, with two lectures per          thus the integration and customization of an artifact-based RE
week. Student evaluation is performed by a mid-term and            as part of a software process.
final exam as well as a number of team assignments. The               The Artifact Model for Domain-independent Requirements
assignments are designed to add up to a complete requirements      Engineering (AMDiRE) [7], [2], developed on the basis of
specification, with students working in a team distributing the    that meta model, served as framework for the lectures and
work and synthesizing and consolidating individual parts as        structured the team project into weekly assignments.
well as taking responsibility for quality assurance.               E. Related Work
B. Student Body                                                       In the field of sustainability education, Karlin et al. [8]
   The course is mandatory for undergraduate students from         report on a pilot study of the Guided Research Applied Sus-
three different major subjects, namely Informatics, Computer       tainability Project (GRASP) model for sustainability education
Science, and Business and Information Management. Due to           that provides students with a positive and engaging learning
the fact that it is a required course, there are many students     experience.
each year who have to participate, and this made for a large          In RE education, Zowghi and Paryani [16] used role playing
course of 106 enrolled students.                                   to bring real world experiences into the classroom. Penzen-
   All have had programming experience in their prior course-      stadler and Callele [14] report on experiments with bringing a
work, while some have had more extensive experience in soft-       stakeholder from mechanical engineering into class. Barnes
ware development either in their own projects or in internships.   et al. [3] discuss how to foster an attitude of acceptance
                                                                   in their students versus resistance and fear of the unknown
C. Lectures and Course Materials                                   and unknowable in RE by including real-world examples and
   The lectures were structured along an outline that followed     experience in class.
the paradigm of artifact-oriented requirements engineering,           Penzenstadler et al. [15] report on bringing stakeholders
i.e. that used the artifact model presented in Sec. II-D as a      from industry into the classroom. In contrast, the course
backbone to elicit and analyze requirements and to organize        described in the paper at hand did not include interviews with
the other tasks involved with requirements management. Each        the stakeholders in class but instead information via documents
lecture was 80 minutes long and the lecture slides were            and online research.
available online beforehand.                                                          III. S O S CMB P ROJECT
   Preparation materials for the case study were provided in
the form of background information on the Story of Stuff             This section describes the problem domain, the study sys-
Project as introduced in Sec. III-A and Sec. III-B as well as      tem, and the student assignments.
some general background on Massive Open Online Courses             A. Problem Domain: The Story of Stuff Project
(MOOCs) [9] with examples2 . Students were asked to famil-
iarize themselves with the Story of Stuff material as well as         Story of Stuff started as a film project in 2007 designed to
with examples for MOOCs.                                           tell the story of “stuff (i.e. consumer goods) from its creation,
                                                                   through its sale and use, and eventually to its disposal” in a
D. Artifact-based RE with AMDiRE                                   catchy and engaging manner. The single film, with an initial
   In winter 2014, we introduced AMDiRE [7], an artifact-          viewership goal of 50,000 views, quickly exceeded this goal
oriented approach to RE, in the course. The basic idea of          and sparked the launch of The Story of Stuff Project as a
artifact orientation consists in defining a reference model of     501(c)3 nonprofit organization. The Story of Stuff Project has
all relevant artifacts and their dependencies while leaving open   since created 8 additional films and has also translated into
the way of their creation. The focus thus lies on what to          other mediums, including television (interstitials for PBS),
create rather than on how to create it. In RE, there exist         print (Story of Stuff book), online (website, social media,
                                                                   podcast), and curricula (K-12 and religious groups). Their
  2 https://www.coursera.org/                                      combined films have been translated into 39 languages and
seen by over 40 million people and counting. This viewership                                    TABLE I
has also translated into an active online community of nearly               T IMELINE OF A SSIGNMENTS AND G RADING S CHEME
a half million people. The initial goal of the Story of Stuff                   Business Case (5%)                     Jan 27
Project was to create and provide media resources to envi-                      Stakeholder Model (5%)                 Jan 27
ronmental activists and educators as well as to the general                     Goal Model (5%)                        Feb 3
                                                                                System Vision (5%)                     Feb 3
public. A community of potential activists formed around the                    Mid-term exam (20%)                    Feb 6
organization, who started to want to become more actively                       Domain Model (5%)                      Feb 10
engaged in the issues discussed in the films.                                   Usage Model (5%)                       Feb 10
                                                                                Non-functional requirements (5%)       Feb 17
                                                                                Functional hierarchies (5%)            Feb 24
B. Study System: The Citizen Muscle Boot Camp                                   Peer review (5%)                       Mar 3
                                                                                Presentation of specification (5%)     Mar 10
   To address this need for positive citizen engagement through                 Final Exam (30%)                       Mar 20
education, The Story of Stuff Project created a new program
in 2013 called the Citizen Muscle Boot Camp. The Citizen
Muscle Boot Camp (CMB) is a six-week, online course de-                      Context Layer

signed to provide Story of Stuff Project community members                             Business Process         Stakeholder Model

with the skills, motivation and peer support they need to act on
issues related to environmental sustainability. It was designed
in response to inquiries and requests from the Story of Stuff
                                                                                             Domain Model                Goals &
community to help members learn, engage, connect, and act on                                                           Constraints
the issues raised in their films. The CMB guides participants
through a series of weekly trainings aimed at strengthening
their civic activism skills, or “citizen muscle”. Each week of
                                                                             Requirements Layer
the program focuses on a unique skill:                                                       System Vision    Quality Requirements
   1) Purpose: discovering your change making style and goal
   2) Talk: learning how to communicate effectively about
       your issue
   3) Grow: finding and developing a community of allies                                      Usage Model               Functional
   4) Focus: getting strategic about how to accomplish your                                                              Hierarchy

       goals
   5) Push: figuring out which tactics you’ll need to employ
       to effect change
   6) Practice: putting your learning into action.                      Fig. 1. Reduced Version of AMDiRE for Course Assignments

   For a first pilot of the course, members of the Story of
Stuff community were contacted via email and invited to
register for the CMB free of charge. Those who registered             1) Business Case Analysis and Stakeholder Model: For this
were enrolled in the CMB and received an email with a              assignment, the students had to perform an elicitation meeting
link to a 2-3 minute video lesson, accompanied by additional       with their team’s customer group to discuss the case study
resources (e.g., framing, tips, readings) to get them practicing   problem in their role as part of the development team. After the
their change-making skills and a homework activity to put          elicitation meeting where they discuss with the customer their
their new skills into practice. The CMB is designed so that        understanding and vision of the Story of Stuff Citizen Muscle
each weekly module can be completed in 1-2 hours per week,         Boot Camp Online Course, the team develops a business
and it was chosen as study system for the students to complete     case analysis and a stakeholder model, both as described and
their assignments and develop a requirements specification.        discussed in the lecture.
                                                                      Evaluation criteria:
C. RE Course Assignments                                              • Business Case Analysis [40 points]:

   This section provides the assignments for the students as               – Is the analysis structured well?
well as the evaluation criteria that were used to grade the                – Does it contain executive summary, problem state-
submissions. The students were divided into 26 teams of four                  ment, analysis, solution options, project description,
to five students. They were free to choose their teams within                 cost-benefit analysis, risks and recommendations?
the first week of the quarter and the students who had not                 – Is each of these elements described in sufficient
found teams by then were assigned to one. Each team was                       detail?
serving as customer for one of the other teams, and as a                   – Is the information consistent throughout the docu-
developer for a different team. The timeline of the assignments               ment?
is depicted in Table I. We used a reduced version of the              • Stakeholder Model: [40 points]
AMDiRE artifact model as depicted in Fig. 1.                               – Have all major stakeholder groups been considered?
        – Have they been analyzed and described to an ade-                  how they accomplished the task. For the usage model, they
           quate degree of detail?                                          were asked to provide an overview diagram of all use cases,
        – Are the relationships between the stakeholders clear?             plus a detailed version of at least one use case, including
        – Is it clear which stakeholder has which knowledge,                the full information from the template in the lecture slides.
           skills, priority, and responsibilities?                          The detailed version of one use case includes one scenario
   2) Goal Model and System Vision: For this assignment, the                — first described according to the Cockburn template [6] (as
students had to ensure that they captured the critical goals from           main success scenario with extensions and/or variations)—and
their elicitation meeting with the customer. If this is not the             then choosing one diagram type (activity diagram or message
case yet, they have to further communicate with them and elicit             sequence chart) to illustrate it. They were asked to provide a
more goals. On that basis, the team develops a goal model                   description of the rationale for the domain model and usage
and a system vision, both as described and discussed in the                 model, at least two paragraphs of how they did it and what
lecture. They had to make sure that the goal models contain at              they found difficult or the most challenging aspect of it.
least three to four levels of subgoals for more than half of the              •  Domain Model [40 points]
goals3 and that appropriate notations are used (goal categories,
                                                                                   – Is the domain model well structured?
labeled relations, AND/OR alternatives). The task was not only
                                                                                   – Does it contain at least 7 classes and 2 meaningful
to submit the diagram but also a textual explanation of how
                                                                                      attributes per class?
they did it and why they did it this way. This also gives them
                                                                                   – Are all classes connected by associations with roles
a chance to report on encountered challenges.
                                                                                      and multiplicities?
   For the system vision, the scoping (system boundary) is
                                                                                   – Is the domain model complete w.r.t. the criteria
important, as well as other systems in the context and the
                                                                                      discussed in class? Does it provide all important
involved stakeholders. It was important to keep the intention
                                                                                      concepts?
of a system vision in mind: It shall communicate the idea of
                                                                               • Usage Model: [40 points]
the project to all stakeholders in a way they can agree on and
that is easily understandable without technical knowledge.                         – Is a use case overview diagram provided that is well
   Evaluation criteria:                                                               structured and includes all important use cases?
   • Goal Model [40 points]                                                        – Are all use cases that are important for the system
        – Is the goal model well structured?                                          depicted in that diagram?
        – Does it contain at least five business goals, five usage                 – Is a complete and correct description of one ex-
           goals and five system goals?4                                              emplary scenario provided for one central use case
        – Are they broken down and refined into subgoals                              in either a UML activity diagram or a message
           where possible?                                                            sequence chart?
        – Is each of these elements related sufficiently to the                    – Is a complete and correct description provided for
           other goals and are all notations used?                                    one central use case in a table (according to the
                                                                                      Cockburn template)?
   • System Vision: [40 points]
        – Is a clear system boundary / scope visible?                          4) Non-functional requirements: For this assignment, the
        – Is the vision described and illustrated to an adequate            students again had to use input from the earlier content
           degree of detail?                                                items (goal model, domain model, usage model) including the
        – Is it clear which systems are in the operational and              received feedback to develop a small set of non-functional
           business context?                                                requirements. This should be provided in the form of two
        – Is it clear which stakeholders are involved?                      examples of each of the following categories: process re-
                                                                            quirements, deployment requirements, system constraints, and
   3) Domain Model and Usage Model: For this assignment,
                                                                            quality requirements. These requirements shall be refinements
the students use the input from the earlier content items
                                                                            of the earlier elicited goals, so they were asked to name the
(business case analysis, stakeholder model, goal model, system
                                                                            goals as rationale.
vision) including the feedback they received on those to
                                                                               Evaluation criteria for non-functional requirements [80
develop a domain model and a usage model, both as described
                                                                            points]:
and discussed in the lecture. It was encouraged to make
sure that the domain model contains the important concepts                    • Is the template filled out completely and correctly for
of the domain — business objects, real world objects, and                       process requirements?
events that transpire — in form of classes (at least seven),                  • . . . for deployment requirements?
attributes (at least two per class), and associations with roles              • . . . for system constraints?
and multiplicities. Furthermore, it was again requested to not                • . . . for quality requirements?
only submit the diagram but also a textual explanation of                      5) Function hierarchy: For this assignment, the students
  3 To ensure that students practice refinement.                            again had to use the input from the earlier content items
  4 The number is defined arbitrarily, but students kept asking “how much   (usage model and scenarios). On that basis, the team develops
was enough”.                                                                a function hierarchy according to the example from the lecture,
structuring them into functions and subfunctions and adding
the respective relationships between them.
   Evaluation criteria for the Function hierarchy [80 points]
   • Are there at least ten functions in the function hierarchy?
   • Does the structure of the hierarchy make sense?
   • Are at least three of the possible types of relations (pre-
     cedes/follows, requires, interrupts, activates/deactivates)
     made explicit?
   • Are all relations depicted that exist between the displayed
     functions or are relations missing?
   6) Quality Assurance in Peer Review: For this assignment,
students used the input provided by their development team,
meaning that:
   1) They send their complete specification to their customer
      in one PDF file (consolidated version of all your assign-
      ments in one document) and receive the one from their
      development team.
                                                                                                                 Fig. 2. Business Case Outline for the SoS CMB
   2) The team writes up a review of the specification of their
      development team according to the following IEEE-
      830 criteria: completeness, consistency, unambiguity,
      correctness, structuredness, traceability, changeability,                                 requirements engineering, but very much in the day-to-day
      understandability                                                                         practice of business analysts who also perform requirements
   Evaluation Review [80 points]: Is there a rating and ratio-                                  engineering.
nale for the rating for the above criteria, namely Complete-
                                                                                                B. Stakeholder Model
ness, Consistency, Unambiguity, Correctness, Structuredness,
Traceability, Changeability, and Understandability?
                     IV. R ESULTS & O BSERVATIONS
   All teams completed the assignments and handed in their
solutions. They also provided the rationale on how the results
were developed and which challenges had been encountered
while performing the assignment. This section provides illus-
trative examples of good solutions (not all from the same team)
and a discussion of observations made throughout the course
and while reviewing the results.
A. Business Case
   Figure 2 is a screenshot of the rather elaborately designed
business case brochure one of the teams created. The hardest
part in the business case was that the system was for a non-
profit organization. This led some of the student teams to
inventing options for voluntary donations while taking the
online course, but made it hard to develop an actual business
case with convincing numbers apart from trying to keep the
costs low. The business case in Fig. 2 is a good, concise
solution. While the layout effort is quite impressive, that part
of the effort could have gone to something more directed to
the task at hand. Constraining the students to focus on content
over presentation seems to be useful in such an early and short
course. However, this is one of the three “fancy” examples out
                                                                                              Fig. 3. Stakeholder Model for the SoS CMB
of 26 solutions, so most of the students did stick to a simplerPower / Interest Model
presentation format. Apart from that, students put a lot of effortOverview
                                                                              The stakeholder model in Fig. 3 is a simple yet sufficiently
into researching some background statistics on the web thatWe  consider  the  stakeholders  in  a  power/interest  matrix  to  assess  their  potential  to  influence  the  project.  The
                                                                  goal  is  to  understand  who  we  (as  the  solution  provider)  and  our  client  (as  the  content  provider)  should  consider
would back up their data in the business case.                          extensive representation of the major stakeholders of the CMB
                                                                                                                                                                                               15
   The challenge of finding sufficient background information system. Students often neglected representing the relations
is not so much related to learning the actual techniques of between stakeholders, as for example in Fig. 3, where there
                                                                                  Domain Model

are arrows to “hold together” the figure but no labels on the
arrows that would indicate the actual relation between the
stakeholders.
   From the discussion on the solutions afterwards, the major
challenge was to infer relations if the checklists and examples
provided in class didn’t already include those relations.
C. Goal Model
   The goal model in Fig. 4 depicts business goals (in red),
usage goals (in green), and system goals (in blue) and their
relations. The model is structured to support a goal hierarchy
with respect to the scope of the goal. Business goals are
more primary, relating to the actual purpose of creating the
system, so they are located toward the top of the diagram.
They are supported by usage goals which define the intent
                                                                                                  Fig. 6. Domain Model for the SoS CMB
                                                                                            We  decided  the  classes  by  first  listing  each  component  of  the  course  webpage.
and function of the system and are thus supported by system                       Afterwards,  we  determined  the  attributes  by  writing  out  the  details  of  each  component.  Classes
                                                                                  needed  to  denote  objects.  We  created  the  final  version  of  the  classes  by  changing  objects  into
goals which demonstrate the characteristics of the system. The                    attributes  if  they  described  a  class.  The  classes  and  attributes  needed  to  not  only  follow  what
                                                                                  was  written  in  the  business  case  and  the  goal  model,  but  it  also  had  to  be  consistent  with  the
model contains a multitude of antigoals, or constraints, as well                  usage  model.  Thus,  our  diagram  contains  terminology  and  relations  that  had  already  been

as obvious goals. Anything that is not marked with the double          The students encountered many challenges including but not
                                                                                  stated.  We  added  further  descriptions  of  each  object’s  relationship  with  each  other  in  order  to
                                                                                  clarify  how  the  objects  interacted  and  why  each  attribute  is  necessary  for  the  object.

minus sign is an uninhibiting subgoal of its parent goal. Each      limited to: having consistent terms between the domain model
                                                                                       The  classes  are  associated  with  each  other  when  they  have  direct  interaction  with  each

constraint is marked with a double minus sign (- -) meaning         and previous                  documents or models; determining whether
                                                                            other.  For  example,  the  game  board  contains  many  courses  that  students  can  take  by
                                                                            interacting  directly  with  both  the  game  board  and  the  courses.  There  is  only  one  game  board,

it can inhibit the functionality or achievement of it’s parent      classes which  is  shared  by  every  student  and  every  course.  Each  course  contains  a  type  of  “media”.  We
                                                                               were necessary or arbitrary; and figuring out if an
                                                                            use  the  term  “media”  because  the  instructors  may  develop  a  course  via  images  or  video.

goals. Double plus sign (++) means the subgoals lead up to          attributeBecause  it  is  uncertain  and  vague  as  to  which  medium  an  instructor  chooses  to  use,  we
                                                                                 was part of the correct class. They resolved the ter-
                                                                            deemed  that  having  a  name  and  a  link  is  sufficient  for  implying  that  a  course  will  contain  at  least
their parent goal.                                                  minology         issue by discussing the model with their teammates
                                                                            videos  and  possibly  pictures  too.  We  did  not  put  them  as  the  attribute  of  a  “Course”,  because  we
                                                                            think  it  will  be  more  organized  to  have  a  separate  query  instead  of  having  it  belong  under  the
   Major challenges were to distinguish between business,           and coming                to a consensus as to which terms to be used in
                                                                            courses.  Also,  our  system  calendar  will  include  events  and  dates,  so  we  associated  them  with

usage, and system goals and to identify relations between the       the model. As for the classes, they decided which ones should
goals.                                                              become classes and which ones should remain attributes while
                                                                    creating the diagram.
D. System Vision
   Figure 5 is a pictorial representation of the system vision of Usage ModelModel
                                                                   F. Usage
the CMB that all stakeholders (in this case, customer team and MOOC usage model overview
developer team members) agree on and that serves as common
reference point in discussions. The system vision was agreed
upon by all stakeholders (i.e., each developer team and the
respective customer team) in order to define the functionality
and characteristics of the Story of Stuff CMB. The vision
contains passive and active stakeholders centering around the
CMB and a business and operational context, separated by
a dotted line on the diagram. Most active stakeholders are
highlighted by colored fields. Community leaders and users
are among the active stakeholders, but they are not members
of the Story of Stuff organization. Each group is highlighted
according to the legend on the diagram. Passive stakeholders,
along with community leaders and users, are not highlighted
by any boundary.
   The major challenge with the stakeholder model was to con-
sider all categories of stakeholders and to determine influences
between them.
E. Domain Model
                                                                                    Fig.creating
                                                                   Cockburn outline for   7. UseanCase Overview
                                                                                                   account        for the SoS CMB
                                                                                                           on the MOOC
   The domain model in Fig. 6 is a class diagram that lists the
most important business (real-world) objects that have to be
                                                                   Use  Case                                      Create  an  account
represented in the system. The classes and attributes needed          Figure 7 and Figure 8 depict excerpts of the usage model,
                                                                   Goal  in  Context
to not only follow what was written in the business case and       representing differentUser  creates  an  account  on  the  MOOC
                                                                                           paths of how a user can interact with
                                                                   Scope                 Story  of  Stuff  Massive  Open  Online  Course
the goal model, but also had to be consistent with the usage       the website. In the activity     diagram (Fig. 8), the user is placed
model. The classes are associated with each other when they        Level
                                                                   in the middle as a wayPrimary  Task
                                                                                             to symbolize their role in determining
have direct interaction with each other.                           Preconditions
                                                                   whether or not data would● User  has  access  to  a  computer  connected  to  the
                                                                                                     be transmitted between the system
                                                                                                                             Internet
                                                                                                                        ●    User  has  a  valid  email  address
                                                                                                                        ●    User  knows  how  to  navigate  to  the  MOOC  webpage

                                                                   Success  End  Condition                        User  creates  an  account  for  the  MOOC

                                                                   Failed  End  Condition                         User  does  not  create  an  account
     Goal Model




                                       Fig. 4. Goal Model for the SoS CMB
              The  model  above  is  structured  to  support  a  goal  hierarchy  with  respect  to  the  scope  of  the  goal.
   Business  goals  are  more  primary,  relating  to  the  actual  purpose  of  creating  the  system,  so  they  are
System        Vision
   located  toward  the  top  of  the  diagram.  They  are  supported  by  usage  goals  which  define  the  intent  and
   function  of  the  system  and  are  thus  supported  by  system  goals  which  demonstrate  the  characteristics  of
   the  system.
              The  model  contains  a  multitude  of  anti-­goals,  or  constraints,  as  well  as  obvious  goals.  Anything
   that  is  not  marked  with  the  double  minus  sign  is  an  uninhibiting  subgoal  of  its  parent  goal.  Each  constraint
   is  marked  with  a  double  minus  sign  (-­-­)  meaning  it  can  inhibit  the  functionality  or  achievement  of  it’s
   parent  goals.  Double  plus  sign  (++)  means  the  subgoals  lead  up  to  their  parent  goal.

     Primary Goals
              The  primary  goal  of  this  project  is  to  develop  citizen  muscles,  or  in  other  words  to  teach  people
     how  to  become  more  active  in  the  community.  The  way  to  do  that  is  to  first  create  a  massive  open




         The  system  vision  was  agreed  upon  by  all  stakeholders  in  order  to  define  the  functionality  and
                                     Fig. 5. System Vision for the SoS CMB
characteristics  of  the  Story  of  Stuff  massive  open  online  course  (MOOC).  The  vision  contains  passive
and  active  stakeholders  centering  around  the  MOOC  and  a  business  and  operational  context,  separated
by  a  dotted  line  on  the  diagram.  Most  active  stakeholders  are  highlighted  by  colored  fields.  Community
leaders  and  users  are  among  the  active  stakeholders,  but  they  are  not  members  of  the  Story  of  Stuff
organization.  Each  group  is  highlighted  according  to  the  legend  on  the  diagram.  Passive  stakeholders,
along  with  community  leaders  and  users,  are  not  highlighted  by  any  boundary.
       Activity Diagram for creating an account on the MOOC
                                                                                                                                                   The non-functional requirements in Fig. 9 provide examples
                                                                                                                                                of a simple template specification form used to detail the
                                                                                                                                                NFRs and their validation. The non-functional requirements
                                                                                                                                                included quality requirements, process requirements, deploy-
                                                                                                                                                ment requirements, and system constraints.
                                                                                                                                                   The students reported slight difficulty in eliciting non-
                                                                                                                                                functional requirements, along with phrasing them in a way
                                                                                                                                                that was coherent with the goals. They referred mostly to their
                                                                                                                                                goal models, breaking down each element in order to deter-
                                                                                                                                                mine some non-functional properties their client prescribed
                                                                                                                                                for the system. The NFRs themselves were rather high-level
                                                                                                                                                quality goals broken down to a level that could be applied
                                                                                                                                                to the overall software system. The measurement (see Fig. 9,
                                                                                                                                                4th attribute of every table) was often underspecified so that
                                                                                                                                                testers would have to make assumptions about how exactly to
                                                                                                                                                measure this satisfaction criterion.

                                                                                                                                                H. Functional hierarchies
                                                                                                                                                   The functional hierarchy in Fig. 10 decomposes the user-
                                                                                                                                                perceived functionality from a system point of view and
                                                                                                                                                thereby facilitates the transition to design. While the students
                                                                                                                                                listed out each function, they tended to think too broadly
                                                                                                                                                and in general terms about the CMB, instead of the specific
                                                                                                                                                requirements that were requested by the clients. They found
                                                                                                                                                it difficult to determine the subfunctions of certain parent
                                                                                                                                                functions and figuring out whether activates, precedes, or re-
                                                                                                                                                quires was more suitable for describing how certain functions
                                                                                                                                                interacted with each other in the hierarchy. Another problem
                                                                                                                                                that they encountered was making the functional hierarchy
         Fig. 8. Use Case Scenario as Activity Diagram for the SoS CMB                                                                          diagram readable. The user was required to go through the
                                                                                                                                                “signin to account” function before being allowed to use
                                                                                                                                                the rest of the functions in the MOOC system. It was the
and the account database. The students also considered the                                                                                      subfunction to most of the other functions, so there were many
failure condition, in which an account is not created. Including                                                                                arrows pointing to that function and many boxes surrounding
these two end conditions is necessary to demonstrate the                                                                                        it. As a result, they chose to make the “signin to account”
destruction of data upon failure.                                                                                                               function “activate” all the other functions, which solved the
   The most challenging aspect of designing activity diagrams                                                                                   problem and made the diagram much easier to read.
was determining when and where data flow occurs, as the                                                                                            Early design decisions like this were the most discussed
students had difficulty in defining the interaction between the                                                                                 point about function hierarchies and show where RE and
system and the accounts database.                                                                                                               design have to be integrated or may overlap.

                                                                                                                                                I. Peer Review
G. Non-functional requirements
1RQ)XQFWLRQDO5HTXLUHPHQWV                                                                                                                        In the peer review, students tended to be very generous
                                                                                                                                                to their developer teams. They commented on a few minor
              )) ,!"*201-00 ,!"/"3&"4                                   "/3"/*201)),4#,/1%""5-,/1,#!1

1&,+)"       ,+1/&21"01,4/!01&)&16$,)0                1&,+)"        )),40!11,"4&1%!/4++!+)67"!
                                                                                                                                                mistakes or how the specifications could have been extended,
1&0# 1&,+
 /&1"/&,+
                1"/ ,!"/"# 1,/&+$                            1&0# 1&,+
                                                                   /&1"/&,+
                                                                                   "11&+$0"5-,/1 ,3"/$"                                     but in general they were satisfied with the work of their peers.
"02/"*"+1     "/ "+1$",# ,!"1%1%0""+/"# 1,/"!       "02/"*"+1      "/ "+1$",#%,01&+$0"11&+$01%1/"03"!&+"5-,/1      Most of the teams had gone through the effort of reworking
&0(            &1"*602##"/2+&+1"+!"!!,4+1&*"               &0(             %"0&1"4,2)!"&*-,00&)"1,1/+0#"/1,+,1%"/
                                                                                   %,01                                                         their specifications after the initial feedback from the teaching
               %"!"3"),-*"+11"**20120",-"+Ȓ0,2/ "
                 1,,)0
                                                                                &1"*201"2- ,+0&01"+1)6
                                                                                                                                                assistants, so those efforts apparently had paid off, as the
                                                                  1&,+)"       %"4"0&1"0%,2)!"#2))6#2+ 1&,+&+$0,1%120"/04&))
1&,+)"        %"-Ǿ"061,/"-)& 1"#,/#212/"20"Ǿ
                 1/+0-/"+ 6
                                                                                  +,1"12/+"!,##61%"&!"1%14"0&1"&0)460
                                                                                  !"#" 1&3"ǽ
                                                                                                                                                specifications had improved considerably.
1&0# 1&,+    ))!"3"),-*"+11,,)0/",-"+Ȓ0,2/ "            1&0# 1&,+   &1"2-1&*"*201"$/"1"/1%+ǞǞǽǞǞʢ
 /&1"/&,+                                                          /&1"/&,+

"02/"*"+1      "3&"4,#!"3"),-*"+11,,) ,-6/&$%1)& "+0"0    "02/"*"+1     +!,*)6-&+$&+$1%"0&1"+! ,2+1&+$-"/ "+1$",#
                                                                                                                                                J. Presentation of the Specification
                                                                                  /"0-,+0"0
&0(             ,,)020"!4&))",#),4"/.2)&161%+1%"6
                 *&$%1",1%"/4&0"                               &0(            0"/0*6)"3"1,,1%"/0+!!&0*&00,2/4"0&1"          The teams presented excerpts of their solutions within five
                                                                                  0!"0&/)"), 1&,+#,/,+)&+""!2 1&,+ǽ
                                                                                                                                                minute presentations during the last two sessions of the course
                                         Fig. 9. NFRs for the SoS CMB
                                                                                                                                                before the final exam. At this stage of their curriculum, the
                                                                                                                                                students do have experience in presenting in front of a large
                                                           Fig. 10. Function Hierarchy for the SoS CMB
                                  This  functional  hierarchy  diagram  relies  heavily  on  our  Usage  Model  of  the  Story  of  Stuff  MOOC
                        system.  It  contains  one  root,  titled  “Story  of  Stuff  MOOC”,  and  lists  all  the  necessary  functions.  Based  on
                        our  client’s  requirements,  our  system  includes  the  following  major  functions:  “Register  for  an  account”,
                        “Sign-­in  to  account”,  “Monitor  personal  progress”,  “Display  the  video  page”,  “Comment  on  a  video”,
audience, but their presentation skills varied considerably. usually composed of friends who therefore had established
                        “Display  assignments”,  “Display  calendar  of  events”,  “Share  pictures  from  events”,  and  “Display  pictures
While some teams made       an effort to make their presentation communication habits, while new teams first had to get to
                        of  an  event”.  All  of  these  functions  contain  subfunctions  and  some  have  external  interfaces  such  as
engaging, others only “”  and  “”.  The  dependencies  between  each  function  and
                         put in the minimum required effort know each other and find common denominators.
to deliver an acceptablesubfunction  are  depicted  by  arrows  labeled  with  “requires”,  “activates”,  and  “precedes”.
                            summary. Presentation skills are of
                                                                                             C. Solution Space
critical importance to successful customer communication and
                                                                                                 The design space used by the students was rather limited
should therefore be part of anWe  faced  many  problems  during  the  creation  of  this  diagram.  While  we  listed  out  each  function,
                                      RE course.
                         we  tended  to  think  too  broadly  and  in  general  terms  about  the  MOOC,  instead  of  the  specific  requirements
                                                                                             compared to what will actually be implemented. Were the
           V. D ISCUSSIONthat  were  requested  by  our  clients.  For  example,  we  initially  put  “enroll  into  courses”  as  one  of  the
                              AND L ESSONS L EARNED                                          students simply not interested enough or not knowledgeable
                         functions  of  this  MOOC.  However,  we  later  realized  that  this  is  not  what  our  clients  wanted  since  they
A. Overall Quality of Results                                                                enough? Or were the re-documenting what they saw elsewhere
                         wanted  all  the  users  to  participate  in  one  big  course  on  the  same  game  board.  We  also  had  an  issue  with
                                                                                             without considering other options? This depends partially on
                         determining  the  subfunctions  of  certain  parent  functions  and  figuring  out  whether  “activates,”  “precedes,”
   The range of solutions     extends from bad to good, as well their experience, but also on their creativity and motivation for
                         or  “requires”  was  more  suitable  for  describing  how  certain  functions  interacted  with  each  other  in  the
as from little effort to major effort that was put into the coming up with new ideas in this course.
                         hierarchy.  Another  problem  that  we  encountered  was  making  the  functional  hierarchy  diagram  look  clean
development of the specification.
                         and  readable.  The  user  was  required  to  go  through  the  “sign-­in  to  account”  function  before  being  allowed
                                                                                                 Having chosen a problem domain that would likely increase
   The grades in the mid-term       and the final exam were average motivation (see Sec. III-B), we were interested in how much
                         to  use  the  rest  of  the  functions  in  the  MOOC  system.  It  was  the  subfunction  to  most  of  the  other
for a RE course, not much           difference was perceived from sustainability showed up in their results. The answer is: only in
                         functions,  so  there  were  many  arrows  pointing  to  that  function  and  many  boxes  surrounding  it.  As  a  result,
other years (comparisonwe  chose  to  make  the  “sign-­in  to  account”  function  “activate”  all  the  other  functions,  which  solved  our
                             as perceived by teaching assistant) System Vision and Goal Model, if at all. Some even reduced it
or from earlier teachingproblem  and  made  the  diagram  much  easier  to  read.
                          experience by the first author at other only to the economic sustainability of the business. It is hard
universities. However, this is not dependent on the teaching to determine whether this is due to the lack of familiarity
method but on the students’ population — badly designed with requirements techniques, due to lack of interest in the
course will generate failures but well designed courses may specific concern for the system under development, or due to
also generate failures if students are not motivated.                                        a lack of knowledge of sustainability issues. Other disciplines
B. Team Dynamics                                                                             that are also trying to incorporate questions on sustainability
                                                                                             into existing structures, like UC Santa Cruz’s engineering
   There is a strong correlation between the students level of program [1] have reported a high motivation amongst students
experience and the quality of the work that they produced for sustainability causes, therefore we conclude that this is
on the project. Students who had experience in software mainly due to inexperience of how to factor such a value into
development projects and even worked in industry managed RE.
their teams in a very effective way and provided medium
to high quality specifications. On the downside, they often D. Lessons Learned
strongly focussed on the technical aspects of the system                                         This section sums up the lessons learned of the experience
(solution-orientation) and neglected stakeholder communica- report at hand.
tion (problem-orientation).                                                                      Reduce Number of Assignments: Effort estimation in student
   There was a perceivable difference between the groups that projects is hard, but as first-timers every artifact takes more
were self-selecting and the groups that were assigned in terms time to elaborate and team work requires a lot of discussion if
of the work they produced. Teams who had self-selected were done properly. The conclusion is to ask for less artifacts when
the course has only 10 weeks—it was too much stuff to deal          motivate students, but even stronger motivation and commit-
with in such a short time—and to probably cut out function          ment to developing a good requirements specification can be
hierarchies because they are strongly design-oriented.              achieved by inviting real stakeholders, and that the choice
   Real Stakeholders Motivate: While the students liked having      of the problem domain might influence students’ motivation.
a “real system” to work on, they would have preferred to            There are a few follow-up questions to be explored in future
talk to a real person involved in the project as opposed to         work, for example, whether value-based design should be
having to rely on documents, online research, and future            included as a concept when teaching requirements engineering,
users. Consequently, for the next iteration of the course, we       and how significantly the choice of problem domain affects
will again put a real stakeholder in class (compare to the          the motivation of the students in such a course. For the next
BMW DriveNow case study [15]) for one or two interviews             iterations of the course at UCI, we will try to allow the students
during elicitation and analysis, even if they are playing a         to perform interviews with real stakeholders for a system under
role. According to our experience, a real person who is only        consideration in practice.
available for that specific time, considerably increases the           Acknowledgements: This work is supported by the DFG
motivation to understand the problem domain and system              EnviroSiSE project under grant number PE2044/1-1.
under development.
                                                                                                  R EFERENCES
   Choice of Problem Domain: There are challenges when
                                                                     [1] Patricia Allen and Martha Brown. Sustainable Agriculture at UC Santa
motivating the pragmatic topic of RE with a project that is,             Cruz. http://casfs.ucsc.edu/about/History%20and%20News%20Archive/
itself, motivated by what might be perceived as an ethical               sustainable-agriculture-at-ucsc.html, 2014.
choice. Does the ethical choice resonate with the students           [2] D. Mendez Fernandez B. Penzenstadler, J. Eckhardt. Two replication
                                                                         studies for evaluating artefact models in re: Results and lessons learnt.
(positive motivator), is it ignored (neutral, but not achieving          In Proc. of the 3rd International Workshop on Replication in Empirical
your personal goal to enlighten them), or does it annoy them?            Software Engineering Research (RESER ’13), IEEE, 2013. Baltimore,
When looked at from a software system perspective, RE is                 USA, 2013.
                                                                     [3] R.J. Barnes, D.C. Gause, and E.C. Way. Teaching the unknown and the
about the content to be represented in the system, not the               unknowable in requirements engineering education. In Requirements
system purpose. The question of whether or not the content               Engineering Education and Training, 2008. REET ’08., pages 30–37,
of the project enhances or detracts from the mechanics of                Sept 2008.
                                                                     [4] B. Berenbach, D. Paulish, J. Kazmeier, and A. Rudorfer. Software &
the course material is hard to answer without back-up by                 Systems Requirements Engineering: In Practice. McGraw-Hill, Inc.,
significant empirical data. It was perceived that the students           2009.
were enjoying the topic of the problem domain but there might        [5] Emily C Bianchi. Entering adulthood in a recession tempers later
                                                                         narcissism. Psychological science, page 0956797614532818, 2014.
have been students who were negatively motivated by the topic        [6] Alistair Cockburn. Writing effective use cases. Pearson Education, 2001.
without providing feedback on that. Next time we will include        [7] Daniel Mendez Fernandez and Birgit Penzenstadler. Artefact-based
a question on this in the course evaluation survey.                      Requirements Engineering: The AMDiRE Approach. Requirements
                                                                         Engineering, 2014.
   Value-based Design: Sustainability is not a concern that          [8] B. Karlin, N. Davis, and R. Matthew. GRASP: Testing an Integrated Ap-
visibly showed up in the solutions other than in the goal                proach to Sustainability Education. Journal of Sustainability Education,
model and system vision. Environmental sustainability was                Spring 2013(Experiential Education, Part One), 2013.
                                                                     [9] Rita Kop. The challenges to connectivist learning on open online
used as example for a value that could be supported in value-            networks: Learning experiences during a massive open online course.
based design. While it was not the intention of the course to            The International Review of Research in Open and Distance Learning,
promote any political agenda, this was a value that students             Special Issue-Connectivism: Design and Delivery of Social Networked
                                                                         Learning, 12(3), 2011.
would generally be willing to accept and that was a little          [10] D. Mendez Fernandez, B. Penzenstadler, M. Kuhrmann, and M. Broy.
easier to grasp than a value like “fun”. The fact that the value         A Meta Model for Artefact-Orientation: Fundamentals and Lessons
was not made very explicit in the solutions shows that for               Learned in Requirements Engineering. In D. Petriu, N. Rouquette, and
                                                                         O. Haugen, editors, Proceedings of the 13th International Conference
practicing any kind of value-based design, this needs to be              on Model Driven Engineering Languages and Systems (Models), volume
put into an exercise more explicitly, for example by making              6395, pages 183–197. Springer-Verlag Berlin Heidelberg, 2010.
different teams design for different values and comparing the       [11] Andrew Monk and Steve Howard. Methods & tools: the rich picture: a
                                                                         tool for reasoning about work context. interactions, 5(2):21–30, 1998.
differences amongst their solutions.                                [12] Norman H Nie and Lutz Erbring. Internet and society. Stanford Institute
                                                                         for the Quantitative Study of Society, 2000.
                                                                    [13] Bashar Nuseibeh and Steve Easterbrook. Requirements engineering: a
            VI. C ONCLUSION & F UTURE W ORK                              roadmap. In Proceedings of the Conference on the Future of Software
                                                                         Engineering, pages 35–46. ACM, 2000.
   This paper reported on the experiences with using an online      [14] Birgit Penzenstadler and David Callele. Prototyping re experiments
course, the Citizen Muscle Boot Camp, under development at               in the classroom: An experience report. In Requirements Engineering
the Story of Stuff Project, as study system for the assignments          Education and Training (REET), 2010 5th International Workshop on,
                                                                         pages 7–16. IEEE, 2010.
in an undergraduate RE course at the University of California,      [15] Birgit Penzenstadler, Martin Mahaux, and Patrick Heymans. Univer-
Irvine. The Story of Stuff Project used the results as additional        sity Meets Industry: Calling in Real Stakeholders. In 26th IEEE-CS
input for the actual development of the CMB. The major                   Conference on Software Engineering Education and Training, 2013.
                                                                    [16] Didar Zowghi and Suresh Paryani. Teaching requirements engineering
lessons learned are that artifact-oriented RE works well to              through role playing: Lessons learnt. In Requirements Engineering
structure assignments, but also needs to be restricted to the            Conference, 2003. Proceedings. 11th IEEE International, pages 233–
given time frame of the course, that real-world systems do               241. IEEE, 2003.