Vi samler statistik ved hjælp af cookies

Vi begynder at bruge cookies, når du klikker dig videre til næste side. Du kan sige Nej tak til statistik ved at klikke her. Vi bruger en cookie, så systemet kan huske, at du har svaret "Nej tak".

Hvis du helt ønsker at undgå cookies, skal du slå dem fra i din browser. Du skal dog være opmærksom på, at hvis du slår cookies fra, kan du ikke bruge de funktioner, som forudsætter, at hjemmesiden kan huske dine valg.

Læs mere om IT-Universitetets brug af cookies.

Acceptér cookies

ITU

Kandidat i
Softwareudvikling: Design-sporet

Om Uddannelsen

Design-sporet på den 2-årige kandidatuddannelse i Softwareudvikling (Cand.It., Design-sporet) er en uddannelse for dig, der ikke har en uddannelsesfaglig baggrund inden for IT, men ønsker en solid IT-faglig baggrund, som du kan kombinere med din eksisterende bacheloruddannelse. Uanset hvilken uddannelsesbaggrund du har, får du her mulighed for at udvikle dine evner og viden inden for softwareudvikling på et højt, fagligt niveau.

Uddannelsen har fokus på erhvervslivets behov, og du kommer til at arbejde projektorienteret med design, udvikling og vedligeholdelse af software. Samtidig lærer du om den organisatoriske og ledelsesmæssige del af en udviklingsproces. 

Når du læser Design-sporet på Softwareudvikling, får du indgående viden om softwaredesign, programmeringssprog, distribuerede systemer, algoritmer, softwareudviklingsprocesser, kravspecifikation samt organisation. Du kommer til at arbejde med alle dele af softwareudviklingsprocessen – analyse, design, udvikling, test og idriftsættelse.

Undervisningen, eksamener, opgaveskrivning m.m. foregår på engelsk.

Softwareudvikling: Design-spor

Studiets Opbygning: Design

Design-sporet er specielt udviklet til at give ambitiøse studerende uden en forudgående it-faglig uddannelsesbaggrund mulighed for at skabe et unikt tværfagligt mix ved at kombinere eksempelvis deres samfundsvidenskabelige, humanistiske eller forretningsorienterede bachelor med en overbygning i softwareudvikling. Det er en teknisk uddannelse, så du lærer at anvende matematiske modeller og logik indenfor softwareområdet. 

Design-sporet forbereder dig på at arbejde med udvikling af applikationssoftware for slutbrugere i både den offentlige sektor og i det private erhvervsliv. Kombinationen af den brede erfaring inden for software og den faglige ballast, du har med fra din bachelorgrad, giver dig god mulighed for at arbejde med projektmedlemmer uden teknisk baggrund såvel som specialiserede programmører.

Se studieordning for Software Development.

Design 
1.semester Programming Foundations Software Engineering
Introductory Programming
7,5 ECTS credits
Programming Workshop
7,5 ECTS credits
Foundations of Computing: Discrete Mathematics
7,5 ECTS credits
Software Engineering and Software Qualities
7,5 ECTS credits
2.semester

Programming Foundations Elective Module Specialisation Part 1

Introduction to Database Design
7,5 ECTS credits

Foundations of Computing: Algorithms and Data Structures
7,5 ECTS credits
Course or Project
7,5 ECTS credits
Specialisation
Course 1
7,5 ECTS credits
3.semester

Elective modules Specialisation Part 2
Course or Project** 7,5 ECTS credits Thesis Preparation
7,5 ECTS credits
Specialisation Course 2 (and 3)
15 ECTS credits
4.semester

Master Thesis 30 ECTS credits

 

De obligatoriske moduler (45 ECTS) på dette faglige spor danner tilsammen et intensivt lynkursus i grundlæggende softwareudvikling, som klæder dig på til at dykke ned i mere avancerede emner allerede på 2. semester:

  • Programming (22,5 ECTS): Fokuserer på introducerende begreber inden for programmering og praktisk erfaring, herunder imperativ objektorienteret programmering og introducerende databasedesign.
  • Foundations (15 ECTS): Fokuserer på de grundlæggende strukturer for softwareudvikling, såsom algoritmer, datastrukturer og diskret matematik.
  • Software Engineering (7,5 ECTS): Fokuserer på softwareudviklingsteknikker og processer til kvalitetssikring.

De obligatoriske moduler suppleres med en specialisering og to valgfri kurser. Hvis du ønsker at kombinere din specialisering med et emne inden for din bachelors fagområde, kan du lave din egen specialisering eller bruge dine valgfri kurser til at skabe synergi mellem dine to fagligheder. Læs mere om kurserne her.

Mere

Skjul

Specialiseringer

Uddannelsen tilbyder flere specialiseringer, og du skal mindst vælge en i løbet af dit studie. En specialisering er en organiseret samling af kurser, der giver dig mulighed for at arbejde med avancerede emner inden for et specifikt område, og forbereder dig til at skrive dit speciale. Se oversigt og beskrivelse af de forskellige specialiseringer.

Se beskrivelser af de enkelte specialiseringer nedenfor. Vær opmærksom på, at ikke alle kurser og specialiseringer udbydes både forår og efterår.

Specialisering: Business Analytics

This specialisation enables you to:

  • Design database systems for analysis of big data. Perform data mining using classification and prediction algorithms as well as clustering and rule association approaches 
  • Model and optimise business decisions using AI techniques, mathematical programming, constraint programming and meta heuristics 
Courses: Big Data Management, Data Mining & Intelligent Systems Programming 
Prerequisites: Basic programming skills (for example by having followed Introductory programming and Programming Workshop), Discrete mathematics.
Available on both tracks. Starts every semester (courses can be taken out of order)

Specialisering: Algorithms

The specialisation in Scalable Computing enables you to:

  • Deal with computational problems where efficiency and scalability is crucial 
  • Formulate real-world problems as algorithmic ones, analyze the time complexity of algorithms, and predict their performance in a large scale setting 
  • Recognize computationally hard problems and apply techniques for dealing with them in practice 
  • Devise and implement new, efficient data structures and algorithms for problems based on known algorithms for related problems and on general techniques for designing algorithms 
  • Suggest suitable computing architectures for large-scale computations 
  • Algorithmic skills are typically sought by large multinational IT brands, and by small innovative start-ups developing new technologies. 

Courses: Design track: Intelligent Systems Programming, Algorithm Design, and Applied Algorithms 
Prerequisites: Intermediate Programming Skills, Discrete mathematics, and basic algorithms and data structures (Introductory Programming, Programming Workshop, Foundations of Computing) 

Courses: Advanced Computing track: Intelligent Systems Programming, Algorithm Design Project & Algorithms Seminar. 
Prerequisites: Programming Skills, Discrete mathematics, and basic algorithms and data structures (Introductory Programming, Programming Workshop, Foundations of Computing, Algorithm Design) Available on both tracks (different courses). Starts every semester (courses can be taken out of order).

Specialisering: Software Engineering

This specialisation enables you to:

  • Evaluate and select software engineering methods and processes based on current research to address software engineering challenges encountered in practice. 
  • Systematically evaluate the application of methods, tools and techniques. 
  • Design and implement the architecture of software applications answering both functional and non-functional requirements. 
  • Relate the individual project to the overall IT strategy of an organisation. 
  • Develop and implement an IT governance structure for an organisation. 

The specialisation is designed to enable you to work as a software engineer and, after gaining industrial experience, provide the base to take over roles as project manager or technical lead. You will read the courses together with students studying our part time Master in Software Engineering who already now work in these areas.

Courses: Software Architecture, Advanced Software Engineering and Enterprise Architecture. 
Prerequisites: Introductory Software Engineering, intermediate programming skills (note that you may need to take the introdcutory software engineering as an elective to satisfy these prerequisites).

Available on both tracks. Starts every semester (courses can be taken out of order). 

Specialisering: Programming Languages

The specialisation in Programming Languages will enable you to: 

  • Work with software in an abstract and semi-automated fashion, when the program code itself is subject to manipulation by development tools 
  • Use formal and semi-formal modeling notations such as UML, automata, abstract syntax and grammars; and tools for automatic processing such as lexing and parsing tools, simple code generators and verification 
  • Understand the concepts of byte code, abstract machines, interpretation, compilation, and simple static checking of programs, in order to design domain specific interpreters, develop software productivity tools or debug problems in projects using these technologies

  • Utilize at least one declarative programming notation besides SQL 
  • Design domain specific languages and efficiently prototype, editors, code generators and interpreters for them in order to manipulate structured data 
  • Architect software following the model-driven software development paradigm 
  • Implement end-user interfaces using the Eclipse platform 

This specialisation aims to prepare you to take software developer and software architect jobs in mainstream software houses and consultancies (business software, administrative software, etc).

Courses: Programming Language Concepts and Implementation,  Domain Specific Languages and Automated Software Analysis 
Prerequisites: Fluent programming in Java, UML class diagrams (can be obtained by following Introductory Programming, Programming Workshop, and Introduction to Database design). Foundations of Computing. In general the specialization requires willingness to work with mathematical concepts. 

Available only on Design Track. Starts every Spring.

Mere

Skjul

Specialisering: Pervasive Computing

This specialisation enables you to:

  • Design mobile applications on the Android Platform, including use of basic distributed service architecture 
  • Design pervasive computing systemsusing state of the art design principles 

Courses: Mobile App Development, Pervasive Computing & Pervasive Computing Project 

Pre-requisites: Basic Programming skills in Java and object-oriented programming in general (e.g. by having followed Introductory Programming and Programming Workshop and OOP). 

Available on both tracks. Starts every Spring semester.

Specialisering: Web Systems

The specialization in Web Systems enables you to:

  • Understand and apply various web programming concepts, tools and techniques to develop Web systems 
  • Be conversant of the principles of user interface design in developing dynamic web applications 
  • Develop and design Web user interfaces from existing server-side resources 
  • Learn about sketching, wire-framing, layout principles, composition and the process of web site design and prototyping 
  • Develop an understanding of the practice of the use of HTML5 and CSS3 
  • Develop competency in Javascript and server-side programming for the Web 
  • To work and develop Web sites in inter-disciplinary teams 

The specialization provides students with a practical knowledge of web systems concepts and techniques and user interface design techniques used in the creation of dynamic web systems. The specialization will provide students with an opportunity to develop an understanding of the principles of client and server-side programming as well as user-interface and Web services constructs. Students will also be excepted to apply these principles and to develop their own Web systems resourced. 

The specialisation provides an in-depth look at the object-oriented features of programming for web systems. Students will have exposure to the practice of using appropriate software development tools to complete a development cycle of web systems.

On successful completion of this specialization students will be able to: (i) understand and apply various web system programming concepts, tools and techniques as well as the principles of user interface design in developing dynamic web systems; (ii) develop and design user interaces from existing server-side web systems resources; (iii) use object oriented features of web systems programming; and (iv) create dynamic web sites that are effective in interacting with the visitors on the Web and are able to validate and process input data; (v) be competent themselves to develop server side web services for web systems; (vi) understand and apply web security and privacy protocols effectively (vii) develop an appreciation of the value of inter-disciplinary team work for the process of web system delivery.

Courses: System Architecture and Security (spring), Frameworks and Architectures for the Web (spring), Scalability of Web Systems (fall).

Available only on Design Track. Starts every Spring.

Mere

Skjul

cand.it

Karrieremuligheder

Kompetenceområderne i Softwareudvikling og softwareteknologi samt uddannelsens globale perspektiv ruster dig til karrieremuligheder i både danske og globale sammenhænge, hvor du bl.a. kan få job som: 

  • Analytiker 
  • Domænespecialist 
  • Systemudvikler 
  • Programmør 
  • Software-arkitekt 
  • Forretningsanalytiker 
  • Softwareingeniør 
  • Kvalitetsingeniør 
  • Projektleder/-chef 
  • Systemkonsulent

Er du interesseret i at læse en PhD på IT-Universitetet, kan du læse mere om forskningsområderne her.

Udveksling

Det kan være både fagligt udviklende og se godt ud på CV’et at læse en del af sin uddannelse på et udenlandsk universitet. IT-Universitetet har udvekslingsaftaler med universiteter rundt omkring i verden, og for studerende med faglighed inden for softwareudvikling vil vi fremhæve:

EPITA, Paris
ETH, Swiss Federal Institute of Technology, Zurich
Technische Universität, München

Undervisningen

På Softwareudvikling, Design-sporet, foregår undervisningen, eksamener, opgaveskrivning m.m. på engelsk. Undervisningsformen veksler mellem projektarbejde, almindelig auditorieundervisning og at studere litteratur, hvilket inkluderer både bøger og forskningsartikler. Dine undervisere er de bedste inden for faget, og der bliver derfor også stillet krav til dine evner og dit engagement.


Softwareudvikling er udviklet i tæt samarbejde med erhvervslivet, og uddannelsen er tilrettelagt, så du får mulighed for at samarbejde med private virksomheder. På den måde arbejder du altid med aktuelle udfordringer, og du kan skabe kontakt til erhvervslivet allerede under studierne. Desuden integreres ITU's forskningsprojekter i undervisningen, hvilket giver uddannelsens bedste kandidater mulighed for at tage de første skridt ud i en karriere inden for forskning og fortsætte på Ph.d.-uddannelsen.

#lifeatitu

Studievejledning

Er du interesseret i at læse på en af IT-Universitetets uddannelser, er du velkommen til at kontakte Studie- og Karrierevejledningen.

Lokale 3D05 og 3D07
Rued Langgaards Vej 7
DK-2300 København S

Tlf: +45 7218 5240

Email: studievejledningen@itu.dk

Top