REDEST - Sharing Experiences in the Field of Embedded Software Requirement Gathering
by János Nacsa
Requirement gathering is an initial but critical phase of any software development. In embedded systems it is even more difficult, since many of the requirements have effects that cannot be fulfilled with software elements. The aim of the REDEST project is to improve the requirement-gathering phase of the embedded software development process by introducing methodologies to help companies augment the quality of their embedded software.
The REDEST consortium consists of fourteen small and medium enterprises (SMEs) from Spain, Germany and Hungary that develop embedded software for their products, three coordinating institutions, and a technology expert company, to harmonise the different activities and provide the SMEs with continuous support.
Although all the SMEs in REDEST develop embedded software, there are significant differences between them:
- the company size ranges from ten to more than one hundred employees
- the software part of the product varies greatly from company to company
- some companies sell their products with minimal software modification for a certain order, while others develop one-of-a-kind software solutions
- while some companies have previously used requirement-gathering (RG) technologies or forms, others have no previous systematic method for handling these
- the cultural aspects of the given application areas and the targeted markets of the companies are very different.
The SME partners in REDEST perform experimental tasks consisting of two parts: a baseline project on a development common to the given company, and - in conjunction with this - an innovative experiment in RG, with clear objectives and measurement facilities. Each experiment has its own independent strategic, business and technical objectives.
|Common requirement gathering problems of the project partners.
The coordinating/expert partners supervise the experiments and provide the local partners with advice. They also evaluate the results and elaborate the Best Practice cases for identifying and exploiting synergies within the experimental results. The independent method produced by each experiment is then used to measure the resulting business and technical benefits, as explained in their descriptions.
Based on both the fourteen SMEs' experiment definition documents and the information gained from the technical meetings, many common problems were identified. To overcome these difficulties, the coordinators suggested the following actions as a minimum set for all REDEST members:
- courses on the new RG technique to be introduced in the company, and training materials to be prepared by the company (or the coordinator upon request)
- a template/form to be worked out according to the special needs of the given company to support its requirement gathering
- strategic indicators to be defined to allow the effects of the new RG techniques to be measured, and
- simple tracking methods to be elaborated for the requirements within the whole development (eg in design documents, source codes and test patterns).
It is expected that a clear connection will be identified between the previous problems and the actions proposed.
The Hungarian Experiment
Although REDEST is about requirement gathering, it was necessary to look at the companies' complete development cycles. For some SMEs, the whole process was found to be rather unstructured, and many operational problems were related to this fact. An immediate positive effect of REDEST was that the management staff and the key developers of the three Hungarian SMEs had to rethink their conventional design and development methods. As a consequence, they realised that advanced software engineering methods (eg RUP) can be more effective than the ad hoc ones they had used previously. It was also recognised that the review itself of their usual tasks and the development of a structure for these have generated good new ideas.
The first Hungarian SME is a research and development company. They have high-tech products in the field of medicine, which use embedded software technology. Because of the nature of the company, the requirement specification is not formal and they have no adequate solution for handling changes in the requirements. In the frame of REDEST, they work on the formalisation of their whole development cycle, from the requirement gathering to the final tests.
The second Hungarian SME has a relatively large market share in a special field of traffic control. As their products are mainly hardware-oriented, they employ only a few software specialists and thus depend greatly on the expertise of these people. In the future they intend to introduce a more standardised way of working, including requirements gathering, design and tests. They have problems with tracing the effects of the different requirements on the product life cycle, including the software version control during maintenance.
The third Hungarian SME produces special high-capacity, high-cost visualisation equipment in relatively small quantities. As they have very remote and culturally different markets, the RG must include communication with their agents, which needs to be more formal and precise. Requirement forms in this case means the ability to select a given product feature from among various options.
Examining the different problems of the SMEs in REDEST, the following conclusions were arrived at:
- since the problems vary between companies, it is not possible to suggest unique solutions for requirement gathering
- the companies are keen to learn from the experiences of others and within the framework of meetings and workshops are ready to share their views (including problems and possible solutions etc)
- it is worth managing and comparing the requirement-gathering problems of companies as user cases, meaning there is a need for user-specific help from the expert companies
- efforts should be concentrated on learning (to help to apply the new RG techniques), formalisation (to clarify and standardise the RG) and measurement (to prove to each stakeholder the benefits of RG).
REDEST is designed to be a growing modular structure, to which other sets of local supporting organisations and experiments, or even independent experiments, may be added. The project is sponsored by EC, under the contract no. IST 2000-29425.
János Nacsa, SZTAKI
Tel: +36 1 279 6224