Tutorials

A series of tutorials will be held in conjunction with RE'17 to develop skills in and advance awareness of requirements engineering practices. Tutorials will be held before the main conference on Monday-Tuesday, September 4-5, 2017.

Monday, September 04, 2017
T01 User Story Best Practices: Requirements in Agile Context (Full-day)
T07 Writing requirements documents with goals: the KAOS/Objectiver approach (Full-day)
T08 Agile Business Rule Development (Full-day) [CANCELLED]
T10 Writing Good Requirements (Full-day)
Tuesday, September 05, 2017
T02 Blockchain Requirements Engineering: Research Challenges and Opportunities (Half-day)
T03 From Mining to Planning – Next Generation of Release Decision Making for Software Products (Full-day)
T04 Software Reuse and Reusability based on Requirements: Product Lines, Cases and Feature-Similarity Models (Half-day)
T05 Risk Assessment using Early Requirements Models: A Guided Tour (Half-day)
T06 Evaluating Evolving Requirements Models with URN: Features, Goals, and Scenarios (Full-day)
T09 Eliciting Unstated Requirements (Half-day)

T01 - User Story Best Practices: Requirements in Agile Context

The widespread adoption of agile methods like Scrum, Kanban and XP has lead to the rise of user stories in industry. Although 45% of practitioners employ user stories for requirements gathering (Kassab, 2015), many still struggle with effectively applying this method in practice. This is signified by the high degree of errors in existing user stories: almost 50% (Lucassen et al., 2016). Participate in this tutorial to learn about innovative theories, methods and tools based on best practices among 20+ companies to support you in creating better user stories. In this tutorial, you will learn:

  • the basics of creating user stories
  • effectively embedding user stories in existing agile development processes
  • improving user story quality with the Quality User Story Framework and AQUSA tool
  • consistency checking with Visual Narrator
  • insight in best practices of 20+ software companies employing user stories

At the end of this tutorial you will have the knowledge and resources to start applying user stories in your software development projects. Participants are encouraged to bring existing sets of user stories available from projects they or someone else in their organization participated in. Please contact the tutorial presenters up-front with these materials for entering in the tooling: g.lucassen@uu.nl.

Date
Monday, September 04, 2017 (Full-day)
Presenters
Garm Lucassen
Utrecht University, The Netherlands
Garm Lucassen, MSc is a PhD student at the Centre for Organisation and Information, Utrecht University. His PhD focuses on methods and tools for supporting and improving user story practice. His work on this topic includes the creation of a quality framework, the AQUSA tool and 4 validating experiments in industry. Next to this, he is the coordinator and teacher of the Software Product Management course for professionals at Utrecht University and is member of the extended board of the International Software Product Management Association.
Sjaak Brinkkemper
Utrecht University, The Netherlands
Prof. Sjaak Brinkkemper is full professor of Software Production at the Department of Information and Computing Sciences of Utrecht University, the Netherlands. He leads a group of about twenty-five researchers specialized in product software development and entrepreneurship. The main research themes of the group are methodology of software production, implementation and adoption, and techno-economic aspects of the software industry. Brinkkemper has published about 10 books and over 170 papers.
Back to overiew

T02 - Blockchain Requirements Engineering: Research Challenges and Opportunities

The blockchain is the underlying technology behind Bitcoin and it is finding its way in the development of a variety of new software systems. With its innovative approach to decentralized computation and assets management, the blockchain has not only potential to solve a number of system scalability, reliability, security, and privacy issues, but also to revolutionize software systems development in a way similar to what the Internet did. For example, the integration of the blockchain and the Internet of Things (IoT) provides a promising new research and development direction that has generated significant research funding and venture capital investments. The blockchain is not just a set of tools. The blockchain creates a new way of thinking about problem solutions and system design. In particular, it creates a number of new, very difficult, requirements engineering challenges. In this tutorial, we present the background on the blockchain technology; analysis of the current blockchain research and development trends; discussion of the requirements engineering challenges and opportunities; and a hands-on example that integrates all the presented concepts. The objective of the tutorial is to enable participants to critically analyze applicability of the blockchain, identify the appropriate requirements engineering opportunities, and to envision novel types of solutions using the blockchain.

Date
Tuesday, September 05, 2017 (Half-day)
Presenter
Davor Svetinovic
Masdar Institute of Science and Technology, Abu Dhabi, UAE
Davor Svetinovic is an Associate Professor at Masdar Institute of Science and Technology, UAE. His primary areas of expertise are software systems engineering and systems security. He received his PhD (2006) and MMath (2002) degrees in Computer Science from University of Waterloo, Canada. Previously he worked as a visiting professor and research affiliate at the Massachusetts Institute of Technology (MIT); and as a postdoctoral researcher at Lero - the Irish Software Engineering Center, Ireland, and Vienna University of Technology, Austria. He leads the Strategic Requirements and Systems Security Group (SRSSG), and he has extensive experience working on complex multi-disciplinary research projects. He has published over 50 papers in leading journals and conferences. His current research interests include software requirements engineering, systems security and privacy, blockchain engineering, smart grids energy trading, and cryptocurrencies. He is a Senior Member of the IEEE.
Back to overiew

T03 - From Mining to Planning – Next Generation of Release Decision Making for Software Products

The rapid growth of app stores and repositories has led to an increasing number of publications in app store analysis through data mining. A big portion of these studies is concerned with analyzing and prioritizing user requirements and planning for app releases. In this tutorial, we provide an overview of the state of the art of release planning and state of the art of app store mining and discuss the opportunities and challenges that researchers face in requirement engineering of mobile apps. Later, within an interactive session, we mine two exclusively new data sets of mobile apps and demonstrate the real implications of the state of the art studies we summarized. This tutorial fits all the students, faculties and practitioners who wish to get familiar with data analytics for release planning and app store mining.

Website
From Mining to Planning – Next Generation of Release Decision Making for Software Products
Date
Tuesday, September 05, 2017 (Full-day)
Presenters
Maleknaz Nayebi
University of Calgary, Canada
Maleknaz Nayebi is a PhD candidate at the Software Engineering Decision Support lab at University of Calgary in Canada. Her main research interests are in mining software repositories, release engineering, software engineering of mobile apps, open innovation and empirical software engineering.
Walid Maalej
University of Hamburg, Germany
Walid Maalej is a professor of informatics at the University of Hamburg, where he leads the mobile service and software engineering group. He received his Ph.D. and M.Sc. from the Technische Universitaet Muenchen (TUM). Walid performs active research on requirement engineering and mining of mobile applications. Walid is the industry track co-chair of RE 2017 and the PC co-chair of RE 2018.
Guenther Ruhe
University of Calgary, Canada
Guenther Ruhe holds an Industrial Research Chair in Software Engineering at University of Calgary. Dr. Ruhe received a doctorate habil. nat. degree (Computer Science) from University of Kaiserslautern. He was the deputy director of the Fraunhofer Institute for Experimental Software Engineering Fh IESE. Since 2016, he serves as the Editor in Chief of the journal of Information and Software Technology, published by Elsevier. His main research interests are in the areas of Product Release Planning, Software Project Management, Decision Support, Data Analytics, Empirical Software Engineering as well as Search-based Software Engineering. He is the General chair of RE 2018.
Back to overiew

T04 - Software Reuse and Reusability based on Requirements: Product Lines, Cases and Feature-Similarity Models

Software reuse and reusability range from operational, ad-hoc and short-term to strategic, planned and long-term. Often the focus of attention is just on code or low-level design. This tutorial focuses on effective requirements reuse to reduce the effort in developing requirements whilst maintaining the level of precision and quality and risk mitigation that has been worked through on previous projects. It presents and compares two different requirements-led approaches. The first approach deals with requirements reuse and reusability in the context of product line engineering and platform eco-system development. The second approach deals with requirements reuse and reusability in the context of case-based reasoning. Both approaches have different key properties and trade-offs between the costs of making software artefacts reusable and the benefits of reusing them. To aid large-scale development we have proposed a Feature-Similarity Model, which draws on both approaches to facilitate discovering requirements relationships using similarity metrics. A Feature-Similarity Model also helps with the evolution of a product line, since new requirements can be introduced first into a case base and then gradually included into a product line representation. At the end of this tutorial, participants will be able to:

  • understand strategic versus operational reuse and reusability;
  • debate trade-offs between the costs and benefits of reuse and reusability;
  • describe two different approaches to requirements-led strategic requirements reuse and reusability: in software product-line engineering and using case-based reasoning;
  • explain a new Feature-Similarity Model, which draws on both approaches to facilitate managing software reuse in very large scale systems with commonality and variability.

Date
Tuesday, September 05, 2017 (Half-day)
Presenters
Hermann Kaindl
TU Wien, Vienna, Austria
Hermann Kaindl joined the Institute of Computer Technology at TU Wien in Vienna, Austria, in early 2003 as a full professor. Prior to moving to academia, he was a senior consultant with the division of program and systems engineering at Siemens Austria. There he has gained more than 24 years of industrial experience in software development and human-computer interaction. He has published five books and more than 220 papers in refereed journals, books and conference proceedings. He is a Senior Member of the IEEE and a Distinguished Scientist Member of the ACM, and he is on the executive board of the Austrian Society for Artificial Intelligence. He has previously run more than 60 tutorials.
Mike Mannion
Glasgow Caledonian University, Glasgow, UK
Mike Mannion is Assistant Vice-Principal (Academic) and Professor of Computing at Glasgow Caledonian University, Glasgow, Scotland, UK. He has several years' software engineering industrial experience and his research interests include product-line engineering, software engineering and engineering education. He is a Chartered Engineer, and a member of the British Computer Society, IEEE and ACM. He has published more than 50 papers and delivered more than 20 tutorials.
Back to overiew

T05 - Risk Assessment using Early Requirements Models: A Guided Tour

Risk assessment is decisive in making the right choices at the right moment. As software complexity grows beyond the knowledge boundary of a stakeholder, it is important to handle the uncertainty early, before it starts to bite. Early requirements models, especially goal-oriented and problem oriented ones, are suitable means to document what we know about the stakeholders, the system, and its environment. What is less known is how to relate them quantitatively, despite partial knowledge of the world. In this guided tour, I will present a new outlook of risk assessment from Jackson's Goal Behaviour Models, supported by the latest Risk Explorer tool we developed at the Open University. This tour will not take longer than half a day, but it will take examples from the domains of security, privacy, and mobile app development.

Date
Tuesday, September 05, 2017 (Half-day)
Presenter
Yijun Yu
The Open University, Milton Keynes, UK
Dr. Yijun Yu is a Senior Lecturer in Computing at The Open University, UK. He is interested in developing automated, efficient and scalable software techniques and tools to better support human activities in software engineering. He has a vision to improve aviation security through cloud computing and blockchains by live streaming blackboxes after the missing MH370 flight, which featured in interviews with BBC Radio 4 and BBC World Services aired in April 2014, and receives Microsoft Azure Award (2017). His research on requirements-driven adaptation receives a 10 Year Most Influential Paper award (CASCON’16), 4 Best Paper awards (iRENIC’16, IEEE TrustCom'14, ACM EICS'13), 3 Distinguished Paper awards (IEEE RE'11, BCS'08, ACM SigSoft ASE'07), and a Best Tool Demo Paper (RE’13) award. He serves as an Associate Editor of the Software Quality Journal, Secretary of BCS Specialist Group on Requirements Engineering, a PC member of international conferences on Software Engineering (FSE, ICSE), Requirements Engineering (RE, CAiSE), Software Maintenance and Evolution (ICSME, CSMR, SANER, ICPC), Security (ESSoS), and World Forum on Internet of Things (WF-IoT). He managed knowledge transfer projects with Huawei, IBM, CA, RealTelekom, and is a co-investigator on research projects including Adaptive Security and Privacy (ERC Adv. Grant, 2012-2018), and Adaptive Information Systems (QNRF, 2012-2016), Lifelong Security Engineering for Evolving Systems (EU FP7, 2009-2012), and Usable Privacy for Mobile Apps (Microsoft SEIF, 2012).
Back to overiew

T06 - Evaluating Evolving Requirements Models with URN: Features, Goals, and Scenarios

The User Requirements Notation (URN), standardized by ITU-T in 2008 with extensive improvements in 2012, offers two complementary views for modeling requirements including features and business processes: GRL (the Goal-oriented Requirement Language) for stakeholder goals, features, and indicators, and UCM (Use Case Maps) for workflows, scenarios, and high-level architectures. This tutorial first gives an introduction to the basic concepts and notations of URN, together with a comprehensive analysis approach to requirements modeling, combining both views. Illustrative examples are demonstrated with jUCMNav, a mature Eclipse-based environment that supports URN and combined goal-scenario analysis capabilities.

The tutorial then focuses on a novel and recent contribution to URN that enables the evaluation of changing URN models over time. Based on the specification of expected changes to URN model elements for concrete date ranges, the URN model may be analyzed for a specific date in the future (or in the past) or for a period of time covering dates of interest. These powerful modeling mechanisms enable advanced and yet concise specification of requirements in a wide range of application domains.

Throughout the tutorial, participants will do exercises to deepen their understanding of URN.

Date
Tuesday, September 05, 2017 (Full-day)
Presenter
Gunter Mussbacher
McGill University, Canada
Gunter Mussbacher is an Assistant Professor at McGill University, with 100+ publications related to his research areas: model-driven requirements engineering with goals, features and scenarios; modularity in modeling; concern-driven development and reuse; and sustainability engineering. Gunter co-edited with Daniel Amyot all versions of the URN standard, and contributes regularly to jUCMNav (an open-source Eclipse plug-in for URN modeling). Gunter is an organizer and PC member for numerous conferences and workshops (e.g., RE, MODELS, SLE, MoDRE, MOMO, MiSE, SAM, SDL Forum) and has given many tutorials and invited talks on various topics related to URN at international conferences, at departmental seminars, and in government. For more details see http://www.ece.mcgill.ca/~gmussb1/.
Back to overiew

T07 - Writing requirements documents with goals: the KAOS/Objectiver approach

The KAOS approach is nowadays not only one of the most often taught RE approaches in universities and one of the most referred approaches in RE research papers, it has also been used successfully for many years in many industrial cases. The tutorial aims at providing the audience with the background, practice and know-how to write top-quality requirements documents with KAOS/Objectiver.

Date
Monday, September 04, 2017 (Full-day)
Presenter
Robert Darimont
Respect-IT, Belgium
Robert Darimont is the CEO of Respect-IT, a Belgian company providing consultancy services in Requirements Engineering and editor of the Objectiver tool. Robert Darimont has personally used the KAOS approach for more than 10 years to produce high-quality requirements documents in various business domains. Robert Darimont got a PhD on KAOS at the University of Louvain (in the Prof van Lamsweerde team).
Back to overiew

T09 - Eliciting Unstated Requirements

Stakeholders often have requirements that they aren’t aware of. Uncovering them can be quite challenging and involves a way of thinking not found in more traditional elicitation approaches. It requires probing interviews and expanded use of context information to break through the confines of what the requirements engineer typically achieves with a specification-driven process. It requires a method that transforms stakeholders’ tacit knowledge into explicit statements so that insightful and innovative requirements can emerge.

The Elicitation of Unstated Requirements at Scale (EURS) research team at the Software Engineering Institute developed and validated a method for determining the unstated needs of the varied stakeholders typical of today’s large, diverse programs (e.g., sociotechnical ecosystems). This method, called “KJ+,” is scalable to address the needs of multiple categories of stakeholders; usable by a diverse, non-collocated team of requirements analysts; and results in a more complete set of requirements as the basis for subsequent system design, implementation, and continued sustainment.

The tutorial will include presentation of the traditional KJ method for eliciting unstated user needs, as well as the extensions made to allow KJ to be used in a virtual environment (KJ+). The results of a KJ+ case study conducted on a real project, will also be presented.

Date
Tuesday, September 05, 2017 (Half-day)
Presenter
Nancy Mead
Software Engineering Institute and Carnegie Mellon University, USA
Dr. Nancy R. Mead is an SEI Fellow and Principal Researcher at the Software Engineering Institute (SEI), and also an Adjunct Professor of Software Engineering at Carnegie Mellon University. Her research areas are security requirements engineering and software assurance curricula. The Nancy Mead Award for Excellence in Software Engineering Education is named for her. Mead has more than 150 publications and invited presentations. She is a Fellow of the IEEE, a Distinguished Member of the ACM, and was named the 2015 Distinguished Educator by IEEE TCSE. Dr. Mead received her PhD in mathematics from the Polytechnic Institute of New York.
Back to overiew

T10 - Writing Good Requirements

Poor requirements practices are widely recognized as one of the top causes of product defects, project delays, and cost overruns. However, a practical solution that balances effective results with the everyday pressures of product development can be hard to find. Teams struggle with questions such as 'How much detail is enough?', 'What is the difference between requirements and design', and 'What requirements practices are right for my project?'. In many cases, requirements specification may be in the hands of engineers or other personnel with deep experience in their primary discipline, but little or no specific training or expertise in authoring good requirements. This one-day tutorial is a quick overview to help fill that gap.

Writing Good Requirements is based on a popular and successful course taught to thousands of students at Intel over the past 17 years. It covers effective foundational best practices for specifying requirements that work even for complex, market-driven products. The techniques presented are scalable and have been employed on projects within both agile and traditional methodologies. Rather than presenting a rigid methodology or process, the emphasis is on best practices that can be tailored to a variety of product and project types.

The tutorial contains examples from actual requirements documents in original and improved formats. Small-group exercises and discussions reinforce the content and techniques through the day.

Date
Monday, September 04, 2017 (Full-day)
Presenters
Sarah Gregory
Intel Corporation, USA
Sarah C. Gregory is a Requirements Engineer with Intel Corporation. As a Senior Methodologist in Requirements Engineering, Sarah develops and mentors Requirements Engineering subject matter experts across Intel worldwide, conducts training, and trains many course trainers. In seventeen years at Intel, she has extensively explored the human aspects of sociotechnical systems, primarily through the lens of requirements engineering. She has recently joined the Editorial Board of IEEE Software, and contributes a regular column about Requirements Engineering methods and practices in an industrial context. Sarah’s academic background includes graduate degrees in Law, Information Science, and Systematic Theology, and she is currently pursuing a doctorate in Social Theory.
John Terzakis
Intel Corporation, USA
John Terzakis is a Requirements Engineer with Intel Corporation. He previously held positions as a Senior Engineering Director with Shiva Corporation, Software Engineering Manager with Racal InterLan, Software Engineering Manager with Dataproducts and Member of the Technical Staff with Bell Telephone Laboratories. He was also a co-founder of Micro Logic Consultants. His product development portfolio includes Wi-Fi adapters, VPN Gateways, remote access concentrators & servers, Ethernet adapters, switches & hubs, and printers. John received his MS in Electrical Engineering from Stanford University (1980) and BS in Electrical Engineering from Northeastern University (1979).
Back to overiew

Organizers

Tutorial Co-Chair

Frank Houdek
Daimler AG, Germany

Tutorial Co-Chair

Liliana Pasquale
LERO, the Irish Software Research Centre, Ireland