studies
Advanced Informatics and Computing Systems - Software Development and Αrtificial Intelligence
Advanced Software Development Technologies
Obligatory Courses
1st semester
Pattern Recognition and Machine Learning
302, Central Building
+302104142322
543, Central Building
+30 210 4142314
Software Development for the World-wide Web
543, Central Building
Phone Number /Fax:+30 210 4142312
Advanced Topics of Object - Oriented Programming (Java)
Algorithmic Techniques and Applications
Considering the wide scope of the subject, this M.SC. Course focus mainly on the parallel algorithms and computation:
- Basic algorithmic techniques for shared memory and distributed memory systems (Pointer jumping, Divide and Conquer, Pipelining, Load Balancing)
- Parallel algorithms for searching, sorting, graph problems (shortest paths, connected components, minimum spanning tree), arithmetic computations (matrix multiplication, solutions of a system of linear equations, solutions of differential equations), image processing (e.g. image segmentation), computational geometry (convex hull, visibility problems), problems from mechanics (e.g. n-body simulation)
- Parallel Programming: OpenMP, Pthreads, Java threads, CUDA, OpenCL, MPI
On successful completion of this unit students will be able to:
1. Aptly apply the algorithmic techniques for solving computational problems in various application fields.
2. Identfy the inherent difficulty of an algorithmic problem.
3. Evaluate the quality of an algorithmic solution both analytically and experimentally.
4. Analytically determine the time and the space complexity of algorithms.
5. Efficiently implement algorithms taking into account the features of the implementation platform.
301, Lam. 126
+302104142124
Special Topics in Software Engineering
Professor
507, Central Building
+30.210.4142269
2nd semester
Software Development for Mobile Devices
This course focuses on the development of software applications that can be executed in a large variety of mobile devices which incorporate and Operating System. Developed applications can operate either in smartphones or in other mobile platforms, such as Tablets and Wearables. The course starts with a brief overview of all existing mobile platforms, programming languages and tools and then focuses mainly in using Object Oriented Programming through Java and the Android Operating System. Java is considered as the most popular programming language in use (2018 statistics), while Android by far owns the largest market-share (2018 statistics).
Postgraduate students who have successfully completed the course will be able to:
● Use the Android Studio IDE in order to design and develop mobile apps
● Use the Android SDK and its basic classes
● Develop local SQLite databases
● Access cloud and mobile backend services through Firebase
● Handle the new Android Runtime permission mechanisms
● Access and handle data from device sensors
● Access and handle data from Location Services
● Use a variety of modern android programming techniques such as:
○ Android asynchronous calls
○ Android Services
○ Broadcast Receivers
○ Android Intents
540, Central Building
Cloud Computing
302, Central Building
+30 210 4142137
fax +30 210 4142472
Software Personalization Technologies
Professor
507, Central Building
+30.210.4142269
543, Central Building
Phone Number /Fax:+30 210 4142312
Secure Programming
Advanced Topics in Web Services Software
Professor
507, Central Building
+30.210.4142269
543, Central Building
Phone Number /Fax:+30 210 4142312