Airbus Defence and Space Manching
Airbus is a global leader in aeronautics, space and related services. In 2017, it generated revenues of € 67 billion and employed a workforce of around 130,000. Airbus offers the most comprehensive range of passenger airliners from 100 to more than 600 seats. Airbus is also a European leader providing tanker, combat, transport and mission aircraft, as well as Europe’s number one space enterprise and the world’s second largest space business. In helicopters, Airbus provides the most efficient civil and military rotorcraft solutions worldwide.
Our people work with passion and determination to make the world a more connected, safer and smarter place. Taking pride in our work, we draw on each other's expertise and experience to achieve excellence. Our diversity and teamwork culture propel us to accomplish the extraordinary - on the ground, in the sky and in space.
Description of the job
Are you looking for a master year project? Would you like to discover the work of a software engineer? Then apply now! We look forward to you joining us in the field of complex avionic software systems in an international environment.
Start: winter / spring 2019
Duration: 6 months
Manching is the home of Airbus Defence and Space’s Military Air Systems Centre. The combined skills of program management, development, system integration, logistics and product support, procurement, marketing and sales departments have made it a center of competence for manned and unmanned military aviation.
Within Military Aircraft Engineering a wide range of airborne systems are continuously enhanced and new functions and technologies integrated. A great many of these changes affect the aircrafts’ avionics which in the end result in complex software development activities across different products.
The challenge we have to offer
Code clones are common in software that has rigid development standards which impose large overheads (=paperwork, retesting) for very small changes. Instead of refactoring code before and after introducing additional functionality the “new” code is often simply derived from “old” code with copy/paste and adjusted in a minor way. This way the “old” and tested code stays untouched and only the new code requires testing.
Code clones as well as similar code generate additional work the larger a software becomes and poses the significant risk of fixing problems only in one location but not in the “cloned” ones.
A larger code base is also harder to grasp and in the long run require more work (e.g. Unit Test code coverage) as a compact one. In general code clones or similar code should be avoided and refactored. Unfortunately, projects dedicate little time to refactoring since refactoring provides no immediate value-add and manually identifying code sections as clones have the risk of being wrong and actually destroying functionality during refactoring.
While tools exist such as CloneDR that can detect semantic code clones, i.e. identical code little to no tools exists that can detect similar code especially for ADA95. Furthermore, the existing tools are sometimes stand-alone and cannot be easily integrated.
When writing avionics software there are typically various tools involved that all have their own UI, highlighting methods, outputs etc. to perform tasks related to static code analysis. One example is be the already mentioned CloneDR or tools such as Polyspace.
Additionally a primary IDE to edit code exists to which these tools are operated in parallel. Integrating tools into the primary IDE (in this case Eclipse) would allow to immediately adapting source code depending on the highlighted issue without the necessity to operate third-party tools. Code clone and similar code detection would be such an example of a function that can be integrated into Eclipse as a plugin. Highlighting the similarity of two or more code sections directly in Eclipse would drastically reduce the effort to identify cloned code sections and increase the chance of the code actually being refactored. Even if not being refactored the amount of cloned or similar section would be an important software code base metric for indicating software quality and planning refactoring activities.
This job requires an awareness of any potential compliance risks and a commitment to act with integrity, as the foundation for the Company’s success, reputation and sustainable growth.
· Enrolled student (m/f) within Information Technology, Computer Sciences, Electrical Engineering or similar field of study
· Basic knowledge of system engineering principles
· Advanced knowledge of software development methods
· Programming languages: JAVA, knowledge of ADA95 is beneficial
· Other Know-How: Eclipse, Plugin development
· English: fluent
You are a good team player, have excellent communication skills, and the Ability to work independently and responsibly as part of in an international team.
Constructeur aéronautique, Airbus est aujourd’hui le leader mondial de la construction d’avions de ligne. Créé à la fin des années 1960 avec le projet A300, lancé à l’initiative de plusieurs pays européens, il fabrique des avions de 100 places (A318) à plus de 500 places (A380). Il appartient au groupe EADS, renommé « Airbus Group » en 2014, et présent sur 170 sites dans le monde. 6000 avions Airbus sont aujourd’hui en exploitation, avec une volonté du constructeur aéronautique de mettre l’accent sur la réduction de l’empreinte carbone (réduction de la quantité de CO2 produite par avion).
Airbus, dont le siège est situé près de Toulouse, compte 59 000 employés dans le monde et 15 sites principaux situés en France, Allemagne, Espagne et Royaume-Uni (ainsi que d’autres sites aux Etats-Unis, en Chine, au Moyen-Orient et au Japon).