Skip to content

gmolines/isa-devops

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction to Software Architecture & DevOps (2019-20)

Rationale

In this course, we will address the same case study under two different but complementary point of views: software architecture and DevOps. For the software architecture part, we will focus on the definition of an n-tiers architecture using software components (implemented as EJBs using the J2E framework). A part of the architecture will also be developed in .Net, emphasising the need to support system interoperability using Web Services. For the DevOps part, we will address the difficult problem of aligning the dev team with the ops one to build a given piece of software. How to slice the code into independent modules that can be compiled, tested and deployed in a continuous way? How to properly test the integration between such loosely coupled components?

The course is scheduled each Friday, during semester #8. The course requires to be fluent in Java, and a strong background in object-oriented programming. The case study is the same for the whole course, and requires a strong investment in software development by teams of four students. Splitting your team into two sub-teams, one for the architecture part and one for the devops one is definitively not a winning strategy (been there, done that).

The whole project relies on an open-source reference implementation of The Cookie Factory, a system to sell cookies to delighted customers, which will been made available to you within the Github classroom we'll be using for the exercices..

A paper (extended abstract) describing this course is published in the "First international workshop on software engineering aspects of continuous development and new paradigms of software production and deployment" (aka DevOps'18), and available here: devops_paper.pdf.

Teaching Staff

Specific pages (e.g., lectures material, deliverable contents)

Case study description:

Planning

Planning

  • Blue sessions are related to ISA
  • Green sessions are related to DevOps
  • Red sessions are related to examinations (defence or written exam)

Deliveries & Milestones

Deliveries are automatically extracted from the github repository of the team.

  • Monday, February 17th: first architecture report

Evaluation

Even if the case study is shared and the course merged, this is administratively talking two different courses. As a consequence, the evaluation must be separated.

Evaluation is organized as follows:

Tooling

  • J2E environment: Apache TomEE+
  • Integration testing: Arquillian
  • .Net development: Mono
  • Containers: Docker
  • Continuous integration: Jenkins
  • Repository: ArtiFactory

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%