Offers “Airbus”

Expires soon Airbus

Master Thesis within Avionics Software Development - Code clone detection eclipse

  • Doktorarbeit
  • Manching (Upper Bavaria)
  • Energy / Materials / Mechanics

Job description

Master Thesis within Avionics Software Development - Code clone detection eclipse

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.

Location: Manching
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.

Desired profile

Tasks & accountabilities

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.

Required skills

You offer:

·  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.

Make every future a success.
  • Job directory
  • Business directory