Hasso-Plattner-Institut für Softwaresystemtechnik
Prof. Robert Hirschfeld
Prof. Robert Hirschfeld

Service Design, Implementation, and Evolution

In the context of HPI's graduate school, the Software Architecture Group (Prof. Dr. Robert Hirschfeld) focuses on software design, implementation, and evolution of service-based systems. Research proposals in the following areas are invited:

  • Context-aware and Mobile Services

    Software systems must adapt to changing contexts over time, even while they are running. Prominent examples are services offered via mobile devices that accompany their users most of their daily life and used are in circumstances that weren't planned for or arise unexpectedly. Unfortunately, mainstream programming languages and development environments do not support this kind of dynamic change very well, leading developers to implement complex designs to anticipate various dimensions of variability. Research needs to focus on developing a new programming paradigms, corresponding language constructs, and underlying software infrastructure to support context-dependent behavior.

  • Service Evolution

    Change can be observed in our environment and in the technology we build. While changes in the environment happen continuously and implicitly, our technology has to be kept in sync with the changing world around it. Although we can prepare for some of the changes for most of them we cannot. This is especially true for next-generation mobile communication systems that are expected to support the creation of a ubiquitous society where virtually everything is connected and made available within an organic information network. Resources will frequently join or leave the network, new types of media or new combinations of existing types will be used to interact and cooperate, and services will be tailored to requirements and preferences of individual customers to better meet their needs. Research needs to be carried out to provide appropriate concepts and technologies to allow services to evolve after their deployment, possibly at run-time.

  • End-user Service Development

    Today's technology-savvy customers are more and more willing to adjust the software services they use to their daily tasks and needs. While the customers are ready, our technology is not. Do accomplish even minimal adjustments, customers are required to think like professional programmers or even computer scientists. This is obviously not their domain of interest and expertise. And it should not be. Research in the area of end-user service development needs to explore new abstractions and means of interaction appropriate for everyday users to tailor their systems to their personal needs.