Jump to content

DAT154 Software Architecture and Application Development

Course description for academic year 2018/2019

Contents and structure

The course concentrates on developing large applications with focus on software architecture, programming patterns and graphical user interfaces. The students learn about graphical desktop applications for Windows using the Windows SDK (Software Development Kit) and the programming language C + +. The last part of the subject concentrates on the .NET platform using the C # programming language and its framework.


  • Software Architecture
  • Event and message-oriented software
  • Programming Patterns
  • Module-based software
  • Implementation and analysis of graphical interfaces
  • Universal design, customize the software to users with disabilities
  • Database integration, access and queries from applications
  • Programming with platform APIs and frameworks
  • Window Management
  • C #-specific language constructs
  • Multi-Language Applications and Development
  • Programming large applications

Learning Outcome

After completing the course DAT154 Software Architecture, the students will be able to:


  • Explain the principles of programming for Windows SDK
  • Explain the structure of the. NET platform and ingoing concepts and principles
  • Explain software patterns
  • Explain concepts and principles of software architecture
  • Explain the principles and elements of graphical user interfaces
  • Explain the principles of universal design of user interfaces


  • Analyze and design software architecture for medium size applications
  • Develop software with graphical user interfaces
  • Apply and evaluate the use of software patterns in practical software development
  • Use development tools to find correct bugs and finally test larger software systems

General Competence

  • Work in groups
  • Explain the choice of software architecture
  • Document the choice of software architecture

Entry requirements


Recommended previous knowledge

DAT105 Advanced Programming or corresponding subjects.

Teaching methods

Practical programming exercises alone and in groups as well as one larger project. Lectures.

Compulsory learning activities

4 compulsory exercises must be completed (within the given deadlines) and approved before the exam can be taken. The exercise can either be written assignments or presentations.

Approved exercises also give access to postponed examination the following semester. However, before a new postponed exam can be taken (the next time the subject is taught), new exercises must be delivered.


Oral examination.

Time and place will be announced at Canvas.

Grading scale is A-F, where F is failed.

Examination support material


More about examination support material

Course reductions

  • TOD112 - Utviklingsverktøy/C#/.NET - Reduction: 5 studypoints