Monday August 31, 2020 — 10:30 – 14:30
Hermann Kaindl (TU Wien, Austria)
Mike Mannion (Glasgow Caledonian University, UK)
Several socio-economic trends are generating unparalleled increases in the volume, variety, velocity and complexity of software-intensive products. One of these is people’s desire for personalised products. Suppliers are responding with different approaches to mass customization, but it is placing considerable strain on software designers. The challenge is to build innovative digital products and to create product development processes that can be adapted to meet the demands for evolving sets of inter-dependent requirements and features. One solution is the development of a capability to manage the identification, selection and deployment of reusable requirements and features on a large scale. However, this is far from straightforward and in practice reuse efforts range from operational, ad-hoc and short-term to strategic, planned and long-term, from code to requirements.
This tutorial presents and compares two different requirements-led approaches. The first approach deals with requirements reuse and reusability in the context of product line engineering. The second approach deals with requirements reuse and reusability in the context of case-based reasoning (invented in Artificial Intelligence). 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.
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 240 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 50 tutorials.
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, a member of IEEE and ACM, and a Fellow of the British Computer Society. He has published more than 50 papers and delivered more than 25 tutorials.
Monday August 31, 2020 — 15:00 – 18:30
Yilong Yang (University of Macau, Macau)
Xiaoshan Li (University of Macau, Macau)
Zhi Li (Guangxi Normal University, China)
Rapid prototyping is an effective and efficient way of requirements validation to avoid introducing errors in the early stage of software development. However, manually developing a prototype of a software system requires additional efforts, which would increase the overall cost of software development. This half-day tutorial introduces attendees to an approach with a CASE tool named RM2PT, which can be used for requirements modeling and analysis in UML and automatically generating MVC prototypes from requirements models. By investigating the executions of use cases in the generated prototypes, the stakeholders can easily check whether the requirements reflect their real needs. Moreover, requirements inconsistency can be automatically detected and further fixed through the provided features of the generated prototype. Participants will be given the chance to use RM2PT with the selected case studies, and learn how RM2PT has been and can be applied to real-world projects.
Yilong Yang is a post-doctoral fellow at the University of Macau, where he received his Ph.D. degree in Software Engineering. His research interests are Automated and Intelligent Software Engineering. He has published over 20 papers in international conferences and journals. He has also been a fellow at the UNU-IIST and visiting research fellow at the Guangxi Normal University. He serves as the PC member for IJCAI’20 and ECAI’20.
Xiaoshan Li received his Ph.D. degree from the Institute of Software, the Chinese Academy of Sciences. Currently, he is an Associate Professor in the Department of Computer and Information Science at the University of Macau. His research interests include Automated Software Engineering, Formal Specification and Verification, and Formal Semantics of UML.
Zhi Li is Professor at Guangxi Normal University, China. His research interests are Problem-oriented Requirements Engineering for big data analytics, modeling, and verification of cyber-physical systems. His research has been sponsored by grants from the National Natural Science Foundation of China and he has published over 20 research papers.
Tuesday September 1, 2020 — 10:30 – 14:30 (moved from afternoon to morning)
Shamal Faily (Bournemouth University, Poole, UK)
Duncan Ki-Aries (Bournemouth University, Poole, UK)
Software needs to satisfy a range of security, privacy, and usability requirements. Eliciting them entails using design techniques both within and outside Requirements Engineering, together with tool-support which can analyse and make sense of requirements and other design concepts as early stage designs evolve. This one-day tutorial introduces participants to CAIRIS, and how it can be used to engineer requirements for usable and secure software. Participants will be given the chance to use CAIRIS with selected usability and security design techniques, and learn how CAIRIS has and can be deployed in real-world projects.
Shamal Faily is a Principal Lecturer in Systems Security Engineering at Bournemouth University and leads the development of the open-source CAIRIS platform. His research explores how the design of interactive secure systems can be better supported with design techniques and software tools, particularly those from Requirements Engineering. Shamal has also been a PC member and external reviewer for several security and usability conferences, including ARES, Trust, CHI, EICS, and British HCI. Shamal has been a co-organiser of the annual ESPRE workshop between 2014 and 2018, and was the general co-chair of British HCI 2016. Prior to joining Bournemouth University in 2013, Shamal has delivered material in HCI Security and design to postgraduate students at the University of Oxford and UCL for several years. Since joining BU, Shamal has designed and delivered an advanced undergraduate and postgraduate taught course on Security by Design. This unit includes material on CAIRIS, and was written to complement this unit.
Duncan Ki-Aries is a Lecturer in Cybersecurity at Bournemouth University; his research explores how techniques from Requirements Engineering can be used to assess risk in complex systems-of-systems. Duncan’s work has appeared in leading security and system engineering venues such as Computers & Security and the IEEE SoSE conference, in addition to ESPRE 2017 and ESPRE 2018. Duncan is one of the organising chairs of the ESPRE 2019 workshop. Duncan has used and extended CAIRIS extensively as part of his research. Duncan lectures on software system modelling techniques at BU, and has previously assisted in the Security by Design unit delivered to advanced undergraduate and postgraduate students at Bournemouth University. This has given him expertise delivering classes and labs on CAIRIS.
Tuesday September 1, 2020 — 15:00 – 18:30 (moved from morning to afternoon)
Soroosh Nalchigar (University of Toronto, Canada)
Eric Yu (University of Toronto, Canada)
Machine Learning (ML) algorithms and techniques are rapidly becoming an integral part of many types of business systems and applications. Despite this ever increasing interest and advances, many businesses still struggle to identify how to use ML to take advantage of their data. Conceptual modeling, as cornerstone of requirements engineering, is seen to offer considerable value in tackling those difficulties and achieving effective design and implementation of ML solutions.
This tutorial introduces a conceptual modeling framework1 for building ML solutions in business organizations. Using a goal-driven approach, business goals are refined until relevant decisions are identified. Decisions are refined into analytical questions. ML solutions to analytical questions are identified with help of catalogues of ML algorithms. Data preparation tasks required for each type of algorithm are also identified. By linking enterprise strategies to ML algorithms and data preparation activities, the framework provides a comprehensive abstraction of ML applications in a given domain. The framework also provides support for the development of solution patterns for common ML applications such as fraud detection. The tutorial includes a hands-on exercise for participants to become familiar with the framework through experiential learning.
Soroosh Nalchigar is a Ph.D. candidate at the Department of Computer Science, University of Toronto, Canada. His research examines how machine learning and advanced analytics techniques can be used more effectively in organizations to support decision making. His areas of interest include business analytics, requirements engineering, conceptual modeling, information systems design, and operations research. Prior to his current studies, he received a M.Sc. in Data Mining and Knowledge Management from the University of Pierre and Marie Curie (Paris 6), and a Ph.D. in management information systems from the University of Tehran. Also, Soroosh has 5+ years of practical experience in applied machine learning and data science domains.
Eric S. K. Yu is Professor at the University of Toronto, Canada. He has research interests in information systems modeling and design, requirements engineering, software engineering, knowledge management, enterprise modeling, and adaptive enterprise architecture based on data analytics. He was originator of the i* modeling framework, which brings social and organizational modeling into information and software systems analysis and design. Books published include: Social Modeling for Requirements Engineering (MIT Press, 2011); Conceptual Modeling: Foundations and Applications (Springer, 2009); and Non-Functional Requirements in Software Engineering (Springer, 2000). He is series co-editor for the MIT Press book series Information Systems. He was Program Co-chair for the 27th and 33rd Int. Conference on Conceptual Modeling (ER 2008, 2014).