School of Engineering

Master of Science in Computer Engineering

30 credits


Specialization Courses – Approved electives
GIN510Advanced Computer Architecture
3 credits
This course first reviews general computer architecture and presents the concept of cache memory and pipelining in single processor systems. Multiprocessing systems are then discussed, starting with a global overview to tackle the next advanced topics: interconnection networks, shared memory and cache coherence, abstract models and algorithms for multiprocessor systems, the parallel virtual machine and message passing.
GRT635Advanced Networks Architectures
3 credits
Students will study: internal routing protocols (RIP, OSPF, EIGRP); external routing protocol (BGP4), evolution; architecture of IP multicast and group management protocol (IGMP) and multicast routing protocols (DVMRP, PIM-SM, PIM-DM); IP networks multi-service, IP and Quality of Service (QoS); DiffServ and differentiated quality of service, architecture; IntServ, architecture and protocols; voice and telephony over IP; Optical IP/ MPLS and GMPLS (architecture, main concepts, traffic engineering); METRO Ethernet; VPN services evolution; VPN architectures (layer 2 and layer 3); mobility in IP networks (Internet and private); mobility mechanisms in IPv4 networks; IPv6 basic mechanisms; mobile IPv6; Hierarchical Mobile IP (HMIP); handover mechanisms based on IPv6; and overlay networks (caches, CDN and peer-to-peer).
GRT673Advanced Networks Architectures Lab
1 credits
GBMStudents will experience advanced routing techniques, IP Multicast, IP and Quality of Service, voice and telephony over IP, VPN, the mobility mechanism in IP networks, basic IPv6 mechanisms, and peer-to-peer networks.
GIN632Artificial Intelligence
3 credits
This course covers the techniques used to design intelligent computer systems using the recent artificial intelligence (AI) techniques. Topics include intelligent agents, problem solving by searching, informed search and exploration, constraint satisfaction problems, knowledge representation and reasoning, planning, uncertain knowledge and reasoning and Machine Learning. The course also discusses advanced AI applications such as natural language processing, computer games, and robotics.
GIN622Computer Network Security
3 credits    |    Pre-requisite: GIN550
The purpose of this course is to introduce the principles of security in fixed and mobile networks. The course starts with an introduction to information security concepts, security services and security mechanisms. In the second part, we discuss the concepts of symmetric and asymmetric cryptography, the hash function and the signature and key sharing procedures and we apply these concepts to secure the data communication using the SSL and the IPSec protocols. In the third part, we discuss security in wireless networks, intrusions and filtering mechanisms through the use of firewalls. Finally, we discuss security management and risk management concepts.
GIN550Cryptography and Computer Security
3 credits
The objectives of this course are to provide cryptographic and information security topics and algorithms, such as symmetric key and public key encryptions, block and stream ciphers, message authentication, program and OS security as well as network and Web security.
3 credits
The purpose of this course is to provide an introduction to microcontroller families: Motorola, Intel, Microchip. We will be studying the internal resources and programming of Microchip PIC microcontrollers, as well as developing multiple practical applications.
GEL577Microcontrollers Lab
1 credits
The main objective of this course is to apply different microcontroller topics and peripherals, introduced using the C language, physically. To do so, the PIC24FJ256DA210 Development Board is used along with the MPLAB program to build and make the program. Software Debugging using the ICD3 is also applied.
GIN625Mobile Devices Programming
2 credits
Students will learn about programming mobile devices with an emphasis on the environment and the Android platform. This course focuses on research and projects. The main themes of the course revolve around the design of applications for mobile devices with unique challenges (user interface, mobile-specific technologies), and the importance of performance. The Android SDK has its own interesting aspects to learn. The multi-touch model, accelerometer, and other important API receive significant attention. Students will learn the concepts of development applicable to any type of mobile environment: iOS, BlackBerry, Symbian, Windows Phone.
GIN623Planning and Configuration of Computer Networks
3 credits    |    Pre-requisite: GIN622
Students will study: computer network planning process; requirements and specifications; modeling of the main network planning problems; topological design and expansion;location of equipment; computer networks at several levels; design of computer networks and routing traffic with performance, reliability and quality of service QOS; resource allocation in computer networks; case studies; protocols and operation of switches and routers; network design including the choice of technologies, protocols and equipment; configuration of switches and routers (wired and wireless); structured cabling; network operating systems; telephony and VoIP; network management (performance management, configuration and faults in networks); and virtualization.
GIN612Software Verification and Validation
3 credits
This course covers the following topics: validation of a software product by testing its complete integration; preconditions, post-conditions and invariants; use of models in software development; test and verification of software; audit programs by symbolic execution; predicate logic of first-order; Hoare logic; and development of correct programs built from templates.
Common Core
GIN540Advanced Database Systems
3 credits
The objective of this course is to study the advanced paradigms of database management systems. The content of this course consists of four main parts. The first part introduces advanced concepts of DBMS such as query optimization, concurrency control and recovery. The second part presents the distributed DBMS. It details the architecture of these systems in order to identify their different types such as client/server DBMS, distributed DBMS, federated DBMS and multi-DBMS. It finally focuses on the fragmentation and data allocation in distributed databases. The third part presents the analytical databases, specifically data warehouses. It explains the difference between the online analytical processing (OLAP) and online transactional processing (OLTP), the ETL process (extraction, transformation and loading) of these warehouses and their logical and physical modeling. The fourth part introduces OODBMS and ORDBMS, their creation and manipulation using respectively the OQL and SQL3 languages.
GIN541Advanced Database Systems Lab
1 credits
This laboratory will study more advanced features of databases in design, administration, security and multi-user application. Topics cover database scripting, database transactions, database security, database maintenance, data warehouse and distributed databases.
GIN624Distributed Systems
3 credits    |    Pre-requisite: GIN550
The objective of this course is to explain the principles of distributed systems and their different hardware and software architectures. The concepts discussed are: C/S and P2P architectures, inter-process communication, distributed file systems, sockets programming, calling procedures and methods remotely (RPC and RMI, CORBA architecture), time synchronization in distributed systems, logical time, coordination algorithms, mutual exclusion, cloud computing, grid computing, clusters, and an introduction to parallel programming.
GEN516Scientific English
2 credits
The English 516 is designed for students working on their thesis. It gives them the opportunity to enhance their writing abilities and develop their critical thinking. It is designed to provide rigorous training in advanced reading, critiquing, synthesizing and researching. It attempts to help students achieve greater competency in reading, writing, reflection, and discussion emphasizing the responsibilities of written inquiry and structured reasoning. Students are expected to investigate questions that are at issue for themselves and their audience and for which they do not already have answers. In other words, this course should help students write about what they have learned through their research rather than simply write an argument supporting one side of an issue or another. In addition, students deliver one oral powerpoint presentation based on their writings.
GIN600Special Topic in Computer Engineering
3 credits
GIN691Thesis I
1 credits
GIN692Thesis II
5 credits    |    Pre-requisite: GIN691


The Master of Science in Computer Engineering program aims to prepare students for advanced study and research in computer engineering. It provides a strong foundation that is needed to design, develop and use computer systems. The main goal of the program is to offer computer engineers a solid background of research fundamentals that helps them to serve their society through research, education or other advanced activities.

Program Educational Objectives

1. Expand students’ knowledge and skills in computer engineering.
2. Prepare students to succeed in a doctoral program in computer engineering or related fields.

Program Outcomes

a. Ability to apply advanced level knowledge and skills in computer engineering and related engineering areas.
b. Ability to ethically conduct applied research and engineering design with professional written and oral communication skills.
Holy Spirit University of Kaslik
Tel.: (+961) 9 600 000
Fax : (+961) 9 600 100
© Copyright USEK 2024
Subscribe to our newsletter