IMT4889

Advanced Topics in Software and Systems Engineering

Autumn

Gjøvik

English

Overview

3 candidates

Average grade

A

5.00

1.00

Pass rate

100%

same

Grade distribution
Average over time
Pass rate over time

About this course

Content

NOTE: This course is offered only if there is sufficient number of students signed up for it in the semester. Further note the entry constraints based on prerequisite introductory courses.

This course discusses advanced topics in the area of software engineering and decentralised systems as well as mobile technologies. Specific objective to develop a topic around students' interests in this area to deeply engage with a specific theme. As such, the course largely relies on a project component that is negotiated with the lecturer covering the particular topic.

As the relevant fields are dynamic and change rapidly, the specific topics can vary each year, and are subject to alignment with students' interests.

Topics for specific fields can relate to the following aspects (but are not limited to):

  • Software Engineering
    • Software requirements engineering
    • Software architecture and design
    • Software process and improvement
    • Software quality
    • Software measurement
    • Emerging Software Engineering trends
  • Decentralised and Mobile Systems
    • Decentralised and distributed systems
    • Peer-to-Peer systems (p2p)
    • Anonymity networks (e.g. tor, i2c)
    • Cryptocurrencies, blockchains, decentralized finance (DeFi)
    • Mobile and wearable technologies
    • Mobile/decentralised business models, entrepreneurship and monetization
    • Location-based tracking and location-aware applications
    • Sensors and activity tracking (accelerometer/gyro, microphone, EEG-based, and others)
    • Quantified self, self-monitoring and activity tracking
    • Context: acquisition, processing, and data mining

Learning outcomes

On completion of this course the students will have the following knowledge, skills and general competences:

Knowledge

  • Understand a range of software and systems engineering technologies
  • Understand a range of advanced relevant techniques
  • Understand research methods in the field
  • Possess specialized insights into research frontier in a selected part of the mobile/distributed technology field
  • Possess thorough knowledge of professional practices and scientific theories related to the field
  • Poss a deep understanding of one area of the relevant fields
  • Identify the ethical and social impact of software and systems on society

Skills

  • Be able to describe and present the use of software and systems engineering technologies
  • Be able to analyze existing theories, methods, and interpretations and to challenge established knowledge and practices
  • Be able to discuss the ethical and social impacts of discussed technologies
  • Be able to argue and defend in a written form a chosen position within the field

General competence

  • Have an improved ability to discuss technology and defend an opinion
  • Be able to communicate academic issues, analysis, and conclusions, with specialists in the field in oral and written form
  • Be able to present the work in an oral presentation
  • Be able to write a high-quality technical report

Teaching methods

  • Lectures
  • E-learning
  • Project work, research, report writing

Additional information Students will receive an overview of the mobile/wearable, distributed and decentralized systems research methodologies and research topics. Students will select one for an in-depth study. Some mobile devices will be available for testing, but it would be beneficial for the student to have access to a personal mobile device, for example smartphone which requires an iOS- or Android-enabled device.