21744. Programming Projects Laboratory . Group 2


Name21744 - Programming Projects Laboratory
Group Grup 2 ( Campus Digital )
Academic Year 2018-19
Credits6 credits
Period First semester
Language English
  • Degree in Computer Engineering (2010) - Third year
  • Degree in Computer Engineering (2014) - Third year


LecturerOffice hours for students
Start timeEnd timeDay of the weekStart dateEnd dateLocation/Building
José María Buades Rubio
(Head of group)
10:30h11:30h Monday 10/09/201825/02/2019 246 / Anselm Turmeda


The course Programming Projects Laboratory is part of the branch of computation. The main objective of the course is to carry out a complete programming project from scratch and coming to get a product ready for run in a real system.

Achieving IT project involves the development of software from a detailed description. Sometimes, this detailed description is not enough and perfect. A computer project will be developed in this course, bringing out the most common problems faced by a project implementing a software.

Specifically, we apply the concepts taught in other subjects: Programming, Algorithms, Data Structures, Database and Software Engineering.


This is an advanced training course, and student must have knowledge of various topics.


Advanced knowledge of programming.

Knowledge of Algorithms, Data Structures and Databases.


Notions of English readed is recommended, because most of literature is in that language.

Compilers notions is advisable.


Its skills are descripted at "Acuerdo del Consejo de Universidades"


  • CI301: Ability to have a thorough understanding of the fundamental principles and models of computation and know how to apply to interpret, select, assess, model, and create new concepts, theories, practices and technological developments related to computer science.
  • CI303: Ability to evaluate the computational complexity of a problem algorithmic strategies that can meet lead to its resolution and to recommend, develop and implement one that guarantees the best performance according to the requirements.


  • CTR01: Capacity for analysis and synthesis of organization, planning and decision making.
  • CTR02: Capacity for critical analysis and proposing and implementing new solutions.
  • CTR03: Ability to acquire new knowledge independently.
  • CTR04: Ability to search for resources and information management in the field of computing.
  • CTR05: Ability to work in multidisciplinary teams and multilingual.
  • CTR06: Leadership, initiative, entrepreneurship and efficiency in demanding environment based on creativity, quality and adaptation to new situations.
  • CTR07: Ability to communicate concepts of computing orally and written in different areas of action.
  • CTR08: Ability to, at a medium level, understand, speak and write in English.
  • CTR09: Ability to develop interpersonal skills, and commitment to social, ethical, environmental and fundamental rights, especially the values ??of equality and capacity.


You may consult the basic competencies students will have to achieve by the end of the degree at the following address: http://www.uib.eu/study/grau/Basic-Competences-In-Bachelors-Degree-Studies/


In order to acquire this knowledge, the student must develop threeprojects: C# Console Application, C# Forms Application and OpenCL Application

Thematic content

Module 1 C# Language
Module 2 User Interface
Module 3 Database Connection
Module 4 Parallel Programming: OpenCL

Teaching methodology

This section describes in-class and distance activities sheduled on the course in order to develop and assess the skill set forth above.

In order to promote autonomy and personal work, the subject is part of the Campus Extens project, dedicated to flexible distance learning, which incorporates the use of telematics in teaching. Thus, by tele-education platform Moodle, students will be available to communicate onlinethe teacher, a calendar with interesting news, electronic documents, Internet links and the proposed practice of self-employment.

Classes will be based on Flipped-Classroom model. The student learns individually main aspects, and questions and depth concepts are worked in class.


The following table shows the distribution of hours according to different in-classand distance (or self) activitiesplanned and its equivalency toECTS (1 ECTS = 25 hours of student work).

Attended activities (2,4 credits, 60 hours)

TypeNameG. typeDescriptionHours
Theory classes Lectures Large group (G)

Through the expository method, the teacher will establish the theoretical and practical foundations for the achievement of the subject.

Laboratory classes Project Development Medium group (M)

The student will advance in the development of the applications in a leaded way.

Laboratory classes Classroom Medium group (M)

Small practical problems will arise to consolidate the theoretical aspects in turn will be used to carry out the final work.


At the beginning of the semester the subject schedule will be available to students through the UIBdigital platform. This schedule will at least include the dates for the continuous assessment exams and assignment deadlines. Furthermore, the lecturer will inform students as to whether the subject syllabus will be carried out according to the schedule or otherwise, including Campus Extens.

Non-attended activities (3,6 credits, 90 hours)

Group or individual self-study Project Development

In order to consolidate the aim of the course skills, student will go forward on the implementation of software development projects in a highly leaded way initially, gradually student will take more autonomy to the student, which should make decisions to solve problems that will appear.

Group or individual self-study Memorandum

The student must perform a report about the work progress.


Specific risks and protective measures

The learning activities of this course do not entail specific health or safety risks for the students and therefore no special protective measures are needed.

Student learning assessment

The skills set out in thiscourse will be assessed by evaluating the project carried out by the student. The table in this section describes, for each evaluation procedure, assessment criteria and their weight in the rating of the course evaluation.

The student will obtain a numerical score between 0 and 10 for each evaluation activity, which will be weighted according to their weight, in order to obtain the overall rating of the course.

Students who have not obtained a rating greater than or equal to 5, both the final exam and practice (recoverable activities) will be able to recover them in the recovery period.

If plagiarism is detected work (source code or documentation) or part of it will involve the direct failure of the entire course for those students involved beyond recovery.

In accordance with article 33 of the Academic Regulations, "regardless of the disciplinary procedure that may be followed against the offending student , the demonstrably fraudulent performance of any of the evaluation elements included in the teaching guides of the subjects will lead, at the discretion of the teacher, to an undervaluation in the qualification that may suppose the qualification of "suspense 0" in the annual evaluation of the subject".

Project Development
Type Laboratory classes
Technique Papers and projects ( non-retrievable )

The student will advance in the development of the applications in a leaded way.

Assessment criteria

Development of small practices where students demonstrate that has acquired the theoretical concepts explained.

Skills avaluated:CI301, CTR03, CTR04, CTR06, CTR07, CTR08 y CTR09.

Final grade percentage: 40%

Project Development
Type Group or individual self-study
Technique Student internship dissertation ( retrievable )

In order to consolidate the aim of the course skills, student will go forward on the implementation of software development projects in a highly leaded way initially, gradually student will take more autonomy to the student, which should make decisions to solve problems that will appear.

Assessment criteria

Performing a programming project, well documented.

Skills avaluated:CTR01, CTR02, CTR07 y CTR08

Final grade percentage: 20% with minimum grade 5

Type Group or individual self-study
Technique Papers and projects ( retrievable )

The student must perform a report about the work progress.

Assessment criteria

Development of a management software.

Skills avaluated:CI301, CI303, CTR01, CTR02, CTR03, CTR04, CTR05, CTR06, CTR08 y CTR09

Final grade percentage: 40% with minimum grade 5

Resources, bibliography and additional documentation

The course will be taught using Campus Extens and ad hoc material available (in English).

As additional support please consult the following references.

Basic bibliography

Documentation will be available at Campus Extens.

Additional bibliography

  • Aaftab Munshi,Benedict Gaster,Timothy G. Mattson,James Fung,Dan Ginsburg. "OpenCL Programming Guide",Addison-Wesley Professional. 1st Edition, July 2011.
  • Tom Archer. "Inside C#", Redmond, WA : Microsoft Press, 2002.
  • Mickey Williams."Microsoft Visual C# (core reference) ", Redmond, Wash. : Microsoft Press, 2002.
  • Rebecca M. Riordan. "Microsoft ADO.Net Step by Step",Redmond, Washington : Microsoft Press, 2002.