My research aims at overcoming one of the limitations for developing tomorrow’s complex and large scale systems: The information overload.
Software systems aim to support more and more areas of everyday life. For this reason, they need to support a growing number of stakeholder groups, cover their diverse needs, and interact with related systems.
Because of the complexity, those systems are often developed in distributed settings. The knowledge about stakeholders’ needs, technical requirements of related systems, and architecture of the system under construction is distributed over several locations and often there is no single person who has a complete overview.
My goal is to create a framework for managing requirements and related knowledge in distributed development of large scale systems. This framework should consist of technical infrastructure to offer knowledge where needed, but also social aspects to help creating an environment where stakeholders like to gain and share new knowledge.
On this page I give a short overview of how my past and present research work relates to this vision.
My work on clarification patterns aims at understanding and optimizing, how practitioners seek clarification of requirements during the evolution of large scale software systems. By this work I hope to help managers to manage the risk of misunderstood requirements and researchers in how clarification and shared understanding is achieved in distributed teams. Read more…
The goal of SecReq is to help software developing organizations by managing knowledge about security requirements. My contribution to this work is the automatic identification of security related requirements during elicitation and tool support that helps domain experts (who are often not security experts) in dealing with these critical aspects of their requirements. Once a security-related requirement is identified, assistants help to gather all information that is necessary for developing a secure software system based on Common Criteria and UMLsec. In critical situations the tool can also support to consult a security expert. Read more…
Large software systems are often characterized by a large and complex stakeholder structure. Stakeholders often lack an overview of the complete system, cannot imagine how the changes in the system will affect their daily life or are reluctant to participate in any requirements engineering activities altogether. In this context I worked on multimedia representations of requirements to improve the dialogue with stakeholders. I am confident that such approaches can motivate them to understand the plans for the system and to contribute their knowledge to the clarification of the system’s requirements.
Such approaches are not enough, if large parts of the stakeholders are reluctant to participate in requirements elicitation. Only capturing requirements of stakeholders that want to articulate their needs might lead to an unbalanced understanding of the requirements. Systematic and unobtrusive approaches to end-user observation can help in such situations to prioritize requirements based on a better sample of stakeholders and to derive requirements of end-users that would otherwise abandon the system silently.
The Heuristic Requirements Assistant helps analysts to document requirements. HeRA analyses the input in real-time and gives analysts immediate feedback. This concept not only helps analysts in creating high quality requirements documentation, but also supports learning of the organization and its individuals.