Master Thesis / Internship: Change impact analysis on Java-based projects Neu

in Pully
Praktikum nicht angegeben Student
  • Job Identification: 2292
  • Posting Date: 21.02.2025
  • Job Schedule: Full time
  • Company: ELCA Informatique SA

About Us

We are ELCA, one of the largest Swiss IT tribe with over 2,200 experts. We are multicultural with offices in Switzerland, Spain, France, Vietnam and Mauritius. Since 1968, our team of engineers, business analysts, software architects, designers and consultants provide tailor-made and standardized solutions to support the digital transformation of major public administrations and private companies in Switzerland. Our activity spans across multiples fields of leading-edge technologies such as AI, Machine & Deep learning, BI/BD, RPA, Blockchain, IoT and CyberSecurity.

Job Description

Description

Today, projects are developed incrementally. In this context, the regression risk is a problem that needs to be addressed. A way to address regression is by detecting changes in the code base and then test the impacted functionalities. However, this change analysis is currently done manually, which is time consuming and error prone.

In this internship, we want to advance on the construction of the Proof of Concept of a tool able to provide a list of features/screens that are impacted by a change in the codebase. The list can then be used to guide the testing and avoid regressions. The design of the tool has already been laid out, but a lot of features remains to be implemented. Such features can be added as modules on top of the existing one to create new ways of detecting dependencies.

Our typical code stack is like the following one

Objectives

  • Generation of a report listing all user testable units/screens that are impacted by the changes between 2 commits
  • Take ownership of the current tool and understand its architecture
  • Implement change detection between 2 Git versions (commits) and deduce impacted code location
  • Add modules to finish the analysis of Angular code (80% done)
  • Add a module to perform dependency analysis of Spring beans in Java

Optionally

  • Add modules to perform dependency analysis between SQL and JAVA (Hibernate/ORM/SQL)
  • Add modules to perform dependency analysis between JAVA and JSP
  • Add modules to perform dependency analysis in JSP
  • Explore the potential scalability issue and propose optimizations
  • Create user-friendly GUI

Feedback from previous internship

It is a very interesting research-oriented project where there is no out of the box solution. You must tinker around and come up with a solution.”

Our offer

  • A dynamic work and collaborative environment with a highly motivated multi-cultural and international sites team
  • The chance to make a difference in peoples’ life by building innovative solutions
  • Various internal coding events (Hackathon, Brownbags), see our technical blog
  • Monthly After-Works organized per locations

Skills required

Static code analysis, dependency analysis, good mathematical/analytical knowledge, Java (good level, like compilation), Git, Angular and/or JSP, SQL/Hibernate (optional), Spring (ideally)

Sprich uns an! Unser Recruiting Team freut sich darauf, Dich kennenzulernen! Kontakt
Am 22.02.2025 veröffentlicht. Originalanzeige