IT-Centric Professional Development

Learning Outcomes

This course introduces students in consulting procedures for the personal and professional development in an IT context. It addresses the needs of students as future workers on ‘how to be involved in a IT workforce community’ by enhancing them to provide emerging professional development opportunities and practices.

On completion of the course, the students will be able to:

    • understand the theoretical background of the consulting (in physical and IT context).
    • select and design the appropriate components for their academic and career path (KPIs).
    • critically evaluate a set of skills for professional development.
    • design and build products/services via appropriate components to an institutional IT context and demands (needs, motivations, attitudes, ethics).
    • compose a personal/professional career plan for further development in the society (KPIs).

Course Contents

  • Basic consulting theories and practices necessary for the development of effective performance on an academic and professional environment in IT business community (Kirkpatrick model, SRL, SDL).
  • Continuing Professional Development programs (CPD).
  • Skills and Competencies.
  • Communication and Collaboration (active listening, verbal, non-verbal, communication).
  • Μentoring and coaching.
  • Personal and affective factors in performing (needs, attitudes, motivation, self-esteem etc.
  • Organizational factors (ethics, leadership).
  • Problem solving, innovation, creativity.
  • Evaluation (KPIs).

Recommended Readings

  • Robinson D. & Robinson J. (2008): Performance Consulting: A practical Guide for HR and Learning Professionals, Berrett-Koehler Publishers.
  • Rosenberg M. (2001): E-Learning Strategies for Delivering Knowledge in the Digital Age, McGraw-Hill.

Advanced Topics in Wireless Communications

Learning Outcomes

This course focuses on wide area wireless networks and addresses advanced topics in physical layer design, multi-carrier systems and wireless standards evolution.

At the end of this course, students will have acquired advanced/in depth knowledge in the field of Wireless Communications, with particular emphasis on wireless channel modelling, Multiple Input Multiple Output systems design, and performance evaluation in terms of capacity.

The students will be capable of performing numerical calculations of various wireless parameters, stochastic modelling of wireless transceivers and performance assessment by means of analytical evaluations and simulations, with main focus on baseband processing and radio resources management.

Course Contents

  • Advanced physical layer design topics: modulation and coding
  • Multiplexing in time, space, frequency, code
  • Multiple Input Multiple Output Systems
  • Multi-carrier systems: OFDM/OFDMA.
  • Radio resource allocation: multi-user communications and scheduling, cross-layer optimization.
  • Wireless standards: 3G evolution, IEEE 802.x, 4G and 5G

Recommended Readings

  • Behrouz A. Forouzan, “Data Communications and Networking”, Fourth edition, McGraw-Hill, 2007
  • W Stallings, Wireless Communciations and Networks, Pearson, 2004.
  • D. Tse, P. Viswanath, Fundamentals of Wireless Communciations, 2005.
  • T. S. Rappaport, Wireless communications – Principles and practices, Pearson, 2002.
  • Harri Holma, Antti Toskala, WCDMA for UMTS: HSPA Evolution and LTE, Wiley, 2010.
  • Andrea Goldsmith, Wireless Communications, Cambridge University Press, 2005.

Systems Simulation

Learning Outcomes

he course presents simulation techniques with particular emphasis on discrete event simulation and applications in computer computational systems and communication networks.

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

  • design system models with the required details level that serves better the problem at hand
  • develop simulation programs in general purpose programming language (e.g C++) to simulate and evaluate the behavior of simpler systems
  • use more sophisticated simulation software for the study and performance evaluation of more complex communication networks and computational systems (e.g network simulator ns3 and CloudSim for cloud computing systems)
  • design experiments, collect measurements and interpret and evaluate simulation results

Course Contents

  • Introduction to dynamic discrete event systems.
  • Development of discrete system models, event-advance design, time-advance design, activity-based design.
  • Pseudorandom number generation, random variables generation.
  • Overview of simulation languages and platforms.
  • Development of simulation programs using general purpose programming languages.
  • Measurement techniques, traffic load and experiment design.
  • Statistical analysis of simulation experiments, transient and steady state, data collection, confidence intervals, variation reduction techniques.
  • Simulation exercises and examples of data networks and cloud computing systems. Theoretical results verification.

Recommended Readings

  1. Roumeliotis and Souravlas, “Simulation Techniques”, Epikentro Publications.
  2. Kouikoglou and Konstantas, “Simulation of Discrete Event Systems”, Disigma Publications, 2016.
  3. Harry Perros, “Computer Simulation Techniques – The Definitive Introduction”, free download from https://people.engr.ncsu.edu/hp/files/simulation.pdf
  4. Averill M. Law and W. David Kelton, “Simulation Modeling and Analysis”, McGraw-Hill, Inc.
  5. NS manual and tutorials, https://www.nsnam.org/documentation/

Advanced Topics in Data Analytics

Learning Outcomes

The students after the successful completion of the course will be able:

  • to model and analyze data with appropriate analysis techniques, assess the quality of input
  • to choose the appropriate exploratory and/or inferential method for analyzing data, and interpret the results contextually.
  • to use supervised and unsupervised learning techniques for solving many analysis problems such as prediction, classification, segmentation.
  • to apply methods for the evaluation of the data analysis results.

Course Contents

  • Collection, preparation and representation of data for analysis
  • Linear, logistic regression
  • Classification Techniques (probabilistic classification, decision trees, support vector machines)
  • Predictive analytics and neural networks
  • Recommender systems
  • Graph analysis (applications on social networks)
  • Text mining – sentiment analysis
  • Evaluation of data analysis results

Recommended Readings

  • Mohammed J. Zaki, Wagner Meira Jr. (2018): Data Mining and Analysis Fundamental Concepts and Algorithms, Cambridge University Press.
  • Jure Leskovec, Anand Rajaraman, Jeffrey David Ullman (2014): Mining massive datasets, Cambridge University Press.
  • Top of Form.
  • Bottom of Form.

Student Placement

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

Healthcare Information Systems

Learning Outcomes

The objective of this course is to present fundamentals concepts regarding Healthcare Information Systems (HIS). HIS are described at both conceptual and technical level and types of HIS are studied thoroughly. In addition, best practices regarding HIS architectural design, development methodologies and interoperability are analysed. Challenges and perspectives of HIS are presented with reference to modern digital technologies of data analytics and artificial intelligence. The course will incorporate a significant laboratory component with various digital tools (mainly open source) that allow student to implement HIS.

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

  • Understand the connection between healthcare systems and healthcare information systems
  • Define the users of information and decision support based on existing data
  • Describe the general functions, objectives and advantages of HIS
  • Describe contemporary architectural trends and HIS, in the form of services provided, for supporting important healthcare processes
  • Compare various HIS characteristics and choose the most appropriate systems for specific needs and operational frameworks
  • Develop HIS, by using open source tools, inventing innovative practices in the fields of medical data architecture and management for their multiple exploitation.

Course Content

  1. Healthcare Information Systems: General characteristics. HIS evolution.
  2. HIS analysis, design and implementation.
  3. Patient-oriented HIS development.
  4. Process-oriented healthcare organizations. Healthcare process and data management.
  5. Specialized HIS. Contribution to provided healthcare services.
  6. HIS architectures, integration and interoperability.
  7. HIS security. Standards and security policies.
  8. Presentation of well-known commercial HIS of the global market regarding electronic health records.
  9. HIS challenges and perspectives. HIS in Greece.
  10. HIS development (analysis, design, implementation, testing, operation, maintenance).

Suggested Bibliography

  • Karen A. Wager, Frances W. Lee and John P. Glaser (2009): Health Care Information Systems: A Practical Approach for Health Care Management, Jossey-Bass.
  • Joseph Tan (2010): Developments in Healthcare Information Systems and Healthcare Informatics: Improving Efficiency and Productivity, IGI Global.
  • Charlotte A. Weaver, Marion J. Ball, George R. Kim, Joan M. Kiel, (2015): Healthcare Information Management Systems: Cases, Strategies, and Solutions, Springer.
  • Sean P. Murphy, (2015), Healthcare Information Security and Privacy, McGraw-Hill Education.
  • Pamela K Oachs, Amy Watters, (2016), Health Information Management: Concepts, Principles, and Practice, American Health Information Management Association.
  • International Journal of Healthcare Information Systems and Informatics (IJHISI), IGI Global
  • International Journal of Healthcare Technology and Management, Inderscience
  • International Journal of Medical Informatics, Elsevier.

Cryptography

Learning Outcomes

The aim of this course is to support the students in learning the principles, concepts and applications of cryptography.
Upon successful completion of the course the student will be able:

  • to handle the basic elements of numerical theory and modular arithmetic
  • to manage cryptographic algorithms and their properties
  • basic cryptographic functions, such as pseudo-random sequences, one-way hash functions, shift and displacement networks and feistel networks.
  • the main features for symmetric and asymmetric cryptography are familiar
  • to handle key management systems and digital signatures

Course Contents

  • Basic definitions and concepts; information security.
  • Symmetric cryptography.
  • Digital signatures.
  • Authentication.
  • Public key cryptography.
  • Hash functions.
  • Integrity checking.
  • Key management and random number generators.

Recommended Readings

  • Schneier B. (1996): Applied Cryptography, 2nd Edition, John Wiley & Sons.
  • Stallings W. (2006): Cryptography and Network Security, 4th Edition, Prentice Hall.

Social Networks

Learning Outcomes

This course is the basic introductory course in the field of computational analysis and synthesis of social networks.

The course material seeks to introduce the students to the basic concepts and algorithms for the study of social networks. The course focuses on answering questions related to the creation of social networks, their information properties and the interaction between their structure and the emergence of social processes related to information diffusion, strategic interaction and collective behavior. All theoretical results are presented in relation to their application in real problems in social computational environments such as Facebook of Google search.

The successful completion of the course will make students capable of:

  • understanding the basic and important features of social networks in both an algorithmic and interaction level.
  • knowing the major features of the tools and development methods for the creation of digital social networks and applications

Course Contents

  • Conceptual features of social networks
  • Elements of Graph Theory
  • Social links
  • Topics in Social Environments (Homophily, Group participation, Separation)
  • Social Balancing
  • Information Diffusion
  • Elements of Game Theory
  • Group Decision-Making
  • Sharing frameworks

Recommended Readings

  • Martin J. Osborne, An Introduction to Game Theory, Oxford, 2010
  • Instructor Notes

Distributed Systems

Learning Outcomes

The course aims at introducing the student to the basic concepts and fundamental principles of Distributed Systems. Special emphasis is on analytical and critical thinking, providing at the same time an introductory practical experience in the development of distributed applications.

At the end of the course, students will be equipped with fundamental knowledge in distributed systems (see Course Content), which allows the critical deepening in the broad scientific domain of distributed systems, as well as the development of complex distributed applications.

Students will be capable of analyzing and solving problems in the broad spectrum of the distributed systems domain:

  • Streaming communications and optimized distributed playback of multimedia content (minimum waiting time for smooth reproduction).
  • Physical clocks synchronization using various algorithms.
  • Assignment of Lamport logical, vector and causal clocks.
  • Performing ordered multicast (total and causal).
  • Executing distributed mutual exclusion and leader election algorithms.
  • Concurrency control of distributed transactions (locks and pessimistic concurrency control).
  • Calculation of distributed snapshots.
  • Consistency control for distributed storage and use of distribution and consistency protocols.
  • Fault tolerance evaluation in distributed systems, reliable group communication, distributed commit and recovery.
  • Common data representation.
  • Comparative evaluation of physical layer architectures for distributed systems.
  • Performance evaluation, techno-economic and SWOT analysis of distributed systems.
  • Performance optimization of distributed systems, masking communications behind computation.

In addition, students will be capable of analyzing, designing and evaluating complex distributed systems relying on fundamental algorithms and middleware mechanisms, as well as developing distributed system applications using frameworks and middleware for distributed systems, such as the procedural RPC and object oriented RMI frameworks, network programming sockets, MPI programming, the Hadoop and Spark modern development frameworks etc.

Course Contents

  • Introduction to Distributed Systems
  • Higher layer architecture, distributed systems transparencies, scalability, physical layer and operating system for distributed systems, middleware, synchronization semantics in communications, client-server model.
  • Communications
  • Network protocols, request-reply protocol, RPC model, message passing, common data representation, DCE, RMI model, persistency and synchronization in communications sockets, MPI.
  • Synchronization
  • Clock synchronization, logical (Lamport) time, total ordered mulicast, causal ordered multicast, distributed mutual exclusion, leader election, global states and distributed snapshots, distributed transactions.
  • Fault tolerance
  • Concensus and agreement in problemtic systems, reliable client-server communication, reliable communication in a group, distributed commit, recovery.
  • Consistency and replication
  • Data and client consistency models, distribution protocols, consistency protocols.
  • Jana RMI object oriented distributed applications development platform
  • RMI development synopsis, whiteboard and taskbag case studies

During the course, students are invited to develop a programming project, which helps them familiarize with the design and implementation of distributed systems.

Recommended Readings

  • Tanenabum A. & Van Steen M. (2017): Distributed Systems, 3th Edition, Pearson Education, Inc.
  • Coulouris G., Dollimore J., Kindberg T. (2011): Distributed Systems: Concepts and Design, 5th Edition, Addison Wesley.
  • Cavouras Ι., Meles Ι., Xylomenos G., Roukounaki Α. (2011): Distributed Systems with Java: Computer Systems Vol. ΙΙΙ, Kleidarithmos Publishing (in Greek).
  • Pacheco P. (2011): An Introduction to Parallel Programming, Elsevier, Inc.
  • Papadakes S., Diamantaras Κ. (2012): Programming and Architecture of Parallel Processing Systems, Kleidarithmos Publishing (in Greek).

e-Business

Learning Outcomes

This course presents baselines on digital economy. With the completion of the course, the student will be in position:

  • to understand and become familiar with the key concepts and principles of applications of e-business.
  • to know the main characteristics of the e-business applications both in terms of development and in terms of provisioning of such applications.
  • to be able to implement e-business applications, by applying the knowledge obtained from laboratory exercises in different application contexts / domains.

Course Contents

  • e-Business introduction.
  • e-Commerce presentation.
  • Baselines on e-business micro-economy theory.
  • Business requirements analysis for the design of e-commerce.
  • Methodology for the design of successful web pages. Blogs.
  • e-Stores, methodology for the design of e-stores.
  • Design evaluation and faults detection through the use of web statistics applications.
  • eGovernment, ebanking; ehealth; business-to-business applications.

Moreover, the EVDOXOS system is utilized to provide additional useful information to the students as well as exercises that respond to the corresponding thematic topics / sessions covered by the course.

Recommended Readings

  • McGarvey R. & Campanelli M. (2005): Start Your own E-Business, Entrepreneur Press.
  • Chaffey D. (2008): E-Business and E-Commerce Management, 3rd Edition, Prentice Hall.