Service-Oriented Architectures and Mobile Computing

Learning Outcomes

This course provides an in-depth understanding of the design, implementation, and management of modern service-oriented information systems and mobile applications. It covers key topics such as user interface design, data management, network connectivity, and performance optimization.

 

Upon successful completion of this course, students will be able to:

  • Identify the principles and components of Service-Oriented Architecture (SOA) and leverage modern tools and frameworks to develop service-oriented information systems.
  • Develop, deploy, and manage serverless applications and microservices using cloud computing infrastructure.
  • Understand Android application architecture and identify the core features of a typical Android app, including layouts and navigation.
  • Design functional and user-friendly interfaces for mobile devices.
  • Implement data storage and retrieval techniques within a mobile application.
  • Leverage service-oriented platforms and services (e.g., Firebase, Push Notifications, Crashlytics, Object Storage, Functions as a Service) to build modern, interactive mobile applications.
  • Evaluate and optimize the performance and usability of a mobile application.

General Competences

  • Search for, analysis and synthesis of data and information by the use of appropriate technologies
  • Development of free, creative and inductive thinking
  • Decision-making
  • Individual/Independent work
  • Group/ Team work

Course Contents

  • Introduction to Service-Oriented Architecture (SOA) (definition and basic concepts, advantages and challenges)
  • Basic elements of Service-Oriented Architecture (services, service contracts, service composition, discovery and service registry)
  • Advanced concepts of Service-Oriented Architecture (event-driven architecture, microservices and their relationship with SOA)
  • Understanding the principles and practices of backend as a service and the development and deployment of serverless applications using Cloud Computing infrastructures, microservices, and Functions as a Service.
  • Methodologies and techniques for developing applications for portable devices (smartphones, smartwatches, sensors, etc.).
  • Study of the basic features of a typical Android application (Layouts, Navigation).
  • Development of applications that utilize device capabilities and interfaces, such as camera, GPS, sensors, etc.
  • Use of service libraries and backend applications for data management, user authentication, two-way communication, and synchronization.
  • Creation of advanced user interfaces (UI/UX).
  • Management of access rights, data security, and privacy.
  • Architecture of smart mobile applications (application architecture, data storage – SQLite – Firebase, displaying lists, internet connection, background tasks)
  • Use of modern frameworks for application development such as React Native and Flutter.

Suggested Bibliography

  • Έλληνας Iωάννης- Έλληνας Νικόλαος (2023): Εισαγωγή στον Προγραμματισμό Android
  • Κυπριανός Χ. (2022): Να ένα android…
  • Peter Späth (2019): Learn Kotlin for Android Development, The Next Generation Language for Modern Android Apps Programming, Apress, ISBN: 9781484244678.
  • Ted Hagos (2018): Learn Android Studio 3 with Kotlin, Efficient Android App Development. Apress, ISBN: 9781484239070.

Internet of Things

Learning Outcomes

The student that will complete successfully the course is expected that will be in position to:
• Understand the definition and use of the term “Internet of Things” in different environments.
• Understand the basic elements that make up an IoT system.
• Discern and explain the architecture layers of an IoT system and identify key technologies and protocols used in each layer of the architecture.
• Understand and assess the issues involved in designing and developing IoT applications.
• Design and develop IoT applications utilizing services from available platforms.
• Analyze, evaluate and discuss problems and case studies for IoT applications.

Syllabus

• Introduction to IoT.
• Hardware IoT platforms.
• IoT network reference model, communication and propagation models.
• Low power wireless and mobile protocols and architectures.
• IoT and Cloud interfacing, Fog Computing.
• IoT operating systems.
• IoT software platforms.
• Data collection, preprocessing and storage.
• Data analysis and visualization.
• End User Development in IoT.
• Use Case Studies.

Attached Bibliography 

-Suggested bibliography:
1. Papazoglou P., Lionis S.-P., Developing Applications with Arduino, 3η Ed., Tziola, 2021 (Evdoxus No: 102071811)
2. H. Gen. Internet of Things and Data Analytics Handbook [Electronic Book], HEAL-Link Wiley ebooks, 2016 (Evdoxus No: 80501132)
3. N. Bouhai, I. Saleh. Internet of Things: Evolutions and Innovations [Electronic Book], HEAL-Link Wiley ebooks, 2017 (Evdoxus No: 91697054)

4. F. John Dian, Fundamentals of Internet of Things: For Students and Professionals, Wiley, 2022

5. Adrian McEwen, Hakim Cassimally, Designing the Internet of Things, Wiley, 2014

– Related academic journals:

ACM Transactions on Internet of Things
Computer Networks
IEEE Communications
IEEE Internet of Things Journal
IEEE Pervasive Computing
ΙΕΕΕ Wireless Communications
International Journal of Internet of Things and Cyber-Assurance
Internet of Things Journal
Pervasive and Mobile Computing
Sensors

 

Student Placement

Students can choose it only once during undergraduate studies (either the 7th or the 8th semester).

Privacy on the Internet

Learning Outcomes

Within the framework of the course, students will be able:

  • To fully understand the concepts of privacy, territorial privacy, privacy of the person and especially informational privacy
  • To realise the privacy threats environment and related requirements
  • To understand the concept of privacy framework
  • To realise the legal requirements of privacy by design and privacy by default
  • To conduct data protection impact assessment surveys for public and private bodies
  • To study all privacy issues rised in modern public clouds
  • To know critical technological tools for privacy enhancement
  • To understand national and European regulations regarding informational privacy protection and personal data protection
  • To understand the challenges posed by the evolving dynamics of the combination of the cognitive fields of cyber security, privacy protection, and Artificial Intelligence and the way they create social, cultural, political, and financial issues, as well as ethical issues in modern societies
  • To possess state-of-the-art specialized scientific knowledge in the subjects of the course as a basis for original thinking and research activities.

Course Contents

  • Privacy: The citizens and public & private bodies viewpoint. Territorial privacy, privacy of the person, informational privacy
  • Personally identifiable information PII and personal data
  • Threats and privacy requirements
  • The privacy paradox
  • Legal and regulatory frameworks for personal data protection: The EU GDPR General Data Protection Regulation
  • Privacy framework and ISO 29100:2024
  • Controls and best practices for privacy protection according to ISO 29151:2017
  • Privacy by design and ISO 31700-1: 2023
  • Privacy information management system and ISO 27701:2019
  • Data protection impact assessment and ISO 29134:2023
  • Privacy in public clouds and ISO 27018:2019
  • Privacy Enhancing Technologies: Data obfuscation tools (anonymization, pseudonymization, synthetic data, differential privacy, zero knowledge proofs), Encrypted data processing tools (homomorphic encryption, multiparty computation, trusted execution environments), Federated and distributed analytics (federated learning, distributed analytics), Data accountability tools (accountable systems, threshold secret sharing, personal information management systems)
  • Privacy protection and AI systems: The Artificial Intelligence Act

Suggested Bibliography

  • Acquisti, S. Gritzalis, C. Lambrinoudakis, S. De Capitani di Vimercati (Eds) (2008), Digital Privacy, Theory, Technology and Practices, Auerbach Publications
  • Tamo-Larrieux (2018), Designing for Privacy and its Legal Framework: Data Protection by Design and Default for the Internet of Things, Springer
  • Bart van der Sloot, A. de Groot, (2018) The Handbook of Privacy Studies, Amsterdam University Press

Scientific Journals

Educational Digital Systems

Learning Outcomes

With the completion of the course, the student will be able:

  • to know and understand the key concepts of exploiting digital technologies in teaching, learning and assessment of learning in K12 School Education.
  • to analyse, assess, select and justify a pedagogically appropriate educational technologies to support different teaching strategies in K12 School Education.
  • to design and create pedagogically grounded technology-supported teaching and learning scenarios for the K12 education.

The learning objectives of the course are aligned to the Greek State qualification framework for a teaching licence in K12 school education.

Course Contents

  • 1. Technology-Supported and Technology-Enhanced Teaching and Learning in School Education: Theoretical Underpinnings
  • 2. Integrating Technology in School Education (teaching, learning and assessment of learning): Models and Practice
  • 3. Taxonomy of Educational Technologies in School Education
  • 4. Educational Technologies for supporting different teaching and learning strategies
    • 4.1. Tutorials
    • 4.2. Drill and Practice
    • 4.3. Problem solving
    • 4.4. Modeling
    • 4.5. Virtual Labs and Simulations
    • 4.6. Inquiry-based Learning
    • 4.7. Collaborative Learning
    • 4.8. Assessment of Learning
    • o 4.9. Educational Games
  • 5. Digital School Infrastructure
    • 5.1. Interactive Boards
    • 5.2. ICT School Laboratory

Recommended Readings

  • Textbook in Greek (provided for free)
  • Additional Open Access Educational Resources available through the course management system

Telemedicine

Learning Outcomes

The course is introducing students in telemedicine systems and applications that improve the quality of life and provide remote electronic health services. The curriculum includes background knowledge in the areas of coding and processing of biomedical data, analyzes the design and implementation issues of telemedicine systems and discusses the next generation telemedicine systems, which include context awareness and computational intelligence as additional features. During the course case studies will be presented and there will be project assigned to students.

Students, upon successful completion of the course, will be able to:

A) Understand basic methodologies of design and development of telemedicine systems

B) Be familiar with the main techniques for the coding and processing of biomedical signals and data

C) Know the coding standards for medical information

D) Design telemedicine systems according to special requirements and the type of medical information exchanged

E) Evaluate telemedicine systems

Course Contents

  • Introduction to Telemedicine
  • Biomedical Data Coding and Compression
  • Biomedical Data Processing for Telemedicine Applications
  • Video Communication for Telemedicine Applications
  • Telemedicine Networks
  • Home Care Systems
  • Context Aware Telemedicine Systems
  • Wireless Telemedicine and Ambient Assisted Living
  • Wearable Systems
  • Clinical Applications of Telemedicine
  • Security in Telemedicine systems
  • Case Studies – Project Assignments

Recommended Readings

  • Medical Informatics, e-Health: Fundamentals and Applications (Health Informatics) Softcover reprint of the original 1st ed. 2014 Edition by Alain Venot (Editor), Anita Burgun (Editor), Catherine Quantin (Editor)
  • Telemedicine Handbook, Pompidou Alain, Apostolakis I, Α., Ferrer – Roca Olga, Sosa – Iudicissa Marcelo, Allaert Francois, Della Mea Vincenzo, Kastania Anastasia N.

Design and Optimization of Networks

Learning Outcomes

The course presents principles and methodologies on the design, evaluation and optimization of networks and services, complementing the basic knowledge of architecture, protocols and functions of communication networks.

Upon successful completion of the course, the students will be in position to:

  • follow and utilize the approach of top-down network design, that is most commonly encountered on medium to large scale networking projects
  • understand and evaluate alternative design options at every stage of data networks design, (e.g. requirement and specification definition, logical and physical design, selection of appropriate technologies and protocols, addressing and naming of network devices, implementation, testing and optimization)
  • select and propose proper architectures, network technologies, protocols and politics, depending on the design, upgrade and/or optimization of the network at hand
  • implement, control and readjust solutions on new or redesign existing network projects
  • run and operate routing protocols simulation software and packet sniffing software

Course Contents

  • Introduction to the design and performance evaluation of networks and services.
  • Modelling and topological design of communication networks.
  • Modelling of network services traffic and work load.
  • Top-down network design under service requirements and various constraints.
  • Selection of most appropriate link, network and transport layer protocols.
  • Selection of most appropriate network architecture and network devices.
  • Network optimization techniques and algorithms, network reliability.
  • Performance measures.
  • Quality of service assurance.
  • Theoretical exercises and network design projects.

Recommended Readings

  1. Spiros Arsenis, “Network Design and Implementation”, Kleidarithmos Publications.
  2. Priscilla Oppenheimer, “Top-Down Network Design”, 2nd Edition, Cisco Press.
  3. James D. McCabe, “Network Analysis, Architecture and Design”, 2nd Edition, Morgan Kaufmann Publishers Inc.
  4. Thomas Robertazzi, “Planning Telecommunication Networks”, IEEE Press.

Mobile Communication Systems

Learning Outcomes

The course provides the basic principles of cellular mobile communication systems. It also provides the methodologies of analysis and design of these systems. By concluding the course, students are able to

  • analyze and design basic mobile communication systems by emphasizing in physical layer techniques
  • recognize, describe and distinguish the characteristics of several type of cells, communication channels and multiple access techniques
  • analyze and design systems with different requirements of telecommunication traffic and quality links
  • compute the thresholds of link performance,
  • compare alternative implementation plans and evaluate the total performance of digital systems

The lab sessions aim to provide a deeper understanding of physical phenomena of propagation in the wireless channel and the simulation of cellular systems.

Course Contents

Initially, basic concepts of Mobile Communications Radiosystems are provided (cell types, communication channel types, basic cellular system operations). Basic Network Access Techniques (Multiple Access Techniques, Random Access Techniques) are discussed. Also, reference is made to the evolution of Wireless Communication Systems (1st, 2nd, 3rd, and 4th generation cellular systems, Wireless Telephony Systems, Paging Systems, WLANs, WPANs, PMRs). Students are introduced to the concept of cells  and frequency reuse (elements from regular hexagon geometry, cellular systems design). Then the basic concepts of telecommunication traffic analysis and systems performance is provided (elements of Queuing Theory, Erlang B model, Erlang C model, spectral performance of cellular systems). In the following the main wireless propagation mechanisms are presented (multipath propagation, Doppler fading and shift, propagation loss, shadowing, coverage area definition, radio channel capacity limits). Interference types (co-channel interference and noise, neighboring channel interference) as well as handover and performance techniques (categorization of handover techniques, advantages and disadvantages of techniques, stable performance, dynamic performance, elastic performance) are discussed and compared. Techniques for improving spectral efficiency (sectoring, cell splitting) are then analyzed. Finally, elements and techniques of physical layer design (modulation and coding techniques, co-channel interference mitigation techniques) are presented and a presentation of standardized Mobile Communications Systems (GSM, GPRS, 3G and 4G) is presented.

In addition, extra content (in evdoxos.ds.unipi.gr) like articles, audiovisual lectures and Internet addresses, as well as exercises for student’s practice are posted electronically. Case studies, exemplary problems and methods for solving them are presented.

Recommended Readings

  • “Mobile Communications Systems”, Book code in www.eudoxus.gr: 33154041, Edition: 2nd edition/2013, Authors: Kanatas Athanasios, Pantos Georgios, Costantinou Filippos, ISBN: 978-960-491-086-1, Publisher: A.Papasotiriou & Sia (1st Book)
  • “Antennas and propagation for wireless communication systems”, Book code in www.eudoxus.gr: 59386401, Edition: 1st edition/2016, Authors: S. R. Saunders, A. Aragon-Zavala, Scient. Edit.: Dimosthenis Vougioukas, ISBN: 978-960-546-737-1, Publisher: Pedio S.A. (2nd Book)

Associated scientific Journals

  • ΙΕΕΕ Transactions on Vehicular Technology
  • ΙΕΕΕ Transactions on Wireless Communications
  • ΙΕΕΕ Transactions on Antennas & Propagation
  • ΙΕΕΕ Journal on Selected Areas in Communications
  • IEEE Communications Magazine

e-Learning Systems

Learning Outcomes

Upon successful completion of the course the students will be able:

  • to know and understand the key concepts of digital teaching and learning
  • to analyse, assess, select and justify pedagogically appropriate e-learning methods and tools for digital teaching and learning innovations.
  • to design and create pedagogically grounded online courses.

Course Contents

  • Online Teaching and Learning: Theoretical Underpinnings
  • Educational Design for Online Teaching and Learning
  • An hierarchical Open Access to Online Education framework: Elements (Open Educational Resources, Learning Activities and Lesson Plans, Online Courses, Digital Learning Spaces). Tools and Key Roles (Online Education Instructional Designers, e-Tutors, e-Learning Systems Administrators, Managers)
  • Open Educational Resources: Learning Objects, Educational Metadata, Repositories of Learning Objects. Case Studies: the National Repositories of Learning Objects
  • Learning Activities and Lesson Plans: Authoring Tools for Learning Activities and Lesson Plans, Repositories of Learning Activities and Lesson Plans. Case Studies: the National Repositories of Learning Activities and Lesson Plans
  • Design, Development and Delivery of Online Courses: Methodology for Designing Online Courses. Authoring Tools for Developing Online Courses. Course Management Systems. Case Study: Open edX, MOODLE
  • Digital Learning Spaces: 3D Virtual Classrooms and Laboratories

Recommended Readings

  • Textbook in Greek (provided for free)
  • Additional Open Access Educational Resources available through the course management system