Course - Object-oriented programming for cyber-physical systems - AIS1003
AIS1003 - Object-oriented programming for cyber-physical systems
About
Examination arrangement
Examination arrangement: Portfolio
Grade: Letter grades
Evaluation | Weighting | Duration | Grade deviation | Examination aids |
---|---|---|---|---|
Portfolio | 100/100 |
Course content
The course contains a selection of the following topics, with focus on application toward cyber-physical systems:
- Basic object-oriented programming and design.
- Basic concepts related to object-oriented programming (classes, class hierarchy, objects, encapsulation, polymorphism etc.).
- Code modularisation and re-use.
- Introduction to build systems, integrated development environments (IDEs), debugging, unit-testing and version-control.
- Introduction to basic data structures (e.g., arrays, lists, hash-maps, trees)
- Memory and error management.
More details on the curriculum will provided during the start of semester.
Learning outcome
The following learning outcomes are formulated with application toward cyber-physical systems in mind.
Knowledge
- The candidate can explain simple concepts within object-oriented programming such as encapsulation, modularisation, and cooperative objects.
- The candidate can formulate principles for good design of code (coupling/cohesion), code quality and coding style, and why this is important in software design.
- The candidate can write cross-platform, testable and re-usable code.
- The candidate can identify and use basic data structures to best solve a given problem.
Skills
- The candidate can apply a basic object-oriented mindset for analysis and problem solving.
- The candidate can configure simple programming environments for development, testing, and running object-oriented programs.
- The candidate can construct structured, clear, well-behaved and well-documented programs based on principles for good code design.
- The candidate can apply classes (including from libraries), control structures and cooperation between objects, as well as navigate in API documentation
- The candidate can use an integrated development environment (IDE) proficiently.
- The candidate can use a debugger for examining code during run-time and write unit tests.
- The candidate can model and implement elements of a typical cyber-physical systems using object-oriented concepts.
General competence
- The candidate can communicate and discuss code solutions and explain how a program behaves.
- The candidate can find and apply tools and documentation related to the programming language and the standard library.
- The candidate is aware of programming aspects that can affect information security.
- The candidate can transfer object-oriented concepts to other languages.
- The candidate can use computational thinking and cybernetics systems thinking for solving engineering problems and for breaking larger problems into smaller ones that can be solved separately and joined together as more complex systems.
Learning methods and activities
Learning activities generally include a mix of lectures, tutorials and practical lab/project work. A constructivist approach for learning is endorsed, with focus on problem solving and practical application of theory.
Further on evaluation
The final grade is based on an overall evaluation of the portfolio, which consists of a number of works delivered through the semester. The portfolio contains assignments that are carried out, digitally documented and submitted during the term. Both individual and team assignments may be given. Assignments are designed to help students achieve specific course learning outcomes, and formative feedback is given during the period of the portfolio. The re-sit exam is an oral exam in August.
Specific conditions
Admission to a programme of study is required:
Automation and Intelligent Systems - Engineering (BIAIS)
Required previous knowledge
The course has no prerequisites. It is a requirement that students are enrolled in the study programme to which the course belongs.
Course materials
An updated course overview, including curriculum, is presented at the start of the semester and may also include English material.
Credit reductions
Course code | Reduction | From | To |
---|---|---|---|
AIS1002 | 7.5 | AUTUMN 2023 |
No
Version: 1
Credits:
7.5 SP
Study level: Foundation courses, level I
Term no.: 1
Teaching semester: AUTUMN 2024
Language of instruction: Norwegian
Location: Ålesund
- Computer and Information Science
- Engineering Cybernetics
- Engineering
Department with academic responsibility
Department of ICT and Natural Sciences
Examination
Examination arrangement: Portfolio
- Term Status code Evaluation Weighting Examination aids Date Time Examination system Room *
-
Autumn
ORD
Portfolio
100/100
Release
2024-12-02Submission
2024-12-04
09:00
INSPERA
12:00 -
Room Building Number of candidates
Examination arrangement: Oral Examination (Re-sit exam)
- Term Status code Evaluation Weighting Examination aids Date Time Examination system Room *
- Summer UTS Oral Examination (Re-sit exam) 100/100
-
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"