Duration
20h Th, 280h Proj.
Number of credits
Lecturer
Language(s) of instruction
English language
Organisation and examination
All year long
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
In this course, teams of 4-6 students will carry out a substantial integrated software project, which mainly builds on the knowledge, know-how and skills acquired during their bachelor studies (i.e., programming, software engineering, data bases, operating systems and networks), with the goal of consolidating and integrating them, while achieving a realistic project for real users. The project will include several sprints during which a usable and potentially releasable product increment will be created. Seminars and continuous project reviews are organized to teach fundamentals in project design, management, tooling, as well as team coordination, and communication.
Learning outcomes of the learning unit
The project aims at developing the students' ability to carry out a realistic, complex and collaborative software project from an initial and incompletely defined idea throughout to the operational deployment of a working application.
The students will learn and actively practice new disciplines like requirements engineering, architecture, packaging, project management, team leadership, reporting, oral presentation, and more, thereby improving their autonomy and ability to work efficiently in a team, and their communication and writing skills.
This course contributes to the learning outcomes I.1, I.2, II.1, II.2, III.1, III.2, III.3, III.4, IV.1, IV.2, IV.3, IV.4, V.1, V.2, VI.1, VI.2, VI.3, VI.4, VII.1, VII.2, VII.3, VII.4, VII.5, VII.6 of the MSc in computer science and engineering.
Prerequisite knowledge and skills
A bachelor degree in computer science or in engineering with a major in computer science.
Planned learning activities and teaching methods
- Seminars on fundamentals in project management with a focus on Agile methodologies;
- Seminars on software engineering (modelling, testing, source code management, CI/CD);
- Seminars on communication skills (oral and written);
- Sessions on team dynamics;
- 5 project reviews with oral presentations;
- Feedback on technical progress and project management;
- Creation of a project's wiki, with the whole project documentation, meeting minutes, intermediate reports, presentations, and procedures;
- Production of a final presentation / report;
- Final demonstration of the project with handover to the client.
Mode of delivery (face to face, distance learning, hybrid learning)
Face-to-face course
Additional information:
- Seminars;
- Monthly review meetings;
- The project is mainly carried out remotely.
Recommended or required readings
Slides used during the seminars do provide guidelines and tips. Every project is different, every team is different; henceforth, students are expected to extensively search, collect, and equip themselves with all necessary knowledge and resources for their specific project.
Assessment methods and criteria
Written work / report
Continuous assessment
Additional information:
No exam in June.
The evaluation will be based on:
- the intermediate review meetings (progress achieved, quality of project management) (40% overall, i.e., 10% per review meeting),
- the project completion report (10%),
- the delivered software (35%),
- the final project defence and demonstration (15%).
The project defence consists of an oral presentation and a live demonstration of the system, followed by a question/answer session. All products of the project (doc, code, procedures, scripts, data, etc.) shall be packaged is a form suitable for a formal handover to the client.
The final grade takes into account the amount and quality of the achievements, the quality of the code, docs, reports, and oral presentations, as well as the pertinence of answers to questions during milestone reviews.
Typically, grades are assigned to the whole group. However, in some particular cases (e.g., when there are evidences that a member of a group has not participated enough in the project), the grade may be assigned individually, reflecting the personal involvement of each member of a group.
Resit
In case of issue in June, a resit is possible. Students will have to improve their software based on a requirements sheet. Students will have to submit the updated code and a written report describing the improvements and individual contributions. A review (with software demo) will be organized in August/September.
Work placement(s)
Organizational remarks
- Teams comprise +/- 5 students, formed as much as possible on formulated project preferences, while ensuring a diversity of student profiles in each group (i.e. computer scientists and engineers).
- Presence at the seminars and intermediate reviews is mandatory.
- The project starts early during the 1st quarter.
- The final report must be submitted by mid-May.
- Final defence and demonstration also takes place mid-May.
Additional resources and facilities notably relating to the execution of software projects are available at the course's dedicated wiki.
Contacts
(please, favor MS-Teams group chat and channels that will be created per project to communicate with the educational team)
Coordinators:
- Benoit Donnet (Benoit.Donnet@uliege.be)
- Bernard Hauzeur (B.Hauzeur@uliege.be)
- Guy Leduc (Guy.Leduc@uliege.be)
- Laurent Mathy (laurent.mathy@uliege.be)
- Benoît Mattheus (benoit.mattheus@uliege.be)
Items online
Web page
The course web page contains PDF of the seminar slides, projects subjects, Sprints/Reviews details, the Course agenda. In addition, students can interact with the Pedagogical Team through the Discusson Forum.
wiki
additional materials