Practical experience of software and system engineering approaches in requirements management for software development in aviation industry

The article describes the technical world evolution tendencies, which require proper software and system engineering approaches used for complex systems creation, for example for aircrafts creation. The substantiation of the importance and relevance of using requirements management discipline in software development is made. The main basics of software and system engineering approaches and discipline are set out. System engineering is a discipline, which integrates and harmonizes all activities around entire area of systems creation. The article contains description of information systems, which have been created in GosNIIAS and now are actively used in internal and external works: requirements management information system, problem reports management information system, technological environment for test methods preparation and test results registration. Requirements management information system contains special predefined documents and template, required by standards DO-178, DO-254, DO-330, ARP4754, State Standards GOST 51904 and GOST 34. Using of requirements management system in GosNIIAS and external enterprises is described. Problem reports management information system registers and supports the lifecycle of problem reports, which appear during the work process. Technological environment for test methods preparation and test results registration supports different activities such as test methods, test cases, test procedures preparation and testing on the integration stand, test results registration and test protocols preparation. Some perspective directions of software and system engineering approaches applying in GosNIIAS are listed.


Introduction
Nowadays there is a considerable change in industries all over the worlds.The change is related with the rapidly increasing complexity level of systems and devices, which are created and used.Safety and reliability requirements to products of aerospace, defense and other industries become stricter as well as certification requirements to management processes of products creation.At the same time we have to use new industry standards.Aerospace imposes some restrictions and requirements on the software development process and its result.These restrictions are caused by safety requirements to the aircrafts on which the software will be used.Requirements are set out in the industry standards, these standards must be complied very carefully for high quality results and successful certification.

Software and system engineering approaches realization
Using and customizing software and system engineering processes and approaches are an appropriate response to technical world complication tendencies.These processes and approaches are base of the most standards and guidelines which define methods to achieve necessary safety and reliability levels during development, design and engineering of critical technical and software systems.Nowadays software in complex technical systems is responsible for executing of the most critical functions [1].The most important discipline of software and system engineering for software development is requirements management.If there is no requirement management process or its bad realization then obvious or hidden defects and faults appear.It takes more and more efforts to repair these defects and faults at the later stages of development lifecycle.Problems in requirements are leaders in projects failures reasons lists and rework costs lists (Standish Group reports).That's why requirements are mandatory basis of design and development processes according to guidelines of standards R4754 (R4754A is now a draft, it is Russian analogue of ARP 4754), , , DO-330, GOST R 51904.Development of the software, hardware and systems begins from creation of requirements.Design is based on requirements.We also have to inspect how result corresponds with initial requirements during verification, validation, testing processes.
Ковернинский И.В., Кан А.В., Волков В.Б., Попов Ю.С., Горелиц Н.К.Практический опыт реализации подходов программной и системной инженерии для управления требованиями при разработке программного обеспечения в авиационной отрасли.Труды ИСП РАН, 2016, том 28, выпуск 2, с. 173-180.175 Some important tasks arose GosNIIAS due to the changes in the world.These tasks were about modernization of existing approaches and work processes in order to minimize potential risks for software design and development [2].A number of current situation researches were done in GosNIIAS.Existing world approaches to the software and system engineering approaches were adapted considering the specialization of the institute.The results of analysis and adaptation as well as software and system engineering fundamental principles formed the basis of newest works of GosNIIAS.Fundamentals of software and system engineering: • Requirements are base of software development process, • There should be coherent architecture of modules/subsystems and communication interfaces (points of input and output) between modules should be predefined, • Verification process (product check for requirements compliance) should be organized for cases when accurate measurement is impossible, • Modeling approaches and then model verification and validation are used for earlier failures and bug detection, • Communication protocols between process participants should be defined like strict regulations.Nowadays GosNIIAS has built the number of systems accordingly to software and system engineering approaches.The list of created systems consists of the following systems: • Requirements management information system, • Problem reports management information system, • Technological testing environment, • Practical approaches and skills in software and system engineering adapted for real tasks.

Requirements management information system
Requirements management information system (RMIS) was created for support requirements management activities in design and development of complex systems like aircraft onboard software.RMIS processes are built based on R4754 (ARP 4754) processes.RMIS realizes such functions and processes like: • Cross-cutting requirement management process during the software and system development entire lifecycle, • Single requirements change and configuration management process, • Generation and publishing of reporting documents and documents with any necessary data in accepted formats.Documents and projects templates required by standards R4754, KT-178, KT-254, DO-330, GOST R 51904, GOST 34 are created and included in RMIS suite.These items allow to decrease labor costs for audit preparation and passage in certification authorities -processes and products must strictly comply the standards.Some methodological materials were made to help with requirements management and configuration management using RMIS.Using RMIS while designing and developing aircrafts allows to significantly reduce: • Efforts for execution of works, • Time for approval, negotiation and final products release, • Errors from difficult work with requirements, • Provides actual information to all the participants during entire development lifecycle.This way RMIS gives opportunities to make reasonable and timely decisions.RMIS was successfully implemented in some organizations.The list of successful users of RMIS in aviation industry includes companies such as GosNIIAS, SpecTechnica, Techodinamika and others.GosNIIAS effectively uses RMIS in testing avionics processes on integration stand for Irkut MS-21 aircraft.RMIS's database contains traced data from AP-25 (like EASA CS-25, FAR-25 -Airworthiness standards for transport categories airplanes), Certification basis, Special technical conditions and some other data for Irkut MS-21 aircraft.There is active ongoing process of creation, customization and implementation of requirements management process, configuration management process, verification and validation management process in GosNIIAS.

Problem reports management information system
Specialists from GosNIIAS also made Problem reports management information system (PRMIS) during MS-21 project.PRMIS allows support of problem reports management activities on testing avionics processes on integration stand for MS-21 aircraft.PRMIS processes are built on the base of R4754A (R4754A's part about problem reports actvities).Main of PRMIS tasks are

• Collection and storage data of problem situations,
• Problem analysis, • Resolving problem documenting, • other functions.

Technological environment for test methods preparation and test results registration
Technological environment for test methods preparation and test results registration (TET) was made during MS-21 project as well.TET allows support of test methods preparation and testing activities on integration stand for MS-21 aircraft's avionics testing.Processes of TET are built in accordance with industry standard R4754.TET provides the following functions: • Preparation of test programs, test methods, test cases and test procedures for avionics, integrated flight control system testing, • Maintenance of testing activities on integration stand, • Creating test reports, • Other functions.TET provides such opportunities as: • Test methods approval processes, • Test methods development history logging, • Test results control and changing of succeeding test methods accordingly to revealed remarks for test requirements, hardware, methods, etc.Some of TET goals are: • Reducing labor costs for test methods, test procedures and test cases creation, • Transparent control for finished tests considering received and registered test results, • Increasing quality of tests traced with requirements, test methods and programs and received results, • Possibility to work with the set of integrated hardware on the integration stand, Information integration with RMIS, PRMIS and configuration control system for further integration in entire software and system engineering process of GosNIIAS, which will allow effective reusing of prepared test organization process for certification audit.

Current and future tasks
Nowadays there are actively realized system engineering approaches in GosNIIAS.Some tasks about development, design and implementation such processes of system engineering as requirement management process, problem reports management process, information management process, verification and validation management process, version and configuration management processes during software and system development lifecycle processes.Processes listed above and traced with its software and system engineering approaches will be performed for the further researches.Real-time operation system creation and creation of Russian instrumental set for support of the software and system engineering processes were chosen as nearest researches for perform these processes.There were defined some models for chosen researches -change request lifecycle processes model and problem report lifecycle processes model.

Conclusion
GosNIIAS has plans to create cross-cutting process based on developed processes and realized with software which is already developed and which will be developed soon.It should be cross-cutting process of software and system engineering with necessary instrumental support in GosNIIAS.