Skip to main content

Platform based development

2023/2024
Programme:
Interdisciplinary University Study Programme Computer Science and Mathematics
Year:
3 year
Semester:
second
Kind:
optional
Group:
Modul: Razvoj programske opreme
ECTS:
6
Language:
slovenian
Course director:

Zoran Bosnić

Hours per week – 2. semester:
Lectures
3
Seminar
0
Tutorial
2
Lab
0
Content (Syllabus outline)

The course will include topics in platform based development recommended in the ACM curriculum for CS. The topics will continually adapt to contemporary trends, thus the course is not constrained to a specific platform.
overview of platforms (web, mobile, game, industrial, embedded, robotic, paralel/scalable,…),
supported/domain-specific programming languages
programming via platform-specific APIs
programming under platform constraints,
mobile platform languages,
performance/power tradeoffs and profiling,
mobile platform constraints and challenges with wireless communication, location-aware applications and emerging technologies (virtual and augmented reality,…)
programming languages and approaches for time-critical interactive platforms,
platform constraints for time-critical interactive applications,
selected topics from industrial/robotic/embedded platforms programming,
selected topics from game platforms programming.
Practical part of the course consists of seminar work and consultations (tutorial). Students build the project using sprints as specified by Scrum software engineering methodology.

Readings

D. Crockford: JavaScript: The Good Parts, O'Reilly Media, 1st edition (May 2008)
P. A. Laplante , S. J. Ovaska :Real-Time Systems Design and Analysis: Tools for the Practitioner, Wiley-IEEE Press, 4 edition (November 22, 2011)
M. Neuburg: iOS 9 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basics, O’Reilly Media, 2015.
R. Meier: Professional Android 4 Application Development, 3rd Edition, Wrox, 2012.
R. Ierusalimschy: Programming in LUA, Lua.org, 2013.

Objectives and competences

The aim of the course is to gain expertise on several modern platforms and learn the specifics of software development for these.
General competences:
‐ Ability of critical thinking.
‐ The ability to define, understand and solve creative professional challenges in computer and information science.
‐ The ability to apply and upgrade acquired knowledge.
Subject specific competences:
‐ The ability to transmit knowledge to co‐workers in technology groups.
‐ Practical knowledge and skills of paticular computer hardware of specific platforms, special programming languages and constraints associated with these.

Intended learning outcomes

Knowledge and understanding: understanding limitations imposed by various platforms for software developers, mastering the performance/power tradeoff, understanding and comparing specific platform oriented languages with general purpose programming.
Application: developing a software product for selected mobile or time-critical platforms, e.g., interactive, game and robotic platforms.
Reflection: Besides practical skills students shall gain theoretical background on particularities associated with platform based development.
Transferable skills: Programming is the basic skill and an implicitly required prerequisite for most other courses.

Learning and teaching methods

Lectures and homework with special emphasis on individual work.

Assessment

Continuing (homework, midterm exams, project work)
Final (written exam)
grading: 5 (fail), 6-10 (pass) (according to the Statute of UL)

Lecturer's references

OCEPEK, Uroš, BOSNIĆ, Zoran, NANČOVSKA ŠERBEC, Irena, RUGELJ, Jože. Exploring the relation between learning style models and preferred multimedia types. Computers & Education, ISSN 0360-1315. [Print ed.], Nov. 2013, vol. 69, str. 343-355. , doi: . [COBISS-SI-ID 10047572]
BOSNIĆ, Zoran, KONONENKO, Igor. Estimation of individual prediction reliability using the local sensitivity analysis. Applied intelligence, ISSN 0924-669X. [Print ed.], Dec. 2008, vol. 29, no. 3, str. 187-203, ilustr. [COBISS-SI-ID 6174548]
BOSNIĆ, Zoran, KONONENKO, Igor. Comparison of approaches for estimating reliability of individual regression predictions. Data & Knowledge Engineering, ISSN 0169-023X. [Print ed.], Dec. 2008, vol. 67, no. 3, str. 504-516, ilustr. [COBISS-SI-ID 6923604]
ŠTRUMBELJ, Erik, BOSNIĆ, Zoran, KONONENKO, Igor, ZAKOTNIK, Branko, GRAŠIČ-KUHAR, Cvetka. Explanation and reliability of prediction models : the case of breast cancer recurrence. Knowledge and information systems, ISSN 0219-1377. [Print ed.], 2010, vol. 24, no. 2, str. 305-324, graf. prikazi. [COBISS-SI-ID 7555668]
BOSNIĆ, Zoran, KONONENKO, Igor. Automatic selection of reliability estimates for individual regression predictions. Knowledge engineering review, ISSN 0269-8889, 2010, vol. 25, no. 1, str. 27-47, graf. prikazi. [COBISS-SI-ID 7606356]