Employing industrial standards in software engineering for W7X

Abstract The stellarator W7X is a large complex experiment designed for continuous operation and planned to be operated for about 20 years. Software support is highly demanded for experiment preparation, operation and data analysis which in turn induces serious non-functional requirements on the software quality like, e.g.: • high availability, stability, maintainability vs. • high flexibility concerning change of functionality, technology, personnel • high versatility concerning the scale of system size and performance These challenges are best met by exploiting industrial experience in quality management and assurance (QM/QA), e.g. focusing on top-down development methods, developing an integral functional system model, using UML as a diagramming standard, building vertical prototypes, support for distributed development, etc., which have been used for W7X, however on an ‘as necessary’ basis. Proceeding in this manner gave significant results for control, data acquisition, corresponding database-structures and user applications over many years. As soon as production systems started using the software in the labs or on a prototype the development activity demanded to be organized in a more rigorous process mainly to provide stable operation conditions. Thus a process improvement activity was started for stepwise introduction of quality assuring processes with tool support taking standards like CMMI, ISO-15504 (SPICE) as a guideline. Experiences obtained so far will be reported. We conclude software engineering and quality assurance has to be an integral part of systems engineering right from the beginning of projects and be organized according to industrial standards to be prepared for the challenges of nuclear fusion research.