• No results found

Understanding and Supporting Software Design in Model-Based Software Engineering

N/A
N/A
Protected

Academic year: 2022

Share "Understanding and Supporting Software Design in Model-Based Software Engineering"

Copied!
2
0
0

Loading.... (view fulltext now)

Full text

(1)

Thesis for The Degree of Doctor of Philosophy

Understanding and Supporting Software Design in Model-Based Software Engineering

Rodi Jolak

Presentation:

March 2nd, 2020, 13:00 Room 243, Jupiter Building orselg˚angen 5, 417 56, G¨oteborg University of Gothenburg, Campus Lindholmen

Opponent:

Prof. Andr´e van der Hoek (University of California Irvine, USA)

Grading Committee Members:

Prof. Kurt Schneider (Leibniz Universit¨at Hannover, Germany) Prof. Juan de Lara (Universidad Aut´onoma de Madrid, Spain) Prof. Maryam Razavian (Eindhoven University of Technology, Netherlands)

Supervisors:

Prof. Michel R.V. Chaudron (Main supervisor) Prof. Morten Fjeld (Co-supervisor)

Prof. Eric Knauss (Co-supervisor)

Examiner:

Prof. Ulf Assarsson

The thesis is available at:

Department of Computer Science & Engineering

Chalmers University of Technology and University of Gothenburg Gothenburg, Sweden, 2020

Phone: 031 - 772 6174

(2)

Model-Based Software Engineering (MBSE) is a software development approach in which models can serve a multitude of purposes. On the one hand, models can be used for ideation, to stimulate creative thinking, and facilitate communi- cation. On the other hand, models can be used as guidelines for documentation, implementation, and code-generation.

There is a discrepancy between empirical findings and developers’ beliefs about MBSE. In this research, we address this discrepancy by contributing to the empirical understanding of software design. Moreover, we explore how to better support software design in MBSE.

Our endeavor to understand design activities in MBSE resulted in the following:

• Creating models while designing prompts significant thinking about the design.

• Developers that work on different locations have fewer discussions about design decisions than co-located developers.

• In MBSE projects, coordinating and knowledge sharing take more effort than technical engineering activities.

• Graphical software design representations (GSD) promote more active discussion of design decisions between developers than textual software design representations (TSD). Also, developers have better recall of design details when using GSD than TSD.

In our experience, usability and learning-effort of tools are the most encountered challenges in MBSE. Therefore, we research how to better support the design activities in MBSE by creating two software design environments: OctoUML and OctoBubbles. These tools implement new ways of transitioning from informal- to formal design representations, and novel ways to navigate between implementation-level and design-level in order to ease understanding of systems.

Evaluations show enhanced efficiency of the design activities and positive perception of the usability of these environments.

Keywords: Software Engineering, Software Design, Software Modeling, MBSE Efforts and Challenges, Software Design Environments, Collaboration, Com- munication, Human Aspects, Empirical Studies.

ISBN 978-91-7833-746-0 (PRINT) ISBN 978-91-7833-747-7 (PDF)

References

Related documents

The devel- opment of new working procedures based both on pedagogic and technical methods used in distance education and web-based learning as well as the

All respondents that have stated that there is a need to change the current working manner in quite high to high degree have also stated that it is

Therefore, we research how to better support the design activities in MBSE by creating two software design environments: OctoUML and OctoBubbles. Evaluations show enhanced

Thus, our focus in to understand how different software design descriptions (i.e., graphical versus textual) influence software design communication.. Such under- standing might lead

This study has illustrated how reverse engineering software code into abstract models to discover and analyze the design can help organizations better understand the soft- ware

Furthermore, to understand whether there is a need to improve modeling tools, the modeling process is analyzed in order to reveal how much effort is given to designing (i.e.

Subject representativeness and control is a threat to validity, especially when performing research in research areas like software requirements and software

I ([10]) diskuteras hur kursen Software Engineering genomgått tre år (ett initialt år, samt två på varandra följande år) av för- ändringar, där dessa delvis kan hänföras