|
follow us
|
 |
 |
Happening now...







|
MSITT / Course Descriptions
1. Core Courses
| AIT31C: Programming and Data Structures (12 units) |
This course is intended for students with technical orientation with limited or no programming experience as well as for experienced programmers who want an in depth and rigorous treatment of programming languages. The first group of people will be trained in programming with emphasis on achieving program clarity through the proven techniques of structured programming. The second group of people will benefit from the rigorous and challenging treatment of pointers, strings, files and data structures later in the course.
Our working programming language will be C, one of today’s most powerful and flexible software development languages. It is exactly this flexibility that makes C so popular among programmers. By learning C one becomes better prepared to learn more advanced languages like C++ or Java and be able to write object oriented code.
The first part of the course will focus on developing a solid background by introducing the fundamentals and the basic use of the language. The second, and more challenging part, will try to familiarize the students with more advanced topics such as file manipulation, structures, abstract data types and their concrete implementations like sets, stacks, queues, lists, binary trees as well as their applications in the design and development of modern algorithms.
|
| AIT32C: Data Networks (12 units) |
|
Computer Networking is one of the most exciting and important technological fields of our time. This course aims and is tailored to present a comprehensive overview and understanding of what the internet is and how it works and provide a nuts-and-bolts- description of the underlying technologies, protocols and components employed. The fundamental concepts and principles in computer networks and protocol design are studied. The course is designed mainly around the TCP/IP protocol suite, which is the building block of today’s internet. A top-down approach is followed and topics covered include: circuit and packet switching, networking applications, DNS, TCP and UDP, flow and congestion control, IP and ICMP protocols, routing algorithms, IGMP and multicasting, internetworking, subnetting, routers, gateways and switches, multiplexing, LANs and media access control protocols such as ALOHA, CSMA/CD., Ethernet, FDDI and wireless protocols, error detection and recovery, framing and real-time protocols (RTP, RTCP). Issues such as network performance, network security and multimedia are also addressed.
|
| AIT33C: Telecommunication Systems (12 units) |
|
The course serves as an introduction to the theory and practice behind many of today's communications systems. The course begins with an introduction to communication signals and systems. Following this, modulation, demodulation and detection, communication link analysis source coding and channel coding will be presented, leading to modulation/coding performance, the Shannon-theorem and its impact. Finally, channel equalization and synchronization will be reviewed. Hands-on experience will be gained using MATLAB/SIMULINK.
|
| AIT34C: Operating Systems (12 units) |
|
This course introduces and motivates fundamental concepts as well as design and implementation aspects of operating systems. Several approaches of structuring operating systems are presented and various mechanisms and policies that have been implemented in real operating systems are detailed and analyzed. Topics covered in the course include multiprogramming, processes and threads, synchronization, deadlocks, memory management, input/output, file systems, as well as concepts of distributed operating systems.
|
| AIT35C: Object Oriented Programming (12 units) |
|
This course is intended for students who want to be exposed to object oriented programming principles and practice. The course introduces fundamental concepts of object orientation and then shows how they are exemplified in the Java programming language. Java has been selected as the working language in the course since it a compact syntax and clean semantics, and, in addition, provides an easy tool for introducing and mastering concepts in object orientation.
|
| AIT36C: Microprocessors and Embedded Systems (12 units) |
|
This course provides knowledge and extensive hands-on experience for handling industrial embedded design/ programming projects efficiently. The course combines concepts in hardware (I/O, busses, memory and computer architecture), and in software (programming in assembly and C, operating systems) under a global view, which is very important for addressing system-level issues.. Topics covered include: embedded microprocessor architecture and programming, I/O and device driver interfaces to embedded processors, operating systems concepts for synchronization, concurrency, communication and scheduling, and, Real-Time resource management techniques. The course includes several laboratory assignments (including system calls, code optimization, interrupts, device drivers, concurrency and interrupts), which will be carried out in the state-of-the-art Embedded Systems and Electronics Lab of AIT.
|
| AIT25C: Graduate Project (24 units) |
|
The Graduate Project represents a capstone experience and an original contribution in an interesting and relevant area of information technology and/or Telecommunications. Projects may include internships, working on existing projects, designing new areas of research, or assisting faculty to further their work on their current research.
|
2. Elective Courses
| AIT24E: Independent Study (12 units) |
|
If there is a special topic that interests the student, and if there are no AIT courses covering the topic in depth, the student may negotiate an "independent study" course with a faculty member. If the student can find a faculty member who agrees to supervise such a course, the student must secure a form from the AIT student secretariat, fill it out, and submit it for approval. The independent study course is to count towards an elective course and it must be approved by the Academic Advisor. Approval will only be granted for independent study topics that are clearly different from a student's MSITT graduate project research topic. Each MSITT student can take up to one independent study course. Students may not enroll in independent study courses during any semester in which they are on probation.
|
| AIT26: Research Seminar(3 units) |
|
The AIT Research Seminars are offered in the Fall and Spring terms of the first academic year. They are obligatory for all students and they intent to expose the students in latest technological advancements and research outputs (click for more).
|
| AIT27E: E-Commerce Technologies (12 units) |
|
The objective of this course is to provide students with the essentials to understand e-commerce, relevant technologies and applications and to experiment with specific e-commerce technologies in the form of small homework assignments. The course is separated in three parts. The first part will introduce the main e-commerce principles and address the managerial perspective. The second part will explore e-commerce technologies in breadth while the third part will focus on e-commerce deployment with XML and ASP.NET.
|
| AIT30E: Telecommunications and IT Management (12 units) |
|
The purpose of this course is to provide students with an understanding of the key technical and managerial issues in the effective development and use of telecommunications and information system infrastructures by organizations. Discussion of technology will be set in the context of applications, particularly those emphasizing inter-organizational coordination and service delivery. The interdependency of application and network development required for successful deployment of distributed information systems is all too often overlooked by ICT professionals. Topics covered will include basic concepts of telecommunication technology (data and voice), internet and intranet technologies, issues related to the operational and strategic use of the technology, and the changing structure of the telecommunications industry. In addition an overview of the regulatory environment and how it affects the operation of the telecommunication industry will be presented. The course will include a project where groups of students will work on specific business cases toward the development of skills and business-oriented systems design capabilities.
|
| AIT38E: Database Systems (12 units) |
|
Database Systems are at the heart of both legacy and emerging IT infrastructures. This course provides insight into fundamental concepts of database systems theory and design, along with representative implementation examples. Both conceptual and physical database design methodologies are covered. All major data models are presented, with particular emphasis on the prevalent Relational Database Management Systems (RDBMS) and the Structured Query Language (SQL). Apart from design issues basic knowledge on storage and indexing is provided. Practical implementation techniques along with examples on state of the art RDBMS are also given. Furthermore, the course positions database systems in the scope of both client-server systems, as well as within multi-tier architectures. Besides acquiring a sound theoretical background, students are given the opportunity to acquire practical experience in the scope of homeworks and projects.
|
| AIT39E: Web Technologies (12 units) |
|
The WWW and the related technologies offer global access to information resources in a uniform way via user-friendly applications and thus added value to the Internet by enabling the provision of services for e-Commerce, e-Government and e-Learning. During this course you will understand different aspects of Web Technologies and gain practical experience. The following areas will be covered: Web Architecture and Infrastructure, Web Markup Languages, Web Protocols, Analysis and Design of Web Applications, Client-side and Server-side Web Programming, Web Services, Semantic Web, Case study: Web Technologies for E-Commerce
|
| AIT41E: Broadband Networks (12 units) |
|
The scope of the course is to offer a practical perspective and expose students to advanced topics in high-speed networking and internet technologies. The focus will be on both the architectural and protocol aspects underpinning the design and operation of broadband networks and will provide broad coverage of subjects including: IP Architectures (IntServ, Diffserv), MPLS, ATM, Frame Relay, SONET/SDH, IP over WDM architectures, DSL, Traffic Control, QoS and Packet Switching Architectures. The goal is to provide students with an understanding of how the internet uses these underlying technologies to enable its applications and offer its services, so that students can learn about the standards, concepts, functionalities and networking issues involved. Emerging and next-generation technologies such as VoIP, Storage Networks will be also discussed.
|
| AIT42E: Introduction to Cryptography and Computer Security (12 units) |
This course aims to provide background knowledge on some of the fundamental issues in the field of cryptography and to serve as an introduction to its applications to secure networking and electronic commerce since most of today’s information technology applications require security as a central system feature.
In this course we will offer a guided tour in the design of both private key and public key cryptosystems which meet certain minimal requirements of security against adversaries who not only can listen to messages but who can also intercept messages, alter them, and maybe have limited access to encryption equipments. Our mission would be to i) define security in the presence of adversaries of various capabilities, ii) consider current proposals of encryption systems and evaluate them with respect to the security goal planned, iii) explain why “theory” can be different from “practice” when it comes to real-world applications and iv) present practical examples throughout and provide all required background.
|
| AIT43E: Digital Signal Processing (12 units) |
|
The aim of this course is to understand and process digital signals, leading to the design of digital systems. The course will begin with some necessary background material in linear algebra. Then the Z-transform and digital systems will be introduced. Next the generation of digital signals will be covered, namely the sampling theorem and the data converters. Digital filters will be built to process the signals; FIR, IIR, multirate filters and filter banks will be covered. Finally the Discrete and Fast Fourier as well as the Wavelet Transforms will be considered. Hands-on experience will be gained using MATLAB.
|
| AIT44E: Programming for Enterprise Systems (12 units) |
|
IT professionals with insight in enterprise systems have a clear competitive advantage in the industry. Developing Enterprise systems requires skills beyond conventional programming. This course provides the knowledge required to understanding the structure of modern enterprise systems and accordingly developing applications. First, major enterprise system architectures are presented in the light of latest trends in the IT and telecom industry. The structure of client-server and multi-tier applications is illustrated, along with an overview of platforms and technologies supporting implementation and deployment. These technologies target the presentation, business, as well as persistence layer/tier of enterprise systems. The course presents also fundamental aspects of business requirements analysis and UML based modeling, to allow students to understand how to drive a system model/design to implementation detail. Accordingly, the course elaborates on techniques for accelerating application development so that projects are delivered in time, within budget and compliant to business requirements. Practical examples and projects will be based on state of the art platforms (i.e. based on J2EE, MS .NET).
|
| AIT45E: Fundamentals of Distributed Systems (12 units) |
|
The objective of the course is education and practice on state-of-the-art technologies on Distributed Systems via the understanding and use of the principles of design and architecture of large scale computational systems with network connections. Distributed Systems are defined as a collection of autonomous computers in a network equipped with distributed system software to form an integrated computing facility. Main features of distributed systems are geographical distribution, autonomy, communication, co-ordination, interactivity, availability, fault-tolerance, security, and high performance. We will study different models of distributed computation, inter-process communication and the basic problems and existing solutions for synchronization, fault-tolerance and high availability. We will also discuss computer languages which are appropriate for distributed system programming (Java, J2EE, CORBA). Students will gain practical experience by implementing a complete distributed system with multimedia features
|
| AIT46E: Wireless Networks (12 units) |
|
Wireless networks and wireless communications technology have the potential to make universal Internet use a reality, which will clearly lead to global connectivity, roaming, and ubiquitous communications. This course aims at providing an introduction to various wireless network technologies covering all deployment ranges (wireless PANs, LANs, MANs, WANs and wireless Internet), modes of operation (infrastructure based and ad hoc), and main protocols (cellular systems, Wi-Fi, WiMAX, Bluetooth). Emphasis will be given on the MAC, network and upper layers issues and aspects of wireless communication networks, as the relevant physical layer issues are examined in other courses. In particular, a big part of the course will be devoted to wireless ad hoc networks, focusing on issues such as medium access control, routing, addressing, multicasting, node cooperation, QoS provisioning, energy management, etc. Apart from the theoretical discussion of the above topics, the students will be introduced to the popular ns-2 software simulation tool and be requested to perform lab assignments and a final project on wireless network simulation using ns-2. Prerequisites: Data Networks.
|
| AIT67E: Knowledge Engineering (12 units) |
The course tackles the issues of knowledge modeling, knowledge representation, knowledge acquisition, ontological engineering, semantic integration and ontology mapping, knowledge management, case-based reasoning and decision support systems, expert systems and machine learning, knowledge based and semantic based systems design.
The course enables students to gain insight on the ways to design and build self-adapted and self-learning systems and applications based on semantics and domain knowledge modeling and use. [syllabus]
|
| AIT68E: Ambient Intelligence Lab (12 units) |
|
This is a laboratory course that will take place in the Smart laboratory, a space equipped with a variety of sensors such as cameras and microphones along with significant computing power to allow processing of the sensor streams and extraction of information and context. The course will provide students with the knowledge and skills to process sensor streams, to use models for context awareness and perceptual processing and apply them to real environments for working and living. Focus will be given on intelligent application definition, design and testing. The students will gain hands-on experience on advanced tools for context modeling, and for building plug-and-play distributed applications with perceptual components.
|
| AIT76E: Software Engineering (12 units) |
|
This course covers techniques for dealing with the complexity of software systems with the aim to give students both a theoretical and a practical foundation in software engineering. It mainly focuses on the technology of software engineering for the individual and small teams. In the theoretical part, students will learn about the principles and methods of software engineering, including current and emerging software engineering practices and support tools. In the practical part, students will become familiar with the development of software products from an industry perspective, including generation of appropriate documents under tight schedules and limited resources. Topics to be exercised include, among others, specifications, principles of design and software architecture, testing, debugging, static analysis, and version control. Students taking this class should have a good background in programming and elementary software development. If not, then instructor’s approval is required.
|
| AIT85E: Wireless Communications (12 units) |
|
The main objective of this course is to provide an overall understanding of wireless communications in order to train students on current developments of wireless systems and to equip them with the required background to understand and develop future wireless systems. The course focuses on the physical layer of wireless communications, while also providing some elements of wireless networking. We present the basic elements of the wireless link including channel characteristics, modulation, coding, and signal processing techniques (e.g. equalization, diversity, etc.). At the MAC layer, basic theory is presented for cellular networks, wireless LANs and 4G networks. The theory is supported with many examples from existing wireless systems, including GSM, IS-95, 802.11, Bluetooth, Zigbee etc. Towards the end of the course we present advanced wireless communication techniques (i.e. OFDM, CDMA, MIMO), in order to familiarize the students with the latest developments in wireless technology.
|
| AIT86E:Optical Communications(12 units) |
|
Modern telecommunications networks are built on optical transmission technologies such as Sonet, SDH, and DWDM. Connections across these Optical Transport Networks (OTNs) are typically set up by a human operator, using the provisioning functions of a proprietary Network Management System. This static provisioning is expensive and prone to errors, but, most importantly: It’s slow. The provisioning times across all but the simplest, single-operator networks can be measured in weeks, or even months. Today there is a drive to enable the OTN with an intelligent Control Plane based on an evolution of IP and MPLS protocols. Such optical/IP internetworking will dramatically reduce the costs of operating these networks and will enable service providers to create more dynamic new services for their customers. A lot of work is needed to complete this integration, and the course offered by AIT looks at the background to this transformation.
The course is divided in two major parts that cover (a) the enabling technologies/system engineering and (b) optical networking design principles and architectures respectively . Knowledge of the basics of the enabling technologies for optical networking is not only necessary from a transmission point of view but also from the viewpoint of understanding the physical limitations associated with the operation of optical networks. In addition, the considerations for near term optical network deployments will be covered as well as the evolution path towards advanced next-generation optical networks with build-in intelligence and optimum performance. The course objective is to provide AIT’s students the basic knowledge of present optical communication components, systems and networks as well as an understanding of future engineering challenges.
|
| AIT92E: Special Topics in Networking (12 units) |
|
The main objective of this course is to provide specialization on telecommunications and data networks addressing some of the relevant key principles and concepts with emphasis on specific topics that are of great importance in the networking area. It will offer students the technical background to examine the entire system including end users and their applications expanding to the devices and networks that support them and will expose them to the methodology required to perform network analysis, and define the network architecture, and design. A significant part of the course will deal with application and user imposed network requirements, network design and planning, network performance evaluation, features and attributes. The course will also cover some recent trends and modern approaches to networking and will address issues related to both the data and the control plane while it will aim to provide students with an engineering approach to networking. This course will provide students with the required background to pursuit further and more specialized studies/research in the area of telecommunications and data networks or follow a relevant career path. In terms of prerequisites it is assumed that the students have some basic knowledge of Telecommunications/Data networks at an undergraduate level.
|
| AIT93E: Green ICT: Assessing Problems, Policies & Possibilities (12 units) |
|
This course is intended for students who want to be able to use a multidisciplinary approach for accessing technical, economic, energy and environmental aspects of the use of Information and Communication Technology (ICT). ICTs do not only constitute an industry in their own right, but they are also used in almost every sector of the economy and every day life, acting as integrating and enabling technologies. Thus, ICTs have a profound impact on society, and their production and use heavily influence development in economic, social and environmental domains. In this course, after a review of the technical fundamentals of ICT and energy, will proceed with analyses of their economic aspects and interrelationships, as well as emerging business models. Then, frameworks for the interactions among the economic, environmental and societal pillars will be presented and will be used to identify policy options. The course will conclude with analyses and studies of various cases.
|
| AIT96E: Game Technology & Design(12 units) |
|
Part design and part technology, the course will cover the basic concepts and technologies underlying the Game Design and the Game Development including topics on the engineering side like Game engines, the 3D rendering pipeline, Game physics, Spatial data structures, Movement, Pathfinding, Decision making, Tactical and Strategic AI, Minmaxing, World interfacing, Game networking, Persistent worlds, etc, and topics on the game design side like the Nature of games, Developing ideas, Challenges and genres, Modern board games, RPG games, Card games, Components of a game, Rules and game mechanics, Game balance etc. The course enables the students to exploit their creativity, providing to them the necessary framework of ideas and tools. The students will form interdisciplinary groups and work on a semester-long game prototype development project, which will be proposed by them. A series of lectures will be tailored to the specific topics the students request for the development of their selected project.
|
Students' Views
"AIT’s facilities were excellent and light years ahead."
Chrisostomos Floros, Junior Summer School, (Greece)

|