Advanced computer science project

linfo1212  2022-2023  Louvain-la-Neuve

Advanced computer science project
5.00 credits
30.0 h + 30.0 h
Q1
Teacher(s)
Duhoux Benoît;
Language
French
Prerequisites
This course assumes that you have acquired the basic notions of programming (instructions, variables, loops, conditions, ') as well as programming methodology as taught in courses LINFO1101 or LEPL1401
This project supposes the parallel acquisition of the notions of algorithms and basic data structures as targeted by the course LEPL1402.
Main themes
  • specification of user requirements,
  • designing multi-tier applications in a client-server environment
  • quality control of the system
Learning outcomes

At the end of this learning unit, the student is able to :

1 Students who have successfully completed this course will be able to approach the construction of a computer application by following some basic software engineering practices. More specifically, they will have developed their ability to
  •     write precise specifications for the application to be developed,
  •     design the architecture of the application according to the specifications,
  •     implement the designed application,
  •     document the application and
  •     control the quality of the system by incorporating functional tests.
In addition, students will have developed methodological and operational skills, such as
  •     work in a team: divide and coordinate the development tasks of the system, so that each member of the group can defend this project against other computer scientists who wish to assess its quality;
  •     perform a convincing demonstration of the software developed in front of future users of this application;
  •     carry out an effective technical debriefing with future developers of this application.
 
Content
  • creation of web pages: HTML, CSS
  • programming on the web: JavaScript
  • creation of a web server: NodeJS
  • databases: ORM
  • security in web applications: HTTPS, sessions, accounts
  • application aware of its end-user: dynamically adapt an application depending on the user's preferences
  • project management
Teaching methods
At the beginning of the course, the students work on a preparatory project to become familiar with the different technologies for programming on the web. These technologies will be introduced during lectures. If the health situation allows this, project assistance will be given on campus.
Then the students collaborate in groups on a larger web-based application, using the technology introduced at the beginning of the course.
Throughout the course, links to resources on the web will be provided, but it is expected from students that they actively search for additional information.
Evaluation methods
The evaluation is done as follows:
  • 2.5 % : step 1 of the preparatory project 0.5 points);
  • 15 % : the complete preparatory project (3 points);
  • 2.5 % : the specifications of the final project (0.5 points);
  • 80 % : the final project (16 points).
The evaluation of the final project is based on the realisation of the project, a written report and a presentation. After the presentation, an oral defense is an integral part of the evaluation of the project which can affect the grade received for the realisation of the project, the report and the presentation.
The final project can also be done in the second session. It is allowed to do a new project, or to extend the previous project, but in this case the student is obliged to add extensions proportionally to the additional time that students in the second session have compared to the first session. It is obligatory to contact the professor before doing a project in the second session to determine the extensions that will be added. Otherwise the criteria remain unchanged.
Faculty or entity
INFO


Programmes / formations proposant cette unité d'enseignement (UE)

Title of the programme
Sigle
Credits
Prerequisites
Learning outcomes
Additional module in computer science

Master [120] in Linguistics