Introducing ECSS Software-Engineering Standards Within ESA: - Practical Approaches For Space-And Ground-Segment Software
Introducing ECSS Software-Engineering Standards Within ESA: - Practical Approaches For Space-And Ground-Segment Software
Introducing ECSS Software-Engineering Standards Within ESA: - Practical Approaches For Space-And Ground-Segment Software
A. Mantineo
Quality Office
ESA Directorate of Technical and Operational Support, ESOC, Darmstadt, Germany
U.K. Mortensen
Electrical Engineering Department
ESA Directorate of Technical and Operational Support, ESTEC, Noordwijk,
The Netherlands
Why a new software-engineering standard? engineering standard would become the one to
ESA has had a highly successful software- be used in ESA software projects. Shortly after
engineering standard, ESA PSS-05, since this decision, ISO published a new international
1984. PSS-05 was prepared by ESA’s Board software-engineering standard, ISO/IEC 12207
for Software Standardisation and Control (Information Technology, Software Lifecycle
(BSSC), which was established in 1977, when Processes, 1995), which is now the leading
the importance of software standards for the standard in this field. The ECSS software-
proper conduct of complex or critical space- engineering standard ECSS-E-40, which first
software projects was realised. PSS-05 appeared in 1999, is based on ISO 12207. In
fact, ECSS-E-40 tailors ISO12207 specifically
In June 1994, the ESA Council adopted a resolution that confirmed the for space projects.
Agency’s commitment to transferring the existing system of ESA
space standards to a new set of standards that were to be prepared The introduction of this new standard
by the European Cooperation for Space Standardization (ECSS). For represented a further step in the
software engineering, this has meant moving from the ESA PSS-05-0 ‘Europeanisation’ of the way of working in the
to new software standards: ECSS-E-40 for software engineering and Agency. In fact, an objective was to produce a
ECSS-Q-80 for software product assurance, both of which are based standard to be used throughout the European
on a new international standard, ISO/IEC 12207. In addition, to cover space business, i.e. by Industry and across the
the full scope of the old standard, it is also necessary to use the ECSS space agencies within Europe, superseding
management standards (the ECSS-M series). Adoption of a new agency-specific standards such as PSS-05. In
standard is a major change and one that has to be undertaken with this way, the problem of a given company or
care and so this article describes the measures that were taken to consortium having to follow different standards
ensure a smooth transition, both at ESTEC for space-segment depending on which agency it is contracted to
software and at ESOC for ground-segment software. for any given development is avoided: the
ECSS standards thus provide a common
backbone.
appeared in Issue 1 in 1984, followed by Issue
2 in 1991. The BSSC also wrote a set of guides This European approach also had consequences
to provide more detailed assistance in using for ESA’s BSSC: whereas formerly the BSSC
PSS-05. Both the standard and the set of established and maintained software-
guides were published as books. engineering standards, now this responsibility
is transferred to the ECSS. Of course, the
However, the Council decision in 1994 meant BSSC has in practice been involved in the
that no further issues of PSS-05 would be relevant ECSS Working Group and subgroups
published and the new ECSS software- – for example, one of the BSSC Co-Chairmen
132
ecss software-engineering standards
is also convenor of the ECSS-E-40/ ECSS-Q- – ground segments comprised of all of the
80 Working Group. Within ESA, the BSSC still ground facilities needed to operate each
plays an important role, since it has to ensure mission.
that the new software-engineering standards
are introduced and applied properly and that Software is pervasive throughout the whole
tailoring methods and ESA implementations of ‘product tree’ of any space programme:
the ECSS standards are available as needed. It Figure 2 shows a typical space system
also deals with standardisation aspects such schematically, with emphasis on the software
as coding standards that will not be covered by elements. The space segment has onboard
ECSS. The rest of the BSSC’s responsibilities computers, data-handling systems, attitude
remain unchanged, ensuring in particular that and orbit control systems, all of which contain
the standards are applied in ESA contracts, software. The ground segment has mission-
and liasing with the ESA’s Legal and Contract control systems, simulators, flight-dynamics
Departments on matters affecting software systems, mission-analysis tools, communications
intellectual-property rights. networks and ground-station data systems
such as telemetry and telecommand
The structure of the ECSS standards is shown processors, as well as ‘downstream
in Figure 1, from which it can be seen that there processing’ systems for payload data. These all
are three main branches: ‘Management’, contain software, often of considerable
‘Product Assurance’ and ‘Engineering’. It is a complexity.
characteristic of software engineering that it
involves all three branches of the ECSS Developing and maintaining this software in a
standards. disciplined way is a key to the success of any
space mission. Failure to do this can result in
Software in ESA expensive delays, and in the worst case in
ESA’s core business is the execution of space catastrophic failure. Following proper software
programmes, including: standards is one of the ways of keeping
– space segments comprised of spacecraft, software development under control and
payloads and launchers ensuring adequate quality.
ECSS-M-40 ECSS-Q-60
Configuration management EEE Components
ECSS-M-50 ECSS-Q-70
Information/Documentation Materials, mechanical parts
Management and processes
ECSS-M-70 ECSS-Q-80
Integrated logistic support Software product assurance
133
r bulletin 111 — august 2002
...
Customer
Level n
Supplier Supplier
Customer Customer
Level n+1
Customer Customer
Level n+2
134
ecss software-engineering standards
ECSS-E-40 Processes
System Engineering
This is carried out by the customer and involves such activities as:
– system requirements engineering
– system integration
– system validation.
This is somewhat analogous to the PSS-05 User Requirements (UR) phase, but is more general in that it sees the software
as part of a system that put requirements on it – the surrounding system could be onboard hardware and other software
systems, and need not necessarily include a human user. In PSS-05, the UR phase was generally understood as a specific
activity occurring after the system definition, preparing the software development, but separated from the system activities.
In ECSS, this process is the same as the ECSS-E-10 Space System Engineering process, ensuring a better transition of the
requirements from system to software.
Activities (ii) and (iii) are analogous to the PSS-05 Transfer Phase.
Software Maintenance
This comprises:
– software problem analysis
– software problem correction (software modification)
– re-acceptance (i.e. validation of corrections)
– software migration (cf. PSS-05 ‘adaptive’ maintenance)
– software retirement.
ECSS software maintenance is similar to PSS-05 Operations and Maintenance (OM Phase), but ECSS-E-40 places more
emphasis on migration and retirement, and separates first-line maintenance from software operations.
135
r bulletin 111 — august 2002
136
ecss software-engineering standards
Validation
and Acceptance
Design
Engineering
Requirements
Engineering
System
Engineering
137
r bulletin 111 — august 2002
Key factors in the successful introduction and Implementation aspects include, for example,
application were: document templates and advice on how to
– A strong commitment from the participating perform the necessary work, in addition to the
ECSS partners in producing very high quality ECSS requirements. It is also an initial tailoring
standards and with internal commitments for of the ECSS requirements for ground-segment
the integration into their respective business software developments. The SEMG has
processes. removed some requirements that were not
– Training material and introduction courses applicable to ground-segment development
both for those with previous experience with and has also introduced some missing ones,
other standards and for those entering the particularly in the areas of configuration
space market for the first time. management and software project management.
– The ECSS tailoring possibility, allowing Another example of the tailoring is the addition
adaptation of the requirements to individual of the Software Requirements Review (SWRR)
projects or domains. between SRR and PDR to provide a separate
review of the software requirements and
Applying ECSS software standards to facilitate continuity with established practice.
ground-segment projects at ESOC
An important feature of the ECSS software
The ESA Ground-Segment Software standards is that they may be tailored in
Engineering and Management Guide (ESA accordance with customer needs and project
GS SEMG) or system characteristics. The GS SEMG can,
At ESOC, the bulk of ESA’s ground-segment therefore, be further tailored (corresponding in
software is procured via frame contracts. effect to a tailoring of the ECSS source
Typically, there are several frame contractors in standards). The Tailoring Template, also
each discipline area (e.g. mission control published by the BSSC, is a companion guide
systems, simulators, flight dynamics) and they to the GS SEMG that provides guidance when
compete for work as it arises. PSS-05 has introducing further tailoring. Specifically, it gives
been applied for all such software procurement advice on the processes to be considered
and was made applicable in the relevant frame applicable within a given software-development
contracts. This led to a uniform approach to project. It clarifies the principles upon which
reviews and documentation across the various the tailoring process is based, allowing for the
contracts in any given area. The desire was to selection or waiving of some of the practices
continue this practice and avoid a situation described in the Guide. It does not constitute
in which different suppliers use different a specific tailoring of the GS SEMG as such,
implementations of ECSS-E-40. This is and therefore should not be considered or
particularly important for long-lived and referred to as contractually binding. However, a
complex infrastructures or generic software, tailoring resulting from it could be made
where several different contractors may be contractually binding.
involved.
The GS SEMG could be applied to any
Transition to the ECSS standards involves: development of ground-segment software for
– using a process-based standard instead of a a space mission. However, it is primarily
practice-based standard intended for use in ground-segment software
– coping with the distribution of the ECSS development at ESOC, where the GS SEMG
standard over many documents (E40, Q-80, will be referenced (i.e. made applicable) in
ECSS-M-) instead of one (PSS-05). procurement contracts.
It was to ease these steps and provide a The SEMG has three volumes:
common implementation basis for the various – Part A: Software Engineering, covering
frame contracts that the ESA Ground Segment ECSS-E-40
Software Engineering and Management Guide – Part B: Software Management, covering the
(ESA GS SEMG) was written. This provides ECSS-Q-80 and ECSS-M- series
ECSS compliance in the form of a set of – Part C: Document Templates.
practices. It is written in a style similar to PSS-
05, with a clear correspondence to the ECSS Part A was the first one to be written and was
processes and requirements, and it covers all the result of work carried out by a Working
relevant ECSS standards in a single (multi- Group comprised of software engineers drawn
volume) document. from the ground-segment disciplines that
develop and maintain software (simulations,
The SEMG is an implementation guide, mission-control systems, flight dynamics,
applying the relevant ECSS standards to ground-station information systems and
software development for ground segments. spacecraft checkout).
138
ecss software-engineering standards
The GS SEMG is based on new versions of QMS documents by the second quarter of
ECSS-E-40 and ECSS-Q0-80, the so-called 2002, with a view to using the standard for new
‘B’ versions, which are currently under formal projects from that time onwards. Management
review within the ECSS. These do not differ in approved this plan in May 2001.
any principle respects from the ones currently
on the ECSS Web site, but there are a large The April 2001 Workshop determined that
number of corrections and improvements. some 20 documents needed updating. In
some cases the updates required were
The ESOC Quality Management System (QMS) substantial, as with for example the procedure
In November 1999, ESOC was the first ESA on ‘Control of Software Procurement via
entity to be certified according to the ISO/IEC Contract’, where there were numerous
9001 Quality Standard, following an 18-month references to PSS-05 had to be replaced.
preparatory phase. The rationale for this was There were about half a dozen documents in
that ESOC was providing services both to this category. Other documents, such as all of
ESA projects and to external ‘third party’ the procedures relating to configuration control,
projects, the latter following an ESA Council needed only minor changes. A QMS
decision in 1998. ISO 9001 certification Consistency Workshop was held in January
therefore increases ESOC’s effectiveness and 2002 to review the whole body of updated
attractiveness as a supplier of services. QMS documents and ensure that they were
coherent.
To support ISO 9001 certification, ESOC
prepared a Quality Management System In fact, the schedule was successfully
(QMS), which is a set of internal procedures maintained, with the formal issue of QMS
and instructions defining implementation of documents taking place in early May 2002.
work processes at ESOC and the associated
responsibilities. It consists of: Training courses are planned, including a
technical one for data system managers and
– a Quality Manual describing top-level technical officers in charge of defining and
requirements on the management system procuring software systems.
139