• Your selection is empty.

    Register the diplomas, courses or lessons of your choice.

Software Engineering

  • School / Prep

    ENSEIRB-MATMECA

Internal code

EI7IT233

Description

The aim of this course is to present modern methods and tools for software development. Software engineering can be characterized as the application of engineering principles to produce reliable, cost-effective software on real machines. Software engineering is not just about development costs, but also about the costs of maintenance and use throughout the life of the software. We will also look at problems specific to large systems (over 1,000,000 lines of code) and generated by teamwork, which require methodological approaches to software design, development and evolution.
The course consists of three parts, taught by different lecturers:

Agile development (A. Le Houedec)
Software engineering (P. Galvao, M. Aune)
Software specifications (E. Girard Smith, F. Solliec)

Skills
C3. Level 2C4. Level 3C5. Level 2C6. Level 2C7. Level 2C8. Level 2C9. Level 2

Read more

Teaching hours

  • CIIntegrated Courses12h
  • CMLectures1,33h
  • TDTutorial6h

Syllabus

Part 1. Agile development (Integrated course 2x2h)

Presentation of agile concepts
Workshop on the agile manifesto
Presentation of the Scrum method: roles, events and artifacts
Focus on the role of the Product Owner and his main tool: the Product Backlog
Workshops on the Backlog and the User Stories that make it up:
Writing User Stories
Axes for breaking down User Stories

Part 2. Software engineering (P. Galvao/M. Aune, Integrated course, 5x2h)

Overview of an IT project

Overview of different production methods
Different types of projects and roles within the team
Introduction to modeling languages
Presentation of the main concerns that will be detailed in the tutorials


Specification and technical architecture of the solution

Presentation of the design phase
Expectations for the technical architecture of an application
Modeling exercises


Construction of the solution

Exercise on modularity
Application architecture and modeling techniques
Implementation, awareness of code quality and functional understanding
Exercise on unit testing


Solution testing

Test pyramid
Exercise on test granularity
Functional and non-functional testing
Deployment

Part 3. Software specifications (E. Girard Smith, F. Solliec)

Read more

Assessment of knowledge

Initial assessment / Main session - Tests

Type of assessmentType of testDuration (in minutes)Number of testsTest coefficientEliminatory mark in the testRemarks
Final inspectionWritten1200.8without document without calculator
Continuous controlContinuous control0.2

Second chance / Catch-up session - Tests

Type of assessmentType of testDuration (in minutes)Number of testsTest coefficientEliminatory mark in the testRemarks
Final testWritten1200.8without document without calculator
Continuous controlContinuous control0.2