Geo-information systems engineering

Postgraduate course in "M.Sc. Computing Science" masters program offered at

Syllabus: This course aims to integrate knowledge and skills on software architecture and distributed systems, along with geo-spatial, location-based and mobile technologies. Students will be able to design and implement geo-information systems by integrating components such as global mapping platforms, web services and smartphones, that provide location-aware services that successfully implement concepts such as crowd-sourcing and spatial analytics into innovative applications and services.

Offered in academic year 2014-2015

Course details     Course materials

Computational methods in geo-informatics

Postgraduate course (in greek)

Syllabus: Programming and data structures revisited: linear and non-linear data structures, pointers and programming techniques. Algorithms, complexity, notation, analysis. Spatial optimization algorithms, Dijkstra and variants. Relational databases revisited. Data modelling for spatial applications. Spatial data modelling and standards (OGC), XML-based standards and JSON notation. 3-tier architectures. OGC web services for spatial applications (WMS, WFS, WCS, SOS). Distributed and heterogeneous web-based application architectures. Implementation of OGC standards in Geoserver. Server and client-side scripting. Geo-information web application development tools: web mapping APIs, open layers and similar. Principles of digital image processing. Integration in a personal semester project.

Offered since 2012

Course website


Introduction to programming

Undergraduate course (in greek)

Syllabus: Introduction to computer programming. Binary representation of arithmetic and character data. Operating systems, programming languages and software development. Algorithms and programming control structures. Structured programming with C++. Data types, operators and expressions. Memory variables. Stream-based input and output of data. Logical expressions and control-flow structures. Data structures: arrays. Functions and program structure. Introduction to algorithms and complexity.

Offered since 2002

Course website

Programming techniques

Undergraduate course (in greek)

Syllabus: Principles and applications of object-oriented programming in C++. Searching and sorting algorithms. Recursive algorithms and functions. Pointers and dynamic memory allocation. Basic data structures (lists, queues, trees). Complex data structures and introduction to classes. User-defined data types. Principles of object-oriented programming, member functions, encapsulation and access to class elements. Operator overloading. Event-driven programming. Applications for surveying engineers.

Offered since 2002

Course website

Database systems

Undergraduate course (in greek)

Syllabus: Introduction to databases and data modelling. Classic data models (hierarchical, network). The Entity-Relationship model. Introduction to the relational data model. From the E-R to the relational data model. Database Management Systems: principles, services and architecture. Database languages, introduction to the Structured Query Language (SQL). Design of databases, introduction to UML. Logical design and normalization. Database integrity, optimization and security. Client-server architectures, introduction to xDBC and middleware. Introduction to spatial data types and databases. OGC standards for spatial data. Lab based on open source Databases (postgres, mysql).

Offered since 2002

Course website


Fundamentals of digital systems communication

Undergraduate course (in greek)

Syllabus: Principles of digital communications. Analog and digital signals and communications. Sampling principles. OSI 7-layer model. Wired and wireless communications. Serial protocols, bluetooth, wifi. XML and application-layer communication protocols. Web services: SOAP, XML RPC and similar protocols. 3-tier application architectures. Geoserver, postgres, and integration. OGC standards for spatial web services. Heterogeneous spatial data. Integration in a personal semester project.

Offered since 2006

Course website

Courses taught in the past

- Introduction to Programming (NTUA, School of Electrican and Computer Engineering)

- Programming Techniques (NTUA, School of Electrical and Computer Engineering)

- Software Engineering (Hellenic Open University, School of Technology)

- Software Engineering (University of Piraeus, Department of Digital Systems)

- Information Systems Security (University of Piraeus, Department of Computer Science)

- Java Programming (University of Piraeus, Department of Digital Systems)


Some courses are or have been offered in collaboration with:

Nikos Papaspyrou, Aris Pagourtzis, Romylos Korakitis, Dimitris Argialas, Dimitris Delikaraoglou, Nikos Doulamis, Anastassios Doulamis