BORIS Theses

BORIS Theses
Bern Open Repository and Information System

Augmenting IDEs with Runtime Information for Software Maintenance

Röthlisberger, David (2010). Augmenting IDEs with Runtime Information for Software Maintenance. (Thesis). Universität Bern, Bern

roethlisberger-phd.pdf - Thesis
Available under License Creative Commons: Attribution-Share Alike (CC-BY-SA 4.0).

Download (8MB) | Preview


Object-oriented language features such as inheritance, abstract types, late-binding, or polymorphism lead to distributed and scattered code, rendering a software system hard to understand and maintain. The integrated development environment (IDE), the primary tool used by developers to maintain software systems, usually purely operates on static source code and does not reveal dynamic relationships between distributed source artifacts, which makes it difficult for developers to understand and navigate software systems. Another shortcoming of today's IDEs is the large amount of information with which they typically overwhelm developers. Large software systems encompass several thousand source artifacts such as classes and methods. These static artifacts are presented by IDEs in views such as trees or source editors. To gain an understanding of a system, developers have to open many such views, which leads to a workspace cluttered with different windows or tabs. Navigating through the code or maintaining a working context is thus difficult for developers working on large software systems. In this dissertation we address the question how to augment IDEs with dynamic information to better navigate scattered code while at the same time not overwhelming developers with even more information in the IDE views. We claim that by first reducing the amount of information developers have to deal with, we are subsequently able to embed dynamic information in the familiar source perspectives of IDEs to better comprehend and navigate large software spaces. We propose means to reduce or mitigate the information by highlighting relevant source elements, by explicitly representing working context, and by automatically housekeeping the workspace in the IDE. We then improve navigation of scattered code by explicitly representing dynamic collaboration and software features in the static source perspectives of IDEs. We validate our claim by conducting empirical experiments with developers and by analyzing recorded development sessions.

Item Type: Thesis
Dissertation Type: Single
Date of Defense: 2010
Subjects: 000 Computer science, knowledge & systems
500 Science > 510 Mathematics
Institute / Center: 08 Faculty of Science > Institute of Computer Science (INF)
08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG)
Depositing User: Admin importFromBoris
Date Deposited: 25 Jan 2019 13:00
Last Modified: 01 Feb 2019 09:37

Actions (login required)

View Item View Item