The programme of study of the Bachelor's Degree in Techniques for Software Development consists of 180 ECTS credits, which are distributed in accordance with the Spanish Ministry of Education's guidelines.
Courses Credits
Basic courses 48
Compulsory courses 96
Optional courses 24
Final Project 12
Total 180



For the first semester of the programme, we recommend choosing one of these two course packages and only enrolling courses from that package:


 Package 1 Credits




Package 2 Credits




These packages offer several advantages:

- Submission deadlines for assessment activities do not overlap on the same day.

- There is some degree of flexibility in the assessment process.


If you are requesting credit recognition or you have any questions regarding the enrolment process, your tutor will offer you personal advice. 

Final project

At the end of their bachelor's degree studies students must complete a final project. The final project is worth 12 ECTS credits.

The Final Project course requires that students work on their own to go over the knowledge acquired in the other courses that make up the degree. Students must take this course in order to complete the programme. As it aims to assess skills worked on as part of the programme, students must have already successfully completed a certain number of credits to enrol.

The programme offers various specific areas in which students can do their final projects. Each student must choose one of these fields of knowledge for their project. To enrol on the Final Project course, students need to apply for a specific area and this application must then be approved by the programme's teaching staff. A key figure in the final project selection process is the tutor, who informs and advises students.

Students work on the final projects on their own with support and guidance from a final project supervisor. The supervisor is responsible for monitoring the project and guiding and advising students in each of the following aspects: the initial idea, establishing a solid basis, the methods, reporting the results and defending the project.

The final project concludes with a defence, in which students must present their project before an assessment committee (comprised of at least two members of the teaching staff).

The final project mark is based on three factors: 1) the development of the project, 2) the final report, product, project or study produced, and 3) the defence of the project.

For more information about the teaching and the application process, consult the course plan on Campus once you've applied for admission to the programme.

+ Find out more about the final projects

Course type Optional
Duration Curricular internship: 12 ECTS credits (equivalent to 300 hours)
Mode On-site, online or both.
Requirements Courses passed totalling at least 120 credits
Support Students receive support from two figures during the internship: someone working at the internship centre acts as their tutor there and a member of the UOC's teaching staff acts as their academic tutor. Together they ensure that the internship meets the educational goals set.
Partner companies NOTE: You can see the specific availability of internships offered at these centres in the internship management tool. The list of companies with internship agreements may change from the time you sign up to when you actually start your internship.


You can find more information about how internships work in the course plan. This information is updated each semester, which means the details always refer to the current semester.

The internship application procedure and dates can be found in the Procedures / Curricular internships section of the Virtual Campus.

+ Find out more about the internship


The Bachelor's Degree in Techniques for Software Development has a minimum duration of 3 academic years, distributed over 6 semesters, with a total work load of 180 ECTS credits.

However, the flexibility of the UOC's academic regulations allows each student to adjust the length and pace of their studies to fit in with their other commitments and the time they have available.

As such, students can decide which courses to take on a semester-by-semester basis. To assist with this process, the UOC provides each student with a tutor who, when it comes to the time to enrol, can offer them any help or advice they might need.

Learning resources

Throughout the programme, students have access to software and services selected by the UOC's teaching staff. This includes a range of open-source software, licences for the most commonly used proprietary software and a wide variety of online journals and Gartner reports.

Students learn to use different programming languages, including C, Java and JavaScript, as well as different libraries and work environments for these languages. They also use different tools for the design, development, deployment and maintenance of software. These include integrated development environments (IDEs) such as Eclipse, NetBeans or IntelliJ, version control systems such as GitHub and GitLab, and software modelling tools, such as Papyrus and MagicDraw.

In the more practical courses, students have access to an online lab that provides support for learning programming languages and for installing, setting up and using development tools.

The languages and tools used are constantly under review. Consequently, this list may change to reflect current trends and the needs of the programme.

Students should have 64-bit computers (and operating systems) with at least 4 GB of RAM (6 GB is recommended).

Next enrolment:
April 2023

Information on prices and enrolment
Would you like more information?

Send us your details and we'll send you information on this program and regarding UOC products, services and promotional activities

Dial a number that's 9 digits long.
Dial a number that's 9 digits long.
Country Code
Dial a number that's 9 digits long.
Country Code
Dial a number that's 9 digits long.

Payment in Instalments

You can pay for your university bachelor's degree in instalments