Teaching Requirements Analysis: A Student Project Framework to Bridge the Gap between Business Analysis and Software Engineering Luisa Mich Dept. of Industrial Engineering University of Trento Trento, Italy {luisa.mich}@unitn.it Abstract—Teaching requirements analysis to computer science companies. All these initiatives confirm the vitality of the and information system students raises a number of challenges. discipline and a high interest for requirements from both One of the most critical is the gap between skills needed to deal with industry and academia. software requirements and those necessary to grasp the business As regards the educational contexts and challenges as a per problems. To bridge that gap in teaching requirements analysis students would have to carry out an assignment of analyzing se subject, requirements engineering education and training is requirements for a non-trivial, term-sized project. Here we analyze the focus of the REET (Requirements Engineering Education the gap and propose a framework for student projects which and Training) workshops (www.ics.uci.edu/~bpenzens/ integrates a model of the computer based system as a solution to 2014reet). Of the papers published in the CSEE&T proceedings business challenges into a template for a business requirements (Conference on Software Engineering Education and Training, document. The first model comes from information systems conferences.computer.org/cseet) only a limited number are literature and the second from an object oriented analysis approach about requirements − in average, one a year − and most of them for business analysis. A CASE (computer aided software analyze specific issues, e.g. security requirements [1] or the engineering) tool to support UML (unified modeling language) problem of prioritization of requirements [2]. Nakatani et al. modeling is also used and we give some guidelines to reduce risks of premature requirements modeling due to students’ tendency to [3], propose the design of a requirements engineering course start modeling, even if business analysis and requirements for senior engineers. A comprehensive survey of the current elicitation have just started. The proposed framework has been research on requirements engineering education is given by defined in many years of teaching and allowed to overcome some of Ouhbi et al. [4]. the limitations of a traditional UML-focused course. Student Almost all the methods of teaching computer science agree projects of different academic terms – in different courses and on the need to adopt an activity based approach, that is, what in different degrees – showed improved requirements models and [5] is called an ‘active-learning-based teaching model’. In better comprehension of the role of requirements in the later terms. requirements engineering courses, it also implies the definition Moreover, the students appeared to have greater interest and motivation towards this area of software engineering. of a suitable student project. Many authors underline that a real Index Terms—requirements elicitation, UML, business object- industrial project would offer the best educational context. oriented modeling, business requirements However, didactic and organizational constraints do not always allow proposing this kind of project in university courses. I. INTRODUCTION Other educational approaches, e.g., the one described by Fernandes et al. [6], introduce a curriculum for software The term ‘software engineering’ dates back some forty development professionals with experience in developing real years ago, and ‘requirements engineering’ is more recent, but software solutions. But this is not the case for university for establishing a discipline in a university degree curriculum it students. Even students of a computer science degree do not could be a short time. always have experience in real projects. Another problem in In industry, even if many studies have reported the critical teaching requirements analysis is due to a low interest in the role of requirements for the success of computer based systems, subject: real projects require a comprehension of the company requirements analysis and modeling are not always part of the or organization domain and of their business challenges. For software development projects (see, e.g. the Standish-Group students in computer science and information systems, these reports http://blog.standishgroup.com). Dedicated international are – for different reasons – not primary subjects of interest. conferences, such as the Requirements Engineering (RE) The purpose of this paper is to report an approach for series, which started in 1993 (http://requirements- student projects which has been defined in about twenty years engineering.org), or the REFSQ working conferences of teaching in university courses to both software engineering (Requirements Engineering: Foundation for Software Quality, and information systems students. The approach is based on a www.refsq.org), among others, do include in their programs framework that allowed to overcome some of the limitations of industrial tracks and invited speeches of representative of a traditional UML (unified modeling language) focused course. The project foresees the accomplishment of business and Strengths Weaknesses requirements analysis activities for a quasi-real project, that is Multidisciplinary field Image problems Promote problem solving Time constraints for a project in a real context, whose characteristics satisfy time (computational thinking), Students lack of interest and other constraints of an academic course. Students groups and group work Toy projects have to realize and document the project following a template Opportunities Threats which integrates a model of the computer based system as a Interest of companies for Not dedicated course solution of business problems into a structured business business analysts skills Misconception of the field Integration of real projects Lack of books for educators requirements document. The first model comes from Coordination with other courses Tool driven analysis information systems literature [7] and the second from an object oriented analysis approach for business analysis [8]. Figure 1. SWOT matrix for teaching requirements analysis In the rest of this paper, Section II describes the main This long-standing prejudice has been widely investigated challenges in teaching requirements engineering. Section III [12]; authors in [5] underline that to overcome it, students have presents the template for a student project that allows to be taught what computer science is, its nature and definition. addressing such challenges, gives some remarks and guidelines An analogous factor that negatively impacts the quality of to apply the project framework and a preliminary validation requirements engineering courses is the tendency of the referring to the guidelines illustrated in [4]. Section IV lecturers themselves to emphasize specification on analysis, concludes the paper with an outlook on open questions and probably for the same reasons highlighted in industrial projects future work. [9]. Also, in the author’s experience, computer scientists II. CHALLENGES IN TEACHING REQUIREMENTS ANALYSIS somehow consider functional specification and software development as a kind of ‘real’ computer science, under- Teaching requirements analysis is challenging in many estimating business requirements analysis. ways. The main positive and negative aspects, some of which Another problem arises when looking for textbooks have been mentioned in the introduction, can be illustrated with dedicated to ‘Didactics of requirements engineering’, or a SWOT (Strengths, Weaknesses, Opportunities, and Threats) ‘Didactics of software engineering’. You will not find many matrix (Fig. 1). As is often the case, some of the strengths are references and there are not many for the didactics of computer such only if accepted as stimuli by the lecturer. science either. Lecturers can design their requirements courses Firstly, requirements analysis is a multidisciplinary activity according to the corresponding subset of the software that employs a variety of methods and techniques at different engineering model curricula, or to syllabus of certification that stages of development of computer based systems. Teaching focus on requirements (e.g., the Certified Professional for requirements engineering demands further efforts to take into Requirements Engineering, www.ireb.org). However, as account the business analyst’s and the software engineer’s curricula, they (have to) describe the ‘what’ – the content to be points of views. In particular, the scope of a project can be taught – and not much is said on the ‘how’, that is on the correctly defined only if the business goals and challenges have didactic methods more appropriate to teach that content. been identified and analyzed and this requires skills beyond Finally, when teaching requirements analysis, the choice of the requirements modeling and specification [8], [9]. A modeling language is almost straightforward if you adopt the multidisciplinary subject naturally induces to address problems de-facto standard, UML (http://www.uml.org). The problem is in a rational way, promoting computational thinking [10] and that students of information systems often have learned and group work to exploit cooperation among people with different applied other languages to model business procedures and expertise [11]. goals (e.g., the BPMN, Business Process Model and Notation, Another challenge in teaching requirements analysis is its http://www.bpmn.org). A seamless approach would suggest recent development as an autonomous research and educational using UML models also for those modeling activities, a area, at least if compared to other areas of computer sciences. solution that depends on an agreement with other lectures. This implies that many graduation programs do not include a UML diagrams can be realized with automatic tools: there are dedicated requirements analysis course. Being part of the many of them and the choice of the one to be adopted for a software or information systems development process, course is not simple. Beside technical and cost factors, there are requirements engineering is often taught (only) in those features that force the students to follow what could be called a courses. In this way, usually a limited number of hours can be depth-first instead of a breadth-first modeling approach. For dedicated to requirements analysis, with the realization, if any, example, one of the most common of such features is related to of toy projects. In turn, this fact sometimes implies that the the opening of a form suggesting adding characteristics to a assigned textbooks cover the information systems or software class or to a use-case at the moment of their very first creation. engineering content, whereas requirements are a small fraction The form compels the students to focus on details, such as, for of the content. Besides, while for students of computer science example, values of the attributes for a class, before the overall degrees requirements are perceived as not enough ‘computer analysis of the class model has been completed with all the science’, for students of information systems, requirements are classes. At the same time, focusing on UML, teachers do not too much ‘computer science’. These views are some of the always exploit the problem-solving nature of requirements most critical experienced in about twenty years of teaching and analysis and do start introducing UML models for small could be due to the common view of the field as programming. projects to explain the notation and the semantic of the language. However, such models are of little interest to and in particular on the need to first analyze a problem from the students, as it is not easy to be passionate, e.g. to library point of view of all the stakeholders. That in turn, implies a lending systems. focus on requirements elicitation and analysis in about half of Focusing on opportunities, it is important to underline that the course, assuming that it is easier to learn, apply and validate companies look for business and requirements analysts other UML models (requirement specification and validation) (http://www.linkedin.com/job/q-business-analyst-jobs). As than to learn a structured way to effectively define the scope of student projects require limited tools and resources, they can be a project and the requirements to be fulfilled. This approach useful to experience such roles. Also, the need to integrate requires soft skills that are very much useful in real projects: expertise in different areas could trigger shared lectures and working in group, properly interacting with users and owners projects with other courses. of the system to be developed, applying different techniques for fact-findings. In this context, the didactic objectives of the III. DESIGNING A PROJECT FOR TEACHING REQUIREMENTS student projects were: ANALYSIS • introducing the role of the computer based systems to solve business problems or suggest business strategies; A. The Proposed Approach • integrating organizational issues in the analysis of the To address the issues in the SWOT matrix for a university problem to answer questions like, e.g. “who has to course in requirements analysis would require the design of the cooperate to gather the data for the system to be course taking into account a large number of factors and developed?”; constraints. Among them, the syllabus of the degree, available • understanding the role of the requirements analysis in human resources, time available for the course, the kind of the process of the system development, including classroom, hardware and software available, technical support, contractual impacts; topics to be covered, students’ previous knowledge on related • identifying and managing conflicting requirements; topics, etc. In this paper we will concentrate on the problem of the student project: which project can be realized by students to • using UML since the very first step of requirements modeling, also for business processes and actors; and motivate them and to teach a structured, efficient, and systematic way to identify and model business and high level • documenting requirements as a project specification requirements. In this section we propose a framework for a and their validation. student project that has been defined adapting it year after year To this end, we defined a framework that integrates a model according to the results of its implementation in a number of of the computer based system as a solution of ‘business university courses. In particular, in teaching requirements challenges’ into a template for a business requirements analysis to students of information systems, software document. engineering and information systems design. These courses The first model (Fig. 2) was introduced by Laudon and were part of different kinds of degree of an Italian university, at Laudon [7] and is almost unknown to requirements engineers. the bachelor and master level, in the area of computer science However, its efficacy is validated by the high number of and economics as well; the last one was though in an editions of their information systems books and of courses interdisciplinary degree named ‘Net economy’. adopting them. It was chosen from existing socio-technical These courses had some common characteristics: information models because it offers some interesting • small classes: from 9 to 20 students; advantages (see section III B)). The L&L model defines and, more importantly, graphically represents the information • availability of a computer laboratory, with no more system as “an organizational and managerial solution based on than two students per personal computer; information technology, to a challenge posed by the • support of a tutor for a part of the laboratory activities environment” [7]. In this way, it can be used for any kind of and for the evaluation of the projects; project (size, domain, sector), forcing the adoption of a • support of an e-learning platform to publish class and problem solving approach (starting from the business projects documents (https://comunitaonline.unitn.it); challenges, first box in Fig. 2), taking into account the • presence of international students: an average of 2 to 4 management decisions and goals (actual or needed to address students per year come from other European and non the identified challenges), identifying the main technologies for European countries; the project and addressing organizational issues relevant for the • one term course of 30 to 40 hours. project (stakeholders to be involved). The business solutions Many of these characteristics positively contributed to the component compels evaluation of the impact of the proposed adoption of an activity based approach in which students have system in terms of indexes or any kind of output useful to to work in group on a small scale real project. Other factors check if the expected goals or returns have been reached. were in place only for some of the courses; in particular, after The second model has been adapted from a template the last reform of the Italian university curricula, students of the introduced by Podeswa [8] as part of his approach, BOOM, or master courses come not only from a computer sciences business object-oriented modeling. BOOM applies UML to bachelors (first degree), but also from degrees in the area of business analysis underlining the role of business use-cases to business and economics. The main goal for all these courses define the scope of a project and its stakeholders, both internal was to focus on the problem-solving nature of requirements, and external to the company. Figure 2. Information System model [6] The BOOM template of the business requirements quite intuitive; it scales well, as it can be applied to small document (BRD) implements best practices and guidelines of projects and to large ones; it takes into account all the non- the author’s experience in his company. technological aspects relevant for any real project; it supports For the student projects, an adapted version of the BRD was interactions with stakeholders, internal and external to the defined extracting issues relevant for the requirements company and among the students working on the project; it can engineering steps and integrating the L&L model. Table I gives be applied in an incremental way, starting with knowledge and the revised BDR used for the student projects of the 2009-2010 assumptions available in the very initial steps of the project, academic year; each group had to complete the requirements and adding to it and revising it whenever useful. To students analysis for a given module of a museum information system with knowledge in economics and management, the model is a (for other courses, the modules were for the information system natural bridge towards requirements analysis; for those in of an international sport event, the Universiadi of Trentino; the computer sciences, it suggests a wider context for their Unisport initiative of the University of Trento; the e-commerce projects. Another advantage of the L&L model is that it made it modules for profit and non-profit cultural organizations, and possible to work on the project since the first meeting of the many more). A short problem statement and instructions for the course. project are given in the first part of the document (text The BOOM BRD was first adopted in 2005-2006, but a highlighted in grey was in Italian). number of improvements and changes have been made in the To draw and document object-oriented models, the first following years. In particular, the L&L model was added as a projects were supported by Rational Rose, a tool that was task of the ‘Executive summary’ (Table I); business use cases available on a CDRom included in some of the widely adopted introduced by BOOM, helped to deal with stakeholders and UML text-books. Later, given that many students owned a with actors relevant for the project. Parts to be completed were personal computer or a laptop, students were taught a variety of reduced, making it mandatory for the students to complete only factors to take into account in choosing this kind of tools and some of them (in bold in Table I). The results improved, then they could use the one they identified as the best solution. possibly because the students felt the need to realize and But the main didactical decision was to introduce the use of the document some of the activities as useful for the project and tool only after the L&L model was completed and a not (only) for the marks. In some cases, students completed preliminary set of requirements were elicited. That decision also non mandatory tasks, as for example state diagrams to reduced the risks of premature requirements modeling due to describe critical use-cases. The RACI (responsible accountable students’ tendency to start modeling, even if business analysis consulted informed) chart was useful to identify their roles in and requirements elicitation have just started. It also increased the project. Risk analysis, cost-benefit, and timetable supported the quality of the requirements modeling and that of the BRDs. the multi-disciplinary approach: computer sciences students B. Remarks and Guidelines understood that economics skills are useful for requirements The L&L model was used for the student projects since the engineering, suggesting to forming groups whenever possible early ‘90s: it was the first model students had to complete and with students of both the economics and IT areas. Also, the revise during the project. The model shows a number of difference between the role of the business or IT analyst and characteristics that makes it an efficacious educational tool: it is that of a requirements analyst was better understood. TABLE I. THE TEMPLATE FOR THE STUDENT PROJECTS OF THE 2009-2010 companies. At first, there was only slight involvement of the ACADEMIC YEAR ADAPTED FROM THE BRD PROPOSED IN [8] company in the projects, by an initial presentation by a Goal of the project (Problem statement) company representative and final presentation of results by Each group has to analyze the requirements for an information system students. Later-on, there were more and more stakeholder module for the new museum MUSE (http://www.muse2012.eu/), now Museo Tridentino di Scienze Naturali (http://www.mtsn.tn.it/). The interviews with real stakeholders from the organization. For module has to be accessible from the website of the museum. example, for the problem statement in Table I, student projects The project has to be completed using the BRD template of BOOM. were defined for a natural sciences museum for which a new Some parts of the template are mandatory or have to be adapted (those in building and new presentations were in construction. An expert bold). of the museum interacted with the teacher to simulate an Version Control (add: name of the module, name of the students) interview to gather the initial requirements for a number of Revision History RACI Chart modules; other stakeholders were contacted by students Executive Summary (add the Laudon and Laudon model) working in groups of two. The final BRD was then presented Overview and discussed with another manager of the museum in a Background meeting that also allowed highlighting the logical architecture Objectives Requirements of a system integrating the projects and the impacts of the Proposed Strategy proposed modules. Besides, the priority of the modules of the Next Steps student projects was discussed with the manager, comparing Scope (add the scope of the module vs the scope of the information them on the basis of costs and other resource constraints in the system of the organization) Included in Scope context of the museum strategy (for example, the online ticket Excluded from Scope selling module was given a lower priority than the online event Constraints management). The same approach – students completing the Impact of Proposed Changes activities included in the template, initial interaction and final Risk Analysis Technological Risks discussion with representatives of the companies or Skills Risks organizations – has been applied in other projects in which Political Risks requirements for the same service – an e-commerce module – Business Risks had to be analysed for different cultural organizations, as for Requirements Risks Other example, a wine road (www.mtvtrentinoaltoadige.it), a Jazz Business Case festival (www.fiemmeskijazz.com), a contemporary art Cost/Benefit Analysis, ROI, etc. museum (MART, www.mart.trento.it), a film festival Timetable (www.trentofestival.it). In the last course, student projects were Business Use Cases Business Use-Case Diagrams related to a new initiative of the University of Trento, Unisport Business Use-Case Descriptions (text and/or activity diagram) (www.unisport.tn.it). The proposed approach turned out to be Actors successful: for example, the results of such course projects Workers were then used by the software development company Business Actors Other Systems ultimately in charge of projects implementation as input for the Role Map design and implementation of the Unisport information system. User Requirements System Use-Case Diagrams C. Preliminary Validation System Use-Case Descriptions For a preliminary and external validation of the proposed State Machine Diagrams Nonfunctional Requirements (highlight the most relevant) framework we can use the most important recommendations Performance Requirements for teaching requirements described in Ouhbi et al. [4]: Stress Requirements 1) Teach how to define the scope of the problem and Response-Time Requirements Throughput Requirements avoid general and vague specifications. Usability Requirements 2) Show how to select and use a requirements engineering Security Requirements tool. Volume and Storage Requirements 3) Promote activities in requirements analysis and Configuration Requirements Compatibility Requirements modeling in addition to requirements management and Reliability Requirements introduce the concept of prototyping in the course. Backup/Recovery Requirements 4) Involve students in industrial projects (…). Instructors Training Requirements could also invite industry practitioners to present real Business Rules State Requirements projects and to describe their accumulated industrial Testing State experience. Disabled State 5) Have the ability, skills, and strategies needed to align Static Model requirements engineering courses with contemporary Class Diagrams: Entity Classes Entity Class Documentation (…) global software development (GSD) conditions. In recent years, thanks to the project template, projects become more and more related to real organizations or 6) Familiarize students with approaches to problem requirements analysis for programming courses); some of the solving, development methodologies, and development BDRs were adopted by the companies and used for in-company tools. thesis projects. Other positive outcomes were: a higher number 7) Use mobile devices as teaching tools. (…) m-learning of students completing the project and the exam in the first (learning with mobile devices) promises a continued exam session and better quality of the models [13]. When the extension toward ‘‘anywhere, anytime’’ learning. course was not mandatory, the number of students decreased, 8) Deliver the courses in an interactive classroom: The but those in the course were more capable (higher marks and students can share a virtual whiteboard, electronic more skilled in IT) and motivated. From the students textbook, and data over a networked environment. questionnaires this phenomenon (less, but more capable Taking into account that the proposed framework is for the students) seems correlate with a higher difficulty to work on a student projects and not for the entire course, all the project during the term. recommendations were satisfied in our courses, except for number 8. In particular, the document template strongly ACKNOWLEDGMENT support recommendation n°.1, 3 and 6.; the choice of the tool The author would like to thank all the tutors who by the students in their project forced them to take into account cooperated in many ways to the student projects. Many thanks many of the parameters characterizing the alternatives also to Nadzeya Kiyavitskaya, Barbara Froner and Daniel (recommendation n°.2); prototypes were used mainly to Berry for their precious suggestions. Thanks to the anonymous identify requirements for human-computer interfaces (n°.3); the reviewers for their thoughtful reflections and suggestions. quasi-real projects could be further exploited in longer courses and in any case, it must be reminded that it takes a lot of efforts REFERENCES to involve local organizations, experts and managers for the [1] N.R. Mead, and E.D. Hough, “Security requirements projects (recommendation n°.4); GSD conditions (n°.5) were engineering for software systems: case studies in support of only partially in place whenever interfaces were relevant for software engineering education,” in Proc. 19th Conf. on the project and emerged thanks to the international students CSEE&T, IEEE CS, Washington, DC, USA, 2006, pp. 149-158. (sometimes projects were completed by students staying in [2] D N. Port, B.W. Boehm, and D. Klappholz, “Making different countries). The seventh recommendation has not been requirements prioritization a priority,” in Proc. 21st CSEE&T IEEE CS, Washington, DC, USA, 2008, pp. 250-261. experimented yet. Finally, the last one (n°.8) was partially fulfilled using the e-learning system (comunitaonline). [3] T. Nakatani, T. Tsumaki, and T. Tamai “Requirements engineering education for senior engineers: Course design and IV. CONCLUSION its evaluation,” 5th Int. Work. REET, 2010, pp. 26-35. [4] S. Ouhbi, A. Idri, Fernández-Alemán, L. José, and A. Toval, The ability to manage requirements from a software “Requirements engineering education: a systematic mapping engineering point of view as well as to grasp the business study,” Req. Eng., Springer, London, 2013, pp. 1-20. problems and strategies is critical for a requirements engineer. [5] O. Hazzan, T. Lapidot, and N. Ragonis, Guide to teaching To address challenges in teaching requirements analysis we Computer Science, Springer, 2011. proposed a framework – a template and guidelines – for student [6] M. Fernandes, R. J. Machado, and S.B. Seidman. “A projects that offers a number of interesting insights. Threats for requirements engineering and management training course for the results are related to two main points. Firstly, reporting the software development professionals,” in Proc. 22nd CSEE&T, author experience, mainly in an Italian university, all the IEEE CS, Washington, DC, USA, 2009, pp. 20-25. following remarks embodies open questions and should be [7] K.C. Laudon, and J.P. Laudon, Management Information further investigates in a future work. Then, the small class sizes Systems. Organizational and technology in the networked and the other characteristics described in Section III (apart enterprise, Prentice-Hall, 1999. from the last one) correspond to ideal conditions that are not [8] H. Podeswa, UML for the IT business analyst. A practical guide always in place. The design (as lecturer) and realisation of non- to object-oriented requirements gathering Thomson, 2005. trivial term-sizes student projects for real companies or [9] PM Solution, Strategies for project recovery, 2011, organizations based on the proposed framework allowed www.pmsolutions.com/resources/view/strategies-for-project- exploiting and addressing, albeit to a different extent, the issues recovery summarised in (Fig. 1). Having students with different skills [10] J.M. Wing, “Computational thinking,” Comm. of the ACM, working in group helped them to recognize their respective 2006, 49 (3): 33-35. roles in the analysis of the problem and in turn, the relevance of [11] L. Mamykina, L. Candy, and E. Edmonds, “Collaborative other disciplines. Students were highly motivated to realize a creativity”, Comm. of the ACM, 2002, 45(10): 96–99. good project thanks to the possibility to communicate with real [12] P.J. Denning, and A. McGettrick, “Recentering computer business stakeholders and to validate their BRDs with them. science”, Comm. of the ACM, 2005, 48 (11): 15-19. The presentation and discussion of the requirements documents [13] N. Kiyavitskaya, N. Zeni, L. Mich, and J. Mylopoulos, to company representatives is also a good introduction to “Experimenting with linguistic tools for conceptual modelling: business areas and gives an understanding of how to work with quality of the models and critical features”, in Proc. 9th Int. Conf. real customers. In some cases, the effect was prolonged in other NLDB 2004, Springer, 2004, pp. 135-146. courses of the graduation or master program (e.g., using