The activities used to underpin the competences and the skills in the course
are (preceeded by the reference to the program objectives):
- Exercises covering the following topics: design the most appropriate data
structure for a functionality in an application, write code fragments to
manipulate data structures, read/write fields, process data, etc, calculate the
amount of memory occupied by different data structures.
- During the lab sessions code fragments are written, compiled, linked and
executed using different compiler options and detect, analyze and correct these
programs using the debugger.
- During the lab sessions code fragments are written to create, destroy and
manipulate data structures using dynamic memory. Students are also requested to
divide a given functionality into functions and write their code.
- During an eight-week period students are divided into teams and they must execute a project entailing the design of a software
application containing multiple milestones, deliverables and objectives.
- Students are requested in several activites throughout the course to search
for auxiliary documents to support the information studied in a topic. In their
final report, they must acknowledge the information sources they used.
- Use of the following tools: compiler, IDE, version
control and emulator in multiple laboratory sessions.
During these activities the teaching staff reviews the student work in the
class, supervises the lab sessions, answers questions in course forum,
maintains at least one hour a week of office hours and calls for plenary office
hours upon demand.