• This course is an introduction to advanced technique and the latest developments in the technical aspect of software engineering. Students are introduced to software design patterns, service oriented architecture, multithreading, and software testing. The course will cover the rationale and benefits of object-oriented software development. Several example problems will be studied to investigate the development of good design patterns. Programming projects in the Java language will provide experience in the use of these patterns and concepts. In addition, existing frameworks will be discussed for their implementation of patterns and practices.

    Guest access
  • The course covers theory and practice of computer security, focusing in particular on the security aspects of the web and Internet. It surveys cryptographic tools used to provide security, such as shared key encryption (DES, 3DES, RC-4/5/6, etc.); public key encryption, key exchange, and digital signature (Diffie-Hellmann, RSA, DSS, etc.). It then reviews how these tools are utilized in the internet protocols and applications such as Kerberos, SSL, IPSEC, TLS, PGP, S/MIME, SET, and others. System security issues, such as viruses, intrusion, firewalls, network management and others will also be covered.

  • This course introduces the concepts that underline operating systems including hardware topics and other functionalities of operating systems i.e. process management, process coordination, memory management and storage management. Along with that some code examples (using C) to simulate the processes that take place in an operating system will also be given.¬†As an outcome, it is expected that after completing this course students are familiar with the concepts of how an operating system works and should have the ability to implement them in a more general application programs development.

Skip Our Social Media

Our Social Media


Official Facebook page

Official Facebook Account

Skip Navigation