Area 4 - Processes: Optimization of software processes
Area manager: Prof. Jürgen Börstler
Researcher: Dr. Richard Torkar
Post doctoral researcher: Dr. Wasif Afzal
Successful industrial development organisations must constantly improve their ways of working to stay competitive. To increase reuse and product quality many organizations are moving toward model-driven development and software product which leads to more complex development processes and more focus up-front development activities. Two ways to cope with these problems are (1) adopting ideas from lean/agile development to downsize processes and (2) applying automated, search-based techniques for process optimization.
Many software engineering processes or activities can be formulated as optimization problems. Exact optimization techniques are, however, mostly impractical for large scale software engineering problems. Metaheuristic search techniques, on the other hand, have proven applicable to a wide range of software engineering activities. Search-based software engineering has, however, some inherit practical problems that require industrial trials for further investigation, in particular (i) helping engineers in setting up a particular problem to make the techniques applicable in the first place and (ii) presenting the results in understandable ways.
One of the main goals of agile or lean development is to reduce lead time and eliminate waste, i.e. activities or work products that do not contribute to added customer value. Reducing waste can impact other processes. It is therefore important to take into account all organizational processes that are affected by a particular activity or work product. A key question is how agile/lean methods can be effectively adapted and integrated into the development of safety-critical embedded systems in large organisations. Search-based methods might help to solve this optimization problem.
In BESQ+, we want to study the specific challenges large organisations face when agile methods are adopted and how these methods are tailored to fit the organizations' particular needs and environment. Specifically, we want to investigate the practical utility and effectiveness of search-based techniques for process optimization in industrial case studies, in particular in the context of agile/lean development.
An area of particular interest is testing. How can testing be made more effective without significantly increasing the overhead for writing, managing, tracing and running test cases? How can we support the traceability between requirements and tests to improve quality assurance and value generation?
- Presentation of guidelines/checklist for systematic agile/lean adaptation and mitigation of negative effects on the surrounding organization.
- Practical guidelines for setting up typical, industry-relevant, software engineering problems for search-based methods.
- Technique/tool for the visualization of the impact of process change in industry.
Relation to ongoing research projects: EASE, ELLITT and Next Generation Software Engineering.
Industrial partners: ARISA, BAE Systems Hägglunds AB, Ericsson, Ricksell, Sauer Danfoss and ST-Ericsson.