Software Application Engineering


Main contact(s) Virginie Galtier
UESD9 Credits2 ECTS
Lectures6 hr Tutorials7.5 hr
Labworks9 hr Exam0 hr

Presentation

The application architecture of a system defines its software components and the exchanges between them, as well as their implementation on the hardware architecture. It naturally stands at the crossroads of development and operations missions. This course provides a typology of the main application architectures and presents the concepts of “devops”, a set of practices that facilitate the automation of software delivery. Some concepts will be implemented on an illustrative architecture, in preparation for the SD9 project.

Learning outcomes

At the end of this course, students will be able

  • to choose the application architecture best suited to their project,
  • to implement a software solution based on microservices or web services,
  • to quickly integrate into an application development and deployment chain with he use of a few tools.

Syllabus

  • Introduction to devops (software life cycle, agility, CI CD pipeline, build, versioning, tests, containers, infrastructure as code): principles and overview of some tools
  • Typology of application architectures and associated technologies, middleware (focus on MOM), SOA (focus on REST) and microservices
  • The last course will present a topical topic.