BIO-210 / 4 crédits

Enseignant: Mathis Alexander

Langue: Anglais


Summary

We present and apply software engineering principles to program projects in Python. Projects cover problems in life sciences, and will be developed over the course of the semester.

Content

Keywords

Python, software engineering, pattern formation, associative memory

 

Learning Prerequisites

Required courses

Object-oriented programming and Information, Computation, Communication

 

Important concepts to start the course

Programming skills

Learning Outcomes

By the end of the course, the student must be able to:

  • Design an application meeting given specifications
  • Optimize the adequacy of a program in relation to the targeted functionalities
  • Use tools dedicated to the realization of software projects (version control, debugging, profiling)
  • Develop a medium-sized application using python
  • Use known libraries and interface other programming languages
  • Interpret software documentation

Transversal skills

  • Write a scientific or technical report.
  • Evaluate one's own performance in the team, receive and respond appropriately to feedback.
  • Resolve conflicts in ways that are productive for the task and the people concerned.
  • Manage priorities.
  • Use both general and domain specific IT resources and tools
  • Keep appropriate documentation for group meetings.
  • Assess progress against the plan, and adapt the plan as appropriate.
  • Set objectives and design an action plan to reach those objectives.

Teaching methods

Lectures with code examples, practical work on computers, problem sets, realization of one graded project

Expected student activities

Participation in the course. Realization of problem sets and projects in exercise sessions and individual work during the week.

Assessment methods

The final mark is a combination of 3 evaluations: individual work for the problem sets in the first classes (50%), evaluation of the second project carried out as a team (25%), individual contribution to teamwork (25%).

In teamwork, programming tasks are defined collaboratively and difficulty points are assigned to them. The individual contribution is calculated by the number of points accumulated by the student during the project (by carrying out the corresponding tasks).

The evaluation criteria for final projects take into account:

  • full history on git
  • integration and completeness of tests
  • quality of documentation, clarity of code
  • code quality, program performance, elegance of visualizations
  • understanding algorithms

 

Supervision

Office hours No
Assistants Yes
Forum Yes

Resources

Virtual desktop infrastructure (VDI)

Yes

Bibliography

Dans les plans d'études

  • Semestre: Automne
  • Forme de l'examen: Pendant le semestre (session d'hiver)
  • Matière examinée: Projects in informatics for SV
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines

Semaine de référence

 LuMaMeJeVe
8-9     
9-10     
10-11CM5    
11-12    
12-13     
13-14CO4
CO5
CO6
    
14-15    
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22     

Lundi, 10h - 12h: Cours CM5

Lundi, 13h - 15h: Exercice, TP CO4
CO5
CO6