Télécom ParisTech

Distributed Software Systems (SLR)

Software, especially in distributed systems, is at the core   of the vast majority of today’s computer based and socio-technical applications, including embedded and  pervasive systems, big data centers, Web services, cloud systems, and systems of systems.

Major web industries have lead the way in adopting innovative distributed architectures and also development methods that are now spreading to other sectors. These new practices are based on awarding greater responsibility to designers and developers, on agility in the development of new services, on continuous improvement, on cooperative work, and on community and crowd interaction for open-source code development.

In the second year this study track presents an overview of the theoretical foundation, background concepts, structural models, basic techniques, architectural solutions, practices and methods essential to architects, designers and developers of distributed software and systems.

The objective is that students acquire practical knowledge, allowing them to understand engineering as it is currently practiced in the business world.  The issues addressed encompass all phases of the development process, from requirements, through design, validation and verification, software distribution and maintenance, and are continually updated in relation to the new application domains.

2nd year courses

SLR 2nd year program
(192 hours) 
 Fall semester   Spring semester 
Period 1 Period 2 Period 3 Period 4
Time slot A1 SLR201 Basics of distributed application development (Java-based) SLR203 Distributed software architectures SLR206  Distributed algorithms SLR207 Infrastructures and platforms for distributed computing
Time slot A2 SLR202 UML modelling learning : structural model and behaviour simulation SLR204 Introduction to formal verification of Distributed Software and Systems SLR205  Requirements Engineering and development methods
SLR208 New IT practices, new IT technologies and digital business transformation (prerequisite for the SLR option next year)
SLR209 SLR seminar (prerequisite for M2 COMASIC)

Details :

Fall semester, period 1

  • SLR 201 Basics of distributed application development (Java-based) (24 hrs)
    This course aims to introduce the basic notions necessary for the understanding and development of distributed applications (focused on Java). It also aims to introduce the concept of middleware and to provide two concrete examples of different middleware types: based on remote method invocations and message-oriented communication models.
  • SLR 202 UML modelling learning: structural model and behaviour simulation (24 hrs)
    The objective of this course is to learn the basics of the most popular standard in industry to model software architectures: UML. In the scope of a simple and generic design process, this course covers (i) the modelling of the functional requirements of a software application, (ii) the design of software architectures with object oriented paradigms, and (iii) the behavioural modelling of software applications.

Fall semester, period 2

  • SLR 203 Distributed software architectures (24 hrs)
    This Learning Module teaches designer-developer activities for Java Web applications to make them maintainable, evolutionary and scalable.
  • SLR 204 Introduction to formal verification of Distributed Software and Systems (24 hrs)
    The aim of this module is to introduce key concepts related to the formal verification of concurrent and distributed software.

Spring semester, period 3

  • SLR 205 Requirements Engineering and development methods (24 hrs)
    The goal of this Learning Module is to present the conceptual, methodological and technical knowledge essential for a software architect, upstream of the development life cycle. This course is organized in two parts: (i) Introduction to Requirements Engineering; (ii) Design of technical solutions and industrial project methods.
  • SLR 206 Distributed algorithms
    Students who complete this module will learn how to design distributed algorithms, reason about their correctness, and derive matching complexity bounds. The primary focus of the module is on understanding of the foundations of distributed computing. The module will discuss basics of fault-tolerant shared-memory computations, consensus, transactional memory, failure detectors, and state-machine replication.

Spring semester, period 4

  • SLR 207 Infrastructures and platforms for distributed computing (24 hrs)
    This Learning Module presents distributed computing and large scale technologies. An illustration will be given by implementing a real large scale distributed system.
  • SLR 208 New IT practices, new IT technologies and digital business transformation (24 hrs)
    This learning module aims to introduce students to the challenges of digital business transformation. Its purpose is to highlight the co-evolution of IT practices and technologies (Cloud computing, mobile applications, Big Data) and organizations. It will allow students to connect their skills already acquired in advanced computing technologies in the SLR track to the associated changes in the market, organizations, social and managerial practices. This Learning Module is recommended to follow the Information Systems option.
  • SLR 209 SLR seminar (24 hrs)
    This UE allows the students to develop the fundamental and conceptual knowledge introduced in all UEs of the SLR track. Each student will discuss a topic of study provided by a teacher and will give a presentation at the seminar organized at the end of the Learning Module.

3rd year options

In third year, students can choose one of two programs from the SLR study track: (i) Information Systems, located on the school premises; and (ii) Complex Systems, which is part of the Computer Science track offered by the Paris-Saclay campus (COMASIC). These two third year programs require specific courses in period 4 of the second year.

1) M2 COMASIC “Design, Modelling and Architecture of Complex Computing Systems”

Extending the SLR track, this course concerns the architecture of systems that can be embedded or complex, with varying scale and spatial distribution, including systems of systems. COMASIC comprises the following topics: system and model engineering, large-scale information systems and transactional models, software and hardware platform, verification and validation, project management, and domain-specific system modelling.

Targeted specialisations include: system architect (for distributed, embedded, critical and autonomic systems), system engineering project leader, consultant in enterprise architecture and system engineering, analysis and development engineer for system architecture and system modelling, academic researcher (PhD student).

2) An option "Information systems " at Telecom Sud Paris and Telecom Ecole de management 

3) Option at Télécom ParisTech (opening in 2017 - The curriculum of this course is still under construction)

This course focuses on the challenges related to the digital transformation and innovation. It focuses on the crucial role that Information Systems (IS) plays in digital transformation turning them into a key competitive advantage for enterprises.

This interdisciplinary course relies on the complementarities between technical and managerial points of view, in order to offer students a unifying perspective on the various concerns related to information systems. Indeed, a company’s success depends on how it addresses the challenges related to organization, maintenance, and strategic usage of Information Systems.

Moreover, developing IS as computer systems is a complicated process implying optimisation, transformation and innovation activities. Such activities aim to bridge the gap between domain-specific business requirements and targeted technical solutions, typically via an agile development method. 

This course will also enable students to:

  • Master the basic concepts related to the management, leadership, evaluation and control of IS projects;
  • Acquire conceptual knowledge of well-known enterprise architectures (e.g., TOGAF or ITIL);
  • Complete their technical knowledge of specific topics, such as Enterprise Resource Planning (ERP) versus specific IS development, IS architecture evolution, domain-specific solution development (based on Service-Oriented Architectures -- SOA), process modelling, identity management, IS infrastructure and security, etc.  
  • Apprehend emerging technologies both from technical and organisational perspectives (transforming the IS organisation and eco-system).
  • Improve understanding of IS management and development.

Targeted specializations include: IS architect and/or technical consultant and/or project manager assistant, for large enterprises, energy providers, banks, insurance companies, telecom operators, or for software and computing service companies, etc.