Download computer science spring

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
 Centrale Nantes
Computer Science
ENGINEERING PROGRAMME
SPECIALISATION
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
STEP-­‐BY-­‐STEP REAL TIME KERNEL BUILDING Professor: Pierre MOLINARO Objectives
Presentation of parallelism principles and how real-time systems work. The students will study
synchronization and communication mechanisms. The goal is to help them understand the
design process of operational architectures for real-time embedded applications.
Course contents
- Introduction to the objectives of parallelism, dedicated to real-time applications
- Communication and synchronization through shared variables.
- Modelling and verification principles for parallel programs.
- Industrial hardware architecture for implementing real-time applications. Application fault
tolerance and operational dependability.
- Construction of a real-time operating system kernel: how to dispatch and organize it. Task,
event and time management primitives.
Course material Keywords
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
20
10
0
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
PARALLELISM AND MODEL CHECKING Professor: Olivier ROUX Objectives
Presentation of parallelism principles and how distributed systems and real-time systems
work.
The students will study synchronization and communication mechanisms in both parallel and
distributed systems.
Finally, the course discusses the modeling and verification issues of parallel applications.
Course contents
- Introduction to the objectives of parallelism, architectures and the competition.
- Communication and synchronization through shared variables.
- Communication and synchronization in distributed systems,
- Modelling and verification principles for parallel programs .
- Industrial hardware architecture for implementing real-time applications. Applications fault
tolerance and operational reliability.
- Construction of a real-time operating system kernel: how to dispatch and organize it. Task,
event and time management primitives.
- Field network architecture and operation principles. Protocols and services.
Course material Keywords
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
22
8
0
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
SYSTEMS AND ARCHITECTURE Professor: Didier LIME Objectives
The objective of this course is to understand how modern computers work, from the
perspective of both hardware and the operating system, i.e., the first abstraction and
software management layer.
Course contents
The course is divided in two main parts: Hardware Architecture and Operating Systems
1. Hardware Architecture
- Micro-architecture
- Instruction sets
- Instruction decoding
- Algorithm / architecture adequacy
- Memory hierarchy
- Pipelines
- Branch prediction
2. Operating Systems
- Life and death of processes
- Scheduling
- Interprocesses communication (pipes and signals)
- Memory management, virtual memory
Course material John L. Henessy et David A. Patterson. Computer architecture, a quantitative approach (5th
edition). Morgan Kaufmann. 2011
Andrew S. Tanenbaum. Operating systems Design and Implementation (3rd edition).
Prentice Hall. 2006
Keywords
Architecture, Operating Systems
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
Links with other programmes
These concepts are briefly introduced within the Systems and Networks course of the
Computer Science specialisation.
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
20
10
0
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
WEB PROGRAMMING Professor: Jean-­‐Marie NORMAND Objectives
The objective of this course is to provide students with the fundamentals of web
programming.
It starts with HTML-CSS and Javascript and concludes with J2EE and Spring.
Course contents
This course includes lectures and lab work.
Lectures:
- Introducing HTML, CSS and Javascript
- PHP
- J2EE
- Notions of Frameworks
Lab work:
- HTML & Javascript
- PHP
- J2EE
- Framework Play
- SPRING
Course material Keywords
HTML, Javascript, PHP, J2EE, Play, Spring, Synfony
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
6
0
26
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
INFORMATION SYSTEMS Professor: Jean-­‐Yves MARTIN Objectives
The aim of this course is to understand information systems, how they are built, how they
can be analyzed and secured.
Course contents
This course is delivered in three parts.
Part 1
- Information System management
- Cartography
- Urbanization
- ITIL
Part 2 Tools
- LDAP
- Notions of Cloud
Part 3 Security
- Notions of security
- Security planing
- lab work on web application security.
Course material Keywords
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
28
2
0
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
INFORMATION AND COMMUNICATION TECHNOLOGIES Professor: Morgan MAGNIN Objectives
The objective of this course is to cover the information technology spectrum, from data
collection to its use in decision-making, including processing methods. Approaches and
methodology pertaining specifically to web programming will also be illustrated, making a
link to the Web Programming course. This course also outlines the measures to adopt in
order to comply with European legislation on data processing from the very substance of
data to the infrastructures that handle it.
Knowing and understanding IT related legislation
Learning common tools used in IT, XML based
Manipulating common tools like AJAX and Web-Sevices
Course contents
The first part of the course aims to provide an understanding of what can and cant be done
in IT. This means knowing the main legal aspects, understanding the different kind of licenses
that can be used, and the main institutions.
The second part of the course is more technical, focussing on the main XML based protocols
used in IT. These protocols are manipulated during lab sessions:
-
XML, XSD, XSL
Programming with SAX and DOM
AJAX
WebServices
Course material Keywords
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
18
0
12
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
SIMULATION OF INTELLIGENT REASONING FROM KNOWLEDGE REPRESENTATION Professor: Carito GUZIOLOWSKI Objectives
The objective of this course is to introduce different ways to represent knowledge, to derive
its common properties and offer automatic modes of reasoning on these properties. We
discuss logic programming with Answer Set Programming (C. Guziolowski ) and Functional
Programming (D. Lime).
Course contents
There are two main parts to this course.
1. Logic programming
This first part consists in providing problem solutions (especially combinatorial search
problems) by modelling a problem, instead of coding its solution. The modelling is performed
in the form of logical rules that have defined syntax and semantics: Answer Set Programming
(ASP). Powerful solvers are used for resolution: we will use gringo and clasp. The plan
followed to illustrate the main concepts of this programming paradigm is as follows:
-
Declarative Programming
Syntaxe ASP
Semantics of ASP
Modelling a problem
The tutorials and lab work are articulated around a few classic examples of combinatorial
search problems.
2. Functional Programming
In this part, we discuss the functional programming paradigm, wherein the results are given
not by executing a sequence of instructions, but by evaluating a functional expression.
We recall and develop the foundations of this approach i.e., composition and recursion,
and progress to more advanced concepts including:
-
Types of parameterized algebraic data
Higher-order functions
Generics
Non-strict evaluation and infinite structures
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
- Functors, applicative functors and monads.
These concepts are illustrated and implemented using Haskell language.
Course material Keywords
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
3
16
14
0
0
CENTRALE NANTES - ENGINEERING PROGRAMME – C OMPUTER S CIENCE SPECIALISATION
SEMESTER
- SPRING
GROUP PROJECT Professor: Guillaume MOREAU Objectives
The aim of this project is to have students work in groups in order to address design issues,
code sharing, project planning, development.
Course contents
This course is a project undertaken in groups of 5 to 7 students.
Emphasis is placed on project reporting, project management, code sharing, the quality of
the deliverable, documentation of the source code and the results.
Projects change every year. They can include web development, specific software
development, etc.
Course material Keywords
Links with other programmes
LANGUAGE
ECTS CREDITS
LECTURE (hrs)
TUTORIAL (hrs)
LABO (hrs)
PROJECT (hrs)
French
2
0
0
0
48