Undergraduate
studies
of informatics of university of piraeus
Courses of 7nd semester
Distributed and Multiprocessing Computer Systems
Course Code
Course Type Mandatory Direction
Track NCS
Teaching Hours 4 Theory
ECTS: 5
The course deals with advanced issues from the area of Distributed Systems and Multiprocessing Computer. Systems and specifically with:
1.Introduction, Objectives and Features of Distributed Systems, Client-Server Model
2. Distributed Systems Communication, Networking, Remote Call of Process and Objects, Message and Current Oriented Communication.
3. Server Organization, Processes, Control Threads, Thread Programming, Code Migration Systems
4. Entity Name, Directory Services, Entity Locating
5. Distributed File Systems: examples NFS, AFS, others.
6. Synchronization: Real and Logical Time, Universal Situations and Universal Conditions, Deadlock Detection, Leader Election, Mutual Exclusion, Distributed Transactions
7. Error Tolerance: Process Durability, Reliable Communication, Distributed Agreement, Remedy
8. Consistency and Reproduction: Consistency Models and Protocols, Distribution Protocols
9. Internet Applications of Things and Cloud Computing
10. Distributed Object Systems: examples RMI, CORBA, DCOM
11. Distributed Systems Security
12. Distributed Transactions
13. Instruction Level Parallelism (ILP): Dynamic scheduling, Dynamic branch prediction, Multiple issue, Speculation mechanism
14. Multithreading: Thread level parallelism (TLP), Simultaneous multithreading (SMT)
15. Multiprocessors: Introduction and programming difficulties, Shared-memory multiprocessors (SMPs), Messaging passing processors, Coherence protocols
16. Graphics processing units (GPUs), GPU Architectures
17. Programming with CUDA
1. To know the basic principles that govern object-oriented programming
• Θα έχουν κατανοήσει τις βασικές αρχές των κατανεμημένων συστημάτων
• Θα έχουν εμπεδώσει τις βασικές αρχές των πολυπύρηνων επεξεργαστών
• Θα εφευρίσκουν τρόπους επίτευξης υψηλής απόδοσης με την χρήση κατανεμημένων και πολυεπεξεργαστικών συστημάτων
• Θα έχουν αποκτήσει και επεκτείνει την εμπειρία για την ανάπτυξη κατανεμημένων εφαρμογών με χρήση σύγχρονων προγραμματιστικών μοντέλων, Java RMI και Java Threads
• Θα έχουν συμμετάσχει εμπειρικά στην ανάπτυξη εφαρμογών σε μαζικά παράλληλες υπολογιστικές μηχανές (π.χ. GPU) με χρήση προγραμματιστικών μοντέλων όπως η CUDA
• Θα είναι ενημερωμένοι και ικανοί να παρακολουθήσουν τις πλέον τελευταίες τεχνολογικές εξελίξεις στην περιοχή των κατανεμημένων συστημάτων και των πολυπύρηνων επεξεργαστών
302, Central Building
+30 210 4142137
fax +30 210 4142472
302/Lam.126
+302104142425
Mobile and Wireless Communications
Course Code
Course Type Mandatory Direction
Track NCS
Teaching Hours 4 Theory + 2 Laboratory
ECTS: 5
Course Description
1. Introduction to Mobile and Wireless Communication Systems. An overview.
2. Cellular Systems Architecture - 2.5G, 3G & 4G Cellular Systems fundamentals.
3. Propagation - Modulation - Interferences in Mobile and Wireless Communications environment.
4. Radio Resource Allocation - Multiple Access Techniques.
5. Transmission and Radio Channel Management.
6. Signalling and Mobility Management.
7. LTE networks (4G) fundamentals.
8. Wireless Local Area Networks (WLAN) - 802.11.
9. Mobile IP.
10. Ad-Hoc Networks - Wireless Personal Networks (Bluetooth).
The scope of the course is to provide students with the necessary knowledge about mobile and wireless networks design and to understand the most recent advancements in this subject. Lab exercises are conducted using NS3 network simulator. On successful completion of this module students will be able to:
1. Understand the fundamentals of cellular and mobile communication systems.
2. Understand the interference types that exist in the wireless environment of mobile communications.
3. Comprehend the wireless multiple access technologies as well as the handover types and techniques.
4. Learn the mobility management fundamentals and the Mobile IP protocol.
5. Learn the 2.5G, 3G and 4G mobile communication systems.
6. Comprehend the fundamentals about the Ad-Hoc networks and the sensor networks.
7. Configure, operate, and troubleshoot wireless local area networks.
Contribution of the course to meet the professional requirements:
1. Students are exposed to basic mobile and wireless communication systems techniques.
2. Students are introduced to various types of mobile and wireless networks and standards.
3. Students learn simulating mobile and wireless networks and reporting their findings.
Professor
104/Lam.126
+30 210 4142479 | fax +30 210 4142119
Information Systems Security
Course Code
Course Type Mandatory Direction
Track NCS, IS
Teaching Hours 4 Theory + 2 Laboratory
ECTS: 5
The security of information, systems and applications is a basic requirement in the development and operation of information systems. The course covers basic issues of information systems security and includes the following sections:
1. Introduction to information system security concepts
2. Security Management Systems
3. Cryptographic systems
4. Public Key Infrastructure
5. Access control and Privacy
6. Security in Technologies
7. Secure electronic and mobile services
8. Introduction to network security
Upon completion of the course students will be able to:
1. Recognize and understand the content of information systems security requirements throughout their life cycle.
2. Understand and identify the theoretical and practical issues of information systems security.
3. Understand the structural and functional characteristics of cryptographic systems
4. Deepen their understanding in key areas of this field and implement (through simulation) techniques or applications for various threat or risk situations
5. Practically apply information systems security technologies in real conditions
6. Design new applications and extend existing ones
7. Manage threats and risks in information systems with a critical, creative and research disposition to find solutions
302/Lam.126
+302104142123
Information Retrieval and Searching on the World Wide Web
Course Code
Course Type Mandatory Direction
Track IS
Teaching Hours 4 Theory
ECTS: 5
The subject of the course is the presentation of the basic concepts of Information Retrieval, Modeling issues as well as Indexing techniques.
In particular, the following topics are presented:
1. Information retrieval based on the Boolean model, term vocabulary and posting lists, Dictionaries and Error-Tolerant Retrieval
2. Index Construction, index compression, document ranking, term weighting and vector space model
3. Evaluation of information retrieval systems
4. Relevance feedback and query expansion
5. Basic principles of web search
6. Web crawling and indexing
7. Link analysis
Upon completion of the course, students will be able to:.
1. Understand the basic steps executed by a search engine to answer user queries..
2. Determine the preprocessing required in order that user queries will be processed fast in a search engine..
3. Assess the performance of search engines according to predefined criteria..
4. Investigate the reasons in case of non-satisfactory answers to user queries..
5. Handle the problems above by examining all possible solutions in accordance with the basic principles of web search..
6. Expand the range of solutions through research in relevant situations and contexts..
7. Design data structures that support fast searching of files with natural language content..
8. Understand and apply techniques for extracting information from the World Wide Web graph..
9. Discover methods of enriching existing indexes.
301, Lam. 126
+302104142124
Systems' Simulation
Course Code
Course Type Mandatory Direction
Track IS
Teaching Hours 4 Theory + 1 Laboratory
ECTS: 5
01: Basic Concepts:
• Introduction
• The philosophy, development and application of a simulation model
• Simulation model design elements
02: Application Examples and Structure of System Simulation Models
03: Generation of Random Numbers & Random Variables
• Generation of Random Numbers
• Examples of Random Numbers applications
• Generation of Discrete and Continuous Random Variables
• Methods for Generating Continuous Random Variables: Inversion, Rejection, Synthesis, Approximation
04: Stochastic Models of interactive simulation-based optical system
05: Construction of Simulation Models and Hybrid Simulation of Systems
06: Object Oriented System Simulation
07: Introduction to the VENSIM, AnyLogic and Forio software
08: The Hybrid Model via AnyLogic
09: Function of AnyLogic
10: Simulation Applications in Information Systems and Computer Networks
11: Hybrid System Simulation Applications with AnyLogic
12: Assignment per individual student regarding the application of VENSIM or AnyLog or Forio in a real environment
The field of Systems Simulation has been developing rapidly and continuously for a number of decades and is now the basis of science in undergraduate programs internationally, including curricula in modern Informatics. At the same time, it lays the foundations for the teaching of specialized technological courses, such as Telecommunication Systems, Computer Networks, Business Dynamics, etc.
Upon completion of the course, students will be able to:
1. Recognize key properties of systems.
2. Understand the concepts of system simulation.
3. Identify the structural and functional components of the construction of simulation models.
4. Distinguish the levels of dynamic simulation.
5. Discover the applications of simulation in Information Systems and Networks.
6. Categorize the Simulation models.
7. Clarify the characteristics of Hybrid Simulation.
8. Implement the programming, where required, of simulation models using the appropriate software.
9. Apply Hybrid Simulation models
Virtual Reality
Course Code
Course Type Mandatory Direction
Track TSIS
Teaching Hours 4 Theory + 2 Laboratory
ECTS: 5
604,Lam.126
+302104142146
Image Analysis
Course Code
Course Type Mandatory Direction
Track TSIS
Teaching Hours 4 Theory + 2 Laboratory
ECTS: 5
302, Central Building
+302104142322
Current Topics of Software Engineering
Course Code
Course Type Mandatory Direction
Track TSIS
Teaching Hours 4 Theory + 2 Laboratory
ECTS: 5
• Software development models,
• Structured Analysis and Object Oriented Analysis,
• Architectural design, detailed design, Structured and Object Oriented design.
• Development of applications that can be run from modern mobile devices (smartphones) with integrated operating system. These applications can work on modern "smart" phones, as well as on other "mobile" devices, which have appeared in recent years and use an operating system (Tablets, Wearables).
The course summarizes the most popular mobile operating systems, as well as the tools for developing applications on them, however the material mainly includes the use of object-oriented Java programming language for developing applications on mobile devices under the Android operating system. Indicatively, the development of mobile apps is implemented using the Android Studio software development environment.
In addition, the course covers the material related to the sensors of mobile devices, geolocation services and a number of other advanced programming techniques (asynchronous programming, android services, broadcast receivers, android intents).
Επιπλέον το μάθημα καλύπτει και την ύλη που αφορά στους αισθητήρες των κινητών συσκευών, στις υπηρεσίες γεοεντοπισμού και σε πλήθος άλλων προχωρημένων τεχνικών προγραμματισμού (asynchronous programming, android services, broadcast receivers, android intents).
Upon successful completion of this course students will be able to:
1. Analyze and compare software development models
2. To select software development models according to the needs and to use them
3. Utilize the Android Studio tool for mobile application development
4. To develop native mobile apps using the Android SDK
5. Utilize local (SQLite) databases
6. To know the most modern Cloud and Mobile backend services as a service provided by Firebase
7. To use them practically
8. To design and develop applications for mobile and mobile devices implementing the most modern programming techniques
9. To ensure the effectiveness of the software through the aforementioned applications
Professor
507, Central Building
+30.210.4142269
540, Central Building
Tutoring Programs Evaluation
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
TOPICS:
1. Introduction
2. Concept, definition, methodology and methods of evaluation
3. Types of evaluation
4. Curricula
a. Sociology curriculum
b. Curricula building blocks
c. Types of curricula
5. Curriculum design
a. Design guidelines
b. Design models
c. Teaching movements that affected curricula
d. Modern curricula attributes
e. Modern curricula teaching strategies
f. Curricula categories
g. Method of composing curricula
h. Basic characteristics of curricula
i. Review of curricula
6. Curricula and school textbooks
7. Teaching scenarios repository
8. Students’ evaluation
a. Evaluation model
b. Taxonomy of teaching objectives
c. Attributes of questions
d. Categories and types of questions
9. Evaluation authorities
a. Quality Assurance Unit (QAU)
b. Hellenic Authority for Higher Education (HAHE)
c. Academic certification
d. Institutional evaluation
e. Internal evaluation
f. External evaluation
g. Code of contact
10. Attending a typical period in a school of Piraeus and evaluating the teaching process
11. Simulating teaching evaluated by fellow-students
The course focuses on the process of curricula composing both horizontally (in an interdisciplinary manner) and vertically by education level (primary, secondary and higher education) and by authority (Ministry of Education, IEP, Teachers).
Upon successful completion of the course the student is expected to know:
• the basic guidelines for designing curricula
• searching methods for the curriculum of a specific teaching subject and comprehend its targeting, its structure, its contents and its building blocks,
• how to look up all the relevant material of a specific subject and compare it against the corresponding curriculum,
• how to apply evaluation methods (factual, progressive, final),
• how to sort and rate teaching objectives,
• methods of composing evaluation questions suitable for a teaching target and the corresponding teaching purposes,
• evaluation indicators in use and how to modify them as necessary,
• ways of obtaining information on matters of evaluation from national authorities,
• how to organize systems of self-assessment and external assessment,
• in depth the contents of official school text-books related to a specific subject,
• how to combine all of the aforementioned methods and tools, in order to evaluate their degree of convergence to the official curriculum, the learning objectives, the expected outcomes and the variations needed in relation to special learning needs.

305, centre building
+302104142141
Next Generation Vehicular Networks
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
The aim of the course is to provide students with the necessary knowledge regarding the introduction of vehicular ad-hoc networks (VANET), V2X technologies, 5G vehicle communications and networking.
Students learn to design and develop V2X systems and applications and evaluate their performance.
Concepts related to:
- The characteristics of the vehicular channels.
- Applications in VANET.
- Combination of wireless and vehicular technologies: PHY-level techniques in vehicular networks, efficient mac design in vehicular networks,
- Wireless-vehicle development: Vehicular applications.
- System model, network topology and communication between nodes, channel access, time synchronization between vehicles, cooperation in vehicular relay ADHOCMAC, collaborative networks, enhanced node collaboration, collaborative relay broadcasting, communication issues between vehicles in the next generation of intelligent transportation systems, congestion control for ad hoc vehicle networks for road safety.
With the successful completion of the course, the student should:
1. Understand the fundamental principles and architecture of V2X systems.
2. Develop V2X systems and applications.
3. Evaluate the performance of these applications.
4. Clarifies key VANET technologies.
5. Knows modern techniques/methodologies in 5G vehicular communications and networking.
6. Discusses vehicular channel issues.
7. Recognises communication techniques between vehicles in the next generation of intelligent transportation systems.
8. Understand multi-level interconnection on V2V communication networks.
9. Understand issues related to the implementation of ad -hoc vehicle networks for smart cities.
10. Analyzes and proposes broad solutions for a range of operating and providing vehicular services.
Professor
104/Lam.126
+30 210 4142479 | fax +30 210 4142119
Knowledge Management
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
The subject of the module is the Knowledge Management, which is the process of collecting accumulated expertise of a business or an organization, either this is stored in databases, or in documents or even within the mind of the managers of the business or the organization and then its diffusion and its utilization at these functional areas of the business or the organization that will offers the maximum benefit.
Basic course content:
• Basic concepts of the theory of knowledge
• The role of knowledge within an organization
• Disciplines of knowledge
• Fundamental principles of knowledge management
• Models and tools of knowledge management
• Knowledge representation and reasoning
• Diffusion of knowledge
• Modern trends related to knowledge-based development.
By the end of this course students will be able to:
1. Understand the role of knowledge within an organization
2. Identify the learning processes within the organizational and the working environment of an organization.
3. Understand the influence of the prerequisite knowledge (e.g. drive for innovation, intra- organizational cooperation, organizational climate, better efficiency)
4. Identify the classification of knowledge, the basic principles as well as the models and tools of knowledge management.
5. Identify the methods of knowledge creation and the techniques of captivating – extracting knowledge.
6. Know the ways of knowledge representation and reasoning, the channels of knowledge propagation, the modern trends with regard to a knowledge-based development.
7. Identify the challenges, but also the value of learning capability of an organization.
8. Develop and diffuse innovative plans for the optimum use of materials and human resources.
303/Lam.126
Phone Number/Fax:+30 210 4142578
Smart Cities and Internet of Things
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
The course's subject concerns aspects of Smart Cities management in light of the Internet of Things Applications. It includes the analysis and understanding of Smart Cities' characteristics, both in theoretical and practical applications. In particular, the basic characteristics of Smart Cities, their design technologies, the main areas of activity of a Smart City as well as context-specific applications, such as Smart Economy, Smart People, Smart Living, Smart, Smart Environment, Smart Mobility and, finally, Smart Governance are described and analyzed. Also, the European Union's development policy in the field of Smart Cities is presented, as well as specific case studies of Smart Cities both in Greece and abroad. In more detail, the main elements of this course are:
• Introduction to the concepts of Smart Cities and the Internet of Things.
• Smart City design technologies.
• Smart Economy Applications
• Smart People
• Smart Living
• Smart Environment
• Smart Mobility Applications
• Smart Governance
• European Union policies in the field of Smart Cities.
Upon completion, the students are expected to:
• have familiarized themselves with the concepts of Smart Cities and Internet of Things applications
• define and analyze Smart Cities individual characteristics, both in theoretical and practical applications in light of the Internet of Things technology
• describe and articulate Smart Cities design technologies, the key areas of activity of a Smart City as well as relevant applications (Smart Economy, Smart People, Smart Living, Smart Environment, Smart Mobility, Smart Governance, etc.)
• will be informed about the European Union's development policy in the field of Smart Cities
• will explore specific case studies of Smart Cities both in Greece and abroad
• will understand the underlying concept of the modern city as an environment of creativity and innovation through cutting-edge technologies, digital networking and the Internet of Things applications.
e-Learning and Social Networks
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
The course focuses on the utilization of Information and Communication Technologies (ICT) in education. Students attending this course are expected to familiarize with a wide spectrum of teaching techniques and learning tools that combine traditional e-learning resources with digital social networks. In particular, this course emphasizes on establishing digital social networks as an indispensable learning tool that promotes a deeper bidirectional collaboration pattern between students and teachers.
In particular, the syllabus of the course is the following:
• Digital Social Networking as a Learning Mechanism.
• Designing Distributed Learning Environments.
• Incorporating Interactive Learning content (audio, images and video) within Open Source Learning Management Systems such as Moodle and E-class.
• Implement Social Networking plugins in Moodle such as:
- Chat
- Forums
- Wikis
- Workshops
- Webinars
- Video Blogs
- Podcasts
- Webcasts
• Evaluation of Distributed Learning Enviroments.
By completing this course, students are expected to:
• Incorporate recent advances in Information and Communication Technology within the distant learning process.
• Acquire a deeper understanding of the fundamental notions and concepts that pervade an interactive learning environment which strengthens the interaction between students and tutors in order to jointly form the learning experience.
• Acquire experience in designing a digital class that supports the state-of-the-art practices related to synchronous and asynchronous teaching modalities.
• Familiarize with the fundamental social networking plugins that are offered by Moodle in order to:
- create interactive learning content
- reinforce collaboration between students and teachers.
543, Central Building
+30 210 4142314
Geographical Information Systems
Course Code
Course Type Elective
Track –
Teaching Hours 2 Theory + 2 Laboratory
ECTS: 5
The course offers knowledge about Data Analytics (DA) methods and techniques. In particular, it covers topics such as:
1. Intro to GIS – Geo-data collection and storage
2. Spatial database design (logical / physical level)
3. Geo-visualization techniques
4. Hands-on using popular GIS (QuantumGIS), geo-spatial database systems (PostGIS), and geo-visualization tools (OpenStreetMaps)
Upon the successful completion of the course, the students will be able to:
• Understand topics related to Geographical Information Systems (GIS)
• Solve geo-related problems (from geo-spatial database design to spatial data visualization)
• Exploit on the above knowledge, which is required in a Geo-Data Scientist’s portfolio
501, Central Building
+302104142449
Computer Game Development Technologies
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
604,Lam.126
+302104142146
Service Oriented Programming
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory + 2 Laboratory
ECTS: 5
The course is about the theoretical study and practical training in advanced software programming, the design and programming of advanced modern software based on service orientation, with rest software design principles for the efficient access to information sources and services.
The aim is to understand how to design, develop, operate and maintain software with efficiency through practical training in a laboratory environment (alternative in the laboratory implementation are given in Ruby/Rails, Java, .NET C#, Python, etc.), to organize software development using agile computing approach.
1. Introduction to software as a service
2. Introduction to pre-structured service-oriented software
3. Advanced features in pre-structured service-oriented software
4. Installation procedures with pre-structured service-oriented software
5. Advanced features with script language technologies
6. Legacy code management techniques
7. Security in pre-structured software as a service
8. Behavioral software design
9. Development and software version management
10. Service management of software
11. Development in groups (e.g. scrum)
12. From deployment to installation processes
13. Presentation of use case with service-oriented software
14. Deployment in third-party service-oriented software infrastructure
15. Operation in third-party service-oriented software infrastructure
Upon successful completion of this course students will be able to:
1. Describe a service-oriented approach to build a modern software solution
2. To explain ws-*-based services to international standards
3. To apply REST (JSON) Architecture
4. To recognize software design principles with REST
Contribution of the course to the coverage of technological requirements:
1. Students are exposed to modern techniques for designing integrated software applications with services
2. Students are introduced to various concepts of efficient software integration using services
3. Students learn to plan in environments and architectures as used in modern environments of businesses and organizations
543, Central Building
Phone Number /Fax:+30 210 4142312
Computational Geometry
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
Plane partition, the DCEL data structure, map overlay, visibility, polygon triangulation, plane sweep paradigm, incremental construction paradigm, kd-trees, range trees, interval trees, priority search trees, segment trees, orthogonal range searching, point location, convex hulls, Voronoi diagrams, Delaunay triangulation, arrangements and duality, Minkowski sums.
After successfully completing this course, students:
• will have become familiarized with the use of various data structures and algorithms for geometrical problems,
• will be able to select the appropriate data structures and algorithms for the problem in hand, based on functionality criteria, time performance, space and hardware requirements,
• will be able to apply the basic design principles for geometrical data structures and algorithms, in order to customize their solutions,
• will be able to use effectively the CGAL library for C++.
Internship
Course Code
Course Type Elective
Track –
Teaching Hours 4 Theory
ECTS: 5
604,Lam.126
+302104142146
302, Central Building
+302104142322