Faculty of Engineering and Computer Science
Faculty of Engineering and Computer Science
Accord University
Faculty of Engineering and Computer Science
Curriculum 2024-25
Page 1 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Contents
Faculty of Engineering & Computer Science ...................................................................... 3
Bachelor of Computer & Network Security .................................................................... 3
Program Mission ........................................................................................................... 3
Program Educational Objectives (PEO) ....................................................................... 3
Curriculum Matrix ........................................................................................................ 3
Course Outlines............................................................................................................. 6
Bachelor of Computer Science..................................................................................... 118
Program Mission ....................................................................................................... 118
Program Educational Objectives (PEOs).................................................................. 118
Curriculum Matrix .................................................................................................... 118
Course Outlines......................................................................................................... 121
Page 2 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 3 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Year 2: Semester 2
BCNS207: Network Security
BCNS208: System Security
BCNS209: Web Security
BCNS210: Ethical Hacking
BCNS211: Database Management Systems
BCNS212: Research Methods in Computer Science
Year 3: Semester 1
BCNS301: Wireless and Mobile Security
BCNS302: Cloud Security
BCNS303: Digital Forensics
BCNS304: Security Policies and Laws
BCNS305: Computer & Network Security Internship I
BCNS306: Elective: Internet of Things Security
Year 3: Semester 2
BCNS307: Advanced Network Security
BCNS308: Penetration Testing
BCNS309: Computer & Network Security Internship II
BCNS310: Elective: Blockchain and Security
BCNS311: Elective: Artificial Intelligence in Security
BCNS312: Elective: Secure Software Development
Year 4: Semester 1
BCNS401: Incident Response and Disaster Recovery
BCNS402: Security Architecture and Design
BCNS403: Thesis I
BCNS404: Elective: Advanced Cryptography
BCNS405: Elective: Security Compliance and Auditing
BCNS406: Elective: Cybersecurity Management
Page 4 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Year 4: Semester 2
BCNS407: Thesis II
BCNS408: Elective: Privacy and Data Protection Laws
BCNS409: Elective: Cyber Warfare and Defense
BCNS410: Elective: Secure Networking Technologies
BCNS411: Elective: Cybersecurity in Healthcare
BCNS412: Comprehensive Exams
Year 5: Semester 1
BCNS501: Thesis III
BCNS502: Capstone Project I
BCNS503: Elective: Advanced Penetration Testing
BCNS504: Elective: Cybersecurity Risk Management
BCNS505: Elective: Security in Emerging Technologies
BCNS506: Elective: Cybersecurity Policy and Governance
Year 5: Semester 2
BCNS507: Thesis IV
BCNS508: Capstone Project II
BCNS509: Elective: Advanced Digital Forensics
BCNS510: Elective: Cybersecurity Operations
BCNS511: Elective: Secure Cloud Computing
BCNS512: Comprehensive Exams
Page 5 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Outlines
FND101: Introduction to Computer Science
Course Introduction:
Introduction to Computer Science provides a comprehensive overview of the
fundamental concepts and principles in computer science. Students will explore the
history and evolution of computing, the structure and components of computer systems,
and the basics of programming. The course covers topics such as algorithms, data
representation, computer architecture, operating systems, and networks. Students will
gain hands-on experience with programming languages and develop problem-solving
skills through practical exercises and projects. The course aims to establish a solid
foundation in computer science, preparing students for more advanced courses in the
field. Through a combination of lectures, lab sessions, and assignments, students will
develop a deep understanding of the core concepts and techniques used in computer
science. This course is essential for students pursuing a degree in computer science or
related fields, as it provides the necessary knowledge and skills to succeed in the
program and future careers in the technology industry.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of computer science.
2. Demonstrate knowledge of computer systems, including hardware and software
components.
3. Apply basic programming concepts and techniques to solve problems.
4. Analyze and design simple algorithms and data structures.
5. Explain the role of operating systems and computer networks in computing.
Course Contents:
1. Introduction to Computer Science
2. History and Evolution of Computing
3. Computer Systems and Components
4. Binary and Data Representation
5. Computer Architecture
6. Introduction to Programming
7. Programming Languages and Paradigms
8. Algorithms and Problem Solving
9. Data Structures and Abstract Data Types
10. Operating Systems Fundamentals
Page 6 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 7 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 8 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 9 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 10 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 11 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 13 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 15 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 16 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 17 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 18 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 19 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 20 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 21 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 22 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 23 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 24 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 25 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 27 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 29 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
BCNS204: Cryptography
Course Introduction:
Cryptography is a crucial course that explores the fundamental concepts, principles, and
techniques used to secure information and communications in the digital world. The course
provides students with a deep understanding of the mathematical foundations of
cryptography, including number theory, probability, and computational complexity.
Students will learn about various cryptographic algorithms and protocols, such as
symmetric and asymmetric encryption, hash functions, digital signatures, and key
exchange mechanisms. The course covers the design and analysis of cryptographic
systems, as well as their applications in securing data storage, transmission, and
authentication. Students will also study the vulnerabilities and attacks on cryptographic
systems, such as brute-force attacks, side-channel attacks, and cryptanalysis techniques.
The course includes hands-on labs and projects, where students will gain practical
experience in implementing and testing cryptographic algorithms using programming
languages like Python. By the end of the course, students will have a strong foundation in
cryptography and be prepared to apply their knowledge to secure real-world systems and
applications.
Course Learning Outcomes (CLOs):
1. Understand the mathematical foundations of cryptography, including number
theory, probability, and computational complexity.
2. Analyze and compare various cryptographic algorithms and protocols, such as
symmetric and asymmetric encryption, hash functions, and digital signatures.
3. Design and implement secure cryptographic systems for data storage, transmission,
and authentication.
4. Identify and mitigate vulnerabilities and attacks on cryptographic systems, such as
brute-force attacks and side-channel attacks.
5. Apply cryptographic techniques to secure real-world systems and applications.
6. Course Contents:
Introduction to Cryptography
1. Mathematical Foundations of Cryptography
2. Classical Cryptography and Substitution Ciphers
3. Symmetric Encryption Algorithms (DES, AES)
4. Asymmetric Encryption Algorithms (RSA, Elliptic Curve Cryptography)
5. Hash Functions and Message Authentication Codes
6. Digital Signatures and Public Key Infrastructure (PKI)
7. Key Exchange Protocols (Diffie-Hellman, Elliptic Curve Diffie-Hellman)
Page 30 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 31 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 33 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 34 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
10. Sorting Algorithms (Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick
Sort)
11. Divide-and-Conquer Algorithms
12. Dynamic Programming
13. Greedy Algorithms
14. Graph Traversal (BFS, DFS) and Shortest Path Algorithms (Dijkstra's, Bellman-
Ford)
15. NP-Completeness and Approximation Algorithms
Recommended Textbook:
"Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson, Ronald L.
Rivest, and Clifford Stein
Recommended Reference Books:
1. "Data Structures and Algorithms in C++" by Adam Drozdek
2. "Algorithms" by Robert Sedgewick and Kevin Wayne
3. "The Algorithm Design Manual" by Steven S. Skiena
Page 35 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 36 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 37 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 38 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 39 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 40 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 41 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 42 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 43 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 44 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 45 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 46 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 47 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 48 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 49 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 50 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 51 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 52 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 53 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 54 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 55 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 56 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 57 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 58 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 59 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 60 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 61 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 63 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 64 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 65 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 67 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 69 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 71 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 72 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 73 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 74 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Introduction to Security Architecture and Design
2. Security Architecture Frameworks and Methodologies
3. Security Architecture Components and Concepts
4. Secure Design Principles and Patterns
5. Threat Modeling and Risk Assessment Techniques
6. Security Requirements Engineering and Management
7. Network Security Architecture and Design
8. Application Security Architecture and Design
9. Data Security Architecture and Design
10. Cloud Security Architecture and Design
11. IoT Security Architecture and Design
12. Industrial Control System (ICS) Security Architecture and Design
13. Security Testing and Validation Techniques
14. Security Architecture Artifacts and Documentation
15. Emerging Trends and Future Challenges in Security Architecture and Design
Recommended Textbook:
"Security Architecture: Design, Deployment, and Operations" by Christopher King and Ed
Moschella
Recommended Reference Books:
1. "SABSA: Enterprise Security Architecture" by John Sherwood, Andrew Clark, and
David Lynas
2. "NIST SP 800-160: Systems Security Engineering" by National Institute of
Standards and Technology (NIST)
3. "Threat Modeling: Designing for Security" by Adam Shostack
Page 75 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
BCNS403: Thesis I
Course Introduction:
Thesis I is the first part of a two-semester capstone project that provides students with the
opportunity to apply their knowledge and skills in computer and network security to a
significant research problem or practical challenge. In this course, students will work under
the guidance of a faculty advisor to define a research topic, conduct a literature review, and
develop a research proposal. The research topic should be relevant to the field of computer
and network security and address a current or emerging challenge or opportunity. The
literature review should provide a comprehensive and critical analysis of the existing
research and identify gaps or limitations that the proposed research aims to address. The
research proposal should outline the research objectives, methodology, timeline, and
expected outcomes, and demonstrate the feasibility and significance of the proposed
research. Students will also learn about research ethics, intellectual property, and scientific
writing and presentation skills. By the end of the course, students will have a well-defined
research topic, a solid understanding of the relevant literature, and a clear plan for
conducting their research in Thesis II.
Course Learning Outcomes (CLOs):
1. Identify and define a significant research problem or practical challenge in the field
of computer and network security.
2. Conduct a comprehensive and critical literature review of the relevant research and
identify gaps or limitations that the proposed research aims to address.
3. Develop a well-structured and feasible research proposal that outlines the research
objectives, methodology, timeline, and expected outcomes.
4. Apply research ethics and intellectual property principles in the conduct of research
and the dissemination of results.
5. Demonstrate scientific writing and presentation skills in the development and
communication of research ideas and proposals.
Course Contents:
1. Introduction to Research in Computer and Network Security
2. Identifying and Defining Research Problems and Questions
3. Conducting a Literature Review and Synthesis
4. Research Design and Methodology
5. Data Collection and Analysis Techniques
6. Research Ethics and Intellectual Property
7. Scientific Writing and Presentation Skills
8. Developing a Research Proposal
Page 76 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 77 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 78 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Review of Cryptographic Fundamentals and Primitives
2. Public-Key Cryptography: RSA, Diffie-Hellman, and Elliptic Curve Cryptography
3. Advanced Encryption Schemes: AES, Modes of Operation, and Authenticated
Encryption
4. Digital Signatures and Hash Functions: DSA, ECDSA, and SHA-3
5. Key Exchange and Key Management Protocols: TLS, SSH, and PGP
6. Homomorphic Encryption and Secure Multi-Party Computation
7. Zero-Knowledge Proofs and Secure Protocol Design
8. Quantum Cryptography and Post-Quantum Cryptography
9. Cryptanalysis and Attacks on Cryptographic Systems
10. Formal Methods and Provable Security in Cryptography
11. Cryptographic Protocols for Secure Communication and Data Sharing
12. Cryptography in Blockchain and Cryptocurrencies
13. Hardware-Based Cryptography and Trusted Execution Environments
14. Cryptography Standards and Regulations
15. Research Trends and Future Directions in Cryptography
Recommended Textbook:
"Introduction to Modern Cryptography" by Jonathan Katz and Yehuda Lindell
Recommended Reference Books:
1. "Applied Cryptography: Protocols, Algorithms and Source Code in C" by Bruce
Schneier
2. "Cryptography Engineering: Design Principles and Practical Applications" by Niels
Ferguson, Bruce Schneier, and Tadayoshi Kohno
3. "A Graduate Course in Applied Cryptography" by Dan Boneh and Victor Shoup
Page 79 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 80 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Introduction to Security Compliance and Auditing
2. Security Policies, Standards, Procedures, and Guidelines
3. Security Compliance Frameworks and Standards: ISO 27001, NIST SP 800-53, PCI
DSS, HIPAA
4. Developing and Implementing Security Compliance Programs
5. Risk Assessment and Management in Security Compliance
6. Security Controls and Countermeasures
7. Security Audit Planning and Scoping
8. Security Audit Execution and Evidence Collection
9. Security Audit Reporting and Follow-up
10. Internal Audits, External Audits, and Self-Assessments
11. Security Compliance and Audit Tools and Techniques
12. Security Compliance and Audit Metrics and Measurement
13. Security Compliance and Audit in Cloud Computing and Outsourcing
14. Security Compliance and Audit in Regulated Industries: Finance, Healthcare,
Government
15. Emerging Trends and Future Challenges in Security Compliance and Auditing
Recommended Textbook:
"IT Auditing Using Controls to Protect Information Assets" by Chris Davis, Mike Schiller,
and Kevin Wheeler
Recommended Reference Books:
1. "Security Controls Evaluation, Testing, and Assessment Handbook" by Leighton
Johnson
2. "The Complete Guide to Cybersecurity Risks and Controls" by Anne Kohnke, Dan
Shoemaker, and Ken E. Sigler
3. "IT Compliance and Controls: Best Practices for Implementation" by James J.
DeLuccia IV
Page 81 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 82 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Introduction to Cybersecurity Management
2. Cybersecurity Risk Management and Assessment
3. Cybersecurity Governance and Strategy
4. Cybersecurity Policies, Standards, and Procedures
5. Cybersecurity Compliance and Audit Management
6. Cybersecurity Incident Response and Crisis Management
7. Cybersecurity Awareness and Training Programs
8. Cybersecurity Metrics and Performance Measurement
9. Cybersecurity Budgeting and Resource Allocation
10. Cybersecurity Vendor and Third-Party Management
11. Cybersecurity Talent Management and Workforce Development
12. Cybersecurity Leadership and Communication Skills
13. Cybersecurity Management in Different Industries: Finance, Healthcare, Energy,
etc.
14. Cybersecurity Management in the Era of Digital Transformation and Innovation
15. Emerging Trends and Future Challenges in Cybersecurity Management
Recommended Textbook:
"Cybersecurity Program Development for Business: The Essential Planning Guide" by
Chris Moschovitis
Recommended Reference Books:
1. "The CISO Handbook: A Practical Guide to Securing Your Company" by Mike
Gentile, Ron Collette, and Tom D. August
2. "The Cybersecurity Manager's Guide: How to Navigate the Complex Landscape of
Cybersecurity" by Todd Fitzgerald
3. "Cybersecurity Leadership: Powering the Modern Organization" by Mansur Hasib
Page 83 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
BCNS407: Thesis II
Course Introduction:
Thesis II is the second part of the two-semester capstone project that provides students with
the opportunity to execute and report on the research they proposed in Thesis I. In this
course, students will work under the guidance of their faculty advisor to collect and analyze
data, interpret and discuss the results, and write and defend their thesis. The research
execution should follow the methodology and timeline outlined in the research proposal,
and address any challenges or changes that arise during the process. The data analysis
should use appropriate statistical and qualitative methods to test the hypotheses and answer
the research questions. The results should be interpreted in the context of the existing
literature and the research objectives, and the implications and limitations of the findings
should be discussed. The thesis should be written in a clear, concise, and scholarly manner,
following the format and style guidelines of the program. Students will also prepare and
deliver an oral defense of their thesis to a committee of faculty members and experts. By
the end of the course, students will have completed a significant research project that
demonstrates their mastery of the knowledge and skills in computer and network security,
and their ability to contribute to the field.
Course Learning Outcomes (CLOs):
1. Execute the research project proposed in Thesis I, following the methodology and
timeline outlined in the research proposal, and addressing any challenges or changes
that arise during the process.
2. Collect and analyze data using appropriate statistical and qualitative methods to test
the hypotheses and answer the research questions.
3. Interpret and discuss the results in the context of the existing literature and the
research objectives, and identify the implications and limitations of the findings.
4. Write a clear, concise, and scholarly thesis that follows the format and style
guidelines of the program, and demonstrates the student's mastery of the knowledge
and skills in computer and network security.
5. Prepare and deliver an oral defense of the thesis to a committee of faculty members
and experts, and respond to questions and feedback in a professional and
knowledgeable manner.
Course Contents:
1. Review of Research Proposal and Feedback from Thesis I
2. Research Execution and Data Collection
3. Data Analysis and Interpretation
4. Results and Discussion
5. Implications and Limitations of the Research
Page 84 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 85 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 86 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Introduction to Privacy and Data Protection Laws
2. Historical and Philosophical Foundations of Privacy
3. Key Concepts and Principles of Privacy and Data Protection
4. European Union's General Data Protection Regulation (GDPR)
5. California Consumer Privacy Act (CCPA) and Other US State Laws
6. Health Insurance Portability and Accountability Act (HIPAA) and Other Sectoral
Laws
7. Cross-Border Data Transfers and International Privacy Frameworks
8. Privacy Impact Assessments and Data Protection Impact Assessments
9. Privacy Policies, Notices, and Consent Management
10. Data Subject Rights and Requests
11. Data Breaches and Incident Response
12. Enforcement and Penalties for Non-Compliance
13. Privacy by Design and Default
14. Emerging Technologies and Privacy: AI, IoT, Blockchain
15. Future Trends and Challenges in Privacy and Data Protection Laws
Recommended Textbook:
"Information Privacy Law" by Daniel J. Solove and Paul M. Schwartz
Recommended Reference Books:
1. "EU GDPR: A Pocket Guide" by Alan Calder
2. "Privacy's Blueprint: The Battle to Control the Design of New Technologies" by
Woodrow Hartzog
3. "Data Protection Law: An Overview" by Stephen Mathias
Page 87 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 88 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Introduction to Cyber Warfare and Defense
2. Historical and Geopolitical Context of Cyber Warfare
3. Types of Cyber Weapons and Tactics
4. Actors and Motivations Behind Cyber Warfare
5. Legal and Ethical Issues in Cyber Warfare
6. Cyber Attack Impacts and Consequences
7. Cyber Defense Approaches and Frameworks
8. NIST Cybersecurity Framework and MITRE ATT&CK Framework
9. Cyber Kill Chain and Diamond Model of Intrusion Analysis
10. Cyber Threat Intelligence and Information Sharing
11. Malware Analysis and Reverse Engineering
12. Network Security Monitoring and Intrusion Detection
13. Incident Response and Forensic Analysis
14. Cyber Wargaming and Simulation
15. Emerging Trends and Future Challenges in Cyber Warfare and Defense
Recommended Textbook:
"Cyber Warfare: Techniques, Tactics and Tools for Security Practitioners" by Jason
Andress and Steve Winterfeld
Recommended Reference Books:
1. "Inside Cyber Warfare: Mapping the Cyber Underworld" by Jeffrey Carr
2. "Cybersecurity and Cyberwar: What Everyone Needs to Know" by P.W. Singer and
Allan Friedman
3. "The Basics of Cyber Warfare: Understanding the Fundamentals of Cyber Warfare
in Theory and Practice" by Steve Winterfeld and Jason Andress
Page 89 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 90 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 91 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 92 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Course Contents:
1. Introduction to Cybersecurity in Healthcare
2. Healthcare Data and Systems Overview
3. Regulatory and Compliance Frameworks in Healthcare (HIPAA, HITECH, GDPR)
4. Threats and Vulnerabilities in Healthcare
5. Ransomware Attacks and Incident Response in Healthcare
6. Insider Threats and Access Control in Healthcare
7. Medical Device Security and IoMT (Internet of Medical Things)
8. Telemedicine and Remote Patient Monitoring Security
9. Secure Design and Implementation of Healthcare Systems and Applications
10. Encryption and Data Loss Prevention (DLP) in Healthcare
11. Risk Assessment and Management in Healthcare
12. Security Auditing and Compliance in Healthcare
13. Incident Response and Breach Notification in Healthcare
14. Patient Privacy and Consent Management
15. Emerging Trends and Future Challenges in Healthcare Cybersecurity
Recommended Textbook:
"Cybersecurity in Healthcare: A Guide to Standards and Best Practices" by Shawn Malone
and Ginny Harnegie
Recommended Reference Books:
1. "Hacking Healthcare: A Guide to Standards, Workflows, and Meaningful Use" by
Fred Trotter and David Uhlman
2. "The HIPAA Compliance Handbook: A Guide for Healthcare Providers, Business
Associates, and Subcontractors" by Ofer Zur
3. "Cybersecurity for Hospitals and Healthcare Facilities: A Guide to Detection and
Prevention" by Luis Ayala
Page 93 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 95 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 96 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 97 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 98 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Page 99 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25
Year 2
Semester 1
CSC201 - Object-Oriented Programming
CSC202 - Data Structures
Course Outlines
Recommended Textbook
"Critical Thinking: A Concise Guide" by Tracy Bowell and Gary Kemp
Reference Books
1. "Logic and Contemporary Rhetoric: The Use of Reason in Everyday Life" by Nancy
Cavender and Howard Kahane
2. "A Rulebook for Arguments" by Anthony Weston
3. "Thinking, Fast and Slow" by Daniel Kahneman
CSC206 – Algorithms
Course Introduction:
CSC206 provides an in-depth study of the design, analysis, and implementation of
algorithms. The course covers fundamental algorithms and data structures, as well as
advanced techniques for solving complex problems efficiently. Students will learn how to
analyze the time and space complexity of algorithms using mathematical tools and
notations, such as Big O, Omega, and Theta. The course covers a wide range of algorithmic
paradigms, including divide-and-conquer, greedy algorithms, dynamic programming, and
graph algorithms. Students will also learn advanced data structures, such as balanced
search trees, hash tables, and priority queues. Through hands-on programming assignments
and projects, students will gain practical experience in implementing and optimizing
algorithms for various applications. CSC206 emphasizes the importance of designing
efficient and scalable algorithms, as well as the trade-offs involved in algorithm design. By
the end of the course, students will have a solid foundation in algorithm design and
analysis, enabling them to tackle complex computational problems in various domains.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and techniques of algorithm design and
analysis.
2. Analyze the time and space complexity of algorithms using mathematical tools and
notations.
3. Design and implement efficient algorithms for various problems using different
algorithmic paradigms.
4. Apply advanced data structures to optimize algorithm performance.
5. Evaluate the trade-offs and limitations of different algorithmic approaches.
Course Contents:
1. Introduction to algorithms and complexity analysis
2. Asymptotic notations and growth of functions
3. Divide-and-conquer algorithms (e.g., Merge Sort, Quick Sort)
4. Greedy algorithms (e.g., Huffman Coding, Dijkstra's Algorithm)
Course Contents:
1. Introduction to software engineering
2. Software development life cycle (SDLC)
3. Software development models (e.g., waterfall, agile, iterative)
4. Requirements gathering and analysis
5. Software design principles and methodologies
6. Object-oriented analysis and design (OOAD)
7. Design patterns and software architecture
8. Software implementation and coding standards
9. Software testing and quality assurance
10. Software maintenance and evolution
11. Project management and planning
12. Agile software development (e.g., Scrum, XP)
13. Software configuration management and version control
14. Software documentation and technical writing
15. Ethical and professional issues in software engineering
Recommended Textbook:
• "Software Engineering" by Ian Sommerville
Recommended Reference Books:
1. "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin
2. "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich
Gamma, Richard Helm, Ralph Johnson, and John Vlissides
3. "Agile Software Development: Principles, Patterns, and Practices" by Robert C.
Martin
Course Contents:
1. Introduction to cloud computing and its essential characteristics
2. Cloud computing service models (e.g., IaaS, PaaS, SaaS)
3. Cloud computing deployment models (e.g., public, private, hybrid)
4. Virtualization and containerization technologies (e.g., virtual machines, Docker,
Kubernetes)
5. Cloud computing platforms and services (e.g., AWS, Azure, GCP)
6. Cloud storage and databases (e.g., Amazon S3, Azure Blob Storage, Google Cloud
Storage, Amazon RDS, Azure SQL Database)
7. Serverless computing and event-driven architectures (e.g., AWS Lambda, Azure
Functions, Google Cloud Functions)
8. Cloud networking and content delivery (e.g., Amazon VPC, Azure Virtual Network,
Google Cloud CDN)
9. Cloud security and compliance (e.g., identity and access management, encryption,
auditing, and logging)
10. Cloud monitoring and management (e.g., AWS CloudWatch, Azure Monitor,
Google Stack driver)
11. Cloud migration and hybrid cloud architectures
12. Cloud-native application development and design patterns
13. Cloud cost optimization and management
14. Case studies and real-world examples of cloud computing applications
15. Emerging trends and challenges in cloud computing (e.g., edge computing, multi-
cloud, AI-powered cloud services)
Recommended Textbook:
• "Cloud Computing: Concepts, Technology & Architecture" by Thomas Erl,
Zaigham Mahmood, and Ricardo Puttini
Recommended Reference Books:
1. "Amazon Web Services in Action" by Andreas Wittig and Michael Wittig
2. "Mastering Azure Fundamentals" by Adnan Masood
Course Contents:
1. Introduction to data mining and knowledge discovery
2. Data preprocessing and data warehousing
3. Exploratory data analysis and visualization
4. Association rule mining and market basket analysis
5. Classification techniques (e.g., decision trees, k-nearest neighbors, Naive Bayes,
support vector machines)
6. Clustering techniques (e.g., k-means, hierarchical clustering, density-based
clustering)
7. Anomaly detection and outlier analysis
8. Feature selection and dimensionality reduction techniques
9. Model evaluation and selection (e.g., cross-validation, ROC curves, precision-recall
curves)
10. Text mining and natural language processing
11. Web mining and social network analysis
12. Sequence and time-series data mining
13. Spatial and spatio-temporal data mining
14. Privacy-preserving data mining and secure multiparty computation
15. Applications of data mining in various domains (e.g., business, healthcare, social
media, bioinformatics)
Recommended Textbook:
• "Data Mining: Concepts and Techniques" by Jiawei Han, Micheline Kamber, and
Jian Pei
Recommended Reference Books:
1. "Introduction to Data Mining" by Pang-Ning Tan, Michael Steinbach, and Vipin
Kumar
2. "Data Mining and Analysis: Fundamental Concepts and Algorithms" by
Mohammed J. Zaki and Wagner Meira Jr.
Course Contents:
1. Review of database concepts and SQL
2. Database architectures and models (e.g., centralized, distributed, NoSQL, graph)
3. Distributed database systems and replication techniques
4. NoSQL databases (e.g., key-value stores, document databases, column-family
databases)
5. Graph databases and graph query languages (e.g., Cypher, Gremlin)
6. Query optimization techniques (e.g., indexing, partitioning, materialized views)
7. Transaction management and concurrency control (e.g., two-phase locking,
optimistic concurrency control, multi-version concurrency control)
8. Recovery techniques and fault tolerance (e.g., logging, checkpointing, replication)
9. Database security and access control (e.g., authentication, authorization,
encryption)
10. Data warehousing and OLAP (online analytical processing)
11. Data mining and machine learning with databases
12. Spatial and spatio-temporal databases
13. Database performance tuning and optimization
14. Database administration and management
15. Emerging trends and challenges in database systems (e.g., big data, cloud databases,
blockchain databases)
Recommended Textbook:
• "Database System Concepts" by Abraham Silberschatz, Henry F. Korth, and S.
Sudarshan
Recommended Reference Books:
1. "Fundamentals of Database Systems" by Ramez Elmasri and Shamkant B. Navathe
2. "NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence"
by Pramod J. Sadalage and Martin Fowler\
3. "Graph Databases: New Opportunities for Connected Data" by Ian Robinson, Jim
Webber, and Emil Eifrem
Course Introduction:
Machine learning is a rapidly growing field that focuses on developing algorithms and
models that enable computers to learn and make predictions or decisions without being
explicitly programmed. This course provides a comprehensive introduction to the
fundamental concepts, techniques, and applications of machine learning. Students will
explore various types of learning, including supervised learning, unsupervised learning,
and reinforcement learning. They will gain hands-on experience in implementing and
evaluating machine learning algorithms using popular programming languages and
libraries. The course covers a wide range of topics, including data preprocessing, feature
selection, linear regression, logistic regression, decision trees, support vector machines,
clustering, dimensionality reduction, and neural networks. Students will also learn about
the ethical considerations and challenges associated with machine learning, such as bias,
fairness, and privacy. By the end of the course, students will have a solid foundation in
machine learning and be equipped with the skills to apply machine learning techniques to
real-world problems.
Course Contents:
3. Linear Regression
4. Logistic Regression
8. K-Nearest Neighbors
9. Ensemble Methods
Recommended Textbook:
Course Introduction:
The Internet of Things (IoT) is a rapidly growing field that involves the interconnection of
everyday devices, sensors, and objects through the internet, enabling them to collect and
exchange data. This course provides a comprehensive introduction to the concepts,
technologies, and applications of IoT. Students will learn about the architecture and
components of IoT systems, including sensors, actuators, communication protocols, and
cloud platforms. They will explore various IoT domains such as smart homes, smart cities,
industrial IoT, and wearable devices. The course covers topics such as IoT networking
protocols, data analytics, security and privacy issues, and IoT application development.
Students will gain hands-on experience in designing and implementing IoT solutions using
popular IoT platforms and programming languages. They will also learn about the
challenges and opportunities associated with IoT, including scalability, interoperability,
and ethical considerations. By the end of the course, students will have a solid
understanding of IoT and be equipped with the skills to develop IoT applications.
2. Identify and select appropriate sensors, actuators, and communication protocols for
IoT applications.
3. Design and implement IoT solutions using popular IoT platforms and programming
languages.
5. Evaluate the security and privacy challenges in IoT and implement appropriate
countermeasures.
Course Contents:
Recommended Textbook:
2. "Building the Internet of Things with IPv6 and MIPv6" by Daniel Minoli, Wiley,
ISBN: 1118473477
Course Introduction:
3. Configure and manage advanced network devices and services using industry-
standard tools and platforms.
4. Analyze and optimize network performance using advanced routing protocols and
QoS mechanisms.
Course Contents:
Recommended Textbook:
Course Introduction:
Compiler Design is an elective course that focuses on the principles, techniques, and tools
used in the design and implementation of compilers. A compiler is a software program that
translates high-level programming languages into machine-readable code. This course
provides students with a deep understanding of the compilation process, including lexical
analysis, parsing, semantic analysis, code generation, and optimization. Students will learn
about the various phases of compilation and the algorithms and data structures used in each
phase. They will explore topics such as regular expressions, context-free grammars,
abstract syntax trees, intermediate representations, and code optimization techniques. The
course also covers advanced topics such as garbage collection, runtime systems, and
compiler optimization for parallel and distributed systems. Students will gain hands-on
experience in designing and implementing a compiler for a small programming language
using compiler construction tools and frameworks. By the end of the course, students will
have a solid understanding of compiler design principles and be able to apply them to real-
world compiler development projects.
1. Understand the principles and techniques used in the design and implementation of
compilers.
2. Apply lexical analysis, parsing, and semantic analysis techniques to analyze source
code.
3. Design and implement code generation and optimization techniques for efficient
machine code.
4. Use compiler construction tools and frameworks to develop a compiler for a small
programming language.
Course Contents:
Recommended Textbook:
"Compilers: Principles, Techniques, and Tools" by Alfred V. Aho, Monica S. Lam, Ravi
Sethi, and Jeffrey D. Ullman, Pearson, ISBN: 0321486811
Course Introduction:
Virtual Reality (VR) is an elective course that explores the concepts, technologies, and
applications of immersive virtual environments. VR allows users to interact with computer-
generated 3D environments in a way that simulates real-world experiences. This course
provides students with a comprehensive understanding of the principles and techniques
used in the design and development of VR systems. Students will learn about the hardware
and software components of VR, including head-mounted displays, motion tracking
systems, and 3D graphics engines. They will explore topics such as 3D modeling,
rendering, animation, and user interaction in VR environments. The course also covers the
psychological and physiological aspects of VR, including presence, immersion, and motion
sickness. Students will gain hands-on experience in developing VR applications using
popular VR development platforms and tools. They will also learn about the applications
of VR in various domains, such as gaming, education, healthcare, and industrial training.
By the end of the course, students will have a solid understanding of VR technologies and
be able to design and develop immersive VR experiences.
1. Understand the principles and techniques used in the design and development of VR
systems.
4. Evaluate and optimize VR system performance for various hardware and software
configurations.
Course Contents:
Recommended Textbook:
2. "3D User Interfaces: Theory and Practice" by Doug A. Bowman, Ernst Kruijff,
Joseph J. LaViola Jr., and Ivan Poupyrev, Addison-Wesley Professional, ISBN:
0201758679
CSC406 - Cybersecurity
Course Introduction:
Cybersecurity is a critical course that focuses on the principles, techniques, and tools used
to protect computer systems, networks, and data from unauthorized access, attacks, and
breaches. In today's interconnected world, cybersecurity has become a top priority for
organizations of all sizes and industries. This course provides students with a
comprehensive understanding of the fundamentals of cybersecurity, including
cryptography, network security, system security, and application security. Students will
learn about various types of cyber threats, such as malware, phishing, denial-of-service
attacks, and social engineering. They will explore the best practices and strategies for
preventing, detecting, and responding to cyber incidents. The course also covers the legal
and ethical aspects of cybersecurity, including privacy, data protection, and cybercrime.
Students will gain hands-on experience in using cybersecurity tools and techniques to
assess and mitigate security risks. By the end of the course, students will have a solid
foundation in cybersecurity and be prepared to pursue careers in this rapidly growing field.
4. Design and implement secure network architectures and access control mechanisms.
Course Contents:
1. Introduction to Cybersecurity
Recommended Textbook:
"Computer Security: Principles and Practice" by William Stallings and Lawrie Brown,
Pearson, ISBN: 0134794109
2. "The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws"
by Dafydd Stuttard and Marcus Pinto, Wiley, ISBN: 1118026470
Course Introduction:
Big Data Analytics is a course that focuses on the techniques, tools, and technologies used
to process, analyze, and derive insights from large and complex datasets. With the
exponential growth of data in various domains, such as social media, e-commerce,
healthcare, and scientific research, the ability to effectively handle and analyze big data
has become a critical skill. This course provides students with a comprehensive
understanding of the principles and practices of big data analytics. Students will learn about
the characteristics of big data, including volume, velocity, variety, and veracity. They will
explore various big data processing frameworks and platforms, such as Hadoop, Spark, and
NoSQL databases. The course covers data preprocessing, data mining, machine learning,
and data visualization techniques for big data. Students will gain hands-on experience in
using big data tools and libraries to process and analyze large datasets. They will also learn
about the challenges and best practices in big data analytics, including scalability,
performance optimization, and data privacy. By the end of the course, students will have a
solid foundation in big data analytics and be prepared to tackle real-world big data
challenges.
2. Apply data preprocessing and data mining techniques to large and complex datasets.
3. Utilize big data processing frameworks and platforms, such as Hadoop and Spark,
to analyze big data.
4. Implement machine learning algorithms and models for big data analytics.
Course Contents:
Recommended Textbook:
"Big Data: Principles and Best Practices of Scalable Real-time Data Systems" by Nathan
Marz and James Warren, Manning Publications, ISBN: 1617290343
Course Introduction:
Blockchain Technology is a course that explores the concepts, principles, and applications
of blockchain, a decentralized and distributed ledger technology. Blockchain has gained
significant attention in recent years due to its potential to revolutionize various industries,
including finance, supply chain, healthcare, and more. This course provides students with
a comprehensive understanding of the fundamentals of blockchain technology, including
its architecture, consensus mechanisms, smart contracts, and cryptographic primitives.
Students will learn about the different types of blockchain networks, such as public,
private, and consortium blockchains. They will explore the use cases and applications of
blockchain in various domains, such as cryptocurrencies, decentralized applications
(DApps), and enterprise solutions. The course covers the development and deployment of
smart contracts using platforms like Ethereum and Hyperledger. Students will gain hands-
on experience in building and testing blockchain applications using programming
languages and frameworks specific to blockchain development. They will also learn about
the challenges and limitations of blockchain technology, including scalability, privacy, and
regulatory considerations. By the end of the course, students will have a solid foundation
in blockchain technology and be prepared to contribute to blockchain-based projects and
innovations.
3. Develop and deploy smart contracts using blockchain platforms like Ethereum and
Hyperledger.
4. Evaluate the use cases and applications of blockchain in various industries and
domains.
Course Contents:
Recommended Textbook:
Course Introduction:
Quantum Computing is an elective course that explores the principles, algorithms, and
applications of quantum computation, a rapidly emerging field that leverages the laws of
quantum mechanics to perform complex computations. Quantum computers have the
potential to solve certain problems exponentially faster than classical computers, opening
up new possibilities in areas such as cryptography, optimization, and simulation. This
course provides students with a comprehensive introduction to the fundamentals of
quantum computing, including quantum bits (qubits), quantum gates, and quantum circuits.
Students will learn about the mathematical foundations of quantum computing, including
linear algebra and quantum mechanics. They will explore various quantum algorithms,
such as Shor's algorithm for factoring and Grover's algorithm for searching. The course
covers the implementation of quantum algorithms using quantum programming languages
and frameworks, such as Qiskit and Q#. Students will gain hands-on experience in
simulating and running quantum circuits on quantum simulators and real quantum
hardware. They will also learn about the challenges and limitations of quantum computing,
including decoherence, error correction, and scalability. By the end of the course, students
will have a solid understanding of quantum computing and be prepared to contribute to the
development of quantum algorithms and applications.
3. Analyze and implement quantum algorithms, such as Shor's algorithm and Grover's
algorithm.
4. Develop and simulate quantum circuits using quantum programming languages and
frameworks.
Course Contents:
Recommended Textbook:
Course Introduction:
3. Develop comprehensive project plans, including scope, schedule, budget, and risk
management.
4. Utilize project management tools and techniques to monitor and control project
progress and performance.
Course Contents:
Recommended Textbook:
"A Guide to the Project Management Body of Knowledge (PMBOK Guide)" by Project
Management Institute, Project Management Institute, ISBN: 1628253827
2. "Project Management for the Unofficial Project Manager" by Kory Kogon, Suzette
Blakemore, and James Wood, BenBella Books, ISBN: 1941631118
3. "Agile Project Management with Scrum" by Ken Schwaber, Microsoft Press, ISBN:
073561993X
Course Introduction:
Research Methodologies in Computer Science is a course that aims to equip students with
the knowledge and skills necessary to conduct rigorous and systematic research in the field
of computer science. Research plays a crucial role in advancing the frontiers of computer
science and solving complex problems through the development of new theories,
algorithms, and technologies. This course provides students with a comprehensive
understanding of the research process, from formulating research questions to
disseminating research findings. Students will learn about various research paradigms,
including quantitative, qualitative, and mixed-methods research. They will explore
research design strategies, such as experimental, quasi-experimental, and case study
designs. The course covers data collection techniques, including surveys, interviews, and
observations, as well as data analysis methods, such as statistical analysis and qualitative
coding. Students will gain hands-on experience in conducting literature reviews,
formulating research hypotheses, designing research studies, and presenting research
findings. They will also learn about research ethics, intellectual property rights, and the
publication process in computer science. By the end of the course, students will have a
solid foundation in research methodologies and be prepared to conduct independent
research projects in computer science.
3. Design and conduct research studies using appropriate research paradigms and
design strategies.
4. Apply data collection and analysis techniques to gather and interpret research data.
Course Contents:
Recommended Textbook:
Course Introduction:
Advanced Machine Learning is a course that builds upon the foundations of machine
learning and explores advanced techniques and algorithms for solving complex problems
in various domains. Machine learning has become a critical component of intelligent
systems, enabling them to learn from data, adapt to new situations, and make predictions
or decisions. This course provides students with a deep understanding of advanced machine
learning concepts, including deep learning, reinforcement learning, and transfer learning.
Students will learn about neural network architectures, such as convolutional neural
networks (CNNs), recurrent neural networks (RNNs), and generative adversarial networks
(GANs). They will explore advanced optimization techniques, such as gradient descent
variants and regularization methods. The course covers techniques for handling
imbalanced datasets, dealing with missing data, and performing feature selection and
dimensionality reduction. Students will gain hands-on experience in implementing and
training advanced machine learning models using popular frameworks and libraries, such
as TensorFlow and PyTorch. They will also learn about the challenges and considerations
in deploying machine learning models in real-world applications, including model
interpretability, fairness, and privacy. By the end of the course, students will have a solid
understanding of advanced machine learning techniques and be prepared to tackle complex
problems in various domains.
2. Design and implement neural network architectures for various tasks, such as image
classification, natural language processing, and generative modeling.
4. Handle imbalanced datasets, missing data, and perform feature selection and
dimensionality reduction.
5. Evaluate and interpret machine learning models, considering aspects such as model
interpretability, fairness, and privacy.
Course Contents:
Recommended Textbook:
"Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville, The MIT
Press, ISBN: 0262035618
Course Introduction:
Deep Learning is a course that focuses on the theory, techniques, and applications of deep
learning, a subfield of machine learning that has revolutionized various domains, including
computer vision, natural language processing, and speech recognition. Deep learning
involves the use of artificial neural networks with multiple layers to learn hierarchical
representations of data and solve complex problems. This course provides students with a
comprehensive understanding of the fundamentals of deep learning, including neural
network architectures, activation functions, and optimization algorithms. Students will
learn about convolutional neural networks (CNNs) for image and video processing,
recurrent neural networks (RNNs) for sequence modeling, and transformers for natural
language understanding. The course covers techniques for training deep neural networks,
such as backpropagation, gradient descent, and regularization. Students will gain hands-on
experience in implementing and training deep learning models using popular frameworks
and libraries, such as TensorFlow and PyTorch. They will also learn about the challenges
and considerations in deploying deep learning models in real-world applications, including
model compression, quantization, and edge deployment. By the end of the course, students
will have a solid understanding of deep learning techniques and be prepared to apply them
to solve complex problems in various domains.
2. Design and implement convolutional neural networks (CNNs) for image and video
processing tasks.
3. Apply recurrent neural networks (RNNs) and transformers for sequence modeling
and natural language understanding.
Course Contents:
Recommended Textbook:
2. "Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville, The
MIT Press, ISBN: 0262035618
3. "Dive into Deep Learning" by Aston Zhang, Zachary C. Lipton, Mu Li, and
Alexander J. Smola, Amazon, ISBN: 1730583830
Course Introduction:
Course Contents:
Recommended Textbook:
"Artificial Intelligence: A Modern Approach" by Stuart Russell and Peter Norvig, Pearson,
ISBN: 0134610997
1. "Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville, The
MIT Press, ISBN: 0262035618
Course Introduction:
Capstone Project I is the first part of a two-semester capstone project course that provides
students with the opportunity to apply their knowledge and skills acquired throughout the
computer science program to a real-world problem or project. The capstone project allows
students to demonstrate their ability to analyze, design, implement, and evaluate a
significant computing system or application. In this course, students will work individually
or in teams to identify a problem or opportunity, propose a solution, and develop a project
plan. They will conduct a thorough literature review, gather requirements, and design the
architecture and components of their proposed system. Students will also consider the
ethical, social, and professional aspects of their project. The course emphasizes project
management skills, such as planning, scheduling, and communication. Students will
receive guidance and mentorship from faculty members and industry experts throughout
the project. By the end of the course, students will have a well-defined project proposal, a
detailed project plan, and a solid foundation for the implementation phase in Capstone
Project II.
2. Conduct a thorough literature review and gather requirements for the proposed
project.
Course Contents:
Recommended Textbook:
Course Introduction:
5. Ensure software quality through practices such as code reviews, static code analysis,
and performance testing.
Course Contents:
Recommended Textbook:
Course Introduction:
Data Visualization is a course that focuses on the principles, techniques, and tools used to
effectively communicate and present data through visual representations. In today's data-
driven world, the ability to create compelling and informative visualizations is crucial for
data analysis, decision-making, and storytelling. This course provides students with a
comprehensive understanding of the fundamentals of data visualization, including visual
perception, design principles, and interactive techniques. Students will learn about various
types of visualizations, such as charts, graphs, maps, and dashboards, and their appropriate
use cases. They will explore data preprocessing techniques, including data cleaning,
transformation, and aggregation, to prepare data for visualization. The course covers
popular data visualization tools and libraries, such as Tableau, D3.js, and Matplotlib.
Students will gain hands-on experience in creating static and interactive visualizations
using these tools. They will also learn about the ethical considerations and best practices
in data visualization, including data integrity, accessibility, and user experience. By the
end of the course, students will have a solid foundation in data visualization and be
prepared to create effective and engaging visual representations of data.
1. Understand the principles of visual perception and design for effective data
visualization.
2. Apply data preprocessing techniques to clean, transform, and aggregate data for
visualization.
3. Create static and interactive visualizations using popular tools and libraries, such as
Tableau, D3.js, and Matplotlib.
4. Select appropriate visualization techniques based on the data type, audience, and
communication goals.
Course Contents:
Recommended Textbook:
"Storytelling with Data: A Data Visualization Guide for Business Professionals" by Cole
Nussbaumer Knaflic, Wiley, ISBN: 1119002257
2. "Interactive Data Visualization for the Web: An Introduction to Designing with D3"
by Scott Murray, O'Reilly Media, ISBN: 1491921285
3. "Data Visualization with Python and JavaScript: Scrape, Clean, Explore &
Transform Your Data" by Kyran Dale, O'Reilly Media, ISBN: 1491920513
Course Introduction:
Ethical Hacking is a course that focuses on the principles, techniques, and tools used by
ethical hackers to identify and mitigate security vulnerabilities in computer systems and
networks. In today's interconnected world, organizations face increasing cyber threats, and
the demand for skilled ethical hackers is on the rise. This course provides students with a
comprehensive understanding of the ethical hacking process, including reconnaissance,
scanning, exploitation, and post-exploitation. Students will learn about various types of
security vulnerabilities, such as web application vulnerabilities, network vulnerabilities,
and social engineering. They will explore the tools and techniques used by ethical hackers,
including port scanners, vulnerability scanners, and exploit frameworks. The course covers
the legal and ethical aspects of ethical hacking, emphasizing the importance of obtaining
proper authorization and adhering to ethical guidelines. Students will gain hands-on
experience in conducting simulated ethical hacking exercises and penetration testing on
virtual environments. They will also learn about the countermeasures and best practices for
securing systems against common attacks. By the end of the course, students will have a
solid foundation in ethical hacking and be prepared to identify and mitigate security
vulnerabilities in real-world scenarios.
1. Understand the principles and techniques used in the ethical hacking process,
including reconnaissance, scanning, exploitation, and post-exploitation.
3. Utilize ethical hacking tools and techniques, including port scanners, vulnerability
scanners, and exploit frameworks.
5. Apply countermeasures and best practices for securing systems against common
attacks.
Course Contents:
Recommended Textbook:
1. "The Basics of Hacking and Penetration Testing: Ethical Hacking and Penetration
Testing Made Easy" by Patrick Engebretson, Syngress, ISBN: 0124116442
3. "The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws"
by Dafydd Stuttard and Marcus Pinto, Wiley, ISBN: 1118026470
Course Introduction:
Capstone Project II is the second part of the two-semester capstone project course that
builds upon the work done in Capstone Project I. In this course, students will focus on the
implementation, testing, and deployment of their proposed computing system or
application. They will apply the knowledge and skills acquired throughout the computer
science program to bring their project to fruition. Students will work on the actual
development of their system, following the project plan and design specifications created
in Capstone Project I. They will implement the various components, integrate them into a
cohesive system, and ensure that the system meets the functional and non-functional
requirements. The course emphasizes the importance of software testing, including unit
testing, integration testing, and user acceptance testing. Students will also consider the
deployment and maintenance aspects of their project, such as packaging, installation, and
user documentation. Throughout the course, students will receive guidance and feedback
from faculty members and industry experts. By the end of the course, students will have a
fully functional and tested computing system or application, ready for deployment and
demonstration.
1. Implement the proposed computing system or application based on the project plan
and design specifications.
2. Integrate the various components of the system into a cohesive and functional
whole.
5. Demonstrate the completed system or application and present the project outcomes
to stakeholders.
Course Contents:
Recommended Textbook:
2. "Agile Testing: A Practical Guide for Testers and Agile Teams" by Lisa Crispin and
Janet Gregory, Addison-Wesley Professional, ISBN: 0321534468
Course Introduction:
1. Understand the ethical principles, frameworks, and codes of conduct relevant to the
computing field.
Course Contents:
Recommended Textbook:
"Ethics for the Information Age" by Michael J. Quinn, Pearson, ISBN: 0134296540