Project 2 in Computer Science: Design of an Interactive Website

lsinc1002  2022-2023  Charleroi

Project 2 in Computer Science: Design of an Interactive Website
5.00 credits
30.0 h + 30.0 h
Q2

  This learning unit is not open to incoming exchange students!

Teacher(s)
Barbette Tom;
Language
French
Prerequisites
These projects assume the parallel acquisition of basic notions in programming as targeted by the course LSINC1101.
Main themes
This teaching unit revolves around programming projects.
The objectives are:
  •     to model simple situations using computer systems;
  •     to design a simple interactive service accessible via a web interface and using a relational database;
  •     understand the basic principles of how interactive websites work;
  •     to confront professional constraints: group work, meeting deadlines, sense of responsibility;
  •     to acquire transversal skills taking notes, writing reports
Learning outcomes

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

S1.I2 , S2.1, S2.2, S2.4 , S4.1, S4.2, S4.3 , S5.2, S5.3, S5.4, S5.5, S5.6 With regard to the AA reference system of the "Bachelor in Computer Science" program, this course contributes to the development, acquisition and evaluation of the following learning outcomes:
    S1.I2
    S2.1, S2.2, S2.4
    S4.1, S4.2, S4.3
    S5.2, S5.3, S5.4, S5.5, S5.6
Students who successfully complete this course will be able to:
  • analyze a concrete situational problem requiring the development of an interactive website and perceive the role that it will have to play;
  • design the website corresponding to the identified needs and justify the design choices;
  • implement the website wisely using the Python language and a database;
  • document the web application and implement unit tests to validate its proper functioning;
  • use a programming environment comprising integrated programming tools such as an editor, compiler, debugger, and tools for handling files, tests, documentation.
Students will have developed methodological and operational skills. In particular, they will have developed their ability to:
  • contribute to group functioning within the framework of cooperative active learning devices of the project type, explain the issues (advantages, disadvantages) of group work and give some operational leads to promote effective group work;
  • lead a process of developing a computer application
  • understand a situational problem described via written documents, an oral presentation and extract what makes its essence and reformulate it in order to define the expected result;
  • establish the specifications and a roadmap for a project;
  • outline the architecture of the interactive website to give a high-level description allowing any IT specialist to quickly perceive its structure;
  • document the application so that it can easily be adapted later by another IT specialist;
  • design and perform tests to validate the developed application;
  • collaborate effectively on application development;
  • write a coherent and structured project report in order to convince of the success of the project;
 
Content
The course presupposes basic knowledge of the python programming language as seen in the LINFO1101 course. Students work in groups to solve more complex problems than those covered in the programming course. Each group will work on a unique project, but with several deadlines and intermediate developments.
Generally speaking, students should learn to:
  • work effectively in a group
  • write correct programs
  • document their codes
During the different phases, the following skills will be assessed:
  • write tests that validate the proper functioning of their programs
  • document their programs and associated testing
  • take a critical look at the work of other groups of students to help them improve (constructive peer-review)
  • evaluate the performance of their programs
  • find python libraries and modules that solve similar problems
  • compare the features and performance of different solutions to the same problem
  • document and analyze these differences in functionality and performance
  • build simple SQL queries
Teaching methods
Project learning in groups of multiple students. Each group will be followed by a member of the teaching staff.
Evaluation methods
  • Evaluation of individual and group participation during the year, based for instance (non-exhaustive) on the follow-up by the person from the teaching team delegated to follow up the group (15%).
  • Evaluation of the different phases of the project on the basis of written reports and documentation (65%).
  • Evaluation of the final phase of the project based on the oral presentation (10%).
  • Peer review assessment (10%).
The weighting may be modified in the event of the student's non-effective participation in the work of the group as well as in the event of an insufficient or very insufficient individual mark. Students who fail in June will be able to redo an individual project during the summer. This project will count for 66% of the points, the 34% will remain the score obtained in June.
Faculty or entity
SINC


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

Title of the programme
Sigle
Credits
Prerequisites
Learning outcomes
Bachelor in Computer Science