IMT3673 - Mobile/Wearable Programming


Examination arrangement

Examination arrangement: Written exam and Portfolio assessment
Grade: Letters

Evaluation form Weighting Duration Examination aids Grade deviation
Written examination 4/10 3 hours D
Portfolio assessment 6/10

Course content

The field of mobile system development changes rapidly. Thus the topics covered need to be flexible and are subject to change. In this course the topics covered include, but are not limited to:
-Strengths and weaknesses of mobile/wearable technologies
-Limitations of mobile/wearable devices available on the market
-Programming Design Patterns for mobile/wearable systems
-Layout and UI designs and practices for mobile screens (phones, tablets, wearables, Internet of Things)
-Using alternative input interfaces
-Sensor integration - GPS, accelerometer/gyro, tilt, magnetic field, compass and camera
-Raw data filtering and signal processing
-OpenGL ES - 2D/3D graphics on mobile devices
-Managing multiple product SKU's
-OS-specific development issues: Apple's iOS and Google's Android
-Mobile networking and technology stack

Learning outcome

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

-Recognize and discuss the strengths and weaknesses of mobile technologies
-In-depth knowledge of mobile development process
-Discuss main mobile application components, their function, and purpose
-Recognize and plan the mobile applications structure
-Know the performance limitations of mobile and wearable technologies
-Discuss and review the special user interface requirements of mobile and wearable devices
-Have in-depth understanding of the mobile/wearable app development process
-Identify the ethical and social impact of mobile devices on society

-Be able to identify and characterize the strengths and weaknesses of mobile and wearable technologies, and their performance limitations.
-Ability to develop a mobile solution to a defined problem
-Ability to implement a mobile application and utilize the screen, input mechanisms, database, social aspects and Internet connectivity characteristic to mobile platforms
-Be able to use an integrated development environment (IDE) to implement applications for mobile devices on the Android and/or iOS platforms
-Be able to access and use the variety of input methods for mobile and wearable UI
-Develop an appreciation of the potential for innovation in mobile/wearable technology and services, and the impact this could have on society
-Be able to cross-compile native C++ code for at least two different mobile operating systems: Android and iOS

General competence
-Improved understanding of the software development process
-Exposure to and understanding of group projects and group dynamics in the software development team
-Improved programming skills

Learning methods and activities

-Lectures (also tutorials and exercises)
-Web-based learning (online resources)
-Internal assignments
-Project work

Additional course information
-Online resources and MOOC-supported learning are used in this course
-Project work: student will receive an overview of the mobile development process on a range of devices, but will select one for in depth study (preference given to Android). 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, iOS which requires an iOS-enabled device, or and Android 4.2+.

Note: Passing the internal portfolio is required to sit the exam.

Further on evaluation

Re-sit examination:
Re-sit for the written exam in August. Portfolio of internal assignments must be taken the next time the course is run.

Forms of assessment:
Portfolio of internal assignments (60%)
-Final, written exam 3 hours (40%)
-Both portfolio and written exam must be passed in order to pass the course.

Passing the internal portfolio is required to sit the exam. The grades for each of the two parts are valid the following academic year.

Specific conditions

Admission to a programme of study is required:
IT Operations and Information Security (BITSEC)
Programming (BPROG)

Required previous knowledge

IMT1031 Fundamental Programming or equivalent

Course materials

Web resources, tutorials, and guides documents for iOS and Android.

Credit reductions

Course code Reduction From To
IMT3662 5.0 01.09.2017
IMT3672 5.0 01.09.2017
More on the course



Version: 1
Credits:  10.0 SP
Study level: Third-year courses, level III


Term no.: 1
Teaching semester:  SPRING 2019

Language of instruction: English

Location: Gjøvik

Subject area(s)


Contact information
Course coordinator: Lecturer(s):

Department with academic responsibility
Department of Computer Science



Examination arrangement: Written exam and Portfolio assessment

Term Status code Evaluation form Weighting Examination aids Date Time Digital exam Room *
Summer UTS Written examination 4/10 D INSPERA
Room Building Number of candidates
Spring ORD Written examination 4/10 D 2019-05-28 09:00 INSPERA
Room Building Number of candidates
A-atriet-2/3 (A-160) Ametyst 0
Spring ORD Portfolio assessment 6/10
Room Building Number of candidates
  • * The location (room) for a written examination is published 3 days before examination date. If more than one room is listed, you will find your room at Studentweb.

For more information regarding registration for examination and examination procedures, see "Innsida - Exams"

More on examinations at NTNU