LISTEN

Course Catalog

IT 501 Introduction to Computer Programming 3 Credits
This is the first course in our series of programming courses which aims at introducing the students to fundamentals of computer programming in Java. Students will learn algorithmic thinking along with the basic concepts of coding such as data types, control structures, objects, arrays and functions.

Last Offered Terms Course Name SU Credit
Fall 2017-2018 Introduction to Computer Programming 3
Fall 2016-2017 Introduction to Computer Programming 3
Fall 2015-2016 Introduction to Computer Programming 0

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 511 Fundamentals of Data Communications and TCP/IP Networking 3 Credits
The first part of the course gives the students an overview of data communication and networking. Basic concepts associated with data transmission and data communication techniques are presented to introduce students to communication. The second part of IT 511 provides students with an in-depth knowledge of the internal workings of different protocols in the TCP/IP protocol suite and how they are configured in the Linux and Windows NT environment. Topics include Networking Overview; Data Communication Techniques; Switching Concepts; OSI Reference Model and Layers; TCP/IP Protocol Suite and Services; TCP/IP Internetworking; IP Routing; TCP/IP Network Setup and Troubleshooting; Network Applications using SMTP, FTP, HTTP, DNS, DHCP and WINS.

Last Offered Terms Course Name SU Credit
Fall 2017-2018 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2016-2017 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2015-2016 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2014-2015 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2013-2014 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2012-2013 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2011-2012 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2010-2011 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2009-2010 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2008-2009 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2007-2008 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2006-2007 Fundamentals of Data Communications and TCP/IP Networking 3
Spring 2005-2006 Fundamentals of Data Communications and TCP/IP Networking 3
Spring 2004-2005 Fundamentals of Data Communications and TCP/IP Networking 3
Spring 2003-2004 Fundamentals of Data Communications and TCP/IP Networking 3
Fall 2002-2003 Fundamentals of Data Communications and TCP/IP Networking 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 512 Enterprise System Analysis an Integration 1.5 Credits
This course will cover various aspects of network components, network design, capacity planning, network management, system integration, Internet/Extranet/Intranet services, system and network troubleshooting. Topics include Network Topologies and Standards; Transmission Media and Structured Wiring; Network Operating Systems; Network Design and Implementation; Network Management and Troubleshooting; Local Area Networks, Wide Area Networks; WAN Applications and Technologies; WAN Equipment; Hands-on Internet/Intranet Services.

Last Offered Terms Course Name SU Credit
Spring 2007-2008 Enterprise System Analysis an Integration 1.5
Spring 2006-2007 Enterprise System Analysis an Integration 1.5
Spring 2005-2006 Enterprise System Analysis, Integration and Security 3
Spring 2004-2005 Enterprise System Analysis, Integration and Security 3
Spring 2003-2004 Enterprise System Analysis, Integration and Security 3
Spring 2002-2003 Enterprise System Analysis, Integration and Security 3

Prerequisite: __
Corequisite: __
ECTS Credit: 3 ECTS / 3 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 513 Systems And Network Security 3 Credits
This course deals with security issues in a networked environment and the Internet, and with a guide to obtaining freely available security tools and references. It points out the inadequacies of existing products in keeping out intruders, and enables participants to better estimate their own security requirements, risks, and advantages. These include the World Wide Web security, proxy programs, integrity management tools, secure programming, and how to use secure TCP/IP services. It also covers security issues on passwords, filesystem, cryptography, backups, logging, firewalls, virtual private networks, proactive security strategies and policies, physical security and dealing with break-ins.

Last Offered Terms Course Name SU Credit
Summer 2016-2017 Systems And Network Security 3
Summer 2015-2016 Systems And Network Security 3
Summer 2014-2015 Systems And Network Security 3
Summer 2013-2014 Systems And Network Security 3
Summer 2012-2013 Systems And Network Security 3
Summer 2011-2012 Systems And Network Security 3
Summer 2010-2011 Systems And Network Security 3
Summer 2009-2010 Systems And Network Security 3
Summer 2008-2009 Systems And Network Security 3
Summer 2007-2008 Systems And Network Security 3
Summer 2006-2007 Systems And Network Security 3
Summer 2005-2006 Systems And Network Security 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 515 Designing Network Service Architectures 3 Credits
This course aims to provide students with an in-depth understanding of the integration of voice and data networks with case studies directed towards consolidated networks. The structure, architecture, and design of today's voice and telephony networks are examined. The students will get a solid understanding of the architecture of voice communications and learn how signalling, call quality and PBXs work within data networks. This course also provides real-world options for integrating voice and data communications applications; analyzes cost vs. quality issues and discusses the key standards and technologies that make the voice over data networks a reality. Topics include: Quality of Service (QoS); Access Signaling Types; Voice Packetization and Compression; Real-Time Transport Protocol;Technology Necessary to Make VoIP Successful; H323 and SIP Protocols; Gateway Protocols; Implementing VoIP; Voice over Frame Relay and Voice over ATM; Introcuction to Wireless Concepts and GSM.

Last Offered Terms Course Name SU Credit

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 519 Introduction to Programming using C# 3 Credits
The objective of this course is to introduce participants to programming and problem solving with the help of an object-oriented programming language C#, which is the official language of Microsoft® .NET platform. The course will cover many C# features in detail as needed as well as developing an algorithmic way of thinking irrespective of the programming language used. During this course, participants will learn the fundamental skills that are required to design and develop object-oriented applications.

Last Offered Terms Course Name SU Credit
Fall 2009-2010 Introduction to Programming using C# 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 520 Linux Programming Environment 3 Credits
The first part of this hands-on course introduces the student to everyday use of the Linux operating system. Advanced working knowledge of Linux, writing Bourne Shell scripts to automate programming tasks, and use of the awk filter are also introduced. The second part of IT 520 helps students understand the principles of software engineering and its application in writing modular C programs. Topics include Introduction to Linux Operating System and the Syntax; Linux File System; On-line Help Facility; Text Editing; Linux Network Communication; Graphical Interfaces to Linux; Shell Concept; Bourne Shell Programming; Awk; Introduction to C; Variables and Constants; Structures; Numeric Data Types; Separate Compilation and Linking; Dynamic Memory Allocation; Disc Files and other I/O.

Last Offered Terms Course Name SU Credit
Fall 2005-2006 Linux Programming Environment 3
Fall 2004-2005 Linux Programming Environment 3
Fall 2003-2004 Linux Programming Environment 3
Fall 2002-2003 Linux Programming Environment 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 521 Object-oriented Programming with C++ 3 Credits
Starting with a conceptual model of the UML, the course This course provides a tutorial to the core aspects of the language in a format designed to facilitate learning. This course will help students understand the principles of software engineering and its application in writing modular C++ programs for large-scale projects. It teaches students the essential topics of C++ such as encapsulation, inheritance, polymorphism, and overloading, and points out key programming techniques and strategies of converting existing C code to C++. Topics include Object-Oriented Analysis; C++ Classes; Memory Allocation; Overloading; Inheritance; Exception; Manipulators and Templates; Separate Compilation and Linking.

Last Offered Terms Course Name SU Credit
Fall 2003-2004 Object-oriented Programming with C++ 3
Fall 2002-2003 Object Oriented Design using UML and C++ 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 522 Advanced Programming using Visual C++ 3 Credits
This course familiarizes students with graphical user interface (GUI) programming in the Windows NT/2000 environment using Visual C++ and the Microsoft Foundation Classes (MFC) library. IT 522 equips software developers with the essential knowledge of how to debug and profile Windows programs and covers the latest features of Visual C++ and Windows NT/2000 graphical components, such as tree views and rich edit controls. Topics required to build advanced applications using the latest ActiveX technology, database access using both ODBC and Data Access Objects (DAO) are also covered. Topics include VC++ Development Environment; C++ and Object-Oriented Programming; MFC Programming; Event Handling; Document-view Architecture; Creating Windows Help System; OLE and COM Basics; Creating and Customizing OLE Servers; ActiveX Concepts; ActiveX Template Library; MFC ControlWizard; Database Access.

Last Offered Terms Course Name SU Credit
Summer 2002-2003 Advanced Programming using Visual C++ 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 523 Developing E-commerce Applications using XML 3 Credits
This course aims at defining and understanding the eXtensible Markup Language (XML) and designing XML applications. Laboratory sessions include usage of SAX and DOM in dynamic manipulation as well as writing WML (WAP) pages for mobile devices. At the end of IT 523, the students should be able to write XML and understand its implications on e-commerce. Topics include XML Documents; Database Publishing with XML; XML Standards; XML Style Language; Unicode Standard; Document Object Model; Standard Generalized Markup Language; DTD's; Scripting and XML; XML Schemas; SAX2; Styling XML; Interfacing XML with Databases using ASP; E-commerce; WAP and XML.

Last Offered Terms Course Name SU Credit
Spring 2002-2003 Developing E-commerce Applications using XML 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 524 Programming with Java 3 Credits
This is a hands-on course on the Java programming language using the Java Development Kit (JDK), and the use of Java to reinforce the use of object-oriented approach to solve real problems. A general understanding of object- oriented programming concepts is also presented. IT 524 covers more advanced features of the Java Foundation Classes (JFC), distributed programming using the Remote Method Invocation (RMI), CORBA, and the Java Native Interface (JNI) for interfacing Java programs with applications written using some other language such as C, as well as Java security. Topics include Java and Object- Oriented Programming; Language Basics; Java Classes and Objects; Java Statements; Exceptions; Java Threads; Swing Programming; Java Packages; Java File I/O; Distributed Applications; Persistence and Remote Method Invocation; Database Connectivity (JDBC); Java Native Interface; Java Security Model.

Last Offered Terms Course Name SU Credit
Fall 2017-2018 Programming with Java 3
Fall 2016-2017 Programming with Java 3
Fall 2015-2016 Programming with Java 3
Fall 2014-2015 Programming with Java 3
Fall 2013-2014 Programming with Java 3
Fall 2012-2013 Programming with Java 3
Fall 2011-2012 Programming with Java 3
Fall 2010-2011 Programming with Java 3
Fall 2009-2010 Programming with Java 3
Fall 2008-2009 Programming with Java 3
Fall 2007-2008 Programming with Java 3
Fall 2006-2007 Programming with Java 3
Fall 2005-2006 Programming with Java 3
Fall 2004-2005 Programming with Java 3
Spring 2003-2004 Programming with Java 3
Spring 2002-2003 Programming with Java 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 525 Advanced Java Programming 3 Credits
This course is designed to teach programmers the advanced aspects of Java programming language and how it is applied to a wide range of applications. The course covers advanced Java Programming topics including streams and file I/O, multithreading, recursion, sorting and searching, network programming and networked applications, socket classes, introduction to RMI (Remote Method Invocation), working with Java databases, Java Database Connectivity (JDBC), introduction to JavaBeans, creating JavaBeans and handling events using JavaBeans, Servlets, JSP, Java development practices and Java security.

Last Offered Terms Course Name SU Credit
Spring 2017-2018 Advanced Java Programming 3
Spring 2016-2017 Advanced Java Programming 3
Fall 2016-2017 Advanced Java Programming 3
Spring 2015-2016 Advanced Java Programming 3
Spring 2014-2015 Advanced Java Programming 3
Spring 2013-2014 Advanced Java Programming 3
Spring 2012-2013 Advanced Java Programming 3
Spring 2011-2012 Advanced Java Programming 3
Spring 2010-2011 Advanced Java Programming 3
Spring 2009-2010 Advanced Java Programming 3
Spring 2008-2009 Advanced Java Programming 3
Spring 2007-2008 Advanced Java Programming 3
Spring 2006-2007 Advanced Java Programming 3
Spring 2005-2006 Advanced Java Programming 3
Spring 2004-2005 Advanced Java Programming 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 526 Enterprise Java Frameworks and Design Patterns 3 Credits
This is a hands-on course which consists of two main parts. In the first part, commonly used enterprise Java frameworks are presented. These frameworks include Java Server Faces (JSF), SpringMVC and Struts as MVC Frameworks; and Java Persistence API and Hibernate as Object Relational Mapping (ORM) Frameworks. In the second part, the software design patterns which will be needed during software design and implementation process are introduced. These design patterns are presented as Creational Patterns, Structural Patterns and Behavioral Patterns.

Last Offered Terms Course Name SU Credit
Spring 2017-2018 Enterprise Java Frameworks and Design Patterns 3
Spring 2016-2017 Enterprise Java Frameworks and Design Patterns 3
Spring 2015-2016 Enterprise Java Frameworks and Design Patterns 3
Summer 2014-2015 Enterprise Java Frameworks and Design Patterns 3
Summer 2013-2014 Enterprise Java Frameworks and Design Patterns 3
Summer 2012-2013 Enterprise Java Frameworks and Design Patterns 3
Summer 2010-2011 Enterprise Java Frameworks and Design Patterns 3
Summer 2008-2009 Enterprise Java Frameworks and Design Patterns 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 527 Enterprise Data and Process Integration Using XML 3 Credits
This course is about how to design, develop and integrate Web-enabled business-to-business (B2B) applications based on Extensible Markup Language (XML), Java and emerging technologies around XML and Java. This course is intended for experienced, professional software developers who work in corporate enterprise development teams and independent software vendors. Most students will be Java or C# developers familiar with introductory XML concepts. In particular the course focuses on how such applications can send, receive, verify, and manipulate XML documents that are exchanged among companies using new technologies such as Web application server, Simple Object Access Protocol (SOAP), Web services, and data binding. The benefits and potential pitfalls of these technologies are covered along with aspects such as using any modern object-oriented language.

Last Offered Terms Course Name SU Credit
Summer 2004-2005 Enterprise Data and Process Integration Using XML 3
Summer 2003-2004 Enterprise Data and Process Integration Using XML 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 528 Developing .NET Applications Using C# 3 Credits
C# programming language - .NET Framework with object-oriented analysis and design. Developing ASP.NET applications and XML Web Services using C# programming language.

Last Offered Terms Course Name SU Credit
Summer 2015-2016 Developing .NET Applications Using C# 3
Fall 2014-2015 Developing .NET Applications Using C# 3
Fall 2013-2014 Developing .NET Applications Using C# 3
Fall 2012-2013 Developing .NET Applications Using C# 3
Fall 2011-2012 Developing .NET Applications Using C# 3
Fall 2010-2011 Developing .NET Applications Using C# 3
Spring 2008-2009 Developing .NET Applications Using C# 3
Spring 2007-2008 Developing .NET Applications Using C# 3
Spring 2006-2007 Developing .NET Applications Using C# 3
Spring 2005-2006 Developing .NET Applications Using C# 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 529 Object-oriented Analysis and Design using UML 1.5 Credits
This objective of this course is to provide the basics of object-oriented software engineering including object-oriented analysis and design using UML. Course includes: Fundamental concepts of software design & UML (Unified Modeling Language), Requirement analysis, UML notations, Use case diagrams, Class diagrams and Case studies.

Last Offered Terms Course Name SU Credit
Spring 2014-2015 Object-oriented Analysis and Design using UML 1.5
Spring 2013-2014 Object-oriented Analysis and Design using UML 1.5
Spring 2012-2013 Object-oriented Analysis and Design using UML 1.5
Spring 2011-2012 Object-oriented Analysis and Design using UML 1.5
Spring 2010-2011 Object-oriented Analysis and Design using UML 1.5
Spring 2009-2010 Object-oriented Analysis and Design using UML 1.5
Spring 2006-2007 Object-oriented Analysis and Design using UML 1.5

Prerequisite: __
Corequisite: __
ECTS Credit: 3 ECTS / 3 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 530 Advanced Web Programming 3 Credits
This course provides a formal introduction to Web application development and Web-enabled technologies. It also provides a grand tour of the technologies used on the client and server side to support user web interfaces This course, in short, provides the student with the skills needed to build professional web applications with interfaces to different types of databases. Programming, which is needed to interface the web pages with CGI and interface with database through ODBC, is usually done with interpreted languages like Perl, PHP, Python, etc. as compiled languages are already taught in other classes. This course also introduces the students to other methods of interfacing with a database, including Active Server Pages (ASP) and Java Server Pages. It finally summarizes the the competing technologies supporting distributed computing, COM/DCOM from Microsoft and Open Standard CORBA. Comparison between different technologies is essential to choosing the right solution for the business environment that is built.

Last Offered Terms Course Name SU Credit
Fall 2008-2009 Advanced Web Programming 3
Spring 2006-2007 Advanced Web Programming 3
Fall 2005-2006 Advanced Web Programming 3
Fall 2004-2005 Advanced Web Programming 3
Fall 2003-2004 Advanced Web Programming 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 531 Building Web Applications Using ASP.NET and AJAX Framework 3 Credits
In this course, students will learn building web applications using ASP.NET, AJAX library and AJAX control toolkit in the .NET Framework. Students will learn how to apply already known web technologies like JavaScript and CSS to their ASP.NET web applications and how to deploy web applications on the IIS (Internet Information Services) server. Students will also learn about web services in .NET by using C# as the programming language.

Last Offered Terms Course Name SU Credit

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 532 Web Technologies for Applicaton Developers 1.5 Credits
This course is designed to give students web development experience and teach them current technologies that are used developing web applications. At the completion of the course; the students are expected to have the knowledge of basic web concepts like HTML, CSS, JavaScript and advanced web concepts like XML, XML Processing techniques, XSLT for XML Transformation, DOM (Document Object Model), AJAX (Asynchronous JavaScript and XML), AJAX Frameworks, Web Services, Web Services protocol, RSS and Mashups as well. The students are also expected to use these technologies while developing web applications.

Last Offered Terms Course Name SU Credit
Spring 2007-2008 Web Technologies for Applicaton Developers 1.5

Prerequisite: __
Corequisite: __
ECTS Credit: 3 ECTS / 3 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 533 Web Programming using ASP.NET 1.5 Credits
The objective of this course is to introduce participants to web programming using the Microsoft® ASP.NET technology. The participants will learn how to build web applications on the Microsoft® .NET platform and will also learn how to deploy these web applications on the Microsoft® IIS (Internet Information Server). The programming language that will be used is C#, hence the participants are expected to have taken the IT519 course.

Last Offered Terms Course Name SU Credit
Spring 2014-2015 Web Programming using ASP.NET 1.5
Spring 2013-2014 Web Programming using ASP.NET 1.5
Spring 2012-2013 Web Programming using ASP.NET 1.5
Spring 2011-2012 Web Programming using ASP.NET 1.5
Spring 2010-2011 Web Programming using ASP.NET 1.5
Spring 2009-2010 Web Programming using ASP.NET 1.5

Prerequisite: __
Corequisite: __
ECTS Credit: 3 ECTS / 3 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 534 Real Time Systems 3 Credits
Real Time system development requires special design techniques, language and operating system primitives to deal with the time critical nature of such systems. IT 534 introduces real time design techniques such as MASCOT and Petri-Nets that can deal with multi-tasking, mutual exclusion, task synchronization and scheduling problems. Special language constructs such as exception handling, concurrency, interrupt and device handling and also operating system support for task communication and cooperation are examined with practical examples. Topics include: Introduction to Real Time Systems; Design of Real Time Systems; Development Methodology; Design Analysis; Language and Operating System Support.

Last Offered Terms Course Name SU Credit

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 535 Mobile Programming 3 Credits
This introductory course will provide an insight to the leading edge world of applications running on mobile devices via wireless networks. The course will start by giving an overview about the evolution of the wireless technologies along with some of the core concepts employed in mobile communications. Students shall use simulation software to design and debug wireless Web applications developed using WML (Wireless Markup Language), WMLScript, and Java 2 Micro Edition (J2ME).

Last Offered Terms Course Name SU Credit
Spring 2017-2018 Mobile Programming 3
Spring 2016-2017 Mobile Programming 3
Spring 2015-2016 Wireless and Mobile Programming 3
Summer 2014-2015 Wireless and Mobile Programming 3
Summer 2013-2014 Wireless and Mobile Programming 3
Summer 2012-2013 Wireless and Mobile Programming 3
Summer 2011-2012 Wireless and Mobile Programming 3
Summer 2009-2010 Wireless and Mobile Programming 3
Summer 2008-2009 Wireless and Mobile Programming 3
Summer 2005-2006 Wireless and Mobile Programming 3
Summer 2002-2003 Wireless and Mobile Programming 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 536 Developing Mobile Applications Using the .NET Framework 3 Credits
The goal of this course is to provide developers with the knowledge and skills to develop mobile enterprise solutions by using the Smart Device Extensions for Microsoft Visual Studio® .NET and the Microsoft .NET Compact Framework. This course is intended for experienced, professional software developers who work in corporate enterprise development teams and independent software vendors. Most students will be Microsoft Visual Basic® .NET, Microsoft Visual C#, or Java developers. These developers want to build end-to-end solutions in an enterprise environment that includes mobile devices as part of the environment. Course module include: Introduction to Visual C#; Introduction to Mobile Device Application Development; Working with the User Interface; Working with Local Data; Accessing Remote Data; Synchronizing Data with SQL Server CE; Deploying Mobile Applications.

Last Offered Terms Course Name SU Credit
Summer 2007-2008 Developing Mobile Applications Using the .NET Framework 3
Summer 2006-2007 Developing Mobile Applications Using the .NET Framework 3
Summer 2004-2005 Developing Mobile Applications Using the .NET Framework 3
Summer 2003-2004 Developing Mobile Applications Using the .NET Framework 3

Prerequisite: __
Corequisite: __
ECTS Credit: 7 ECTS / 7 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 537 Front-end Web Development 3 Credits
The aim of the course is giving students the skills and the perspective for coding interactive and responsive user interfaces for web and mobile apps. Students will be learning and exercising the three common coding languages HTML, CSS and Javascript to gain a working knowledge of how web sites and mobile interfaces are developed and optimized best to meet the needs of clients.

Last Offered Terms Course Name SU Credit
Summer 2017-2018 Front-end Web Development 3
Spring 2016-2017 Front-end Web Development 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 538 Software Testing 3 Credits
Briefly, software testing is a process of executing a program with the goal of finding errors. Through testing, one inspects behavior of a program on a finite set of test cases (a set of inputs, execution preconditions, and expected outcomes developed for a particular objective). To assure the quality of the project, testing must be considered and executed on all phases of Software Development Life Cycle. This is a critical task for all parties involved in the software project team including analysts, developers and testers. In this course, we will introduce all types of tests in different phases of SDLC such as, unit testing, functional and integrational testing, performance tests, user acceptance tests and adhoc testing. We will examine white box and black box testing formats along with test management formats and reporting. Automation tests and conditions will also be examined within the scope if this course. All lectures will be supported with practical examples and workshops.

Last Offered Terms Course Name SU Credit
Summer 2017-2018 Software Testing 3
Summer 2016-2017 Software Testing 3
Summer 2015-2016 Software Testing 3
Summer 2014-2015 Software Testing 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 539 Secure Software Coding 3 Credits
The goal of this course is to provide developers with the principles and best practices for writing secure code and stopping malicious hackers in their tracks. The contents of the course reveal proven principles, strategies, and coding techniques. Numerous examples will be given to the students used in an effort to find solution to the industry's toughest security problems by providing sample code in several languages. This course will also cover information about threat modeling, designing a security process, international issues, file-system issues, adding privacy to applications, and performing security code reviews. It also includes enhanced coverage of buffer overruns, Microsoft .NET security and Microsoft ActiveX development, plus practical checklist for developers, testers, and program managers. Course includes: The Need for Secure Systems; The Proactive Security Development Process: Security Principles to Live By; Threat Modeling; The Buffer Overrun: Determining Appropriate Access Control; Running with Least Privilege; Cryptographic Foibles; Protecting Secret Data; Database Input Issues; Web-Specific Input Issues; Internationalization Issues; Protecting Against Denial of Service Attacks; Writing Secure .NET Code; Performing a Security Code Review; General Good Practices.

Last Offered Terms Course Name SU Credit
Summer 2004-2005 Secure Software Coding 3
Summer 2003-2004 Secure Software Coding 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 540 Social Network Analysis 3 Credits
Different types of social networks and connectivity are a crucial part of the underlying models of the new generation of applications we use. These connections include people, places, activities, businesses, products, social and integrated business processes happening in personal and business networks or communities. In this course we will study different applications such as Facebook, Twitter, Linkedin and Foursquare, and discover different networks formed by the connectivity. We will introduce tools that will give us insight into how these networks function: We will introduce fundamentals of graph theory and discover how these graphs can be modeled and analyzed (Social Network Analysis). We will also study the interaction dynamics using game theory. Learning objectives are: 1. Study different social applications and how they can be modeled. 2. Understand the basics of graph theory. 3. Understand and perform basic social network analysis 4. Understand the basics of game theory 5. Apply these concepts to model the Web and new social applications

Last Offered Terms Course Name SU Credit
Spring 2017-2018 Social Network Analysis 3
Spring 2016-2017 Social Network Analysis 3
Spring 2014-2015 Social Network Analysis 3
Spring 2013-2014 Social Network Analysis 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 541 Introduction to Data Science 3 Credits
Data Science is the study of extracting information from data. Addressing the needs of the industry requires skills in data processing and data analytics spanning a wide area of subjects ranging from Statistics to Machine Learning. This course will introduce some of the basic concepts, techniques and tools that are required to solve problems widely seen in data analytics. The course wil start with a short review on inferencial Statistics and exploratory data analysis. The focus in the study of these subjects will be breadth, rather than depth, and practical examples will be used in applications of classification and clustering techniques to a wide variety of problems in predictive data analytics.

Last Offered Terms Course Name SU Credit
Spring 2017-2018 Introduction to Data Science 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 542 Big Data Processing using Hadoop 3 Credits
This course will provide the essential background to start to develop programs that will run on Hadoop Distributed File System (HDFS). The course will also show the students the limitations of traditional programming techniques and how Hadoop addresses these problems. After learning the basics of a Hadoop Cluster and Hadoop Ecosystem, students will learn to write programs using Apache Spark framework and run these programs on a Hadoop Cluster.

Last Offered Terms Course Name SU Credit
Summer 2017-2018 Big Data Processing using Hadoop 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 553 Database Design, Management and Administration 3 Credits
This course gives students hands-on practice and experience in database design and administration along with the fundamental concepts and techniques involved. Topics covered include the entity-relationship model, relational database theory, file structure, indexing and hashing, query processing, crash recovery, concurrency control/transaction processing security and integrity. Creation of tables, views, synonyms and indexes are examined in detail. The use of SQL is considered and highlighted with the help of examples, and used to build the underlining database of an application. Topics include Introduction to RDMS; Database Creation and Modification; SQL; Event Programming; Multiple Module Applications; Database Architecture; Hardware Configuration and Consideration; Database Layouts; Database Management; Managing Rollback Segments; Database Tuning; Database Security and Auditing; Backup and Recovery Procedures.

Last Offered Terms Course Name SU Credit
Fall 2017-2018 Database Design, Management and Administration 3
Fall 2016-2017 Database Design, Management and Administration 3
Fall 2015-2016 Database Design, Management and Administration 3
Fall 2014-2015 Database Design, Management and Administration 3
Fall 2013-2014 Database Design, Management and Administration 3
Fall 2012-2013 Database Design, Management and Administration 3
Fall 2011-2012 Database Design, Management and Administration 3
Fall 2010-2011 Database Design, Management and Administration 3
Fall 2009-2010 Database Design, Management and Administration 3
Fall 2008-2009 Database Design, Management and Administration 3
Fall 2007-2008 Database Design, Management and Administration 3
Fall 2006-2007 Database Design, Management and Administration 3
Fall 2005-2006 Database Design, Management and Administration 3
Fall 2004-2005 Database Design, Management and Administration 3
Fall 2003-2004 Database Design, Management and Administration 3
Fall 2002-2003 Database Design, Management and Administration 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 560 Software Engineering 3 Credits
This course introduces the participants to IT Project Management and Software Quality Assurance concepts. IT 560 begins with an overview of Project Lifecyles and Phasing in IT Project Management. Project Initiation, Estimation, Software Metrics and Quality Review issues are examined and highlighted with the help of examples. Software tools are used to enforce the concepts using a realistic IT Project as a case study. Software metrics and testing techniques are further emphasized to provide the necessary background to ensure software quality during the development and delivery phases of a software project. Topics include: Project Lifecycles And Phasing; Project Viability; Waterfall Approach; Project Initiation; Estimating and Metrics; Project Management Tools; Software Quality; Quality Assurance Plan; Software Quality Factors; Program Complexity Metrics and Testing Practices.

Last Offered Terms Course Name SU Credit
Spring 2004-2005 Software Engineering 3
Spring 2003-2004 Project Management and Software Quality Assurance 3
Spring 2002-2003 Project Management and Software Quality Assurance 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 561 Capability and Maturity Model for Software Development Framework 3 Credits
This course provides an opportunity to learn issues involved in Software Development Life Cycles and Software Process Improvement and give the participants an overview of both concepts. The course will begin with the fundamentals of Software Development Life Cycles and basic concepts associated with Software Development. Both traditional and agile development techniques will be presented to introduce the participants to professional software development. In the second part of the course, we'll introduce the concept of Software Process Improvement and work on the fundamentals of the CMMI and XP (eXtreme Programming) practices.

Last Offered Terms Course Name SU Credit
Summer 2005-2006 Capability and Maturity Model for Software Development Framework 3

Prerequisite: __
Corequisite: __
ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
General Requirements:
 
IT 562 An Introduction to SOA Concepts and Development 3 Credits
This course is an advanced analysis and design course that covers traditional OO approach and the modern SOA based software development. Students will be able to get a grasp of fundamental issues and be able to compare and contrast the approaches. The first part of the course covers Object-Oriented Concepts, Analysis and Design. Part two covers SOA concepts and the part three introduces programming SOA applications with examples. Part I : Object-oriented Analysis and Design using UML The objective of this part is to provide the basics of object-oriented software engineering including object-oriented analysis and design using UML. Topics covered: Fundamental concepts of software design & UML (Unified Modeling Language), Requirement analysis, UML notations, Use case diagrams, Class diagrams and Case studies. Part II : SOA Principles This part is an introduction to key concepts and issues associated with SOA and provides an overview of SOA based software lifecycle, development and technologies. Students will be introduced to the fundamental elements of SOA Concepts, Analysis and Design along with a brief overview of Web services, Services and Component Development, Business Process Management, Enterprise Services Bus technologies.
  • SOA Concepts, Analysis and Design
  • Key issues involving services and service infrastructure for SOA
  • SOA-compatible software development process
  • SOA governance and software development
  • Impact of SOA in each phase of the software
  • development process Part III : Developing Java-based SOA Applications This part will help students understand and use software development technologies for SOA based applications including:
  • Understanding the role of Web services and Web service usage
  • JEE Components EJB3 / JAX-WS
  • Business Process Management (BPM)
  • Enterprice Service Bus

  • Last Offered Terms Course Name SU Credit
    Spring 2012-2013 An Introduction to SOA Concepts and Development 3
    Spring 2011-2012 An Introduction to SOA Concepts and Development 3
    Spring 2010-2011 An Introduction to SOA Concepts and Development 3
    Spring 2009-2010 An Introduction to SOA Concepts and Development 3
    Spring 2008-2009 An Introduction to SOA Concepts and Development 3
    Spring 2007-2008 An Introduction to SOA Concepts and Development 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 563 Agile Project Management Methodology 3 Credits
    Agile project management is as radically different from traditional project management as agile processes are different from traditional methodologies. Rather than plan, instruct and direct, the agile project manager facilitates, coaches and serves. In the Scrum Agile practice this person is called a ScrumMaster- Agile project manager. In this course participants learn what an agile software project is, how to manage project risks and issues, and how to guide the development team and an organization into Agile practice by fostering the adoption of new attitudes, collaborative processes and working to remove institutional barriers. Exercises, case studies, and examples are used to assist participants to develop the knowledge, skills, capabilities.

    Last Offered Terms Course Name SU Credit
    Spring 2017-2018 Agile Project Management Methodology 3
    Summer 2016-2017 Agile Project Management Methodology 3
    Summer 2009-2010 Agile Project Management Methodology 3
    Summer 2007-2008 Agile Project Management Methodology 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 564 Iterative Software Development for Project Managers 3 Credits
    This course aims to develop the project/product and change management skills of the students following the approaches suggested by the iterative and agile software development processes. The methods detailed in Unified Process, Scrum, CMMI, Goal Directed Process and Toyota Production System will be used in the lectures. After finishing the course, the students will have a general understanding of software quality, project/product management requirements and they will able to perform the most important aspects of iterative project management. Additionally, the instructor will share his real world experiences, alternative information technology department organization structures, techniques regarding the office politics and relevant human resources approaches.

    Last Offered Terms Course Name SU Credit
    Spring 2015-2016 Iterative Software Development for Project Managers 3
    Spring 2014-2015 Iterative Software Development for Project Managers 3
    Spring 2013-2014 Iterative Software Development for Project Managers 3
    Spring 2012-2013 Iterative Software Development for Project Managers 3
    Summer 2011-2012 Iterative Software Development for Project Managers 3
    Summer 2010-2011 Iterative Software Development for Project Managers 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 566 IT Governance 3 Credits
    This course is designed to give students a broad Managerial Perspective; a CIO's or IT Manager's approach to an IT Organization. With a Quality based approach to an IT Organization first; then its resources, its processes and all the requirements expected from such an organization afterwards; the students will learn how to look at the IT Organization as a whole and how to place any IT Process to fit into the Organizational Structure. This will give the expertise and diagnosis of how and where each process takes place within the organization. The course also aims at equipping the student with Global Best Practices, IT Governance, Control and Security Standards, various methodologies and professional real-life know-how and experience. Another dimension of this course is to ensure that technical people are well equipped with social & managerial skills, which will add them value in understanding the world of business. Students will learn how Business-IT Alignment is to be achieved, how technical people should deal with business issues & how IT investments in an organization need to be controlled. At the completion of the course; the students are expected to have a unique understanding of control oriented business & technology partnership.

    Last Offered Terms Course Name SU Credit
    Summer 2017-2018 IT Governance 3
    Summer 2015-2016 IT Governance 3
    Summer 2006-2007 IT Governance 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 567 ITIL (Information Technology Infrastructure Library) and IT Management 3 Credits
    ITIL (Information Technology Infrastructure Library) is the most widely adopted approach for IT Service Management and has been used as a de facto standard by the IT industry since 1980 for IT Management, IT Service Management and IT Infrastructure management. ITIL advocates that IT services must be aligned to the needs of the business and underpin the core business processes. It provides guidance to organizations on how to use IT as a tool to facilitate business change, transformation and growth. The ITIL best practices are currently detailed within 5 core publications which map the entire ITIL Service Lifecycle. These publications are Service Strategy, Service Design, Service Transition, Service Operation and Continual Service Improvement. Lectures will cover practical applications, case studies, software and real market projects that depend on theoretical IT management processes. Every week there will be a presentation session for real-life cases and industrial/enterprise software applications. Students will have the opportunity to thoroughly learn the 26 processes of ITIL listed in the core publications. There will be presentations for each session based on the product family of BMC and Manage Engine software. Course will be aligned with the accredited syllabus and concepts of ITIL. Core publications will be summarized and mapped onto the leraning objectives of the international ITIL certificate. By the end of this class, students will be ready to take the exam to be ITIL Foundation certified if they desire to do so.

    Last Offered Terms Course Name SU Credit
    Summer 2013-2014 ITIL (Information Technology Infrastructure Library) and IT Management 3
    Summer 2012-2013 ITIL (Information Technology Infrastructure Library) and IT Management 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 571 Linux System Administration 3 Credits
    This course provides the students with an understanding of how to install various Linux operating systems and undertake periodic and day-to-day system administration tasks. Topics covered include the system installation, how to boot up and shut down the system, maintaining disks, file system maintenance, reconfiguring the system kernel, application/system file installation and updates, adding hardware to the Linux System, debugging Linux, creating and managing user accounts; creating and managing directory Shares with NFS and Samba servives; FTP and HTTP service configuration. Also Performance and security issues covered with SeLinux implementations take part in the course content

    Last Offered Terms Course Name SU Credit
    Summer 2015-2016 Linux System Administration 3
    Summer 2014-2015 Linux System Administration 3
    Summer 2013-2014 Linux System Administration 3
    Summer 2012-2013 Linux System Administration 3
    Spring 2011-2012 Linux System Administration 3
    Spring 2010-2011 Linux System Administration 3
    Spring 2009-2010 Linux System Administration 3
    Spring 2008-2009 Linux System Administration 3
    Fall 2007-2008 Linux System Administration 3
    Fall 2006-2007 Linux and Windows System Administration 3
    Summer 2002-2003 Linux and Windows 2000 System Administration 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 580 Special Topics in Information Technologies I 3 Credits

    Last Offered Terms Course Name SU Credit
    Fall 2006-2007 Special Topics in Information Technologies I 3

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 6 ECTS / 6 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements:
     
    IT 592 Project Course 0 Credit
    All graduate students pursuing a non-thesis MSc. Program are required to complete a project. The project topic and contents are based on the interest and background of the student and are approved by the faculty member serving as the Project Supervisor. At the completion of the project,the student is required to submit a final report and present the project. This course aims to provide the students with skills and training to conduct research in a certain area, manage a project on time and to interpret the outcome of the research study. In addition, students are expected to gain experience and further skills in creating a proper project proposal, identifying and evaluating the principal components that will establish the project scope, conducting a literature survey and compiling the results, deciding on the formal methodology and analyzing the outcome, gaining experience in teamwork, cooperation and information sharing, publishing a project report in a format accepted by the scientific communities, and finally preparing and executing a presentation of the project outcome.

    Last Offered Terms Course Name SU Credit
    Summer 2017-2018 Project Course 0
    Spring 2017-2018 Project Course 0
    Fall 2017-2018 Project Course 0
    Summer 2016-2017 Project Course 0
    Fall 2016-2017 Project Course 0
    Summer 2015-2016 Project Course 0
    Fall 2015-2016 Project Course 0
    Summer 2014-2015 Project Course 0
    Fall 2014-2015 Project Course 0
    Summer 2013-2014 Project Course 0
    Fall 2013-2014 Project Course 0
    Summer 2012-2013 Project Course 0
    Summer 2011-2012 Project Course 0
    Summer 2010-2011 Project Course 0
    Summer 2009-2010 Project Course 0
    Summer 2008-2009 Project Course 0
    Summer 2007-2008 Project Course 0
    Summer 2006-2007 Project Course 0
    Summer 2005-2006 Project Course 0
    Fall 2005-2006 Project Course 0
    Summer 2004-2005 Project Course 0
    Fall 2004-2005 Project Course 0
    Summer 2003-2004 Project Course 0
    Summer 2002-2003 Project Course 0

    Prerequisite: __
    Corequisite: __
    ECTS Credit: 30 ECTS / 30 ECTS (for students admitted in the 2013-14 Academic Year or following years)
    General Requirements: