0% found this document useful (0 votes)
4 views227 pages

Faculty of Engineering and Computer Science

The document outlines the curriculum for the Bachelor of Computer & Network Security program at Accord University for the 2024-25 academic year. It includes program missions, educational objectives, a detailed curriculum matrix, and course outlines for various subjects. The curriculum is designed to equip students with essential skills in cybersecurity, programming, and network security, preparing them for careers in the technology industry.

Uploaded by

research.ai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views227 pages

Faculty of Engineering and Computer Science

The document outlines the curriculum for the Bachelor of Computer & Network Security program at Accord University for the 2024-25 academic year. It includes program missions, educational objectives, a detailed curriculum matrix, and course outlines for various subjects. The curriculum is designed to equip students with essential skills in cybersecurity, programming, and network security, preparing them for careers in the technology industry.

Uploaded by

research.ai
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 227

Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Accord University
Faculty of Engineering and Computer Science

Curriculum 2024-25

Approved in XX Academic Council

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

Faculty of Engineering & Computer Science


Bachelor of Computer & Network Security
Program Mission
To prepare students for careers in computer and network security by providing a strong
foundation in cybersecurity principles, technologies, and practices.
Program Educational Objectives (PEO)
1. Graduates will design, implement, and manage secure computing and networking
environments.
2. Graduates will respond effectively to cybersecurity threats and incidents.
3. Graduates will adhere to ethical standards and legal requirements in cybersecurity
Curriculum Matrix
Year 1: Foundation Year
 FND101: Introduction to Computer Science
 FND102: Basic Mathematics for Computer Science
 FND103: Principles of Programming
 FND104: Introduction to Network Security
 FND105: Digital Literacy
 FND106: Communication Skills for IT Professionals
 FND 107: Critical Thinking and Logic Reasoning
 FND 108: English for Academics
 FND 109: Islamic Studies
Year 2: Semester 1
 BCNS201: Computer Networks
 BCNS202: Operating Systems
 BCNS203: Principles of Cybersecurity
 BCNS204: Cryptography
 BCNS205: Programming for Security
 BCNS206: Data Structures and Algorithms

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

11. Introduction to Computer Networks


12. Social and Ethical Issues in Computing
13. Software Development Lifecycle
14. Database Management Systems
15. Emerging Trends and Technologies in Computer Science
Recommended Textbook:
"Introduction to Computer Science: An Interdisciplinary Approach" by Robert Sedgewick
and Kevin Wayne
Recommended Reference Books:
1. "Computer Science Illuminated" by Nell Dale and John Lewis
2. "Fundamentals of Computer Science" by Marty Stepp, Jessica Miller, and Victoria
Kirst
3. "Computer Science: An Overview" by J. Glenn Brookshear and Dennis Brylow

Page 7 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND102: Basic Mathematics for Computer Science


Course Introduction:
Basic Mathematics for Computer Science is designed to provide students with the essential
mathematical foundations required for success in computer science and related fields. The
course covers a range of topics, including discrete mathematics, linear algebra, calculus,
and probability theory. Students will learn to apply mathematical concepts and techniques
to solve problems in computer science, such as algorithm analysis, data structures, and
machine learning. The course emphasizes the development of logical thinking and
problem-solving skills, which are crucial for success in the field of computer science.
Through a combination of lectures, problem-solving sessions, and practical exercises,
students will gain a deep understanding of the mathematical principles underlying
computer science. The course also highlights the connections between mathematics and
computer science, demonstrating how mathematical concepts are applied in real-world
computing scenarios. By the end of the course, students will have a solid foundation in the
mathematical tools and techniques essential for advanced studies in computer science.
Course Learning Outcomes (CLOs):
1. Apply discrete mathematical concepts and techniques to solve problems in
computer science.
2. Understand the fundamentals of linear algebra and its applications in computer
science.
3. Demonstrate knowledge of calculus and its relevance to computer science.
4. Apply probability theory and statistics to analyze and solve problems in computer
science.
5. Develop logical thinking and problem-solving skills essential for success in
computer science.
Course Contents:
1. Introduction to Discrete Mathematics
2. Logic and Proofs
3. Set Theory
4. Functions and Relations
5. Combinatorics
6. Graph Theory
7. Number Theory
8. Linear Algebra Fundamentals
9. Matrices and Determinants

Page 8 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

10. Vector Spaces and Linear Transformations


11. Introduction to Calculus
12. Limits and Continuity
13. Derivatives and Integrals
14. Probability Theory
15. Discrete and Continuous Probability Distributions
Recommended Textbook:
"Discrete Mathematics and Its Applications" by Kenneth H. Rosen
Recommended Reference Books:
1. "Linear Algebra and Its Applications" by Gilbert Strang
2. "Calculus: Early Transcendentals" by James Stewart
3. "Introduction to Probability" by Joseph K. Blitzstein and Jessica Hwang

Page 9 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND103: Principles of Programming


Course Introduction:
Principles of Programming introduces students to the fundamental concepts and techniques
of computer programming. The course focuses on developing a strong foundation in
programming logic, problem-solving, and algorithm design. Students will learn the basics
of programming languages, including syntax, data types, control structures, and functions.
The course emphasizes hands-on practice, with students writing, testing, and debugging
programs to solve real-world problems. Through a series of programming projects, students
will gain experience in designing and implementing efficient and effective solutions to
computational problems. The course also covers important programming paradigms, such
as object-oriented programming and functional programming, providing students with a
broad understanding of different approaches to software development. By the end of the
course, students will have developed the skills and knowledge necessary to write well-
structured, maintainable, and efficient programs. This course serves as a foundation for
more advanced programming courses and prepares students for careers in software
development and related fields.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of computer programming.
2. Apply problem-solving and algorithm design techniques to develop efficient
solutions.
3. Write, test, and debug programs using a high-level programming language.
4. Demonstrate knowledge of programming constructs, such as variables, data types,
control structures, and functions.
5. Implement basic object-oriented programming concepts, including classes, objects,
and inheritance.
Course Contents:
1. Introduction to Programming
2. Programming Languages and Paradigms
3. Variables and Data Types
4. Operators and Expressions
5. Control Structures (Conditional Statements and Loops)
6. Functions and Modularization
7. Arrays and Lists
8. Strings and String Manipulation
9. File Input and Output

Page 10 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

10. Debugging and Error Handling


11. Introduction to Object-Oriented Programming
12. Classes and Objects
13. Inheritance and Polymorphism
14. Exception Handling
15. Introduction to Functional Programming
Recommended Textbook:
"Introduction to Programming Using Python" by Y. Daniel Liang
Recommended Reference Books:
1. "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin
2. "Think Python: How to Think Like a Computer Scientist" by Allen B. Downey
3. "Programming Pearls" by Jon Bentley

Page 11 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND104: Introduction to Network Security


Course Introduction:
Introduction to Network Security provides students with a comprehensive overview of the
fundamental concepts and principles of network security. The course covers the various
threats and vulnerabilities that exist in modern computer networks and the techniques used
to mitigate these risks. Students will learn about the different types of network attacks, such
as malware, phishing, and denial-of-service attacks, and the mechanisms used to defend
against them. The course also covers the basics of cryptography, including encryption,
decryption, and key management, and how these techniques are used to secure network
communications. Students will gain hands-on experience with network security tools and
technologies, such as firewalls, intrusion detection systems, and virtual private networks
(VPNs). Through a combination of lectures, lab exercises, and case studies, students will
develop a deep understanding of the challenges and best practices in network security. This
course serves as a foundation for more advanced courses in cybersecurity and prepares
students for careers in network administration and security.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of network security.
2. Identify and classify various types of network threats and vulnerabilities.
3. Apply basic cryptographic techniques to secure network communications.
4. Configure and manage network security devices, such as firewalls and intrusion
detection systems.
5. Develop strategies for preventing, detecting, and responding to network security
incidents.
Course Contents:
1. Introduction to Network Security
2. Network Threats and Vulnerabilities
3. Malware and Malicious Code
4. Network Attacks (DoS, Man-in-the-Middle, Phishing)
5. Cryptography Fundamentals
6. Symmetric and Asymmetric Encryption
7. Public Key Infrastructure (PKI) and Digital Certificates
8. Network Authentication and Access Control
9. Firewalls and Network Access Control
10. Intrusion Detection and Prevention Systems
11. Virtual Private Networks (VPNs)
Page 12 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

12. Wireless Network Security


13. Network Security Protocols (SSL/TLS, IPSec, SSH)
14. Network Security Policies and Best Practices
15. Incident Response and Disaster Recovery
Recommended Textbook:
"Network Security Essentials: Applications and Standards" by William Stallings
Recommended Reference Books:
1. "Cryptography and Network Security: Principles and Practice" by William Stallings
2. "CompTIA Security+ Study Guide" by Mike Chapple and David Seidl
3. "The Practice of Network Security Monitoring: Understanding Incident Detection
and Response" by Richard Bejtlich

Page 13 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND105: Digital Literacy


Course Introduction:
Digital Literacy is an essential course that equips students with the knowledge and skills
necessary to effectively navigate and utilize digital technologies in their personal,
academic, and professional lives. The course covers a wide range of topics, including
computer hardware and software, the Internet, digital communication tools, and
information literacy. Students will learn how to use productivity software, such as word
processors, spreadsheets, and presentation tools, to create and manage digital content. The
course also emphasizes the importance of digital citizenship, including online safety,
privacy, and ethical behavior in the digital world. Through hands-on exercises and projects,
students will develop practical skills in using digital technologies to solve problems,
communicate effectively, and collaborate with others. The course also explores the impact
of digital technologies on society, including issues related to digital divide, online identity,
and the future of work. By the end of the course, students will have a strong foundation in
digital literacy, enabling them to thrive in an increasingly digital world.
Course Learning Outcomes (CLOs):
1. Demonstrate proficiency in using productivity software, such as word processors,
spreadsheets, and presentation tools.
2. Understand the basic components and functions of computer hardware and software.
3. Effectively use the Internet for research, communication, and collaboration.
4. Apply principles of digital citizenship, including online safety, privacy, and ethical
behavior.
5. Evaluate the credibility and relevance of digital information sources.
Course Contents:
1. Introduction to Digital Literacy
2. Computer Hardware and Software
3. Operating Systems and File Management
4. Word Processing and Document Creation
5. Spreadsheets and Data Analysis
6. Presentation Software and Multimedia
7. The Internet and World Wide Web
8. Search Engines and Information Retrieval
9. Email and Digital Communication Tools
10. Social Media and Online Collaboration
11. Digital Citizenship and Online Safety
Page 14 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

12. Privacy and Security in the Digital World


13. Information Literacy and Evaluating Online Sources
14. Digital Divide and Access to Technology
15. The Future of Digital Technologies and Society
Recommended Textbook:
"Digital Literacy for Dummies" by Faithe Wempen
Recommended Reference Books:
1. "Discovering Computers 2021: Digital Technology, Data, and Devices" by Misty
E. Vermaat, Susan L. Sebok, Steven M. Freund, Jennifer T. Campbell, and Mark
Frydenberg
2. "Digital Citizenship in Schools: Nine Elements All Students Should Know" by Mike
Ribble
3. "Information Literacy in the Digital Age: An Evidence-Based Approach" by Teresa
Welsh and Melissa Wright

Page 15 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND106: Communication Skills for IT Professionals


Course Introduction:
Communication Skills for IT Professionals is a crucial course that focuses on developing
the interpersonal and communication skills necessary for success in the information
technology industry. The course recognizes that technical expertise alone is not sufficient
for IT professionals; they must also be able to effectively communicate with colleagues,
clients, and stakeholders from diverse backgrounds. Students will learn various
communication strategies and techniques, including verbal, non-verbal, written, and visual
communication. The course covers topics such as active listening, presentation skills,
technical writing, email etiquette, and cross-cultural communication. Students will engage
in practical exercises, role-playing scenarios, and group projects to develop their
communication skills in real-world contexts. The course also emphasizes the importance
of teamwork and collaboration, as IT professionals often work in interdisciplinary teams
to solve complex problems. By the end of the course, students will have the confidence and
skills to communicate effectively in a variety of professional situations, enhancing their
ability to succeed in the dynamic and fast-paced world of information technology.
Course Learning Outcomes (CLOs):
1. Apply effective verbal and non-verbal communication techniques in professional
settings.
2. Develop clear, concise, and well-structured written communication, including
technical reports and documentation.
3. Deliver engaging and informative presentations to diverse audiences.
4. Demonstrate active listening skills and provide constructive feedback.
5. Collaborate effectively in teams and foster positive interpersonal relationships.
Course Contents:
1. Introduction to Communication Skills for IT Professionals
2. Verbal Communication and Active Listening
3. Non-Verbal Communication and Body Language
4. Written Communication and Email Etiquette
5. Technical Writing and Documentation
6. Presentation Skills and Visual Aids
7. Interpersonal Communication and Relationship Building
8. Cross-Cultural Communication and Diversity
9. Teamwork and Collaboration
10. Conflict Resolution and Negotiation Skills

Page 16 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

11. Communicating with Clients and Stakeholders


12. Communicating Technical Information to Non-Technical Audiences
13. Effective Communication in Remote and Virtual Teams
14. Professional Networking and Personal Branding
15. Continuous Improvement of Communication Skills
Recommended Textbook:
"A Guide to the Project Management Body of Knowledge (PMBOK® Guide)" by Project
Management Institute
Recommended Reference Books:
1. "How to Win Friends and Influence People" by Dale Carnegie
2. "The Art of Communicating" by Thich Nhat Hanh
3. "Crucial Conversations: Tools for Talking When Stakes Are High" by Kerry
Patterson, Joseph Grenny, Ron McMillan, and Al Switzler

Page 17 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND107: Critical Thinking and Logic Reasoning


Course Introduction
This course is designed to introduce students to the principles of critical thinking and
logic reasoning. It aims to enhance students' ability to think clearly and rationally,
understand the logical connection between ideas, identify, construct, and evaluate
arguments, and solve problems systematically. This course will cover various forms of
reasoning and logic, including deductive and inductive reasoning, as well as common
fallacies to avoid in argumentation.
Course Learning Outcomes (CLO)
1. Identify and distinguish between different types of reasoning (deductive,
inductive, and abductive) and understand their application in everyday situations.
2. Analyze arguments critically to identify premises and conclusions, assess the
validity and soundness of arguments, and recognize logical fallacies.
3. Develop and construct coherent arguments, employing logical reasoning to
support conclusions effectively.
4. Apply critical thinking and logical reasoning skills to solve problems, make
decisions, and evaluate claims in academic, professional, and personal contexts.
List of Course Contents
1. Introduction to Critical Thinking and Logic
2. The Structure of Arguments: Premises, Conclusions, and Types
3. Deductive Reasoning and Syllogistic Logic
4. Inductive Reasoning and Probabilistic Logic
5. Abductive Reasoning and Inference to the Best Explanation
6. Logical Fallacies and How to Avoid Them
7. The Role of Language in Logic and Reasoning
8. Critical Analysis of Everyday Arguments
9. Strategies for Effective Argumentation and Debate
10. Introduction to Formal Logic and Symbolic Notation
11. Evaluating Scientific Reasoning and Research
12. Critical Thinking in the Media and Information Literacy

Page 18 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

13. Problem-Solving and Decision-Making Strategies


14. Ethical Reasoning and Moral Decision-Making
15. Applying Logic and Critical Thinking in Professional and Personal Life
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

Page 19 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND108: English for Academics


Course Introduction
English for Academics is designed for students and professionals who seek to improve
their academic English skills. The course focuses on developing advanced reading,
writing, listening, and speaking skills necessary for success in an English-speaking
academic environment. Topics include academic vocabulary, essay and report writing,
presentation skills, and effective note-taking.
Course Learning Outcomes (CLO)
1. Demonstrate proficiency in academic vocabulary and grammar in both written and
spoken English.
2. Construct well-organized and coherent academic essays, reports, and research
papers with proper citations and references.
3. Deliver clear and effective oral presentations on academic topics, incorporating
appropriate visual aids.
4. Employ effective listening strategies and note-taking techniques in lectures and
seminars.
List of Course Contents
1. Introduction to Academic English: Vocabulary and Grammar
2. Reading Strategies for Academic Texts
3. Writing Academic Essays: Structure and Style
4. Research Papers and Reports: Organization and Documentation
5. Critical Reading and Analytical Writing
6. Academic Presentations: Preparation and Delivery
7. Listening Skills and Note-Taking in Lectures
8. Participating in Seminars and Discussions
9. Summarizing and Paraphrasing Academic Texts
10. Understanding and Writing Literature Reviews
11. Academic Vocabulary Building Exercises
12. Grammar for Academic Writing

Page 20 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

13. Citation Styles and Avoiding Plagiarism


14. Email and Correspondence in Academic Contexts
15. Preparing for Academic Examinations
Recommended Textbook
 "Academic Writing for Graduate Students: Essential Tasks and Skills" by John M.
Swales and Christine B. Feak
Reference Books
1. "English for Academic Study: Reading" by John Slaght
2. "English for Academic Purposes: A Guide and Resource Book for Teachers" by R.
R. Jordan
3. "The Elements of Academic Style: Writing for the Humanities" by Eric Hayot

Page 21 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

FND109: Islamic Studies


Course Introduction
Islamic Studies is an interdisciplinary course designed to provide students with a
comprehensive understanding of Islam's religious, cultural, historical, and contemporary
dimensions. The course covers the foundational texts of Islam, the development of
Islamic thought, the diversity of Muslim cultures, and contemporary issues facing the
Muslim world.
Course Learning Outcomes (CLO)
1. Understand the core beliefs, practices, and ethical principles of Islam as derived
from the Qur'an and Hadith.
2. Analyze the historical development of Islamic thought, including major schools of
theology, philosophy, and law.
3. Appreciate the cultural diversity within the Muslim world, including art, literature,
and social practices.
4. Critically engage with contemporary issues and challenges facing Muslim
communities globally.
List of Course Contents
1. Introduction to Islam: Core Beliefs and Practices
2. The Qur'an: Structure, Themes, and Interpretation
3. The Hadith: Collection, Classification, and Authority
4. The Life of Prophet Muhammad and the Early Muslim Community
5. Islamic Theology and Philosophy
6. Islamic Law (Sharia) and Jurisprudence (Fiqh)
7. Sufism: Mysticism in Islam
8. Islamic Art and Architecture
9. The Role of Women in Islam
10. Islam and Modernity: Reform Movements and Challenges
11. Islam and Politics: Governance, Democracy, and Human Rights
12. Islamic Economics and Finance

Page 22 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

13. Muslims in the Contemporary World: Identity and Diaspora


14. Interfaith Dialogue and Islamic Perspectives on Pluralism
15. Contemporary Issues: Radicalism, Islamophobia, and Environmental Ethics
Recommended Textbook
 "An Introduction to Islam" by Frederick Denny
Reference Books
1. "The Oxford History of Islam" edited by John L. Esposito
2. "The Study Quran: A New Translation and Commentary" by Seyyed Hossein Nasr
et al.
3. "Islam: A Short History" by Karen Armstrong

Page 23 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS201: Computer Networks


Course Introduction:
Computer Networks is a fundamental course that provides students with a comprehensive
understanding of the principles, technologies, and protocols that enable communication
and data exchange between computers. The course covers the layered architecture of
computer networks, focusing on the OSI and TCP/IP models. Students will learn about
various network components, such as switches, routers, and servers, and how they work
together to facilitate network communication. The course also explores different types of
networks, including local area networks (LANs), wide area networks (WANs), and
wireless networks. Students will gain hands-on experience in configuring and
troubleshooting network devices, as well as analyzing network traffic using tools like
packet analyzers. The course emphasizes the importance of network performance,
reliability, and security, and introduces students to basic network security concepts.
Through a combination of lectures, lab exercises, and projects, students will develop a
strong foundation in computer networks, preparing them for more advanced courses in
network administration and security.
Course Learning Outcomes (CLOs):
1. Understand the layered architecture of computer networks and the functions of each
layer.
2. Configure and troubleshoot network devices, such as switches and routers.
3. Analyze network traffic using packet analyzers and interpret the results.
4. Design and implement simple local area networks (LANs) and wide area networks
(WANs).
5. Apply basic network security concepts to protect network resources and data.
Course Contents:
1. Introduction to Computer Networks
2. OSI and TCP/IP Models
3. Physical Layer and Data Link Layer
4. Network Layer and IP Addressing
5. Transport Layer and TCP/UDP Protocols
6. Application Layer and Network Services
7. Ethernet and Switching Technologies
8. Wireless Networks and Wi-Fi Standards
9. Network Cabling and Topology
10. Network Devices (Switches, Routers, Firewalls)

Page 24 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

11. Subnetting and VLSM


12. Network Address Translation (NAT)
13. Network Performance and Quality of Service (QoS)
14. Network Management and Monitoring
15. Introduction to Network Security
Recommended Textbook:
"Computer Networking: A Top-Down Approach" by James Kurose and Keith Ross
Recommended Reference Books:
1. "TCP/IP Illustrated, Volume 1: The Protocols" by Kevin R. Fall and W. Richard
Stevens
2. "Network Warrior" by Gary A. Donahue
3. "Computer Networks" by Andrew S. Tanenbaum and David J. Wetherall

Page 25 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS202: Operating Systems


Course Introduction:
Operating Systems is a crucial course that explores the fundamental concepts, principles,
and techniques behind modern operating systems. The course provides students with a deep
understanding of how operating systems manage computer hardware, software, and system
resources to enable efficient and secure computing. Students will learn about process
management, memory management, file systems, and input/output operations. The course
covers various scheduling algorithms, synchronization mechanisms, and deadlock
prevention techniques used by operating systems to ensure optimal system performance
and resource utilization. Students will also study the security aspects of operating systems,
including access control, user authentication, and system protection. The course includes
hands-on experience with popular operating systems like Linux and Windows, where
students will learn to install, configure, and administer these systems. Through a
combination of lectures, lab exercises, and projects, students will gain a comprehensive
understanding of operating systems, preparing them for careers in system administration,
software development, and cybersecurity.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and techniques of modern
operating systems.
2. Analyze and compare different process management, memory management, and file
system techniques.
3. Apply synchronization mechanisms and deadlock prevention techniques to ensure
optimal system performance.
4. Configure and administer popular operating systems like Linux and Windows.
5. Implement basic security measures to protect operating systems from unauthorized
access and attacks.
Course Contents:
1. Introduction to Operating Systems
2. Operating System Structures
3. Processes and Threads
4. CPU Scheduling
5. Process Synchronization
6. Deadlocks
7. Memory Management
8. Virtual Memory
9. File Systems
Page 26 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

10. Input/Output Systems


11. Mass Storage Structure
12. Protection and Security
13. Distributed Systems
14. Virtualization and Cloud Computing
15. Case Studies: Linux and Windows Operating Systems
Recommended Textbook:
"Operating System Concepts" by Abraham Silberschatz, Peter Baer Galvin, and Greg
Gagne
Recommended Reference Books:
1. "Modern Operating Systems" by Andrew S. Tanenbaum and Herbert Bos
2. "Linux Bible" by Christopher Negus
3. "Windows Internals, Part 1: System Architecture, Processes, Threads, Memory
Management, and More" by Pavel Yosifovich, Mark E. Russinovich, David A.
Solomon, and Alex Ionescu

Page 27 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS203: Principles of Cybersecurity


Course Introduction:
Principles of Cybersecurity is an essential course that introduces students to the
fundamental concepts, principles, and practices of cybersecurity. The course provides a
comprehensive overview of the current cybersecurity landscape, including the various
types of cyber threats, vulnerabilities, and attacks that organizations face. Students will
learn about the confidentiality, integrity, and availability (CIA) triad, which forms the
foundation of information security. The course covers essential cybersecurity topics, such
as risk management, access control, network security, cryptography, and incident response.
Students will also study the legal and ethical aspects of cybersecurity, including privacy
laws, data protection regulations, and professional codes of conduct. The course includes
hands-on labs and projects, where students will gain practical experience in using
cybersecurity tools and techniques to assess and mitigate risks. By the end of the course,
students will have a solid understanding of the core principles of cybersecurity and be
prepared to pursue more advanced courses in the field.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and practices of cybersecurity.
2. Identify and classify various types of cyber threats, vulnerabilities, and attacks.
3. Apply risk management techniques to assess and mitigate cybersecurity risks.
4. Implement basic access control, network security, and cryptographic measures to
protect information assets.
5. Understand the legal and ethical aspects of cybersecurity, including privacy laws
and data protection regulations.
6. Course Contents:
Introduction to Cybersecurity
1. The CIA Triad: Confidentiality, Integrity, and Availability
2. Cyber Threats, Vulnerabilities, and Attacks
3. Risk Management and Assessment
4. Access Control and Identity Management
5. Network Security Fundamentals
6. Cryptography and Data Protection
7. Malware and Antivirus Software
8. Incident Response and Disaster Recovery
9. Security Policies, Standards, and Procedures
10. Legal and Ethical Aspects of Cybersecurity
Page 28 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

11. Privacy Laws and Data Protection Regulations


12. Cybersecurity Frameworks and Best Practices
13. Cybersecurity Tools and Techniques
14. Emerging Trends and Future Challenges in Cybersecurity
Recommended Textbook:
"Principles of Information Security" by Michael E. Whitman and Herbert J. Mattord
Recommended Reference Books:
1. "Cybersecurity and Cyberwar: What Everyone Needs to Know" by P.W. Singer and
Allan Friedman
2. "The CERT Guide to Insider Threats: How to Prevent, Detect, and Respond to
Information Technology Crimes (Theft, Sabotage, Fraud)" by Dawn M. Cappelli,
Andrew P. Moore, and Randall F. Trzeciak
3. "Cybersecurity Ethics: An Introduction" by Mary Manjikian

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

8. Cryptographic Protocols (SSL/TLS, IPSec, SSH)


9. Cryptanalysis and Attacks on Cryptographic Systems
10. Side-Channel Attacks and Countermeasures
11. Post-Quantum Cryptography
12. Homomorphic Encryption and Secure Multi-Party Computation
13. Blockchain and Cryptocurrency
14. Cryptography in Practice: Secure Software Development
Recommended Textbook:
"Cryptography and Network Security: Principles and Practice" by William Stallings
Recommended Reference Books:
1. "Applied Cryptography: Protocols, Algorithms, and Source Code in C" by Bruce
Schneier
2. "Serious Cryptography: A Practical Introduction to Modern Encryption" by Jean-
Philippe Aumasson
3. "Handbook of Applied Cryptography" by Alfred J. Menezes, Paul C. van Oorschot,
and Scott A. Vanstone

Page 31 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS205: Programming for Security


Course Introduction:
Programming for Security is an essential course that equips students with the skills and
knowledge necessary to develop secure software applications. The course focuses on the
principles and practices of secure coding, emphasizing the importance of incorporating
security throughout the software development lifecycle. Students will learn about common
programming vulnerabilities, such as buffer overflows, SQL injection, and cross-site
scripting (XSS), and how to prevent them through secure coding techniques. The course
covers secure programming practices in popular programming languages like C, C++, Java,
and Python. Students will also study secure design patterns, threat modeling, and security
testing methodologies. The course includes hands-on labs and projects, where students will
gain practical experience in developing secure software applications and conducting
security code reviews. By the end of the course, students will have a strong understanding
of secure programming principles and be prepared to develop secure and resilient software
systems in their future careers.
Course Learning Outcomes (CLOs):
1. Understand the principles and practices of secure coding and their importance in
software development.
2. Identify and mitigate common programming vulnerabilities, such as buffer
overflows, SQL injection, and cross-site scripting (XSS).
3. Apply secure coding techniques and best practices in popular programming
languages like C, C++, Java, and Python.
4. Implement secure design patterns and conduct threat modeling to develop secure
software architectures.
5. Perform security testing and code reviews to identify and fix security vulnerabilities
in software applications.
Course Contents:
1. Introduction to Secure Programming
2. Common Programming Vulnerabilities and Attacks
3. Secure Coding Principles and Practices
4. Secure Programming in C and C++
5. Secure Programming in Java
6. Secure Programming in Python
7. Secure Design Patterns and Architectures
8. Threat Modeling and Risk Assessment
9. Input Validation and Output Encoding
Page 32 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

10. Secure Memory Management and Buffer Overflow Prevention


11. Secure Database Access and SQL Injection Prevention
12. Secure Web Application Development and XSS Prevention
13. Secure Authentication and Session Management
14. Security Testing and Code Review
15. Secure Software Development Lifecycle (SDLC)
Recommended Textbook:
"Secure Coding in C and C++" by Robert C. Seacord
Recommended Reference Books:
1. "The Art of Software Security Assessment: Identifying and Preventing Software
Vulnerabilities" by Mark Dowd, John McDonald, and Justin Schuh
2. "Iron-Clad Java: Building Secure Web Applications" by Jim Manico and August
Detlefsen
3. "Python for Cybersecurity: Using Python for Ethical Hacking and Cybersecurity"
by Mouad Belmoudden

Page 33 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS206: Data Structures and Algorithms


Course Introduction:
Data Structures and Algorithms is a fundamental course that provides students with a solid
foundation in the design, analysis, and implementation of efficient data structures and
algorithms. The course covers essential data structures, such as arrays, linked lists, stacks,
queues, trees, and graphs, and their applications in solving real-world problems. Students
will learn various algorithms for searching, sorting, and graph traversal, and analyze their
time and space complexity using Big O notation. The course also introduces students to
advanced topics, such as dynamic programming, greedy algorithms, and NP-completeness.
Students will gain hands-on experience in implementing data structures and algorithms
using programming languages like C++ or Java. The course emphasizes problem-solving
skills and the ability to select appropriate data structures and algorithms for a given
problem. By the end of the course, students will have a strong understanding of data
structures and algorithms and be prepared to apply their knowledge in developing efficient
and scalable software solutions.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of data structures and
algorithms.
2. Analyze the time and space complexity of algorithms using Big O notation.
3. Implement efficient data structures, such as arrays, linked lists, stacks, queues, trees,
and graphs, using programming languages like C++ or Java.
4. Apply various algorithms for searching, sorting, and graph traversal to solve real-
world problems.
5. Design and implement efficient algorithms using techniques like divide-and-
conquer, dynamic programming, and greedy approaches.
Course Contents:
1. Introduction to Data Structures and Algorithms
2. Arrays and Linked Lists
3. Stacks and Queues
4. Recursion and Backtracking
5. Trees and Binary Search Trees
6. Heaps and Priority Queues
7. Hash Tables and Hash Functions
8. Graphs and Graph Algorithms
9. Searching Algorithms (Linear Search, Binary Search)

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

BCNS207: Network Security


Course Introduction:
Network Security is a critical course that focuses on the principles, techniques, and tools
used to secure computer networks and protect them from various threats and attacks. The
course covers the fundamental concepts of network security, including confidentiality,
integrity, availability, and authentication. Students will learn about different types of
network attacks, such as denial-of-service (DoS), man-in-the-middle (MITM), and
spoofing attacks, and the countermeasures used to prevent or mitigate them. The course
also covers network security protocols and technologies, such as firewalls, intrusion
detection and prevention systems (IDPS), virtual private networks (VPNs), and secure
routing protocols. Students will gain hands-on experience in configuring and managing
network security devices and implementing security policies. The course emphasizes the
importance of a comprehensive approach to network security, including risk assessment,
security monitoring, and incident response. By the end of the course, students will have a
strong understanding of network security principles and be prepared to design, implement,
and maintain secure network infrastructures.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of network security, including
confidentiality, integrity, availability, and authentication.
2. Identify and classify different types of network attacks and the countermeasures
used to prevent or mitigate them.
3. Configure and manage network security devices, such as firewalls, intrusion
detection and prevention systems (IDPS), and virtual private networks (VPNs).
4. Implement network security protocols and technologies, such as secure routing
protocols and encryption mechanisms.
5. Conduct risk assessments, perform security monitoring, and develop incident
response plans for network security incidents.
Course Contents:
1. Introduction to Network Security
2. Network Security Threats and Vulnerabilities
3. Network Security Protocols (SSL/TLS, IPSec, SSH)
4. Firewalls and Network Access Control
5. Intrusion Detection and Prevention Systems (IDPS)
6. Virtual Private Networks (VPNs)
7. Wireless Network Security
8. Secure Routing Protocols (BGP, OSPF)

Page 36 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Network Security Monitoring and Logging


10. Network Security Risk Assessment and Management
11. Network Security Policies and Best Practices
12. Network Security Incident Response and Forensics
13. Network Access Authentication and Authorization
14. Network Security in Cloud Computing Environments
15. Emerging Trends and Future Challenges in Network Security
Recommended Textbook:
"Network Security Essentials: Applications and Standards" by William Stallings
Recommended Reference Books:
1. "Practical Network Security" by Nikhil Sharma
2. "Applied Network Security Monitoring: Collection, Detection, and Analysis" by
Chris Sanders and Jason Smith
3. "Network Security Assessment: Know Your Network" by Chris McNab

Page 37 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS208: System Security


Course Introduction:
System Security is an essential course that focuses on the principles, techniques, and tools
used to secure computer systems and protect them from various threats and attacks. The
course covers the fundamental concepts of system security, including access control,
authentication, authorization, and auditing. Students will learn about different types of
system vulnerabilities, such as software vulnerabilities, configuration weaknesses, and
insider threats, and the countermeasures used to prevent or mitigate them. The course also
covers system hardening techniques, such as patch management, system configuration, and
security testing. Students will gain hands-on experience in securing operating systems,
such as Windows and Linux, and implementing security controls, such as antivirus
software, host-based firewalls, and intrusion detection systems. The course emphasizes the
importance of a defense-in-depth approach to system security, including the use of multiple
layers of security controls and the integration of security into the system development
lifecycle. By the end of the course, students will have a strong understanding of system
security principles and be prepared to design, implement, and maintain secure computer
systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of system security, including
access control, authentication, authorization, and auditing.
2. Identify and classify different types of system vulnerabilities and the
countermeasures used to prevent or mitigate them.
3. Apply system hardening techniques, such as patch management, system
configuration, and security testing, to secure operating systems and applications.
4. Implement security controls, such as antivirus software, host-based firewalls, and
intrusion detection systems, to protect computer systems from threats and attacks.
5. Integrate security into the system development lifecycle and apply a defense-in-
depth approach to system security.
Course Contents:
1. Introduction to System Security
2. Access Control Models and Mechanisms
3. Authentication and Authorization
4. Operating System Security (Windows, Linux)
5. Application Security and Secure Coding Practices
6. Malware and Antivirus Software
7. Host-based Firewalls and Intrusion Detection Systems

Page 38 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Patch Management and Vulnerability Assessment


9. System Hardening and Configuration Management
10. Auditing and Logging for System Security
11. Insider Threats and Countermeasures
12. Physical Security and Environmental Controls
13. Disaster Recovery and Business Continuity Planning
14. Security in Virtualized and Cloud Environments
15. Emerging Trends and Future Challenges in System Security
Recommended Textbook:
"Computer Security: Principles and Practice" by William Stallings and Lawrie Brown
Recommended Reference Books:
1. "The Practice of System and Network Administration" by Thomas A. Limoncelli,
Christina J. Hogan, and Strata R. Chalup
2. "Mastering Linux Security and Hardening" by Donald A. Tevault
3. "Windows Security Monitoring: Scenarios and Patterns" by Andrei Miroshnikov

Page 39 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS209: Web Security


Course Introduction:
Web Security is a crucial course that focuses on the principles, techniques, and tools used
to secure web applications and protect them from various threats and attacks. The course
covers the fundamental concepts of web security, including the same-origin policy, cross-
site scripting (XSS), cross-site request forgery (CSRF), and injection attacks. Students will
learn about the OWASP Top 10 web application security risks and the countermeasures
used to prevent or mitigate them. The course also covers secure web application design and
development practices, such as input validation, output encoding, and secure session
management. Students will gain hands-on experience in conducting web application
security assessments, including vulnerability scanning, penetration testing, and code
review. The course emphasizes the importance of a holistic approach to web security,
including the use of security testing tools, secure coding practices, and security monitoring.
By the end of the course, students will have a strong understanding of web security
principles and be prepared to design, develop, and maintain secure web applications.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of web security, including the
same-origin policy, cross-site scripting (XSS), cross-site request forgery (CSRF),
and injection attacks.
2. Identify and classify the OWASP Top 10 web application security risks and the
countermeasures used to prevent or mitigate them.
3. Apply secure web application design and development practices, such as input
validation, output encoding, and secure session management.
4. Conduct web application security assessments, including vulnerability scanning,
penetration testing, and code review.
5. Implement a holistic approach to web security, including the use of security testing
tools, secure coding practices, and security monitoring.
Course Contents:
1. Introduction to Web Security
2. Web Application Architecture and Technologies
3. Same-Origin Policy and Cross-Origin Resource Sharing (CORS)
4. Cross-Site Scripting (XSS) and Cross-Site Request Forgery (CSRF)
5. Injection Attacks (SQL Injection, Command Injection, etc.)
6. Authentication and Session Management
7. Access Control and Authorization
8. Secure Communication (HTTPS, SSL/TLS)

Page 40 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Secure Coding Practices for Web Applications


10. Web Application Firewalls (WAFs) and Runtime Application Self-Protection
(RASP)
11. Web Application Security Testing and Tools
12. Security Monitoring and Incident Response for Web Applications
13. Web API Security and OAuth Authentication
14. Security in Single-Page Applications (SPAs) and Progressive Web Apps (PWAs)
15. Emerging Trends and Future Challenges in Web Security
Recommended Textbook:
"The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws" by
Dafydd Stuttard and Marcus Pinto
Recommended Reference Books:
1. "Web Security for Developers: Real Threats, Practical Defense" by Malcolm
McDonald
2. "Mastering Modern Web Penetration Testing" by Prakhar Prasad
3. "Securing DevOps: Security in the Cloud" by Julien Vehent

Page 41 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS210: Ethical Hacking


Course Introduction:
Ethical Hacking is an essential course that focuses on the principles, techniques, and tools
used by ethical hackers to identify and exploit vulnerabilities in computer systems and
networks. The course covers the fundamental concepts of ethical hacking, including the
legal and ethical considerations, the different phases of hacking, and the tools and
techniques used in each phase. Students will learn about reconnaissance, scanning,
enumeration, vulnerability assessment, and exploitation techniques, as well as post-
exploitation and reporting. The course also covers the different types of hacking, such as
network hacking, web application hacking, and wireless hacking, and the countermeasures
used to prevent or mitigate them. Students will gain hands-on experience in using hacking
tools and techniques in a controlled lab environment, and will learn how to document and
report their findings. The course emphasizes the importance of using hacking skills for
defensive purposes and the need for ethical behavior and professionalism in the field of
cybersecurity. By the end of the course, students will have a strong understanding of ethical
hacking principles and be prepared to conduct penetration testing and vulnerability
assessments for organizations.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of ethical hacking, including
the legal and ethical considerations, the different phases of hacking, and the tools
and techniques used in each phase.
2. Apply reconnaissance, scanning, enumeration, vulnerability assessment, and
exploitation techniques to identify and exploit vulnerabilities in computer systems
and networks.
3. Conduct different types of hacking, such as network hacking, web application
hacking, and wireless hacking, and implement countermeasures to prevent or
mitigate them.
4. Use hacking tools and techniques in a controlled lab environment and document and
report findings.
5. Demonstrate ethical behavior and professionalism in the field of cybersecurity and
use hacking skills for defensive purposes.
Course Contents:
1. Introduction to Ethical Hacking
2. Legal and Ethical Considerations in Hacking
3. Reconnaissance and Foot printing
4. Scanning and Enumeration
5. Vulnerability Assessment and Analysis

Page 42 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

6. Exploitation Techniques and Tools


7. Post-Exploitation and Privilege Escalation
8. Network Hacking and Countermeasures
9. Web Application Hacking and Countermeasures
10. Wireless Hacking and Countermeasures
11. Social Engineering and Physical Security
12. Cryptography and Cryptanalysis
13. Malware Analysis and Reverse Engineering
14. Penetration Testing Methodologies and Frameworks
15. Reporting and Documentation for Ethical Hacking
Recommended Textbook:
"The Basics of Hacking and Penetration Testing: Ethical Hacking and Penetration Testing
Made Easy" by Patrick Engebretson
Recommended Reference Books:
1. "Penetration Testing: A Hands-On Introduction to Hacking" by Georgia Weidman
2. "The Hacker Playbook 3: Practical Guide To Penetration Testing" by Peter Kim
3. "Advanced Penetration Testing: Hacking the World's Most Secure Networks" by
Wil Allsopp

Page 43 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS211: Database Management Systems


Course Introduction:
Database Management Systems is a fundamental course that focuses on the principles,
techniques, and tools used to design, implement, and manage databases. The course covers
the fundamental concepts of database management systems, including data models,
database design, data manipulation, and data retrieval. Students will learn about the
different types of databases, such as relational databases, NoSQL databases, and graph
databases, and the advantages and disadvantages of each type. The course also covers
database normalization, indexing, and query optimization techniques, as well as database
security and integrity. Students will gain hands-on experience in using database
management systems, such as MySQL, PostgreSQL, and MongoDB, and will learn how to
design and implement databases for real-world applications. The course emphasizes the
importance of data management and the role of databases in modern information systems.
By the end of the course, students will have a strong understanding of database
management principles and be prepared to design, implement, and manage databases for
organizations.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of database management
systems, including data models, database design, data manipulation, and data
retrieval.
2. Compare and contrast the different types of databases, such as relational databases,
NoSQL databases, and graph databases, and their advantages and disadvantages.
3. Apply database normalization, indexing, and query optimization techniques to
improve database performance and efficiency.
4. Implement database security and integrity measures to protect data from
unauthorized access and ensure data consistency.
5. Design and implement databases for real-world applications using database
management systems such as MySQL, PostgreSQL, and MongoDB.
Course Contents:
1. Introduction to Database Management Systems
2. Data Models and Database Design
3. Relational Database Management Systems (RDBMS)
4. Entity-Relationship (ER) Modeling
5. Structured Query Language (SQL)
6. Database Normalization
7. Indexing and Query Optimization

Page 44 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Transaction Management and Concurrency Control


9. Database Security and Integrity
10. NoSQL Databases and Big Data
11. Graph Databases and Social Network Analysis
12. Data Warehousing and Business Intelligence
13. Database Administration and Maintenance
14. Database Backup and Recovery
15. Emerging Trends and Future Challenges in Database Management
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. "MySQL Reference Manual" by MySQL AB
3. "MongoDB: The Definitive Guide" by Kristina Chodorow and Michael Dirolf

Page 45 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS212: Research Methods in Computer Science


Course Introduction:
Research Methods in Computer Science is an essential course that focuses on the
principles, techniques, and tools used to conduct research in the field of computer science.
The course covers the fundamental concepts of research, including research design, data
collection, data analysis, and research ethics. Students will learn about the different types
of research methods, such as experimental research, survey research, and case study
research, and the advantages and disadvantages of each method. The course also covers the
different stages of the research process, from problem formulation to research
dissemination, and the tools and techniques used in each stage. Students will gain hands-
on experience in conducting research projects, including literature review, data collection,
data analysis, and research reporting. The course emphasizes the importance of critical
thinking, scientific rigor, and ethical conduct in research. By the end of the course, students
will have a strong understanding of research methods in computer science and be prepared
to conduct research projects in academia or industry.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of research methods in
computer science, including research design, data collection, data analysis, and
research ethics.
2. Compare and contrast the different types of research methods, such as experimental
research, survey research, and case study research, and their advantages and
disadvantages.
3. Apply the different stages of the research process, from problem formulation to
research dissemination, and the tools and techniques used in each stage.
4. Conduct research projects, including literature review, data collection, data analysis,
and research reporting.
5. Demonstrate critical thinking, scientific rigor, and ethical conduct in research.
Course Contents:
1. Introduction to Research Methods in Computer Science
2. Research Design and Problem Formulation
3. Literature Review and Related Work
4. Experimental Research and Hypothesis Testing
5. Survey Research and Questionnaire Design
6. Case Study Research and Qualitative Methods
7. Data Collection Techniques and Sampling
8. Data Analysis and Statistical Methods

Page 46 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Data Visualization and Presentation


10. Research Ethics and Intellectual Property
11. Research Proposal Writing and Funding
12. Research Project Management and Collaboration
13. Research Dissemination and Publication
14. Reproducibility and Replicability in Research
15. Emerging Trends and Future Challenges in Computer Science Research
Recommended Textbook:
"Research Methods in Computer Science" by Danel Ahlin and Sven-Arne Andreasson
Recommended Reference Books:
1. "Experimentation in Software Engineering" by Claes Wohlin, PerRuneson, Martin
Höst, Magnus C. Ohlsson, Björn Regnell, and Anders Wesslén
2. "Case Study Research: Design and Methods" by Robert K. Yin
3. "The Craft of Research" by Wayne C. Booth, Gregory G. Colomb, Joseph M.
Williams, Joseph Bizup, and William T. FitzGerald

Page 47 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS301: Wireless and Mobile Security


Course Introduction:
Wireless and Mobile Security is a critical course that focuses on the principles, techniques,
and tools used to secure wireless networks and mobile devices. The course covers the
fundamental concepts of wireless and mobile security, including the different types of
wireless networks, such as Wi-Fi, Bluetooth, and cellular networks, and the security
challenges associated with each type. Students will learn about the different types of attacks
on wireless networks and mobile devices, such as eavesdropping, man-in-the-middle
attacks, and malware attacks, and the countermeasures used to prevent or mitigate them.
The course also covers the different security protocols and technologies used in wireless
networks and mobile devices, such as WPA2, VPNs, and mobile device management
(MDM) solutions. Students will gain hands-on experience in configuring and managing
wireless networks and mobile devices, and in conducting security assessments and
penetration testing. The course emphasizes the importance of a comprehensive approach
to wireless and mobile security, including the use of security policies, user awareness
training, and incident response. By the end of the course, students will have a strong
understanding of wireless and mobile security principles and be prepared to design,
implement, and maintain secure wireless networks and mobile devices.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of wireless and mobile
security, including the different types of wireless networks and the security
challenges associated with each type.
2. Identify and classify the different types of attacks on wireless networks and mobile
devices, and the countermeasures used to prevent or mitigate them.
3. Apply the different security protocols and technologies used in wireless networks
and mobile devices, such as WPA2, VPNs, and mobile device management (MDM)
solutions.
4. Configure and manage wireless networks and mobile devices, and conduct security
assessments and penetration testing.
5. Implement a comprehensive approach to wireless and mobile security, including the
use of security policies, user awareness training, and incident response.
Course Contents:
1. Introduction to Wireless and Mobile Security
2. Wireless Network Architectures and Technologies
3. Security Challenges in Wireless Networks
4. Wireless Network Attacks and Countermeasures
5. Wireless Network Security Protocols (WEP, WPA, WPA2)

Page 48 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

6. Wireless Network Security Tools and Techniques


7. Mobile Device Security Threats and Vulnerabilities
8. Mobile Device Attacks and Countermeasures
9. Mobile Device Security Technologies (MDM, MAM, MCM)
10. Mobile Application Security and Secure Coding Practices
11. Cellular Network Security (GSM, UMTS, LTE)
12. Bluetooth and NFC Security
13. IoT and Wireless Sensor Network Security
14. Wireless and Mobile Forensics
15. Emerging Trends and Future Challenges in Wireless and Mobile Security
Recommended Textbook:
"Wireless and Mobile Device Security" by Jim Geier
Recommended Reference Books:
1. "Hacking Exposed Wireless: Wireless Security Secrets & Solutions" by Johnny
Cache, Joshua Wright, and Vincent Liu
2. "Mobile Application Security" by Himanshu Dwivedi, Chris Clark, and David Thiel
3. "Wireless Network Security: A Beginner's Guide" by Tyler Wrightson

Page 49 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS302: Cloud Security


Course Introduction:
Cloud Security is an essential course that focuses on the principles, techniques, and tools
used to secure cloud computing environments. The course covers the fundamental concepts
of cloud security, including the different service models (IaaS, PaaS, SaaS) and deployment
models (public, private, hybrid) of cloud computing, and the security challenges associated
with each model. Students will learn about the different types of threats and vulnerabilities
in cloud environments, such as data breaches, insider threats, and denial-of-service attacks,
and the countermeasures used to prevent or mitigate them. The course also covers the
different security controls and technologies used in cloud environments, such as identity
and access management (IAM), encryption, and security monitoring. Students will gain
hands-on experience in configuring and managing security in cloud platforms, such as
Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP), and
in conducting security assessments and compliance audits. The course emphasizes the
importance of a shared responsibility model for cloud security, where both the cloud
provider and the customer have responsibilities for securing the cloud environment. By the
end of the course, students will have a strong understanding of cloud security principles
and be prepared to design, implement, and maintain secure cloud environments.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of cloud security, including the
different service models and deployment models of cloud computing, and the
security challenges associated with each model.
2. Identify and classify the different types of threats and vulnerabilities in cloud
environments, and the countermeasures used to prevent or mitigate them.
3. Apply the different security controls and technologies used in cloud environments,
such as identity and access management (IAM), encryption, and security
monitoring.
4. Configure and manage security in cloud platforms, such as Amazon Web Services
(AWS), Microsoft Azure, and Google Cloud Platform (GCP), and conduct security
assessments and compliance audits.
5. Implement a shared responsibility model for cloud security, where both the cloud
provider and the customer have responsibilities for securing the cloud environment.
Course Contents:
1. Introduction to Cloud Security
2. Cloud Computing Service Models (IaaS, PaaS, SaaS)
3. Cloud Computing Deployment Models (Public, Private, Hybrid)
4. Cloud Security Threats and Vulnerabilities

Page 50 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Cloud Security Controls and Technologies


6. Identity and Access Management (IAM) in the Cloud
7. Encryption and Key Management in the Cloud
8. Security Monitoring and Incident Response in the Cloud
9. Compliance and Audit in the Cloud
10. Cloud Security Frameworks and Standards (CSA, NIST, ISO)
11. Secure Cloud Architecture and Design
12. Cloud Security Assessment and Penetration Testing
13. Disaster Recovery and Business Continuity in the Cloud
14. Serverless Security and Containers Security
15. Emerging Trends and Future Challenges in Cloud Security
Recommended Textbook:
"Cloud Security and Privacy: An Enterprise Perspective on Risks and Compliance" by Tim
Mather, Subra Kumaraswamy, and Shahed Latif
Recommended Reference Books:
1. "CCSP Certified Cloud Security Professional All-in-One Exam Guide" by Daniel
Carter
2. "Cloud Security: A Comprehensive Guide to Secure Cloud Computing" by Ronald
L. Krutz and Russell Dean Vines
3. "Practical Cloud Security: A Guide for Secure Design and Deployment" by Chris
Dotson

Page 51 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS303: Digital Forensics


Course Introduction:
Digital Forensics is a crucial course that focuses on the principles, techniques, and tools
used to investigate and analyze digital evidence in cybercrime and security incidents. The
course covers the fundamental concepts of digital forensics, including the different types
of digital evidence, such as computer systems, mobile devices, and network traffic, and the
legal and ethical considerations in digital forensics. Students will learn about the different
phases of the digital forensics process, from evidence acquisition and preservation to
analysis and reporting, and the tools and techniques used in each phase. The course also
covers the different types of cybercrime, such as hacking, malware, and fraud, and the
digital forensics techniques used to investigate them. Students will gain hands-on
experience in using digital forensics tools and techniques, such as disk imaging, file
carving, and network forensics, and in conducting digital forensics investigations in a
virtual lab environment. The course emphasizes the importance of maintaining the integrity
and chain of custody of digital evidence, and the need for professional ethics and standards
in digital forensics. By the end of the course, students will have a strong understanding of
digital forensics principles and be prepared to conduct digital forensics investigations in
law enforcement, corporate, or consulting roles.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of digital forensics, including
the different types of digital evidence and the legal and ethical considerations in
digital forensics.
2. Apply the different phases of the digital forensics process, from evidence
acquisition and preservation to analysis and reporting, and the tools and techniques
used in each phase.
3. Investigate the different types of cybercrime, such as hacking, malware, and fraud,
using digital forensics techniques.
4. Use digital forensics tools and techniques, such as disk imaging, file carving, and
network forensics, and conduct digital forensics investigations in a virtual lab
environment.
5. Maintain the integrity and chain of custody of digital evidence, and demonstrate
professional ethics and standards in digital forensics.
Course Contents:
1. Introduction to Digital Forensics
2. Legal and Ethical Considerations in Digital Forensics
3. Digital Evidence Acquisition and Preservation
4. Digital Evidence Analysis and Interpretation

Page 52 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Computer Forensics Techniques and Tools


6. Mobile Device Forensics Techniques and Tools
7. Network Forensics Techniques and Tools
8. Cloud Forensics and Virtualization
9. Malware Forensics and Analysis
10. Email and Social Media Forensics
11. Database Forensics and Data Recovery
12. Multimedia Forensics and Steganography
13. Cybercrime Investigation and Prosecution
14. Digital Forensics Reporting and Testimony
15. Emerging Trends and Future Challenges in Digital Forensics
Recommended Textbook:
"Guide to Computer Forensics and Investigations" by Bill Nelson, Amelia Phillips, and
Christopher Steuart
Recommended Reference Books:
1. "Digital Forensics and Incident Response: Incident response techniques and
procedures to respond to modern cyber threats" by Gerard Johansen
2. "Practical Mobile Forensics" by Satish Bommisetty, Rohit Tamma, and Heather
Mahalik
3. "The Art of Memory Forensics: Detecting Malware and Threats in Windows, Linux,
and Mac Memory" by Michael Hale Ligh, Andrew Case, Jamie Levy, and Aaron
Walters

Page 53 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS304: Security Policies and Laws


Course Introduction:
Security Policies and Laws is an essential course that focuses on the legal and regulatory
framework governing cybersecurity and the development and implementation of security
policies in organizations. The course covers the fundamental concepts of cybersecurity law,
including the different types of cybercrime, such as hacking, malware, and data breaches,
and the legal remedies and penalties for these crimes. Students will learn about the different
laws and regulations related to cybersecurity, such as the Computer Fraud and Abuse Act
(CFAA), the General Data Protection Regulation (GDPR), and the Payment Card Industry
Data Security Standard (PCI DSS), and their implications for organizations. The course
also covers the different types of security policies, such as acceptable use policies, incident
response policies, and data classification policies, and the best practices for developing and
implementing these policies. Students will gain hands-on experience in developing and
reviewing security policies, and in conducting compliance assessments and audits. The
course emphasizes the importance of aligning security policies with business objectives
and legal requirements, and the need for ongoing review and update of policies. By the end
of the course, students will have a strong understanding of the legal and policy aspects of
cybersecurity and be prepared to develop and implement effective security policies in
organizations.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts of cybersecurity law, including the different
types of cybercrime and the legal remedies and penalties for these crimes.
2. Analyze the different laws and regulations related to cybersecurity, such as CFAA,
GDPR, and PCI DSS, and their implications for organizations.
3. Develop and implement different types of security policies, such as acceptable use
policies, incident response policies, and data classification policies, following best
practices.
4. Conduct compliance assessments and audits to ensure adherence to legal and
regulatory requirements.
5. Align security policies with business objectives and legal requirements, and
continuously review and update policies.
Course Contents:
1. Introduction to Cybersecurity Law and Policy
2. Types of Cybercrime and Legal Remedies
3. Computer Fraud and Abuse Act (CFAA)
4. Electronic Communications Privacy Act (ECPA)
5. General Data Protection Regulation (GDPR)

Page 54 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

6. California Consumer Privacy Act (CCPA)


7. Payment Card Industry Data Security Standard (PCI DSS)
8. Health Insurance Portability and Accountability Act (HIPAA)
9. Intellectual Property Law and Digital Rights Management (DRM)
10. Cybersecurity Policies and Procedures
11. Acceptable Use Policies and Employee Monitoring
12. Incident Response Policies and Procedures
13. Data Classification and Handling Policies
14. Compliance Assessments and Audits
15. Emerging Trends and Future Challenges in Cybersecurity Law and Policy
Recommended Textbook:
"Cybersecurity Law" by Jeff Kosseff
Recommended Reference Books:
1. "The ABA Cybersecurity Handbook: A Resource for Attorneys, Law Firms, and
Business Professionals" by Jill D. Rhodes and Vincent I. Polley
2. "Information Security Policies, Procedures, and Standards: A Practitioner's
Reference" by Douglas J. Landoll
3. "Cybersecurity and Privacy Law in a Nutshell" by Jay P. Kesan and Carol M. Hayes

Page 55 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS305: Computer & Network Security Internship I


Course Introduction:
Computer & Network Security Internship I is a practical course that provides students with
the opportunity to apply their knowledge and skills in a real-world setting. The course is
designed to give students hands-on experience in various aspects of computer and network
security, such as network administration, system hardening, vulnerability assessment, and
incident response. Students will work under the supervision of experienced security
professionals and gain exposure to the latest tools, techniques, and best practices in the
field. The internship may take place in a variety of organizations, such as corporations,
government agencies, or cybersecurity consulting firms, depending on the student's
interests and career goals. Throughout the internship, students will be required to maintain
a journal of their activities and experiences, and to submit regular progress reports to their
academic supervisor. The course also includes a reflective component, where students will
analyze their experiences and identify areas for further learning and development. By the
end of the course, students will have gained valuable practical experience and professional
skills that will enhance their employability and prepare them for a successful career in
cybersecurity.
Course Learning Outcomes (CLOs):
1. Apply knowledge and skills in computer and network security to real-world
problems and scenarios.
2. Work effectively in a professional setting, collaborating with colleagues and
communicating with stakeholders.
3. Develop practical skills in network administration, system hardening, vulnerability
assessment, and incident response.
4. Analyze and reflect on one's own performance and identify areas for improvement
and further learning.
5. Enhance employability and prepare for a successful career in cybersecurity.
Course Contents:
1. Orientation and Introduction to the Internship Organization
2. Network Administration and Configuration
3. System Hardening and Security Configuration
4. Vulnerability Assessment and Penetration Testing
5. Incident Response and Forensic Analysis
6. Security Monitoring and Log Analysis
7. Firewall and Intrusion Detection/Prevention System (IDS/IPS) Management
8. Cryptography and VPN Configuration

Page 56 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Wireless Network Security


10. Web Application Security
11. Cloud Security and Virtualization
12. Security Awareness Training and Policy Development
13. Project Management and Teamwork
14. Professional Communication and Presentation Skills
15. Reflective Analysis and Career Planning
Recommended Textbook:
"The Cybersecurity Playbook: How Every Leader and Employee Can Contribute to a
Culture of Security" by Allison Cerra
Recommended Reference Books:
1. "The Practice of Network Security Monitoring: Understanding Incident Detection
and Response" by Richard Bejtlich
2. "Tribe of Hackers: Cybersecurity Advice from the Best Hackers in the World" by
Marcus J. Carey and Jennifer Jin
3. "Cybersecurity: The Beginner's Guide" by Dr. Erdal Ozkaya

Page 57 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS306: Elective: Internet of Things Security


Course Introduction:
Internet of Things (IoT) Security is an elective course that focuses on the unique security
challenges and considerations associated with IoT devices and systems. The course covers
the fundamental concepts of IoT, including the different types of IoT devices, such as
sensors, actuators, and smart appliances, and the communication protocols and
architectures used in IoT. Students will learn about the various security threats and
vulnerabilities in IoT, such as device tampering, data interception, and botnets, and the
countermeasures and best practices for securing IoT devices and networks. The course also
covers the different security standards and frameworks for IoT, such as the NIST
Cybersecurity Framework for IoT and the IoT Security Foundation's IoT Security
Compliance Framework. Students will gain hands-on experience in configuring and
securing IoT devices, and in conducting security assessments and penetration testing of
IoT systems. The course emphasizes the importance of a holistic approach to IoT security,
including the need for secure device design, secure communication protocols, and secure
data management. By the end of the course, students will have a strong understanding of
IoT security principles and be prepared to design, implement, and maintain secure IoT
systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts of IoT, including the different types of IoT
devices and the communication protocols and architectures used in IoT.
2. Identify and analyze the various security threats and vulnerabilities in IoT, such as
device tampering, data interception, and botnets.
3. Apply countermeasures and best practices for securing IoT devices and networks,
such as secure device design, secure communication protocols, and secure data
management.
4. Evaluate and implement security standards and frameworks for IoT, such as the
NIST Cybersecurity Framework for IoT and the IoT Security Foundation's IoT
Security Compliance Framework.
5. Configure and secure IoT devices, and conduct security assessments and penetration
testing of IoT systems.
Course Contents:
1. Introduction to Internet of Things (IoT)
2. IoT Architectures and Communication Protocols
3. IoT Devices and Sensors
4. IoT Security Threats and Vulnerabilities
5. Secure IoT Device Design and Development

Page 58 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

6. Secure IoT Communication Protocols


7. Secure IoT Data Management and Storage
8. IoT Authentication and Access Control
9. IoT Encryption and Key Management
10. IoT Network Security and Segmentation
11. IoT Patch Management and Firmware Updates
12. IoT Security Standards and Frameworks
13. IoT Security Testing and Validation
14. IoT Incident Response and Forensics
15. Emerging Trends and Future Challenges in IoT Security
Recommended Textbook:
"IoT Security: Fundamentals, Techniques, and Applications" by Shancang Li and Li Da
Xu
Recommended Reference Books:
1. "Practical Internet of Things Security" by Brian Russell and Drew Van Duren
2. "Security and Privacy in Internet of Things (IoTs): Models, Algorithms, and
Implementations" by Fei Hu
3. "IoT Penetration Testing Cookbook: Identify vulnerabilities and secure your smart
devices" by Aaron Guzman and Aditya Gupta

Page 59 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS307: Advanced Network Security


Course Introduction:
Advanced Network Security is a course that builds upon the foundations of network
security and explores advanced topics and techniques for securing complex network
environments. The course covers the latest trends and challenges in network security, such
as zero-trust networks, software-defined networking (SDN), and secure access service edge
(SASE). Students will learn about advanced network security technologies and solutions,
such as next-generation firewalls, intrusion prevention systems (IPS), and security
information and event management (SIEM) systems. The course also covers advanced
network security architectures and designs, such as micro-segmentation, network function
virtualization (NFV), and secure SD-WAN. Students will gain hands-on experience in
configuring and managing advanced network security solutions, and in conducting
advanced network security assessments and penetration testing. The course emphasizes the
importance of a proactive and intelligence-driven approach to network security, including
the use of threat intelligence, machine learning, and automation. By the end of the course,
students will have a strong understanding of advanced network security principles and be
prepared to design, implement, and maintain secure and resilient network environments.
Course Learning Outcomes (CLOs):
1. Understand the latest trends and challenges in network security, such as zero-trust
networks, software-defined networking (SDN), and secure access service edge
(SASE).
2. Apply advanced network security technologies and solutions, such as next-
generation firewalls, intrusion prevention systems (IPS), and security information
and event management (SIEM) systems.
3. Design and implement advanced network security architectures and designs, such
as micro-segmentation, network function virtualization (NFV), and secure SD-
WAN.
4. Conduct advanced network security assessments and penetration testing, using tools
and techniques such as vulnerability scanning, exploit development, and post-
exploitation.
5. Develop a proactive and intelligence-driven approach to network security, including
the use of threat intelligence, machine learning, and automation.
Course Contents:
1. Advanced Network Security Concepts and Challenges
2. Zero-Trust Network Security
3. Software-Defined Networking (SDN) Security
4. Secure Access Service Edge (SASE)

Page 60 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Next-Generation Firewalls and Intrusion Prevention Systems (IPS)


6. Security Information and Event Management (SIEM) Systems
7. Micro-Segmentation and Network Segmentation
8. Network Function Virtualization (NFV) Security
9. Secure SD-WAN Architectures and Designs
10. Advanced Network Security Assessment and Penetration Testing
11. Exploit Development and Post-Exploitation Techniques
12. Threat Intelligence and Threat Hunting
13. Machine Learning and Artificial Intelligence in Network Security
14. Automation and Orchestration in Network Security
15. Emerging Trends and Future Challenges in Advanced Network Security
Recommended Textbook:
"Advanced Network Security: Securing Complex Network Infrastructures and
Architectures" by Saadat Malik
Recommended Reference Books:
1. "Zero Trust Networks: Building Secure Systems in Untrusted Networks" by Evan
Gilman and Doug Barth
2. "Software Defined Networks: A Comprehensive Approach" by Paul Goransson,
Chuck Black, and Timothy Culver
3. "Mastering Palo Alto Networks: Deploy and manage industry-leading PAN-OS
10.x solutions to secure your users and infrastructure" by Tom Piens

Page 61 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS308: Penetration Testing


Course Introduction:
Penetration Testing is an advanced course that focuses on the techniques, tools, and
methodologies used to assess the security of computer systems, networks, and applications
by simulating real-world attacks. The course covers the different phases of a penetration
testing engagement, including planning, reconnaissance, scanning, exploitation, post-
exploitation, and reporting. Students will learn about the various types of penetration
testing, such as network penetration testing, web application penetration testing, and social
engineering, and the tools and techniques used in each type. The course also covers the
legal and ethical considerations in penetration testing, including the need for proper
authorization, scope definition, and rules of engagement. Students will gain hands-on
experience in conducting penetration testing in a controlled lab environment, using tools
such as Metasploit, Burp Suite, and Nmap. The course emphasizes the importance of a
systematic and repeatable approach to penetration testing, as well as the need for effective
communication and reporting of findings. By the end of the course, students will have a
strong understanding of penetration testing principles and be prepared to conduct
penetration testing engagements for organizations.
Course Learning Outcomes (CLOs):
1. Understand the different phases of a penetration testing engagement, including
planning, reconnaissance, scanning, exploitation, post-exploitation, and reporting.
2. Apply the various types of penetration testing, such as network penetration testing,
web application penetration testing, and social engineering, and the tools and
techniques used in each type.
3. Conduct penetration testing in a controlled lab environment, using tools such as
Metasploit, Burp Suite, and Nmap.
4. Develop a systematic and repeatable approach to penetration testing, following
industry-standard methodologies such as OSSTMM and NIST SP 800-115.
5. Communicate and report the findings of a penetration testing engagement
effectively, including the identification of vulnerabilities, the assessment of risk,
and the recommendation of remediation actions.
Course Contents:
1. Introduction to Penetration Testing
2. Legal and Ethical Considerations in Penetration Testing
3. Penetration Testing Methodologies and Frameworks
4. Planning and Scoping a Penetration Testing Engagement
5. Reconnaissance and Open-Source Intelligence (OSINT) Gathering
6. Network Scanning and Enumeration Techniques
Page 62 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

7. Vulnerability Identification and Assessment


8. Exploitation Techniques and Tools
9. Post-Exploitation and Privilege Escalation
10. Network Penetration Testing
11. Web Application Penetration Testing
12. Social Engineering and Physical Security Testing
13. Wireless Network Penetration Testing
14. Penetration Testing Reporting and Documentation
15. Emerging Trends and Future Challenges in Penetration Testing
Recommended Textbook:
"The Hacker Playbook 3: Practical Guide To Penetration Testing" by Peter Kim
Recommended Reference Books:
1. "Penetration Testing: A Hands-On Introduction to Hacking" by Georgia Weidman
2. "Advanced Penetration Testing: Hacking the World's Most Secure Networks" by
Wil Allsopp
3. "Metasploit: The Penetration Tester's Guide" by David Kennedy, Jim O'Gorman,
Devon Kearns, and Mati Aharoni

Page 63 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS309: Computer & Network Security Internship II


Course Introduction:
Computer & Network Security Internship II is an advanced practical course that provides
students with the opportunity to further develop their skills and knowledge in a professional
setting. Building upon the experience gained in Computer & Network Security Internship
I, this course allows students to take on more complex and challenging projects in various
aspects of computer and network security. Students will work under the guidance of
experienced security professionals and contribute to the development and implementation
of security solutions for real-world problems. The internship may take place in a variety of
organizations, such as cybersecurity consulting firms, government agencies, or large
enterprises, depending on the student's interests and career goals. Throughout the
internship, students will be required to maintain a portfolio of their work and achievements,
and to present their experiences and insights to their peers and academic supervisors. The
course also includes a research component, where students will investigate a specific topic
or problem in computer and network security and propose innovative solutions. By the end
of the course, students will have gained advanced practical experience and research skills
that will prepare them for leadership roles in the field of cybersecurity.
Course Learning Outcomes (CLOs):
1. Apply advanced knowledge and skills in computer and network security to complex
real-world problems and scenarios.
2. Contribute effectively to the development and implementation of security solutions
in a professional setting, working collaboratively with colleagues and stakeholders.
3. Develop advanced practical skills in areas such as security architecture, threat
modeling, risk assessment, and security program management.
4. Investigate a specific topic or problem in computer and network security and
propose innovative solutions through research and analysis.
5. Communicate effectively and professionally through the development and
presentation of a portfolio of work and achievements.
Course Contents:
1. Advanced Security Architecture and Design
2. Threat Modeling and Risk Assessment Techniques
3. Security Program Management and Governance
4. Compliance and Audit Management
5. Incident Response and Forensic Analysis
6. Penetration Testing and Red Teaming
7. Secure Software Development Lifecycle (SDLC)

Page 64 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Cloud Security Architecture and Design


9. Industrial Control Systems (ICS) and SCADA Security
10. Cybersecurity Metrics and Measurement
11. Security Awareness and Training Programs
12. Vendor and Third-Party Risk Management
13. Research Methods and Analysis Techniques
14. Presentation and Communication Skills
15. Professional Development and Career Planning
Recommended Textbook:
"The Cybersecurity Manager's Guide: How to Navigate the Complex Landscape of
Cybersecurity" by Todd Fitzgerald
Recommended Reference Books:
1. "The CISO Handbook: A Practical Guide to Securing Your Company" by Mike
Gentile, Ron Collette, and Tom D. August
2. "Cybersecurity Program Development for Business: The Essential Planning Guide"
by Chris Moschovitis
3. "Cybersecurity Metrics: A Practical Framework for Measuring Security &
Protecting Data" by Krag Brotby and Gary Hinson

Page 65 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS310: Elective: Blockchain and Security


Course Introduction:
Blockchain and Security is an elective course that explores the fundamental concepts,
technologies, and security implications of blockchain and distributed ledger systems. The
course covers the basic principles of cryptography and consensus mechanisms that
underpin blockchain technology, as well as the different types of blockchain networks,
such as public, private, and consortium blockchains. Students will learn about the various
applications of blockchain technology, such as cryptocurrencies, smart contracts, supply
chain management, and identity management, and the security challenges and
considerations associated with each application. The course also covers the security
vulnerabilities and attack vectors in blockchain systems, such as 51% attacks, double-
spending, and smart contract vulnerabilities, and the countermeasures and best practices
for securing blockchain networks. Students will gain hands-on experience in developing
and deploying blockchain applications using platforms such as Ethereum and Hyperledger,
and in conducting security assessments and audits of blockchain systems. The course
emphasizes the importance of a multidisciplinary approach to blockchain security,
including the need for collaboration between technical, legal, and business stakeholders.
By the end of the course, students will have a strong understanding of blockchain security
principles and be prepared to design, implement, and secure blockchain-based systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and technologies of blockchain and
distributed ledger systems, including cryptography, consensus mechanisms, and
network architectures.
2. Analyze the various applications of blockchain technology, such as
cryptocurrencies, smart contracts, supply chain management, and identity
management, and the security challenges and considerations associated with each
application.
3. Identify and mitigate the security vulnerabilities and attack vectors in blockchain
systems, such as 51% attacks, double-spending, and smart contract vulnerabilities.
4. Develop and deploy secure blockchain applications using platforms such as
Ethereum and Hyperledger, following best practices and standards.
5. Conduct security assessments and audits of blockchain systems, using tools and
techniques such as penetration testing, code review, and formal verification.
Course Contents:
1. Introduction to Blockchain and Distributed Ledger Technology
2. Cryptography and Consensus Mechanisms in Blockchain
3. Types of Blockchain Networks: Public, Private, and Consortium
4. Cryptocurrencies and Digital Assets Security
Page 66 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Smart Contracts and Decentralized Applications (DApps) Security


6. Blockchain for Supply Chain Management and Traceability
7. Blockchain for Identity Management and Authentication
8. Security Vulnerabilities and Attack Vectors in Blockchain Systems
9. 51% Attacks and Double-Spending in Blockchain Networks
10. Smart Contract Vulnerabilities and Secure Coding Practices
11. Blockchain Forensics and Investigation Techniques
12. Blockchain Governance and Regulatory Compliance
13. Blockchain Interoperability and Cross-Chain Communication Security
14. Blockchain Security Auditing and Penetration Testing
15. Emerging Trends and Future Challenges in Blockchain Security
Recommended Textbook:
"Blockchain Security: Techniques and Applications" by Guojun Wang, Qin Liu, and Jie
Wu
Recommended Reference Books:
1. "Mastering Blockchain: Unlocking the Power of Cryptocurrencies, Smart
Contracts, and Decentralized Applications" by Imran Bashir
2. "Blockchain and Crypto Currency: Building a High Quality Marketplace for Crypto
Data" by Neel Mehta, Aditya Agashe, and Parth Detroja
3. "Hands-On Cybersecurity with Blockchain: Implement DDoS protection, PKI-
based identity, 2FA, and DNS security using Blockchain" by Rajneesh Gupta

Page 67 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS311: Elective: Artificial Intelligence in Security


Course Introduction:
Artificial Intelligence in Security is an elective course that explores the applications and
implications of artificial intelligence (AI) and machine learning (ML) techniques in
cybersecurity. The course covers the fundamental concepts and algorithms of AI and ML,
such as neural networks, deep learning, and reinforcement learning, and their relevance to
various security domains, such as intrusion detection, malware analysis, and threat
intelligence. Students will learn about the different types of security data and how to
preprocess, analyze, and visualize them using AI and ML tools and libraries. The course
also covers the challenges and considerations in applying AI and ML to security, such as
data quality, model interpretability, and adversarial attacks, and the best practices and
frameworks for developing secure and trustworthy AI systems. Students will gain hands-
on experience in developing and deploying AI-based security solutions using platforms
such as TensorFlow, PyTorch, and Scikit-learn, and in evaluating and testing the
performance and robustness of these solutions. The course emphasizes the importance of
an interdisciplinary approach to AI security, including the need for collaboration between
security, data science, and ethics experts. By the end of the course, students will have a
strong understanding of AI security principles and be prepared to design, implement, and
assess AI-based security systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and algorithms of artificial intelligence (AI)
and machine learning (ML), and their relevance to various security domains, such
as intrusion detection, malware analysis, and threat intelligence.
2. Preprocess, analyze, and visualize security data using AI and ML tools and libraries,
such as TensorFlow, PyTorch, and Scikit-learn.
3. Develop and deploy AI-based security solutions, following best practices and
frameworks for secure and trustworthy AI systems.
4. Evaluate and test the performance and robustness of AI-based security solutions,
considering factors such as data quality, model interpretability, and adversarial
attacks.
5. Apply an interdisciplinary approach to AI security, collaborating with experts from
security, data science, and ethics domains.
Course Contents:
1. Introduction to Artificial Intelligence and Machine Learning
2. AI and ML Algorithms: Neural Networks, Deep Learning, and Reinforcement
Learning
3. Security Data Preprocessing, Analysis, and Visualization
4. AI and ML for Intrusion Detection and Prevention
Page 68 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. AI and ML for Malware Analysis and Classification


6. AI and ML for Threat Intelligence and Hunting
7. AI and ML for Fraud Detection and Prevention
8. AI and ML for Access Control and Authentication
9. AI and ML for Network Security and Anomaly Detection
10. Challenges and Considerations in Applying AI and ML to Security
11. Secure and Trustworthy AI Frameworks and Best Practices
12. Adversarial Attacks and Defenses in AI Security
13. AI Ethics and Fairness in Security Applications
14. AI Security Testing and Evaluation Methodologies
15. Emerging Trends and Future Challenges in AI Security
Recommended Textbook:
"Artificial Intelligence for Cybersecurity: Fundamentals, Techniques, and Applications"
by Sagar Kamble and Nilesh Patel
Recommended Reference Books:
1. "Machine Learning and Security: Protecting Systems with Data and Algorithms" by
Clarence Chio and David Freeman
2. "Hands-On Machine Learning for Cybersecurity: Safeguard your system by making
your machines intelligent using the Python ecosystem" by Soma Halder and Sinan
Ozdemir
3. "Trustworthy AI: Integrating Learning, Optimization and Reasoning" by Hussein
Abbass, Jason Scholz, and Darryn J. Reid

Page 69 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS312: Elective: Secure Software Development


Course Introduction:
Secure Software Development is an elective course that focuses on the principles,
practices, and tools for developing secure software systems. The course covers the
fundamental concepts of software security, such as the CIA triad (confidentiality, integrity,
availability), the OWASP Top 10 vulnerabilities, and the secure software development
lifecycle (SSDLC). Students will learn about the various types of software vulnerabilities,
such as buffer overflows, SQL injection, and cross-site scripting (XSS), and the techniques
and best practices for preventing and mitigating them. The course also covers secure coding
practices and design patterns for different programming languages and platforms, such as
C/C++, Java, Python, and web applications. Students will gain hands-on experience in
using static and dynamic analysis tools, such as code scanners and fuzzers, to identify and
fix vulnerabilities in software code. The course emphasizes the importance of integrating
security throughout the software development lifecycle, from requirements gathering to
testing and deployment. By the end of the course, students will have a strong understanding
of secure software development principles and be prepared to develop and maintain secure
software systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts of software security, such as the CIA triad,
the OWASP Top 10 vulnerabilities, and the secure software development lifecycle
(SSDLC).
2. Identify and mitigate various types of software vulnerabilities, such as buffer
overflows, SQL injection, and cross-site scripting (XSS), using secure coding
practices and design patterns.
3. Apply secure coding practices and design patterns for different programming
languages and platforms, such as C/C++, Java, Python, and web applications.
4. Use static and dynamic analysis tools, such as code scanners and fuzzers, to identify
and fix vulnerabilities in software code.
5. Integrate security throughout the software development lifecycle, from
requirements gathering to testing and deployment.
Course Contents:
1. Introduction to Software Security and the CIA Triad
2. OWASP Top 10 Vulnerabilities and Mitigation Strategies
3. Secure Software Development Lifecycle (SSDLC)
4. Secure Coding Practices and Design Patterns
5. Buffer Overflow Vulnerabilities and Defenses
6. SQL Injection Vulnerabilities and Defenses
Page 70 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

7. Cross-Site Scripting (XSS) Vulnerabilities and Defenses


8. Secure Coding in C/C++
9. Secure Coding in Java
10. Secure Coding in Python
11. Secure Web Application Development
12. Static and Dynamic Analysis Tools for Software Security
13. Fuzz Testing and Vulnerability Scanning
14. Security Testing and Validation Techniques
15. Emerging Trends and Future Challenges in Secure Software Development
Recommended Textbook:
"Secure Coding in C and C++" by Robert C. Seacord
Recommended Reference Books:
1. "The Art of Software Security Assessment: Identifying and Preventing Software
Vulnerabilities" by Mark Dowd, John McDonald, and Justin Schuh
2. "Iron-Clad Java: Building Secure Web Applications" by Jim Manico and August
Detlefsen
3. "Secure Programming with Python: Develop secure, robust, and resilient Python
applications" by Dennis Bakhuis and Sagar Nangare

Page 71 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS401: Incident Response and Disaster Recovery


Course Introduction:
Incident Response and Disaster Recovery is a critical course that focuses on the processes,
procedures, and tools for effectively responding to and recovering from cybersecurity
incidents and disasters. The course covers the fundamental concepts of incident response,
such as incident detection, triage, containment, eradication, and recovery, as well as the
key components of a disaster recovery plan, such as business impact analysis, risk
assessment, and recovery strategies. Students will learn about the various types of
cybersecurity incidents, such as malware infections, data breaches, and denial-of-service
attacks, and the best practices for investigating and mitigating them. The course also covers
the legal and regulatory aspects of incident response, such as breach notification laws and
forensic evidence handling. Students will gain hands-on experience in using incident
response tools and platforms, such as SIEM systems, forensic analysis tools, and threat
intelligence feeds, and in developing and testing disaster recovery plans. The course
emphasizes the importance of a proactive and collaborative approach to incident response
and disaster recovery, involving cross-functional teams from IT, security, legal, and
business units. By the end of the course, students will have a strong understanding of
incident response and disaster recovery principles and be prepared to handle cybersecurity
incidents and disasters in organizations.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts of incident response, such as incident
detection, triage, containment, eradication, and recovery, and the key components
of a disaster recovery plan, such as business impact analysis, risk assessment, and
recovery strategies.
2. Identify and investigate various types of cybersecurity incidents, such as malware
infections, data breaches, and denial-of-service attacks, using best practices and
tools.
3. Develop and test comprehensive disaster recovery plans, considering factors such
as business impact, risk assessment, and recovery time objectives.
4. Use incident response tools and platforms, such as SIEM systems, forensic analysis
tools, and threat intelligence feeds, to detect, investigate, and mitigate cybersecurity
incidents.
5. Apply legal and regulatory requirements for incident response, such as breach
notification laws and forensic evidence handling, in a given jurisdiction.
Course Contents:
1. Introduction to Incident Response and Disaster Recovery
2. Incident Response Process and Lifecycle
3. Incident Detection and Triage Techniques

Page 72 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Incident Containment and Eradication Strategies


5. Incident Recovery and Post-Incident Analysis
6. Malware Incident Response and Analysis
7. Data Breach Incident Response and Notification
8. Denial-of-Service (DoS) Incident Response and Mitigation
9. Incident Response Tools and Platforms
10. Disaster Recovery Planning and Business Impact Analysis
11. Disaster Recovery Strategies and Technologies
12. Disaster Recovery Testing and Maintenance
13. Legal and Regulatory Aspects of Incident Response
14. Forensic Analysis and Evidence Handling
15. Emerging Trends and Future Challenges in Incident Response and Disaster
Recovery
Recommended Textbook:
"Incident Response & Computer Forensics" by Jason T. Luttgens, Matthew Pepe, and
Kevin Mandia
Recommended Reference Books:
1. "The Practice of Network Security Monitoring: Understanding Incident Detection
and Response" by Richard Bejtlich
2. "Disaster Recovery Planning: Preparing for the Unthinkable" by Jon William Toigo
3. "Digital Forensics and Incident Response: Incident response techniques and
procedures to respond to modern cyber threats" by Gerard Johansen

Page 73 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS402: Security Architecture and Design


Course Introduction:
Security Architecture and Design is an advanced course that focuses on the principles,
patterns, and practices for designing and implementing secure systems and architectures.
The course covers the fundamental concepts of security architecture, such as defense-in-
depth, least privilege, and secure by design, as well as the key components of a security
architecture, such as security controls, security domains, and trust boundaries. Students
will learn about the various security architecture frameworks and methodologies, such as
SABSA, TOGAF, and NIST SP 800-160, and how to apply them to different types of
systems and environments, such as cloud computing, IoT, and industrial control systems.
The course also covers the secure design principles and patterns for different layers of the
system stack, such as network security, application security, and data security. Students
will gain hands-on experience in using security architecture tools and techniques, such as
threat modeling, security requirements engineering, and security testing, and in developing
and presenting security architecture artifacts, such as security reference architectures,
security design documents, and security roadmaps. The course emphasizes the importance
of a risk-based and business-aligned approach to security architecture and design,
considering factors such as compliance, cost, and usability. By the end of the course,
students will have a strong understanding of security architecture and design principles and
be prepared to design and implement secure systems and architectures in organizations.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts of security architecture, such as defense-in-
depth, least privilege, and secure by design, and the key components of a security
architecture, such as security controls, security domains, and trust boundaries.
2. Apply security architecture frameworks and methodologies, such as SABSA,
TOGAF, and NIST SP 800-160, to different types of systems and environments,
such as cloud computing, IoT, and industrial control systems.
3. Design and implement secure systems and architectures using secure design
principles and patterns for different layers of the system stack, such as network
security, application security, and data security.
4. Use security architecture tools and techniques, such as threat modeling, security
requirements engineering, and security testing, to identify and mitigate security
risks in systems and architectures.
5. Develop and present security architecture artifacts, such as security reference
architectures, security design documents, and security roadmaps, to stakeholders
and decision-makers.

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

9. Research Project Management and Collaboration


10. Thesis Proposal Presentation and Defense
11. Preparing for Thesis II: Research Execution and Reporting
12. Individual Meetings with Faculty Advisor
13. Peer Review and Feedback Sessions
14. Research Seminars and Workshops
15. Final Research Proposal Submission and Evaluation
Recommended Textbook:
"Research Methods for Cyber Security" by Thomas W. Edgar and David O. Manz
Recommended Reference Books:
1. "The Craft of Research" by Wayne C. Booth, Gregory G. Colomb, Joseph M.
Williams, Joseph Bizup, and William T. FitzGerald
2. "Writing Science: How to Write Papers That Get Cited and Proposals That Get
Funded" by Joshua Schimel
3. "Surviving Your Dissertation: A Comprehensive Guide to Content and Process" by
Kjell Erik Rudestam and Rae R. Newton

Page 77 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS404: Elective: Advanced Cryptography


Course Introduction:
Advanced Cryptography is an elective course that provides students with a deep
understanding of the mathematical foundations, algorithms, and protocols used in modern
cryptography. Building upon the introductory cryptography course, this course covers
advanced topics such as public-key cryptography, elliptic curve cryptography,
homomorphic encryption, and quantum cryptography. Students will learn about the
security definitions, assumptions, and proofs used in cryptographic schemes, as well as the
attacks and vulnerabilities that can compromise their security. The course also covers the
applications of cryptography in various domains, such as secure communication, digital
signatures, key management, and blockchain. Students will gain hands-on experience in
implementing and analyzing cryptographic algorithms and protocols using programming
languages such as Python and C++, and in using cryptographic libraries and tools such as
OpenSSL and GnuPG. The course emphasizes the importance of a rigorous and formal
approach to cryptography, as well as the need for ongoing research and development to
address the evolving threats and challenges in the field. By the end of the course, students
will have a strong foundation in advanced cryptography and be prepared to design,
implement, and analyze secure cryptographic systems.
Course Learning Outcomes (CLOs):
1. Understand the mathematical foundations, algorithms, and protocols used in
modern cryptography, including public-key cryptography, elliptic curve
cryptography, homomorphic encryption, and quantum cryptography.
2. Analyze the security definitions, assumptions, and proofs used in cryptographic
schemes, as well as the attacks and vulnerabilities that can compromise their
security.
3. Implement and analyze cryptographic algorithms and protocols using programming
languages such as Python and C++, and using cryptographic libraries and tools such
as OpenSSL and GnuPG.
4. Apply cryptography in various domains, such as secure communication, digital
signatures, key management, and blockchain, and evaluate the security and
performance trade-offs of different cryptographic solutions.
5. Evaluate the ongoing research and development in cryptography and assess the
potential impact of emerging technologies and threats on the security of
cryptographic systems.

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

BCNS405: Elective: Security Compliance and Auditing


Course Introduction:
Security Compliance and Auditing is an elective course that focuses on the principles,
frameworks, and techniques for ensuring that an organization's security controls and
processes meet the relevant legal, regulatory, and industry requirements. The course covers
the key concepts and terminology of security compliance and auditing, such as security
policies, standards, procedures, and guidelines, as well as the roles and responsibilities of
security compliance and audit professionals. Students will learn about the various security
compliance frameworks and standards, such as ISO 27001, NIST SP 800-53, PCI DSS,
and HIPAA, and how to apply them to different types of organizations and systems. The
course also covers the different types of security audits, such as internal audits, external
audits, and self-assessments, and the tools and techniques used to plan, conduct, and report
on these audits. Students will gain hands-on experience in developing and implementing
security compliance programs, conducting security audits, and communicating the results
to stakeholders. The course emphasizes the importance of a risk-based and continuous
approach to security compliance and auditing, as well as the need for effective
collaboration and communication with other functions, such as IT, legal, and finance. By
the end of the course, students will have a strong understanding of security compliance and
auditing principles and be prepared to design, implement, and assess security compliance
programs in organizations.
Course Learning Outcomes (CLOs):
1. Understand the key concepts and terminology of security compliance and auditing,
such as security policies, standards, procedures, and guidelines, as well as the roles
and responsibilities of security compliance and audit professionals.
2. Apply security compliance frameworks and standards, such as ISO 27001, NIST SP
800-53, PCI DSS, and HIPAA, to different types of organizations and systems, and
develop and implement security compliance programs based on these frameworks.
3. Plan, conduct, and report on different types of security audits, such as internal
audits, external audits, and self-assessments, using appropriate tools and techniques.
4. Communicate the results of security compliance and audit activities to stakeholders,
including management, auditors, and regulators, and recommend corrective actions
and improvements based on the findings.
5. Evaluate the effectiveness and efficiency of security compliance and audit
programs, and continuously improve them based on changes in the risk landscape,
regulatory environment, and organizational context.

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

BCNS406: Elective: Cybersecurity Management


Course Introduction:
Cybersecurity Management is an elective course that focuses on the principles, strategies,
and practices for effectively managing cybersecurity programs and operations in
organizations. The course covers the key concepts and frameworks of cybersecurity
management, such as risk management, governance, compliance, and incident response, as
well as the roles and responsibilities of cybersecurity managers and leaders. Students will
learn about the various cybersecurity management standards and guidelines, such as NIST
Cybersecurity Framework, ISO 27001, and COBIT, and how to apply them to different
types of organizations and industries. The course also covers the different aspects of
cybersecurity management, such as policy development, resource allocation, vendor
management, and performance measurement, and the tools and techniques used to support
these activities. Students will gain hands-on experience in developing and implementing
cybersecurity strategies and plans, communicating with stakeholders, and leading
cybersecurity teams and initiatives. The course emphasizes the importance of a holistic and
business-aligned approach to cybersecurity management, as well as the need for continuous
improvement and adaptation to the evolving threat landscape. By the end of the course,
students will have a strong understanding of cybersecurity management principles and be
prepared to lead and manage cybersecurity programs in organizations.
Course Learning Outcomes (CLOs):
1. Understand the key concepts and frameworks of cybersecurity management, such
as risk management, governance, compliance, and incident response, as well as the
roles and responsibilities of cybersecurity managers and leaders.
2. Apply cybersecurity management standards and guidelines, such as NIST
Cybersecurity Framework, ISO 27001, and COBIT, to different types of
organizations and industries, and develop and implement cybersecurity strategies
and plans based on these standards.
3. Manage the different aspects of cybersecurity management, such as policy
development, resource allocation, vendor management, and performance
measurement, using appropriate tools and techniques.
4. Communicate effectively with stakeholders, including executives, business units,
and technical teams, and influence and lead cybersecurity initiatives and programs.
5. Evaluate the effectiveness and efficiency of cybersecurity management programs,
and continuously improve them based on changes in the threat landscape, business
environment, and organizational priorities.

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

6. Thesis Writing and Formatting


7. Thesis Editing and Proofreading
8. Preparing for Oral Defense
9. Oral Defense Presentation and Q&A
10. Revisions and Final Submission of Thesis
11. Individual Meetings with Faculty Advisor
12. Peer Review and Feedback Sessions
13. Research Seminars and Workshops
14. Career Development and Networking Opportunities
15. Reflection and Evaluation of the Thesis Experience
Recommended Textbook:
"Research Methods for Cyber Security" by Thomas W. Edgar and David O. Manz
Recommended Reference Books:
1. "The Dissertation Warrior: The Ultimate Guide to Being the Kind of Person Who
Finishes a Doctoral Dissertation or Thesis" by Guy E. White
2. "Surviving Your Dissertation: A Comprehensive Guide to Content and Process" by
Kjell Erik Rudestam and Rae R. Newton
3. "Completing Your Qualitative Dissertation: A Road Map From Beginning to End"
by Linda Dale Bloomberg and Marie Volpe

Page 85 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS408: Elective: Privacy and Data Protection Laws


Course Introduction:
Privacy and Data Protection Laws is an elective course that provides students with a
comprehensive understanding of the legal and regulatory frameworks governing the
collection, use, and protection of personal data. The course covers the key concepts and
principles of privacy and data protection, such as data subject rights, data controller
obligations, data processing requirements, and cross-border data transfers, as well as the
historical and philosophical foundations of privacy as a fundamental human right. Students
will learn about the major privacy and data protection laws and regulations, such as the
European Union's General Data Protection Regulation (GDPR), the California Consumer
Privacy Act (CCPA), and the Health Insurance Portability and Accountability Act
(HIPAA), and how to apply them to different types of organizations and data processing
activities. The course also covers the different mechanisms for enforcing privacy and data
protection laws, such as regulatory investigations, civil litigation, and international
cooperation, and the penalties and remedies for non-compliance. Students will gain hands-
on experience in conducting privacy impact assessments, developing privacy policies and
notices, and responding to data subject requests and data breaches. The course emphasizes
the importance of a proactive and risk-based approach to privacy and data protection, as
well as the need for ongoing monitoring and adaptation to the evolving legal and
technological landscape. By the end of the course, students will have a strong
understanding of privacy and data protection laws and be prepared to advise organizations
on compliance and best practices.
Course Learning Outcomes (CLOs):
1. Understand the key concepts and principles of privacy and data protection, such as
data subject rights, data controller obligations, data processing requirements, and
cross-border data transfers, as well as the historical and philosophical foundations
of privacy as a fundamental human right.
2. Analyze and apply the major privacy and data protection laws and regulations, such
as the European Union's General Data Protection Regulation (GDPR), the
California Consumer Privacy Act (CCPA), and the Health Insurance Portability and
Accountability Act (HIPAA), to different types of organizations and data processing
activities.
3. Conduct privacy impact assessments, develop privacy policies and notices, and
respond to data subject requests and data breaches, using appropriate tools and
techniques.
4. Evaluate the different mechanisms for enforcing privacy and data protection laws,
such as regulatory investigations, civil litigation, and international cooperation, and
the penalties and remedies for non-compliance.

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

BCNS409: Elective: Cyber Warfare and Defense


Course Introduction:
Cyber Warfare and Defense is an elective course that provides students with a
comprehensive understanding of the concepts, strategies, and techniques of cyber warfare
and the measures to defend against them. The course covers the historical and geopolitical
context of cyber warfare, the different types of cyber weapons and tactics, such as malware,
denial-of-service attacks, and social engineering, and the potential impacts and
consequences of cyber attacks on individuals, organizations, and nations. Students will
learn about the various actors and motivations behind cyber warfare, such as nation-states,
terrorist groups, and hacktivists, and the legal and ethical issues surrounding the use of
cyber weapons. The course also covers the different approaches and frameworks for cyber
defense, such as the NIST Cybersecurity Framework, the MITRE ATT&CK Framework,
and the Cyber Kill Chain, and the tools and techniques used to detect, prevent, and respond
to cyber attacks. Students will gain hands-on experience in simulating cyber attacks and
defenses in a controlled environment, and in developing and implementing cyber defense
strategies and plans. The course emphasizes the importance of a proactive and collaborative
approach to cyber defense, as well as the need for ongoing intelligence gathering and
information sharing to stay ahead of the evolving threat landscape. By the end of the course,
students will have a strong understanding of cyber warfare and defense principles and be
prepared to contribute to the protection of critical infrastructure and national security.
Course Learning Outcomes (CLOs):
1. Understand the historical and geopolitical context of cyber warfare, the different
types of cyber weapons and tactics, and the potential impacts and consequences of
cyber attacks on individuals, organizations, and nations.
2. Analyze the various actors and motivations behind cyber warfare, such as nation-
states, terrorist groups, and hacktivists, and the legal and ethical issues surrounding
the use of cyber weapons.
3. Apply the different approaches and frameworks for cyber defense, such as the NIST
Cybersecurity Framework, the MITRE ATT&CK Framework, and the Cyber Kill
Chain, and the tools and techniques used to detect, prevent, and respond to cyber
attacks.
4. Simulate cyber attacks and defenses in a controlled environment, and develop and
implement cyber defense strategies and plans.
5. Evaluate the importance of a proactive and collaborative approach to cyber defense,
and the need for ongoing intelligence gathering and information sharing to stay
ahead of the evolving threat landscape.

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

BCNS410: Elective: Secure Networking Technologies


Course Introduction:
Secure Networking Technologies is an elective course that provides students with a
comprehensive understanding of the principles, protocols, and tools used to secure modern
computer networks. The course covers the different types of network architectures and
topologies, such as local area networks (LANs), wide area networks (WANs), and virtual
private networks (VPNs), and the security challenges and considerations associated with
each type. Students will learn about the various network security technologies and
solutions, such as firewalls, intrusion detection and prevention systems (IDPS), and
security information and event management (SIEM) systems, and how to configure and
manage them effectively. The course also covers the secure implementation of network
protocols and services, such as DNS, DHCP, and VoIP, and the best practices for hardening
network devices and systems. Students will gain hands-on experience in designing and
implementing secure network architectures, conducting network security assessments and
penetration testing, and troubleshooting and responding to network security incidents. The
course emphasizes the importance of a defense-in-depth approach to network security, as
well as the need for ongoing monitoring and optimization of network security controls. By
the end of the course, students will have a strong understanding of secure networking
technologies and be prepared to design, implement, and maintain secure and resilient
networks.
Course Learning Outcomes (CLOs):
1. Understand the different types of network architectures and topologies, such as local
area networks (LANs), wide area networks (WANs), and virtual private networks
(VPNs), and the security challenges and considerations associated with each type.
2. Apply the various network security technologies and solutions, such as firewalls,
intrusion detection and prevention systems (IDPS), and security information and
event management (SIEM) systems, and configure and manage them effectively.
3. Implement secure network protocols and services, such as DNS, DHCP, and VoIP,
and apply best practices for hardening network devices and systems.
4. Design and implement secure network architectures, conduct network security
assessments and penetration testing, and troubleshoot and respond to network
security incidents.
5. Evaluate the importance of a defense-in-depth approach to network security, and
the need for ongoing monitoring and optimization of network security controls.
Course Contents:
1. Introduction to Secure Networking Technologies
2. Network Architectures and Topologies
3. Network Security Threats and Vulnerabilities

Page 90 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Firewalls and Network Access Control


5. Intrusion Detection and Prevention Systems (IDPS)
6. Security Information and Event Management (SIEM) Systems
7. Virtual Private Networks (VPNs) and Secure Remote Access
8. Wireless Network Security
9. Secure DNS and DHCP Implementation
10. Secure VoIP and Unified Communications
11. Network Device Hardening and Configuration Management
12. Network Segmentation and Zoning
13. Network Security Assessment and Penetration Testing
14. Network Security Incident Response and Forensics
15. Emerging Trends and Future Challenges in Secure Networking Technologies
Recommended Textbook:
"Network Security Essentials: Applications and Standards" by William Stallings
Recommended Reference Books:
1. "Practical Network Security" by Nikhil Sharma
2. "Applied Network Security Monitoring: Collection, Detection, and Analysis" by
Chris Sanders and Jason Smith
3. "Network Security Assessment: Know Your Network" by Chris McNab

Page 91 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS411: Elective: Cybersecurity in Healthcare


Course Introduction:
Cybersecurity in Healthcare is an elective course that provides students with a
comprehensive understanding of the unique security challenges and requirements of the
healthcare industry. The course covers the different types of healthcare data and systems,
such as electronic health records (EHRs), medical devices, and telemedicine platforms, and
the regulatory and compliance frameworks governing their protection, such as HIPAA,
HITECH, and GDPR. Students will learn about the various threats and vulnerabilities
facing healthcare organizations, such as ransomware attacks, insider threats, and medical
device hacking, and the best practices and technologies for mitigating these risks. The
course also covers the secure design and implementation of healthcare systems and
applications, including the use of encryption, access control, and data loss prevention
(DLP) solutions. Students will gain hands-on experience in conducting risk assessments
and security audits of healthcare environments, developing and implementing security
policies and procedures, and responding to security incidents and data breaches. The course
emphasizes the importance of a patient-centric approach to healthcare security, as well as
the need for collaboration and communication among healthcare providers, IT staff, and
security professionals. By the end of the course, students will have a strong understanding
of cybersecurity in healthcare and be prepared to contribute to the protection of patient data
and the delivery of safe and effective care.
Course Learning Outcomes (CLOs):
1. Understand the different types of healthcare data and systems, such as electronic
health records (EHRs), medical devices, and telemedicine platforms, and the
regulatory and compliance frameworks governing their protection, such as HIPAA,
HITECH, and GDPR.
2. Identify and analyze the various threats and vulnerabilities facing healthcare
organizations, such as ransomware attacks, insider threats, and medical device
hacking, and apply best practices and technologies for mitigating these risks.
3. Design and implement secure healthcare systems and applications, including the use
of encryption, access control, and data loss prevention (DLP) solutions.
4. Conduct risk assessments and security audits of healthcare environments, develop
and implement security policies and procedures, and respond to security incidents
and data breaches.
5. Evaluate the importance of a patient-centric approach to healthcare security, and the
need for collaboration and communication among healthcare providers, IT staff, and
security professionals.

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

BCNS412: Comprehensive Exams


Course Introduction:
Comprehensive Exams is a course that assesses the student's mastery of the knowledge and
skills acquired throughout the Computer & Network Security program. The course consists
of a series of written and practical exams that cover the core and elective courses of the
program, as well as the student's ability to apply this knowledge to real-world scenarios
and problems. The written exams may include multiple-choice, short answer, and essay
questions, and test the student's understanding of the fundamental concepts, theories, and
methodologies of computer and network security. The practical exams may involve hands-
on tasks, such as configuring security controls, conducting vulnerability assessments, and
responding to security incidents, and evaluate the student's technical skills and problem-
solving abilities. The course also includes a capstone project, where the student selects a
specific topic or challenge in computer and network security and conducts an in-depth
research or practical work to address it. The capstone project allows the student to
demonstrate their creativity, critical thinking, and communication skills, as well as their
ability to integrate and apply the knowledge and skills from different areas of the program.
By the end of the course, the student will have demonstrated their readiness to pursue
advanced studies or professional careers in computer and network security.
Course Learning Outcomes (CLOs):
1. Demonstrate mastery of the fundamental concepts, theories, and methodologies of
computer and network security, as covered in the core and elective courses of the
program.
2. Apply the knowledge and skills acquired throughout the program to real-world
scenarios and problems, and develop effective solutions and strategies.
3. Exhibit proficiency in the technical skills and tools used in computer and network
security, such as configuring security controls, conducting vulnerability
assessments, and responding to security incidents.
4. Conduct an in-depth research or practical work on a specific topic or challenge in
computer and network security, and communicate the findings and insights
effectively.
5. Integrate and synthesize the knowledge and skills from different areas of the
program, and demonstrate creativity, critical thinking, and problem-solving
abilities.
Course Contents:
1. Review of Core Courses in Computer & Network Security
2. Review of Elective Courses in Computer & Network Security
3. Written Exam: Fundamentals of Computer & Network Security
4. Written Exam: Advanced Topics in Computer & Network Security
Page 94 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Practical Exam: Configuring Security Controls


6. Practical Exam: Conducting Vulnerability Assessments
7. Practical Exam: Responding to Security Incidents
8. Capstone Project: Topic Selection and Proposal
9. Capstone Project: Research and Analysis
10. Capstone Project: Design and Implementation
11. Capstone Project: Testing and Evaluation
12. Capstone Project: Documentation and Presentation
13. Comprehensive Exam: Written Component
14. Comprehensive Exam: Practical Component
15. Reflection and Evaluation of the Program Experience
Recommended Textbook:
"Computer & Network Security Essentials" by Kevin Daimi
Recommended Reference Books:
1. "CISSP Official (ISC)2 Practice Tests" by Mike Chapple and David Seidl
2. "CompTIA Security+ Practice Tests: Exam SY0-501" by S. Russell Christy and
Chuck Easttom
3. "Hands-On Cybersecurity for Architects: Plan and design robust security
architectures" by Neil Rerup and Milad Aslaner

Page 95 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS501: Thesis III


Course Introduction:
Thesis III is the third part of the four-semester capstone project that provides students with
the opportunity to conduct an in-depth research or practical work on a specific topic or
challenge in computer and network security. Building upon the research proposal and
execution from Thesis I and II, this course focuses on the analysis and interpretation of the
results, as well as the development of the implications and recommendations for future
research and practice. Students will work closely with their faculty advisor to apply
advanced statistical and qualitative methods to the data collected, and to synthesize the
findings into meaningful insights and conclusions. The course also emphasizes the
importance of effective communication and dissemination of the research, through the
preparation of a scholarly article, conference presentation, or technical report. Students will
receive feedback and guidance from their peers and experts in the field, and refine their
work based on this input. By the end of the course, students will have a nearly complete
draft of their thesis, demonstrating their ability to conduct rigorous and impactful research
in computer and network security, and contributing to the advancement of the field.
Course Learning Outcomes (CLOs):
1. Apply advanced statistical and qualitative methods to analyze and interpret the data
collected in the research project, and synthesize the findings into meaningful
insights and conclusions.
2. Develop the implications and recommendations of the research for future research
and practice, based on a critical evaluation of the strengths, limitations, and
significance of the work.
3. Prepare a scholarly article, conference presentation, or technical report that
effectively communicates and disseminates the research to the relevant audiences,
following the appropriate format and style guidelines.
4. Incorporate feedback and guidance from peers, experts, and the faculty advisor, and
refine the research based on this input, demonstrating openness to constructive
criticism and continuous improvement.
5. Produce a nearly complete draft of the thesis that demonstrates the ability to conduct
rigorous and impactful research in computer and network security, and contributes
to the advancement of the field.
Course Contents:
1. Review of Research Execution and Data Collection from Thesis II
2. Advanced Statistical Methods for Data Analysis
3. Qualitative Methods for Data Analysis and Interpretation
4. Synthesis of Findings and Development of Insights and Conclusions

Page 96 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Implications and Recommendations for Future Research and Practice


6. Scholarly Article Preparation and Submission
7. Conference Presentation Preparation and Delivery
8. Technical Report Writing and Formatting
9. Peer Review and Feedback Sessions
10. Expert Review and Guidance Sessions
11. Thesis Draft Refinement and Revision
12. Individual Meetings with Faculty Advisor
13. Research Seminars and Workshops
14. Career Development and Networking Opportunities
15. Reflection and Evaluation of the Thesis Progress
Recommended Textbook:
"Research Methods for Cyber Security" by Thomas W. Edgar and David O. Manz
Recommended Reference Books:
1. "Designing and Managing Your Research Project: Core Skills for Social and Health
Researchers" by David R. Thomas and Ian D. Hodges
2. "Presenting Your Research: Conferences, Symposiums, Poster Presentations and
Beyond" by Lucinda Becker
3. "Writing for Computer Science" by Justin Zobel

Page 97 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS502: Capstone Project I


Course Introduction:
The Capstone Project I course provides students with the opportunity to apply the
knowledge and skills acquired throughout their cybersecurity program to a real-world
project. Students will work in teams to identify a cybersecurity problem, propose a
solution, and develop a project plan. The course emphasizes project management,
teamwork, and communication skills. Students will engage in research, analysis, and
design activities to create a comprehensive project proposal. The project will span two
semesters, with Capstone Project I focusing on the planning and design phases. Students
will receive guidance and feedback from faculty mentors and industry experts. By the end
of the course, teams will have a well-defined project plan and be prepared to implement
their solution in Capstone Project II. This course allows students to synthesize their
learning, demonstrate their cybersecurity expertise, and develop a tangible product that
showcases their skills to potential employers.
Course Learning Outcomes (CLOs):
1. Apply project management principles to plan and execute a cybersecurity project.
2. Conduct research and analysis to identify and define a cybersecurity problem.
3. Develop a comprehensive project proposal that includes a problem statement,
objectives, scope, and deliverables.
4. Design a solution to address the identified cybersecurity problem, considering
technical feasibility, security best practices, and ethical implications.
5. Demonstrate effective teamwork, communication, and presentation skills.
Course Contents:
1. Introduction to capstone projects
2. Project management fundamentals
3. Identifying cybersecurity problems
4. Conducting research and analysis
5. Defining project scope and objectives
6. Developing a project plan
7. Risk assessment and management
8. Designing cybersecurity solutions
9. Ethical considerations in cybersecurity projects
10. Teamwork and collaboration
11. Effective communication and presentation skills

Page 98 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

12. Preparing a project proposal


13. Receiving and incorporating feedback
14. Iterative design and refinement
15. Preparing for project implementation
Recommended Textbook:
Cybersecurity: The Beginner's Guide by Erdal Ozkaya
Recommended Reference Books:
1. The Cybersecurity Playbook: How Every Leader and Employee Can Contribute to
a Culture of Security by Allison Cerra
2. Project Management for the Unofficial Project Manager by Kory Kogon, Suzette
Blakemore, James Wood
3. The Cyber Risk Handbook: Creating and Measuring Effective Cybersecurity
Capabilities by Domenic Antonucci

Page 99 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS503: Elective: Advanced Penetration Testing


Course Introduction:
The Advanced Penetration Testing elective course builds upon the foundational knowledge
and skills acquired in previous cybersecurity courses, focusing on advanced techniques and
tools used in penetration testing. Students will learn how to plan and execute
comprehensive penetration tests, simulating real-world cyber attacks to identify
vulnerabilities in systems, networks, and applications. The course covers advanced topics
such as advanced exploitation techniques, post-exploitation, privilege escalation, and
lateral movement. Students will gain hands-on experience with industry-standard tools and
frameworks, such as Metasploit, Burp Suite, and Nmap. Emphasis will be placed on ethical
considerations, legal implications, and the importance of proper documentation and
reporting. Through practical labs and projects, students will develop the skills necessary to
perform advanced penetration testing and provide recommendations for remediation. This
course prepares students for roles as penetration testers, ethical hackers, and cybersecurity
consultants, equipping them with the expertise to assess and enhance the security posture
of organizations.
Course Learning Outcomes (CLOs):
1. Plan and execute advanced penetration testing engagements, considering scope,
objectives, and legal implications.
2. Employ advanced reconnaissance techniques to gather information about target
systems and networks.
3. Identify and exploit complex vulnerabilities in systems, networks, and applications
using advanced tools and techniques.
4. Perform post-exploitation activities, including privilege escalation, lateral
movement, and data exfiltration.
5. Document and report findings, providing recommendations for remediation and risk
mitigation.
Course Contents:
1. Introduction to advanced penetration testing
2. Ethical hacking and legal considerations
3. Advanced reconnaissance techniques
4. Advanced scanning and enumeration
5. Advanced vulnerability assessment
6. Advanced exploitation techniques
7. Post-exploitation and privilege escalation
8. Lateral movement and pivoting

Page 100 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Advanced social engineering


10. Advanced web application testing
11. Advanced network testing
12. Advanced wireless testing
13. Advanced mobile application testing
14. Penetration testing frameworks and methodologies
15. Reporting and documentation
Recommended Textbook:
Advanced Penetration Testing: Hacking the World's Most Secure Networks by Wil
Allsopp
Recommended Reference Books:
1. The Hacker Playbook 3: Practical Guide To Penetration Testing by Peter Kim
2. Metasploit: The Penetration Tester's Guide by David Kennedy, Jim O'Gorman,
Devon Kearns, Mati Aharoni
3. The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws
by Dafydd Stuttard, Marcus Pinto

Page 101 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS504: Elective: Cybersecurity Risk Management


Course Introduction:
The Cybersecurity Risk Management elective course focuses on the principles,
frameworks, and best practices for managing cybersecurity risks in organizations. Students
will learn how to identify, assess, and mitigate risks associated with information systems,
networks, and data assets. The course covers various aspects of cybersecurity risk
management, including risk assessment methodologies, risk treatment strategies, and the
development of risk management plans. Students will explore the relationship between
cybersecurity risk management and business objectives, emphasizing the importance of
aligning security efforts with organizational goals. The course also covers legal and
regulatory requirements, such as data protection regulations and industry standards, and
their impact on risk management practices. Through case studies, hands-on exercises, and
projects, students will gain practical experience in applying risk management techniques
to real-world scenarios. This course prepares students for roles as cybersecurity risk
managers, consultants, and analysts, equipping them with the skills to help organizations
make informed decisions and prioritize security investments based on risk.
Course Learning Outcomes (CLOs):
1. Identify and assess cybersecurity risks using various risk assessment methodologies
and frameworks.
2. Develop and implement risk treatment strategies, including risk avoidance,
reduction, transfer, and acceptance.
3. Create comprehensive risk management plans that align with business objectives
and legal/regulatory requirements.
4. Communicate cybersecurity risks and risk management strategies effectively to
stakeholders at various levels of the organization.
5. Continuously monitor and review the effectiveness of risk management practices,
adapting to changes in the threat landscape and organizational context.
Course Contents:
1. Introduction to cybersecurity risk management
2. Risk management frameworks and standards (e.g., NIST, ISO)
3. Risk assessment methodologies (e.g., qualitative, quantitative, hybrid)
4. Asset identification and classification
5. Threat modeling and analysis
6. Vulnerability assessment and management
7. Risk treatment strategies
8. Risk management planning

Page 102 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Legal and regulatory requirements for risk management


10. Aligning risk management with business objectives
11. Risk communication and reporting
12. Continuous monitoring and improvement of risk management practices
13. Incident response and business continuity planning
14. Risk management tools and technologies
15. Case studies and practical exercises
Recommended Textbook:
Cybersecurity Risk Management: Mastering the Fundamentals Using the NIST
Cybersecurity Framework by Cynthia Brumfield
Recommended Reference Books:
1. How to Measure Anything in Cybersecurity Risk by Douglas W. Hubbard, Richard
Seiersen
2. The Cyber Risk Handbook: Creating and Measuring Effective Cybersecurity
Capabilities by Domenic Antonucci
3. Implementing Cybersecurity: A Guide to the National Institute of Standards and
Technology Risk Management Framework by Anne Kohnke, Ken Sigler, Dan
Shoemaker

Page 103 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS505: Elective: Security in Emerging Technologies


Course Introduction:
The Security in Emerging Technologies elective course explores the security implications
and challenges associated with emerging technologies such as the Internet of Things (IoT),
artificial intelligence (AI), blockchain, and quantum computing. As these technologies
become increasingly prevalent in various domains, it is crucial for cybersecurity
professionals to understand their unique security risks and develop strategies to mitigate
them. This course provides students with a comprehensive understanding of the security
landscape in the context of emerging technologies. Students will learn about the potential
vulnerabilities, attack vectors, and security best practices specific to each technology. The
course covers topics such as IoT device security, AI security and privacy, blockchain
security, and post-quantum cryptography. Through hands-on labs, case studies, and
projects, students will gain practical experience in assessing and securing systems that
incorporate emerging technologies. This course prepares students to tackle the security
challenges posed by the rapid advancement of technology and equips them with the skills
to design and implement secure solutions in cutting-edge domains.
Course Learning Outcomes (CLOs):
1. Understand the security implications and challenges associated with emerging
technologies such as IoT, AI, blockchain, and quantum computing.
2. Identify and assess the unique security risks and vulnerabilities specific to each
emerging technology.
3. Apply security best practices and techniques to mitigate risks in systems that
incorporate emerging technologies.
4. Design and implement secure architectures and solutions for IoT, AI, blockchain,
and quantum computing environments.
5. Stay updated with the latest trends, research, and advancements in the field of
emerging technology security.
Course Contents:
1. Introduction to security in emerging technologies
2. IoT security fundamentals
3. IoT device security and authentication
4. IoT network security and protocols
5. AI security and privacy
6. Adversarial machine learning and AI security risks
7. Secure AI development and deployment
8. Blockchain security fundamentals

Page 104 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Blockchain consensus mechanisms and security


10. Smart contract security and auditing
11. Quantum computing and cryptography
12. Post-quantum cryptography and security
13. Secure quantum communication and key distribution
14. Emerging technology security standards and frameworks
15. Case studies and practical exercises
Recommended Textbook:
Security in the Internet of Things: Principles and Practice by Shancang Li, Li Da Xu
Recommended Reference Books:
1. Artificial Intelligence Security: Principles and Practice by Keng Siau, Weiyu Wang
2. Blockchain Security: Foundations, Principles, and Applications by Wenbo Wang,
Dinh Thai Hoang, Peizhao Hu
3. Post-Quantum Cryptography: Fundamentals, Schemes, and Applications by Jintai
Ding, Rainer Steinwandt

Page 105 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS506: Elective: Cybersecurity Policy and Governance


Course Introduction:
The Cybersecurity Policy and Governance elective course focuses on the development,
implementation, and management of cybersecurity policies and governance frameworks
within organizations. As cybersecurity becomes a critical concern for businesses and
governments alike, it is essential for professionals to understand the legal, ethical, and
strategic aspects of cybersecurity policy and governance. This course provides students
with a comprehensive understanding of the principles, best practices, and challenges
associated with creating and enforcing effective cybersecurity policies. Students will learn
about the legal and regulatory landscape, including data protection laws, industry
standards, and compliance requirements. The course covers topics such as policy
development processes, governance structures, risk management, incident response, and
user awareness and training. Through case studies, discussions, and practical exercises,
students will gain hands-on experience in developing and evaluating cybersecurity policies
and governance frameworks. This course prepares students for roles as cybersecurity
managers, consultants, and policymakers, equipping them with the skills to navigate the
complex interplay between technology, policy, and organizational objectives.
Course Learning Outcomes (CLOs):
1. Understand the legal, ethical, and strategic aspects of cybersecurity policy and
governance.
2. Develop and implement effective cybersecurity policies aligned with organizational
objectives and regulatory requirements.
3. Establish and maintain governance structures and processes to oversee and enforce
cybersecurity policies.
4. Integrate cybersecurity policy and governance with risk management, incident
response, and user awareness programs.
5. Evaluate and continuously improve cybersecurity policies and governance
frameworks based on evolving threats, technologies, and business needs.
Course Contents:
1. Introduction to cybersecurity policy and governance
2. Legal and regulatory landscape for cybersecurity
3. Data protection laws and regulations (e.g., GDPR, CCPA)
4. Industry standards and frameworks (e.g., NIST, ISO, COBIT)
5. Cybersecurity policy development process
6. Governance structures and roles (e.g., CISO, board of directors)
7. Aligning cybersecurity policy with business objectives

Page 106 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Risk management and policy


9. Incident response and policy
10. User awareness, training, and policy enforcement
11. Compliance and audit of cybersecurity policies
12. Vendor management and third-party risk
13. International cybersecurity policy and cooperation
14. Emerging trends and challenges in cybersecurity policy
15. Case studies and practical exercises
Recommended Textbook:
Cybersecurity Law, Standards and Regulations by Tari Schreider
Recommended Reference Books:
1. The Cybersecurity Playbook: How Every Leader and Employee Can Contribute to
a Culture of Security by Allison Cerra
2. Cybersecurity Program Development for Business: The Essential Planning Guide
by Chris Moschovitis
3. The CISO Handbook: A Practical Guide to Securing Your Company by Mike
Gentile, Ron Collette, Tom D. August

Page 107 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS508: Capstone Project II


Course Introduction:
The Capstone Project II course is the culmination of the two-semester capstone experience,
where students implement and deliver the cybersecurity project they planned and designed
in Capstone Project I. Building upon the project proposal and plan developed in the
previous course, students will execute their project, applying the knowledge, skills, and
tools acquired throughout their cybersecurity program. This course emphasizes the
practical application of cybersecurity principles, problem-solving, and project
management. Students will work in teams to develop, test, and refine their cybersecurity
solution, addressing challenges and incorporating feedback along the way. The course
includes regular progress reviews, where teams present their work and receive guidance
from faculty mentors and industry experts. At the end of the course, teams will deliver a
fully functional cybersecurity product or service, along with comprehensive documentation
and a final presentation. The Capstone Project II course provides students with a valuable
opportunity to showcase their cybersecurity expertise, teamwork, and communication
skills to potential employers and the broader cybersecurity community.
Course Learning Outcomes (CLOs):
1. Implement and deliver a functional cybersecurity solution based on the project plan
developed in Capstone Project I.
2. Apply technical skills, cybersecurity principles, and best practices to develop, test,
and refine the project solution.
3. Demonstrate effective project management, including task allocation, progress
tracking, and risk mitigation.
4. Collaborate effectively with team members, faculty mentors, and industry experts
to achieve project goals and incorporate feedback.
5. Communicate project outcomes, challenges, and lessons learned through
comprehensive documentation and engaging presentations.
Course Contents:
1. Review of project plan and objectives
2. Agile project management methodologies
3. Development and implementation of cybersecurity solutions
4. Testing and quality assurance
5. Iterative refinement and improvement
6. Progress reviews and feedback incorporation
7. Risk management and mitigation
8. Documentation and user guides

Page 108 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Preparing for final delivery and presentation


10. Effective presentation skills
11. Demonstrating project outcomes and impact
12. Lessons learned and future enhancements
13. Professional and ethical considerations
14. Showcasing projects to potential employers and the cybersecurity community
15. Celebrating project completion and team achievements
Recommended Textbook:
Cybersecurity Projects for Students and Professionals: A Practical Approach by Santosh
Bhaskar Shinde
Recommended Reference Books:
1. Agile Project Management for Dummies by Mark C. Layton, Steven J. Ostermiller
2. Effective Cybersecurity: A Guide to Using Best Practices and Standards by William
Stallings
3. Cybersecurity Essentials by Charles J. Brooks, Christopher Grow, Philip Craig,
Donald Short

Page 109 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS509: Elective: Advanced Digital Forensics


Course Introduction:
The Advanced Digital Forensics elective course builds upon the foundational knowledge
and skills acquired in previous digital forensics courses, focusing on advanced techniques,
tools, and methodologies used in the field. Students will learn how to conduct in-depth
investigations of complex digital crimes, such as network intrusions, malware infections,
and insider threats. The course covers advanced topics such as memory forensics, network
forensics, mobile device forensics, and cloud forensics. Students will gain hands-on
experience with industry-standard tools and frameworks, such as Volatility, Wireshark,
and Cellebrite. Emphasis will be placed on the legal and ethical considerations in digital
forensics, as well as the importance of maintaining the integrity and admissibility of digital
evidence. Through practical labs, case studies, and projects, students will develop the skills
necessary to perform advanced digital forensic investigations, analyze complex digital
evidence, and present findings in a court of law. This course prepares students for roles as
digital forensic analysts, investigators, and consultants, equipping them with the expertise
to uncover digital evidence and support legal proceedings.
Course Learning Outcomes (CLOs):
1. Conduct advanced digital forensic investigations, applying appropriate tools,
techniques, and methodologies.
2. Analyze and interpret complex digital evidence from various sources, including
memory, network traffic, mobile devices, and cloud environments.
3. Understand and adhere to legal and ethical guidelines in digital forensics, ensuring
the admissibility of evidence in court.
4. Employ advanced techniques for data recovery, timeline analysis, and artifact
interpretation.
5. Communicate findings effectively through comprehensive reports and expert
testimony.
Course Contents:
1. Introduction to advanced digital forensics
2. Legal and ethical considerations in digital forensics
3. Advanced data acquisition and preservation techniques
4. Memory forensics and volatile data analysis
5. Network forensics and packet analysis
6. Mobile device forensics (iOS and Android)
7. Cloud forensics and remote data acquisition
8. Malware analysis and reverse engineering

Page 110 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Advanced timeline analysis and event reconstruction


10. Anti-forensics and data hiding techniques
11. Cybercrime case studies and investigations
12. Advanced forensic tools and frameworks
13. Reporting and expert testimony
14. Quality assurance and validation of forensic processes
15. Emerging trends and challenges in digital forensics
Recommended Textbook:
Guide to Computer Forensics and Investigations by Bill Nelson, Amelia Phillips,
Christopher Steuart
Recommended Reference Books:
1. The Art of Memory Forensics: Detecting Malware and Threats in Windows, Linux,
and Mac Memory by Michael Hale Ligh, Andrew Case, Jamie Levy, Aaron Walters
2. Network Forensics: Tracking Hackers through Cyberspace by Sherri Davidoff,
Jonathan Ham
3. Practical Mobile Forensics: A hands-on guide to mastering mobile forensics for the
iOS, Android, and the Windows Phone platforms by Satish Bommisetty, Rohit
Tamma, Heather Mahalik

Page 111 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS510: Elective: Cybersecurity Operations


Course Introduction:
The Cybersecurity Operations elective course focuses on the day-to-day activities and
processes involved in maintaining the security of an organization's information systems
and networks. Students will learn about the roles, responsibilities, and best practices of
cybersecurity operations teams, including security monitoring, incident response,
vulnerability management, and continuous improvement. The course covers various
aspects of cybersecurity operations, such as security information and event management
(SIEM), threat intelligence, security automation and orchestration, and security operations
center (SOC) management. Students will gain hands-on experience with industry-standard
tools and technologies used in cybersecurity operations, such as SIEM platforms, intrusion
detection systems (IDS), and security orchestration, automation, and response (SOAR)
tools. Through practical labs, simulations, and case studies, students will develop the skills
necessary to effectively monitor, detect, and respond to cybersecurity incidents, as well as
to proactively identify and mitigate vulnerabilities. This course prepares students for roles
as cybersecurity analysts, incident responders, and SOC professionals, equipping them
with the knowledge and skills to protect organizations from cyber threats.
Course Learning Outcomes (CLOs):
1. Understand the roles, responsibilities, and best practices of cybersecurity operations
teams.
2. Monitor and analyze security events using SIEM tools and techniques to detect and
respond to cybersecurity incidents.
3. Develop and implement incident response plans, procedures, and playbooks to
effectively handle cybersecurity incidents.
4. Perform vulnerability management activities, including vulnerability scanning,
prioritization, and remediation.
5. Utilize security automation and orchestration tools to streamline and optimize
cybersecurity operations processes.
Course Contents:
1. Introduction to cybersecurity operations
2. Security monitoring and event management
3. Security information and event management (SIEM) tools and techniques
4. Incident response planning and procedures
5. Incident response playbooks and automation
6. Threat intelligence and threat hunting
7. Vulnerability management and scanning

Page 112 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Patch management and configuration management


9. Security automation and orchestration (SOAR)
10. Security operations center (SOC) management
11. Collaboration and communication in cybersecurity operations
12. Continuous monitoring and improvement
13. Compliance and regulatory considerations in cybersecurity operations
14. Emerging trends and challenges in cybersecurity operations
15. Case studies and practical exercises
Recommended Textbook:
Blue Team Handbook: Incident Response Edition by Don Murdoch
Recommended Reference Books:
1. The Practice of Network Security Monitoring: Understanding Incident Detection
and Response by Richard Bejtlich
2. Crafting the InfoSec Playbook: Security Monitoring and Incident Response Master
Plan by Jeff Bollinger, Brandon Enright, Matthew Valites
3. Intelligence-Driven Incident Response: Outwitting the Adversary by Scott J.
Roberts, Rebekah Brown

Page 113 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS511: Elective: Secure Cloud Computing


Course Introduction:
The Secure Cloud Computing elective course focuses on the principles, practices, and
technologies used to ensure the security of cloud-based systems and services. As
organizations increasingly adopt cloud computing for its scalability, flexibility, and cost-
effectiveness, it is crucial for cybersecurity professionals to understand the unique security
challenges and best practices associated with cloud environments. This course provides
students with a comprehensive understanding of cloud security concepts, including cloud
service models, deployment models, and shared responsibility models. Students will learn
about the various security risks and threats specific to cloud computing, such as data
breaches, insider threats, and compliance issues. The course covers topics such as cloud
access control, encryption, key management, network security, and secure application
development in the cloud. Through hands-on labs, case studies, and projects, students will
gain practical experience in securing cloud infrastructures, platforms, and applications
using industry-standard tools and frameworks. This course prepares students to design,
implement, and manage secure cloud solutions, equipping them with the skills to navigate
the complex security landscape of cloud computing.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, service models, and deployment models of
cloud computing and their security implications.
2. Identify and assess the unique security risks and threats associated with cloud
computing environments.
3. Design and implement secure cloud architectures, leveraging industry best practices
and security controls.
4. Apply encryption, key management, and access control techniques to protect data
in the cloud.
5. Develop and deploy secure cloud applications, following secure coding practices
and cloud-specific security guidelines.
Course Contents:
1. Introduction to cloud computing and security
2. Cloud service models (IaaS, PaaS, SaaS) and their security considerations
3. Cloud deployment models (public, private, hybrid) and their security implications
4. Shared responsibility model and cloud security roles
5. Cloud security risks and threats
6. Data security and privacy in the cloud
7. Cloud encryption and key management

Page 114 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Cloud access control and identity management


9. Network security in the cloud
10. Secure cloud application development
11. Cloud security monitoring and incident response
12. Compliance and regulatory considerations in cloud computing
13. Cloud security frameworks and standards (e.g., CSA, NIST)
14. Cloud security tools and technologies
15. Case studies and practical exercises
Recommended Textbook:
Cloud Security and Privacy: An Enterprise Perspective on Risks and Compliance by Tim
Mather, Subra Kumaraswamy, Shahed Latif
Recommended Reference Books:
1. NIST Cloud Computing Security Reference Architecture by National Institute of
Standards and Technology (NIST)
2. Securing the Cloud: Cloud Computer Security Techniques and Tactics by Vic
Winkler
3. Cloud Security Automation: Continuous Monitoring, Threat Detection, and
Remediation by Aaron Rinehart, Nathaniel Christen

Page 115 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

BCNS512: Comprehensive Exams


Course Introduction:
The Comprehensive Exams course is designed to assess students' overall knowledge and
understanding of the core concepts, principles, and practices covered throughout the
Bachelor of Cybersecurity program. This course serves as a capstone experience, where
students demonstrate their ability to synthesize and apply the knowledge and skills
acquired from various cybersecurity domains. The comprehensive exams cover a wide
range of topics, including network security, cryptography, risk management, incident
response, digital forensics, and more. Students will engage in a series of written exams,
practical assessments, and oral presentations to showcase their mastery of cybersecurity
concepts and their readiness to enter the professional field. The course provides students
with the opportunity to review and consolidate their learning, identify areas for
improvement, and receive feedback from faculty members. Successful completion of the
comprehensive exams is a requirement for graduation and signifies that students have
achieved the program's learning outcomes and are prepared to tackle real-world
cybersecurity challenges as competent and well-rounded professionals.
Course Learning Outcomes (CLOs):
1. Demonstrate a comprehensive understanding of the core concepts, principles, and
practices covered throughout the Bachelor of Cybersecurity program.
2. Apply knowledge and skills from various cybersecurity domains to solve complex
problems and address real-world scenarios.
3. Analyze and evaluate cybersecurity issues from multiple perspectives, considering
technical, legal, ethical, and business implications.
4. Communicate cybersecurity concepts, strategies, and solutions effectively in
written, oral, and visual formats.
5. Exhibit readiness to enter the cybersecurity profession as a competent and well-
rounded practitioner.
Course Contents:
1. Review of core cybersecurity concepts and principles
2. Network security and defense
3. Cryptography and secure communication
4. Risk management and assessment
5. Incident response and handling
6. Digital forensics and investigation
7. Secure system design and architecture
8. Cybersecurity policy and governance

Page 116 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Ethical hacking and penetration testing


10. Cybersecurity operations and management
11. Emerging trends and technologies in cybersecurity
12. Comprehensive written exams
13. Practical assessments and simulations
14. Oral presentations and defense
15. Feedback and reflection on exam performance
Recommended Textbook:
Cybersecurity Essentials by Charles J. Brooks, Christopher Grow, Philip Craig, Donald
Short
Recommended Reference Books:
1. CISSP Official (ISC)2 Practice Tests by Mike Chapple, David Seidl
2. Cybersecurity: The Beginner's Guide by Erdal Ozkaya
3. CompTIA Security+ All-in-One Exam Guide by Wm. Arthur Conklin, Greg White,
Dwayne Williams, Chuck Cothren, Roger L. Davis

Page 117 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Bachelor of Computer Science


Program Mission
The mission of the Bachelor of Computer Science program at Accord University is to
provide students with a strong foundation in computer science theory and practice,
preparing them for successful careers in computing and technology fields. The program
aims to develop students' problem-solving, critical thinking, and communication skills
while fostering a passion for lifelong learning and professional growth.
Program Educational Objectives (PEOs)
1. Graduates will apply their knowledge of computer science principles and practices
to design, implement, and evaluate computing solutions to real-world problems.
2. Graduates will demonstrate effective communication, teamwork, and leadership
skills in diverse professional environments.
3. Graduates will engage in continuous learning and professional development to adapt
to the rapidly evolving field of computing.
4. Graduates will recognize the ethical, social, and legal responsibilities of computing
professionals and make informed decisions in their practice.
Curriculum Matrix
Year 1: Foundation Year
 CSF101 - Introduction to Computing
 CSF102 - Basic Mathematics for Computing
 CSF103 - Fundamentals of Programming
 CSF104 - English for Academic Purposes
 CSF105 - Introduction to Computer Systems
 CSF106 - Communication Skills in IT
 CSF 107: Critical Thinking and Logic Reasoning
 CSF 108: Islamic Studies

Year 2
Semester 1
 CSC201 - Object-Oriented Programming
 CSC202 - Data Structures

Page 118 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

 CSC203 - Computer Organization and Architecture


 CSC204 - Operating Systems
 CSC205 - Digital Logic Design
Semester 2
 CSC206 - Algorithms
 CSC207 - Software Engineering
 CSC208 - Network Fundamentals
 CSC209 - Database Management Systems
 CSC210 - Human-Computer Interaction
Year 3
Semester 1
 CSC301 - Theory of Computation
 CSC302 - Computer Graphics
 CSC303 - Artificial Intelligence
 CSC304 - Web Technologies
 CSC305 - Mobile Application Development
Semester 2
 CSC306 - Information Security
 CSC307 - Distributed Systems
 CSC308 - Cloud Computing
 CSC309 - Data Mining
 CSC310 - Advanced Database Systems
Year 4
Semester 1
 CSC401 - Machine Learning
 CSC402 - Internet of Things (IoT)
 CSC403 - Advanced Networking
 CSC404 – Elective I-Compiler Design

Page 119 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

 CSC405 - Elective II-Virtual Reality


Semester 2
 CSC406 - Cybersecurity
 CSC407 - Big Data Analytics
 CSC408 - Blockchain Technology
 CSC409 - Elective III-Quantum Computing
 CSC410 - Elective IV-Project Management in IT
Year 5
Semester 1
 CSC501 - Research Methodologies in Computer Science
 CSC502 - Advanced Machine Learning
 CSC503 - Deep Learning
 CSC504 - Elective V-Advanced Topics in Artificial Intelligence
 CSC505 - Capstone Project I
Semester 2
 CSC506 - Advanced Software Development Practices
 CSC507 - Data Visualization
 CSC508 - Ethical Hacking
 CSC509 - Capstone Project II
 CSC510 - Professional Ethics in Computing

Page 120 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Outlines

CSF101 - Introduction to Computing


Course Introduction:
CSF101 provides a comprehensive introduction to the field of computing. Students will
explore the fundamental concepts, principles, and applications of computer science. The
course covers the history and evolution of computing, computer hardware and software
components, data representation, algorithms, and problem-solving techniques. Students
will gain hands-on experience with basic programming concepts using a high-level
programming language. The course also introduces various subfields of computer science,
such as artificial intelligence, cybersecurity, and data science. Through practical
assignments and projects, students will develop critical thinking and problem-solving skills
essential for success in the computing field. CSF101 lays the foundation for further studies
in computer science and equips students with the knowledge and skills needed to thrive in
the digital age.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of computing.
2. Identify and describe the components of computer hardware and software systems.
3. Apply basic programming concepts and techniques to solve simple problems.
4. Analyze and design algorithms for problem-solving.
5. Recognize the various subfields and applications of computer science.
Course Contents:
1. Introduction to computing and its history
2. Computer hardware components and architecture
3. Computer software and operating systems
4. Data representation and binary systems
5. Introduction to programming languages
6. Basic programming concepts (variables, data types, control structures)
7. Algorithms and problem-solving techniques

Page 121 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Flowcharts and pseudocode


9. Introduction to databases and data management
10. Computer networks and the Internet
11. Cybersecurity and information security
12. Artificial intelligence and machine learning
13. Data science and big data analytics
14. Social and ethical issues in computing
15. Future trends and emerging technologies in computing
Recommended Textbook:
• "Introduction to Computing Systems: From Bits and Gates to C and Beyond" by
Yale N. Patt and Sanjay J. Patel
Recommended Reference Books:
1. "Computer Science: An Overview" by J. Glenn Brookshear and Dennis Brylow
2. "Fundamentals of Computer Science" by Marty Stepp and Jessica Miller
3. "Fluency with Information Technology: Skills, Concepts, and Capabilities" by
Lawrence Snyder

Page 122 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF102 - Basic Mathematics for Computing


Course Introduction:
CSF102 provides students with a solid foundation in the mathematical concepts and
techniques essential for computer science. The course covers a range of topics, including
discrete mathematics, linear algebra, calculus, and probability theory. Students will learn
to apply mathematical reasoning and problem-solving skills to solve computational
problems. The course emphasizes the practical applications of mathematics in computer
science, such as algorithm analysis, data structures, and machine learning. Through hands-
on exercises and programming assignments, students will develop the ability to translate
mathematical concepts into computational solutions. CSF102 equips students with the
mathematical tools and knowledge necessary to succeed in advanced computer science
courses and to tackle complex real-world problems in the field.
Course Learning Outcomes (CLOs):
1. Apply mathematical reasoning and problem-solving skills to computational
problems.
2. Understand and apply the concepts of discrete mathematics in computer science.
3. Utilize linear algebra techniques for data representation and manipulation.
4. Apply calculus concepts to analyze algorithms and optimize solutions.
5. Understand and apply probability theory in computer science applications.
Course Contents:
1. Introduction to mathematical reasoning and problem-solving
2. Set theory and logic
3. Combinatorics and counting techniques
4. Graph theory and its applications
5. Number theory and cryptography
6. Matrices and linear transformations
7. Vector spaces and subspaces
8. Eigenvalues and eigenvectors
9. Limits, derivatives, and integrals

Page 123 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

10. Taylor series and approximations


11. Optimization techniques
12. Probability theory and random variables
13. Discrete and continuous probability distributions
14. Bayes' theorem and conditional probability
15. Markov chains and their applications
Recommended Textbook:
• "Discrete Mathematics and Its Applications" by Kenneth H. Rosen
Recommended Reference Books:
1. "Linear Algebra and Its Applications" by Gilbert Strang
2. "Calculus: Early Transcendentals" by James Stewart
3. "Introduction to Probability" by Joseph K. Blitzstein and Jessica Hwang

Page 124 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF103 - Fundamentals of Programming


Course Introduction:
CSF103 introduces students to the fundamental concepts and techniques of programming.
The course focuses on developing problem-solving skills and learning the basics of
programming using a high-level programming language such as Python or Java. Students
will learn to design, implement, and debug programs that solve real-world problems. The
course covers topics such as data types, variables, control structures, functions, arrays, and
object-oriented programming concepts. Through hands-on coding exercises and projects,
students will gain practical experience in writing efficient and maintainable code. CSF103
emphasizes the importance of good programming practices, such as code organization,
documentation, and testing. By the end of the course, students will have a solid foundation
in programming and be prepared to tackle more advanced programming challenges in
subsequent courses.
Course Learning Outcomes (CLOs):
1. Design and implement programs using a high-level programming language.
2. Apply problem-solving skills to develop algorithmic solutions.
3. Understand and utilize basic programming constructs and data structures.
4. Write modular and reusable code using functions and objects.
5. Debug and test programs to ensure correctness and efficiency.
Course Contents:
1. Introduction to programming and problem-solving
2. Variables, data types, and operators
3. Input and output operations
4. Control structures (conditional statements and loops)
5. Functions and parameter passing
6. Arrays and lists
7. Strings and string manipulation
8. File input and output
9. Recursion and its applications

Page 125 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

10. Introduction to object-oriented programming (OOP)


11. Classes, objects, and methods
12. Inheritance and polymorphism
13. Exception handling and error management
14. Debugging and testing techniques
15. Introduction to data structures (stacks, queues, linked lists)
Recommended Textbook:
• "Python Programming: An Introduction to Computer Science" by John M. Zelle
Recommended Reference Books:
1. "Introduction to Java Programming and Data Structures" by Y. Daniel Liang
2. "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin
3. "Algorithms" by Robert Sedgewick and Kevin Wayne

Page 126 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF104 - English for Academic Purposes


Course Introduction:
CSF104 is designed to enhance students' English language skills in an academic context.
The course focuses on developing the essential language skills required for success in
university-level studies, particularly in the field of computer science. Students will improve
their reading, writing, listening, and speaking abilities through engaging and interactive
activities. The course covers a range of topics relevant to academic communication, such
as research skills, critical thinking, academic writing conventions, and effective
presentation techniques. Students will learn to analyze and synthesize information from
various sources, express their ideas clearly and coherently, and engage in academic
discussions and debates. CSF104 equips students with the language skills and confidence
necessary to thrive in an English-medium academic environment and prepares them for
future professional communication in the global computing industry.
Course Learning Outcomes (CLOs):
1. Demonstrate proficiency in academic reading, writing, listening, and speaking
skills.
2. Analyze and synthesize information from various academic sources.
3. Apply critical thinking skills to evaluate arguments and evidence.
4. Write well-structured academic essays and reports following appropriate
conventions.
5. Deliver effective oral presentations and participate in academic discussions.
Course Contents:
1. Introduction to academic English and study skills
2. Academic reading strategies and comprehension
3. Vocabulary building and word formation
4. Sentence structure and grammar for academic writing
5. Paragraph writing and organization
6. Essay writing (introductions, body paragraphs, conclusions)
7. Citation and referencing techniques

Page 127 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Paraphrasing and summarizing academic texts


9. Critical thinking and argumentation
10. Research skills and information literacy
11. Academic listening and note-taking strategies
12. Oral presentation skills and techniques
13. Participating in academic discussions and debates
14. Writing lab reports and technical documents
15. Collaborative writing and peer review
Recommended Textbook:
• "Academic Writing: A Handbook for International Students" by Stephen Bailey
Recommended Reference Books:
1. "Oxford EAP: A course in English for Academic Purposes" by Edward de Chazal
and Sam McCarter
2. "The Study Skills Handbook" by Stella Cottrell
3. "English for Computer Science" by Marian Dunn and David Howey

Page 128 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF105 - Introduction to Computer Systems


Course Introduction:
CSF203 provides a comprehensive introduction to the design and organization of computer
systems. The course covers the fundamental concepts and principles underlying modern
computer hardware and software. Students will explore the various components of a
computer system, including the CPU, memory hierarchy, input/output devices, and storage
systems. The course also introduces the basics of operating systems, including process
management, memory management, and file systems. Students will gain hands-on
experience with assembly language programming and understand how high-level
programming languages are translated into machine code. CSF203 emphasizes the
importance of understanding the interactions between hardware and software components
to design efficient and reliable computer systems. By the end of the course, students will
have a solid foundation in computer systems architecture and be prepared to tackle
advanced topics in computer engineering and system design.
Course Learning Outcomes (CLOs):
1. Understand the organization and components of a computer system.
2. Explain the functionality of the CPU, memory hierarchy, and input/output devices.
3. Analyze the performance and efficiency of computer systems.
4. Write and debug assembly language programs.
5. Understand the basics of operating systems and their role in computer systems.
Course Contents:
1. Introduction to computer systems and architecture
2. Digital logic and Boolean algebra
3. Number systems and data representation
4. CPU architecture and instruction set
5. Assembly language programming
6. Memory hierarchy and cache design
7. Virtual memory and memory management
8. Input/output devices and interfaces

Page 129 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Storage systems and secondary storage


10. Introduction to operating systems
11. Process management and scheduling
12. Memory management and allocation
13. File systems and storage management
14. Concurrency and synchronization
15. Performance evaluation and optimization
Recommended Textbook:
• "Computer Systems: A Programmer's Perspective" by Randal E. Bryant and David
R. O'Hallaron
Recommended Reference Books:
1. "Computer Organization and Design: The Hardware/Software Interface" by David
A. Patterson and John L. Hennessy
2. "Operating System Concepts" by Abraham Silberschatz, Peter B. Galvin, and Greg
Gagne
3. "The C Programming Language" by Brian W. Kernighan and Dennis M. Ritchie

Page 130 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF106 - Communication Skills in IT


Course Introduction:
CSF204 focuses on developing effective communication skills essential for success in the
field of information technology (IT). The course covers a range of topics related to
professional communication, including technical writing, oral presentations, interpersonal
communication, and collaboration in IT projects. Students will learn to analyze audience
needs, organize information effectively, and present complex technical concepts in a clear
and concise manner. The course emphasizes the importance of adapting communication
styles to different contexts and stakeholders, such as clients, team members, and
management. Through practical exercises and real-world case studies, students will gain
hands-on experience in creating technical documents, delivering presentations, and
collaborating in IT projects. CSF204 equips students with the communication skills
necessary to thrive in the dynamic and fast-paced IT industry, where effective
communication is crucial for success.
Course Learning Outcomes (CLOs):
1. Communicate technical information effectively in written and oral forms.
2. Analyze audience needs and adapt communication styles accordingly.
3. Create well-structured and user-friendly technical documents.
4. Deliver engaging and informative presentations on IT topics.
5. Collaborate effectively in IT projects and demonstrate strong interpersonal skills.
Course Contents:
1. Introduction to communication in the IT industry
2. Principles of effective technical writing
3. Document design and organization
4. Writing technical reports, proposals, and documentation
5. Email communication and netiquette
6. Oral presentation skills and techniques
7. Designing and delivering technical presentations
8. Interpersonal communication and active listening

Page 131 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

9. Collaboration and teamwork in IT projects


10. Conflict resolution and negotiation skills
11. Communicating with clients and stakeholders
12. Cross-cultural communication in global IT teams
13. Ethical considerations in IT communication
14. Social media and online communication in IT
15. Case studies and real-world examples of IT communication
Recommended Textbook:
• "Technical Communication" by Mike Markel and Stuart A. Selber
Recommended Reference Books:
1. "The Essentials of Technical Communication" by Elizabeth Tebeaux and Sam
Dragga
2. "Presentation Zen: Simple Ideas on Presentation Design and Delivery" by Garr
Reynolds
3. "Collaboration Explained: Facilitation Skills for Software Project Leaders" by Jean
Tabaka

Page 132 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF107 Critical Thinking and Logic Reasoning


Course Introduction
This course is designed to introduce students to the principles of critical thinking and logic
reasoning. It aims to enhance students' ability to think clearly and rationally, understand
the logical connection between ideas, identify, construct, and evaluate arguments, and
solve problems systematically. This course will cover various forms of reasoning and logic,
including deductive and inductive reasoning, as well as common fallacies to avoid in
argumentation.
Course Learning Outcomes (CLO)
1. Identify and distinguish between different types of reasoning (deductive, inductive,
and abductive) and understand their application in everyday situations.
2. Analyze arguments critically to identify premises and conclusions, assess the
validity and soundness of arguments, and recognize logical fallacies.
3. Develop and construct coherent arguments, employing logical reasoning to support
conclusions effectively.
4. Apply critical thinking and logical reasoning skills to solve problems, make
decisions, and evaluate claims in academic, professional, and personal contexts.
List of Course Contents
1. Introduction to Critical Thinking and Logic
2. The Structure of Arguments: Premises, Conclusions, and Types
3. Deductive Reasoning and Syllogistic Logic
4. Inductive Reasoning and Probabilistic Logic
5. Abductive Reasoning and Inference to the Best Explanation
6. Logical Fallacies and How to Avoid Them
7. The Role of Language in Logic and Reasoning
8. Critical Analysis of Everyday Arguments
9. Strategies for Effective Argumentation and Debate
10. Introduction to Formal Logic and Symbolic Notation
11. Evaluating Scientific Reasoning and Research

Page 133 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

12. Critical Thinking in the Media and Information Literacy


13. Problem-Solving and Decision-Making Strategies
14. Ethical Reasoning and Moral Decision-Making
15. Applying Logic and Critical Thinking in Professional and Personal Life

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

Page 134 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSF108 Islamic Studies


Course Introduction
Islamic Studies is an interdisciplinary course designed to provide students with a
comprehensive understanding of Islam's religious, cultural, historical, and contemporary
dimensions. The course covers the foundational texts of Islam, the development of Islamic
thought, the diversity of Muslim cultures, and contemporary issues facing the Muslim
world.
Course Learning Outcomes (CLO)
1. Understand the core beliefs, practices, and ethical principles of Islam as derived
from the Qur'an and Hadith.
2. Analyze the historical development of Islamic thought, including major schools of
theology, philosophy, and law.
3. Appreciate the cultural diversity within the Muslim world, including art, literature,
and social practices.
4. Critically engage with contemporary issues and challenges facing Muslim
communities globally.
List of Course Contents
1. Introduction to Islam: Core Beliefs and Practices
2. The Qur'an: Structure, Themes, and Interpretation
3. The Hadith: Collection, Classification, and Authority
4. The Life of Prophet Muhammad and the Early Muslim Community
5. Islamic Theology and Philosophy
6. Islamic Law (Sharia) and Jurisprudence (Fiqh)
7. Sufism: Mysticism in Islam
8. Islamic Art and Architecture
9. The Role of Women in Islam
10. Islam and Modernity: Reform Movements and Challenges
11. Islam and Politics: Governance, Democracy, and Human Rights
12. Islamic Economics and Finance

Page 135 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

13. Muslims in the Contemporary World: Identity and Diaspora


14. Interfaith Dialogue and Islamic Perspectives on Pluralism
15. Contemporary Issues: Radicalism, Islamophobia, and Environmental Ethics
Recommended Textbook
 "An Introduction to Islam" by Frederick Denny
Reference Books
1. "The Oxford History of Islam" edited by John L. Esposito
2. "The Study Quran: A New Translation and Commentary" by Seyyed Hossein Nasr
et al.
3. "Islam: A Short History" by Karen Armstrong

Page 136 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC201 - Object-Oriented Programming


Course Introduction:
CSC201 introduces students to the fundamental concepts and principles of object-oriented
programming (OOP). The course focuses on designing and implementing software systems
using OOP techniques, emphasizing code reusability, modularity, and maintainability.
Students will learn the core concepts of OOP, such as classes, objects, inheritance,
polymorphism, and encapsulation, using a modern programming language like Java or
C++. The course covers topics such as object-oriented analysis and design, design patterns,
and software development methodologies. Through hands-on programming assignments
and projects, students will gain practical experience in developing object-oriented software
solutions to real-world problems. CSC201 emphasizes the importance of good
programming practices, such as code organization, documentation, and testing, in the
context of OOP. By the end of the course, students will have a solid foundation in object-
oriented programming and be prepared to tackle complex software development
challenges.
Course Learning Outcomes (CLOs):
1. Understand and apply the fundamental concepts and principles of object-oriented
programming.
2. Design and implement software systems using OOP techniques and best practices.
3. Utilize inheritance, polymorphism, and encapsulation to create modular and
reusable code.
4. Analyze and design software solutions using object-oriented analysis and design
methodologies.
5. Develop and test object-oriented programs using a modern programming language.
Course Contents:
1. Introduction to object-oriented programming
2. Classes, objects, and methods
3. Encapsulation and data hiding
4. Constructors and destructors

Page 137 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Inheritance and class hierarchies


6. Polymorphism and virtual functions
7. Abstract classes and interfaces
8. Exception handling and error management
9. File I/O and serialization
10. Object-oriented analysis and design
11. UML diagrams and modeling techniques
12. Design patterns and their applications
13. Software development methodologies (e.g., Agile, Scrum)
14. Testing and debugging object-oriented programs
15. Advanced topics in OOP (e.g., generics, reflection, multithreading)
Recommended Textbook:
• "Object-Oriented Programming in C++" by Robert Lafore
Recommended Reference Books:
1. "Effective Java" by Joshua Bloch
2. "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich
Gamma, Richard Helm, Ralph Johnson, and John Vlissides
3. "Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin

Page 138 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC202 - Data Structures


Course Introduction:
CSC202 focuses on the study of fundamental data structures and their applications in
computer science. The course covers the design, analysis, and implementation of various
data structures, such as arrays, linked lists, stacks, queues, trees, and graphs. Students will
learn the trade-offs between different data structures in terms of time and space complexity,
and how to choose the appropriate data structure for a given problem. The course also
introduces algorithms for searching, sorting, and manipulating data structures efficiently.
Through hands-on programming assignments and projects, students will gain practical
experience in implementing and using data structures to solve real-world problems.
CSC202 emphasizes the importance of algorithm analysis and the development of efficient
and scalable software solutions. By the end of the course, students will have a solid
understanding of data structures and be prepared to apply this knowledge in advanced
computer science courses and software development projects.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of data structures.
2. Design, analyze, and implement various data structures, such as arrays, linked lists,
stacks, queues, trees, and graphs.
3. Analyze the time and space complexity of algorithms and data structures.
4. Apply appropriate data structures to solve real-world problems efficiently.
5. Implement and test data structures and algorithms using a programming language.
Course Contents:
1. Introduction to data structures and algorithms
2. Arrays and dynamic arrays
3. Linked lists (singly linked, doubly linked, circular)
4. Stacks and queues
5. Recursion and its applications
6. Trees (binary trees, binary search trees, AVL trees)
7. Heaps and priority queues

Page 139 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

8. Hash tables and hash functions


9. Graphs and graph algorithms (BFS, DFS, shortest paths)
10. Sorting algorithms (bubble sort, insertion sort, selection sort, merge sort, quick sort)
11. Searching algorithms (linear search, binary search)
12. Algorithm analysis and Big O notation
13. Dynamic programming and memoization
14. String manipulation and pattern matching
15. Advanced topics in data structures (e.g., tries, segment trees, disjoint sets)
Recommended Textbook:
• "Data Structures and Algorithms in C++" by Adam Drozdek
Recommended Reference Books:
1. "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson, Ronald
L. Rivest, and Clifford Stein
2. "Algorithms" by Robert Sedgewick and Kevin Wayne
3. "The Algorithm Design Manual" by Steven S. Skiena

Page 140 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC203 - Computer Organization and Architecture


Course Introduction:
CSC203 provides an in-depth understanding of the internal organization and architecture
of modern computer systems. The course covers the fundamental concepts and principles
of computer hardware design, including digital logic, instruction set architecture, memory
hierarchy, and input/output systems. Students will learn how computer components interact
and work together to execute programs and process data efficiently. The course also
introduces assembly language programming and low-level software development
techniques. Through hands-on projects and simulations, students will gain practical
experience in designing and analyzing computer architectures, as well as optimizing
system performance. CSC203 emphasizes the importance of understanding the hardware-
software interface and the trade-offs involved in computer system design. By the end of
the course, students will have a solid foundation in computer organization and architecture,
enabling them to design and optimize hardware and software systems for various
applications.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and principles of computer organization and
architecture.
2. Analyze and design digital logic circuits using Boolean algebra and logic gates.
3. Explain the structure and functionality of the CPU, memory hierarchy, and
input/output systems.
4. Write and debug assembly language programs for a given instruction set
architecture.
5. Evaluate the performance of computer systems and propose optimizations.
Course Contents:
1. Introduction to computer organization and architecture
2. Digital logic and Boolean algebra
3. Combinational and sequential circuits
4. Number systems and data representation

Page 141 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Instruction set architecture and machine language


6. CPU design and organization
7. Assembly language programming
8. Memory hierarchy and cache design
9. Virtual memory and memory management
10. Input/output systems and interfaces
11. Pipelining and instruction-level parallelism
12. Multiprocessor systems and parallel computing
13. Performance evaluation and benchmarking
14. Advanced topics in computer architecture (e.g., RISC vs. CISC, GPU architecture)
15. Case studies and real-world examples of computer system design
Recommended Textbook:
• "Computer Organization and Design: The Hardware/Software Interface" by David
A. Patterson and John L. Hennessy
Recommended Reference Books:
1. "Computer Architecture: A Quantitative Approach" by John L. Hennessy and David
A. Patterson
2. "Structured Computer Organization" by Andrew S. Tanenbaum
3. "Digital Design and Computer Architecture" by David Harris and Sarah Harris

Page 142 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC204 - Operating Systems


Course Introduction:
CSC204 provides a comprehensive introduction to the design and implementation of
operating systems. The course covers the fundamental concepts, principles, and techniques
used in modern operating systems, such as process management, memory management,
file systems, and input/output systems. Students will learn how operating systems manage
computer resources, provide abstractions for application development, and ensure system
stability and security. The course also introduces concurrent programming,
synchronization mechanisms, and deadlock prevention techniques. Through hands-on
programming assignments and projects, students will gain practical experience in
developing and modifying operating system components. CSC204 emphasizes the
importance of understanding the interactions between hardware and software components,
as well as the trade-offs involved in operating system design. By the end of the course,
students will have a solid foundation in operating systems concepts and be prepared to
tackle advanced topics in system software development.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and techniques used in modern
operating systems.
2. Explain the role and functionality of process management, memory management,
file systems, and input/output systems.
3. Analyze and design synchronization mechanisms for concurrent processes.
4. Implement and modify operating system components using a systems programming
language.
5. Evaluate the performance and security of operating systems and propose
optimizations.
Course Contents:
1. Introduction to operating systems
2. Process management and scheduling
3. Threads and concurrency

Page 143 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Synchronization mechanisms (e.g., semaphores, monitors, message passing)


5. Deadlock prevention, avoidance, and detection
6. Memory management and allocation
7. Virtual memory and paging
8. File systems and storage management
9. Input/output systems and device drivers
10. Interprocess communication and pipes
11. System calls and API design
12. Operating system security and access control
13. Distributed and networked operating systems
14. Real-time and embedded operating systems
15. Case studies and real-world examples of operating system design
Recommended Textbook:
• "Operating System Concepts" by Abraham Silberschatz, Peter B. Galvin, and Greg
Gagne
Recommended Reference Books:
1. "Modern Operating Systems" by Andrew S. Tanenbaum and Herbert Bos
2. "Operating Systems: Three Easy Pieces" by Remzi H. Arpaci-Dusseau and Andrea
C. Arpaci-Dusseau
3. "The Design of the UNIX Operating System" by Maurice J. Bach

Page 144 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC205 - Digital Logic Design


Course Introduction:
CSC205 introduces students to the fundamental concepts and techniques of digital logic
design. The course covers the design and analysis of digital circuits, from basic logic gates
to complex digital systems. Students will learn how to represent and manipulate digital
information using Boolean algebra, truth tables, and logic diagrams. The course also covers
combinational and sequential logic circuits, such as multiplexers, decoders, flip-flops, and
counters. Students will gain hands-on experience in designing and simulating digital
circuits using hardware description languages (HDLs) and computer-aided design (CAD)
tools. CSC205 emphasizes the importance of understanding the relationship between
digital logic design and computer architecture, as well as the trade-offs involved in digital
system design. By the end of the course, students will have a solid foundation in digital
logic design and be prepared to tackle advanced topics in digital systems and computer
engineering.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts and techniques of digital logic design.
2. Represent and manipulate digital information using Boolean algebra, truth tables,
and logic diagrams.
3. Design and analyze combinational and sequential logic circuits.
4. Implement digital circuits using hardware description languages (HDLs) and
computer-aided design (CAD) tools.
5. Evaluate the performance and trade-offs of digital system designs.
Course Contents:
1. Introduction to digital logic and number systems
2. Boolean algebra and logic gates
3. Combinational logic circuits
4. Karnaugh maps and logic simplification
5. Multiplexers, decoders, and encoders
6. Arithmetic circuits (adders, subtractors, comparators)

Page 145 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

7. Sequential logic circuits


8. Flip-flops and latches
9. Counters and shift registers
10. Finite state machines and their design
11. Synchronous and asynchronous sequential circuits
12. Introduction to hardware description languages (HDLs)
13. Digital system design using HDLs and CAD tools
14. Timing analysis and synchronization techniques
15. Case studies and real-world examples of digital system design
Recommended Textbook:
• "Digital Design: Principles and Practices" by John F. Wakerly
Recommended Reference Books:
1. "Fundamentals of Digital Logic with Verilog Design" by Stephen Brown and
Zvonko Vranesic
2. "Digital Systems Design Using VHDL" by Charles H. Roth Jr. and Lizy Kurian
John
3. "Digital Design and Computer Architecture" by David Harris and Sarah Harris

Page 146 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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)

Page 147 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Dynamic programming (e.g., Knapsack Problem, Longest Common Subsequence)


6. Graph algorithms (e.g., BFS, DFS, Shortest Paths, Minimum Spanning Trees)
7. Balanced search trees (e.g., AVL Trees, Red-Black Trees)
8. Hash tables and collision resolution techniques
9. Priority queues and heaps
10. String matching algorithms (e.g., KMP Algorithm, Rabin-Karp Algorithm)
11. NP-completeness and approximation algorithms
12. Randomized algorithms and probabilistic analysis
13. Parallel and distributed algorithms
14. Algorithm design techniques (e.g., backtracking, branch-and-bound)
15. Case studies and real-world applications of algorithms
Recommended Textbook:
• "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson, Ronald
L. Rivest, and Clifford Stein
Recommended Reference Books:
1. "The Algorithm Design Manual" by Steven S. Skiena
2. "Algorithms" by Robert Sedgewick and Kevin Wayne
3. "Algorithm Design" by Jon Kleinberg and Éva Tardos

Page 148 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC207 - Software Engineering


Course Introduction:
CSC207 introduces students to the principles, practices, and methodologies of software
engineering. The course covers the entire software development life cycle, from
requirements gathering and analysis to design, implementation, testing, and maintenance.
Students will learn how to apply software engineering techniques to develop high-quality,
reliable, and maintainable software systems. The course covers various software
development models, such as waterfall, agile, and iterative models, and emphasizes the
importance of project management, teamwork, and communication in software
development. Students will also learn about software design principles, design patterns,
and software architecture. Through hands-on projects and case studies, students will gain
practical experience in applying software engineering practices to real-world problems.
CSC207 emphasizes the importance of following industry standards and best practices, as
well as the ethical and professional responsibilities of software engineers. By the end of
the course, students will have a solid foundation in software engineering and be prepared
to contribute to the development of complex software systems.
Course Learning Outcomes (CLOs):
1. Understand the principles, practices, and methodologies of software engineering.
2. Apply software engineering techniques to develop high-quality, reliable, and
maintainable software systems.
3. Analyze and specify software requirements using various techniques, such as use
cases and user stories.
4. Design software systems using object-oriented design principles, design patterns,
and software architecture.
5. Implement, test, and maintain software systems following industry standards and
best practices.

Page 149 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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

Page 150 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC208 - Network Fundamentals


Course Introduction:
CSC208 provides a comprehensive introduction to computer networks and network
communication principles. The course covers the fundamental concepts, architectures, and
protocols used in modern computer networks, from local area networks (LANs) to wide
area networks (WANs) and the Internet. Students will learn about the OSI and TCP/IP
reference models, network topologies, and various network devices, such as switches,
routers, and firewalls. The course also covers data communication concepts, such as data
encoding, modulation, and error detection and correction. Students will gain hands-on
experience in configuring and troubleshooting network devices using network simulation
tools and real equipment. CSC208 emphasizes the importance of network security, network
performance, and network management in the design and operation of computer networks.
By the end of the course, students will have a solid foundation in network fundamentals
and be prepared to pursue advanced topics in network engineering and network
administration.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, architectures, and protocols used in modern
computer networks.
2. Explain the OSI and TCP/IP reference models and their layers.
3. Design and implement network topologies using various network devices and
technologies.
4. Analyze and troubleshoot network problems using network tools and techniques.
5. Evaluate network performance and security, and propose improvements.
Course Contents:
1. Introduction to computer networks and network communication
2. OSI and TCP/IP reference models
3. Network topologies and architectures
4. Data communication concepts (e.g., data encoding, modulation, error detection)
5. Physical layer technologies (e.g., Ethernet, Wi-Fi, Bluetooth)

Page 151 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

6. Data link layer protocols (e.g., ARP, PPP, HDLC)


7. Network layer protocols (e.g., IP, ICMP, routing protocols)
8. Transport layer protocols (e.g., TCP, UDP)
9. Application layer protocols (e.g., HTTP, FTP, DNS)
10. Network devices (e.g., switches, routers, firewalls)
11. Network addressing and subnetting
12. Network security and cryptography
13. Network performance and quality of service (QoS)
14. Network management and monitoring
15. Emerging trends and technologies in computer networks
Recommended Textbook:
• "Computer Networking: A Top-Down Approach" by James F. Kurose and Keith W.
Ross
Recommended Reference Books:
1. "TCP/IP Illustrated, Volume 1: The Protocols" by W. Richard Stevens
2. "Network Security Essentials: Applications and Standards" by William Stallings
3. "Computer Networks" by Andrew S. Tanenbaum and David J. Wetherall

Page 152 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC209 - Database Management Systems


Course Introduction:
CSC209 introduces students to the fundamental concepts, principles, and techniques of
database management systems (DBMS). The course covers the design, implementation,
and management of databases, with a focus on relational database systems. Students will
learn about data modeling, database design, and normalization techniques, as well as the
use of Structured Query Language (SQL) for data manipulation and retrieval. The course
also covers advanced topics, such as transaction management, concurrency control, and
database security. Students will gain hands-on experience in designing and implementing
databases using popular DBMS software, such as MySQL, PostgreSQL, or Oracle.
CSC209 emphasizes the importance of data integrity, data consistency, and data security
in the design and management of databases. By the end of the course, students will have a
solid foundation in database management systems and be prepared to design and
implement efficient and reliable databases for various applications.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and techniques of database
management systems.
2. Design and implement relational databases using data modeling and normalization
techniques.
3. Manipulate and retrieve data using Structured Query Language (SQL).
4. Analyze and optimize database performance using indexing and query optimization
techniques.
5. Implement database security and integrity controls to protect data from
unauthorized access and modification.
Course Contents:
1. Introduction to database management systems (DBMS)
2. Data models and database design
3. Entity-Relationship (ER) modeling and diagrams
4. Relational data model and normalization

Page 153 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Structured Query Language (SQL)


6. Data definition language (DDL) and data manipulation language (DML)
7. Database integrity and constraints
8. Indexing and query optimization
9. Transaction management and concurrency control
10. Database security and access control
11. Database backup and recovery
12. NoSQL databases and big data
13. Data warehousing and business intelligence
14. Database administration and management
15. Emerging trends and technologies in database systems
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. "SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL"
by John L. Viescas and Michael J. Hernandez
3. "Database Design for Mere Mortals: A Hands-On Guide to Relational Database
Design" by Michael J. Hernandez

Page 154 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC210 - Human-Computer Interaction


Course Introduction:
CSC210 introduces students to the principles, techniques, and methodologies of human-
computer interaction (HCI). The course covers the design, evaluation, and implementation
of interactive computing systems, with a focus on user-centered design and usability.
Students will learn about human factors, cognitive psychology, and user interface design
principles, as well as the use of various interaction styles, such as graphical user interfaces
(GUIs), voice user interfaces (VUIs), and gesture-based interfaces. The course also covers
user experience (UX) design, user research methods, and usability testing techniques.
Students will gain hands-on experience in designing and prototyping user interfaces using
various tools and technologies, such as wireframing, mockups, and interactive prototypes.
CSC210 emphasizes the importance of understanding user needs, goals, and contexts in
the design of effective and usable interactive systems. By the end of the course, students
will have a solid foundation in human-computer interaction and be prepared to design and
evaluate user-friendly and engaging interactive systems.
Course Learning Outcomes (CLOs):
1. Understand the principles, techniques, and methodologies of human-computer
interaction.
2. Apply user-centered design and usability principles to the design of interactive
systems.
3. Conduct user research and usability testing to evaluate the effectiveness and
usability of interactive systems.
4. Design and prototype user interfaces using various tools and technologies.
5. Analyze and critique the usability and user experience of existing interactive
systems.
Course Contents:
1. Introduction to human-computer interaction (HCI)
2. Human factors and cognitive psychology
3. User-centered design and usability principles

Page 155 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Interaction styles and paradigms (e.g., GUIs, VUIs, gesture-based interfaces)


5. User interface design principles and guidelines
6. User experience (UX) design and user research methods
7. Usability testing and evaluation techniques
8. Wireframing, mockups, and prototyping tools
9. Accessibility and universal design
10. Multimodal interaction and natural user interfaces
11. Mobile and ubiquitous computing
12. Collaborative and social computing
13. Affective computing and emotional design
14. HCI in specific domains (e.g., healthcare, education, entertainment)
15. Emerging trends and technologies in human-computer interaction
Recommended Textbook:
• "Interaction Design: Beyond Human-Computer Interaction" by Jenny Preece, Helen
Sharp, and Yvonne Rogers
Recommended Reference Books:
1. "About Face: The Essentials of Interaction Design" by Alan Cooper, Robert
Reimann, David Cronin, and Christopher Noessel
2. "The Design of Everyday Things" by Don Norman
3. "100 Things Every Designer Needs to Know About People" by Susan Weinschenk

Page 156 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC301 - Theory of Computation


Course Introduction:
CSC301 provides a comprehensive introduction to the theoretical foundations of computer
science. The course covers the fundamental concepts, models, and techniques used to study
the capabilities and limitations of computation. Students will learn about formal languages,
automata theory, computability theory, and complexity theory. The course covers various
models of computation, such as finite automata, pushdown automata, and Turing machines,
and their relationships to formal languages, such as regular languages, context-free
languages, and recursively enumerable languages. Students will also learn about the limits
of computation, including undecidability and the halting problem. CSC301 emphasizes the
importance of mathematical reasoning and proof techniques in the study of computation.
By the end of the course, students will have a solid foundation in the theoretical aspects of
computer science and be prepared to apply these concepts to the design and analysis of
algorithms and computational systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, models, and techniques used in the theory of
computation.
2. Analyze and classify formal languages using various models of computation, such
as finite automata, pushdown automata, and Turing machines.
3. Apply mathematical reasoning and proof techniques to study the properties and
limitations of computation.
4. Explain the concepts of computability, decidability, and complexity, and their
implications for the design and analysis of algorithms.
5. Evaluate the complexity of computational problems and classify them into
complexity classes, such as P, NP, and NP-complete.
Course Contents:
1. Introduction to the theory of computation
2. Formal languages and grammars
3. Regular languages and finite automata

Page 157 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Context-free languages and pushdown automata


5. Turing machines and computability
6. Decidability and undecidability
7. The halting problem and reductions
8. Time complexity and the P vs. NP problem
9. NP-completeness and polynomial-time reductions
10. Space complexity and PSPACE
11. Randomized computation and probabilistic complexity classes
12. Interactive proof systems and zero-knowledge proofs
13. Quantum computation and quantum complexity
14. Kolmogorov complexity and algorithmic information theory
15. Applications of the theory of computation to cryptography, machine learning, and
other areas
Recommended Textbook:
• "Introduction to the Theory of Computation" by Michael Sipser
Recommended Reference Books:
1. "Elements of the Theory of Computation" by Harry R. Lewis and Christos H.
Papadimitriou
2. "Computational Complexity: A Modern Approach" by Sanjeev Arora and Boaz
Barak
3. "An Introduction to Formal Languages and Automata" by Peter Linz

Page 158 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC302 - Computer Graphics


Course Introduction:
CSC302 introduces students to the fundamental concepts, techniques, and algorithms used
in computer graphics. The course covers the mathematical foundations of graphics,
including linear algebra, trigonometry, and calculus, as well as the programming
techniques used to create 2D and 3D graphics. Students will learn about the graphics
pipeline, from modeling and rendering to animation and interaction. The course covers
various topics, such as geometric transformations, lighting and shading, texture mapping,
and ray tracing. Students will gain hands-on experience in using graphics libraries and
APIs, such as OpenGL and DirectX, to create interactive graphics applications. CSC302
emphasizes the importance of performance optimization and real-time rendering
techniques in the development of graphics-intensive applications, such as video games and
virtual reality. By the end of the course, students will have a solid foundation in computer
graphics and be prepared to create visually appealing and interactive graphics applications.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, techniques, and algorithms used in computer
graphics.
2. Apply mathematical concepts, such as linear algebra, trigonometry, and calculus, to
solve graphics problems.
3. Implement the graphics pipeline, from modeling and rendering to animation and
interaction, using graphics libraries and APIs.
4. Analyze and optimize the performance of graphics applications using various
techniques, such as level-of-detail and occlusion culling.
5. Design and develop interactive graphics applications, such as video games and data
visualizations, using industry-standard tools and frameworks.
Course Contents:
1. Introduction to computer graphics
2. Mathematical foundations of graphics (linear algebra, trigonometry, calculus)
3. Graphics pipeline and rendering techniques

Page 159 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Geometric transformations and coordinate systems


5. Lighting and shading models (e.g., Phong, Gouraud, ray tracing)
6. Texture mapping and image synthesis
7. Rasterization and antialiasing techniques
8. Curves and surfaces (e.g., Bézier curves, B-splines, NURBS)
9. 3D modeling and mesh processing
10. Animation and kinematics
11. Collision detection and physics simulation
12. Particle systems and special effects
13. Real-time rendering and performance optimization
14. Graphics hardware and GPU programming
15. Applications of computer graphics (e.g., video games, data visualization, virtual
reality)
Recommended Textbook:
• "Computer Graphics: Principles and Practice" by John F. Hughes, Andries van
Dam, Morgan McGuire, David F. Sklar, James D. Foley, Steven K. Feiner, and Kurt
Akeley
Recommended Reference Books:
1. "Real-Time Rendering" by Tomas Akenine-Möller, Eric Haines, and Naty Hoffman
2. "Fundamentals of Computer Graphics" by Peter Shirley and Steve Marschner
3. "OpenGL Programming Guide: The Official Guide to Learning OpenGL" by Dave
Shreiner, Graham Sellers, John Kessenich, and Bill Licea-Kane

Page 160 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC303 - Artificial Intelligence


Course Introduction:
CSC303 provides a comprehensive introduction to the field of artificial intelligence (AI)
and its applications. The course covers the fundamental concepts, techniques, and
algorithms used to create intelligent systems that can perceive, reason, learn, and act
autonomously. Students will learn about various AI approaches, such as rule-based
systems, search algorithms, machine learning, and natural language processing. The course
covers both classical AI techniques, such as knowledge representation and reasoning, and
modern AI techniques, such as deep learning and reinforcement learning. Students will
gain hands-on experience in using AI libraries and frameworks, such as TensorFlow and
PyTorch, to develop intelligent applications, such as chatbots, recommendation systems,
and autonomous agents. CSC303 emphasizes the importance of ethical considerations and
societal implications of AI technologies. By the end of the course, students will have a
solid foundation in artificial intelligence and be prepared to apply AI techniques to solve
real-world problems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, techniques, and algorithms used in artificial
intelligence.
2. Apply various AI approaches, such as rule-based systems, search algorithms,
machine learning, and natural language processing, to solve real-world problems.
3. Implement intelligent systems using AI libraries and frameworks, such as
TensorFlow and PyTorch.
4. Analyze the performance and limitations of AI systems and propose improvements.
5. Evaluate the ethical and societal implications of AI technologies and their
applications.
Course Contents:
1. Introduction to artificial intelligence and its history
2. Problem-solving and search algorithms (e.g., depth-first search, breadth-first search,
A*)

Page 161 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

3. Knowledge representation and reasoning (e.g., propositional logic, first-order logic,


ontologies)
4. Planning and decision-making (e.g., STRIPS, Markov decision processes)
5. Uncertainty and probabilistic reasoning (e.g., Bayesian networks, Markov models)
6. Machine learning and pattern recognition (e.g., supervised learning, unsupervised
learning, reinforcement learning)
7. Neural networks and deep learning (e.g., convolutional neural networks, recurrent
neural networks, generative adversarial networks)
8. Natural language processing and text mining (e.g., sentiment analysis, named entity
recognition, machine translation)
9. Computer vision and image processing (e.g., object detection, image segmentation,
face recognition)
10. Robotics and autonomous systems (e.g., motion planning, localization and mapping,
multi-agent systems)
11. Game theory and adversarial search (e.g., minimax, alpha-beta pruning, Monte
Carlo tree search)
12. Explainable AI and interpretability
13. Ethical and societal implications of AI (e.g., bias, fairness, transparency,
accountability)
14. Applications of AI in various domains (e.g., healthcare, finance, transportation,
entertainment)
15. Future directions and challenges in artificial intelligence
Recommended Textbook:
• "Artificial Intelligence: A Modern Approach" by Stuart Russell and Peter Norvig
Recommended Reference Books:
1. "Machine Learning" by Tom M. Mitchell
2. "Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville
3. "Probabilistic Graphical Models: Principles and Techniques" by Daphne Koller and
Nir Friedman

Page 162 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC304 - Web Technologies


Course Introduction:
CSC304 introduces students to the fundamental concepts, technologies, and frameworks
used in web development. The course covers both front-end and back-end web
technologies, as well as the principles of web design and user experience. Students will
learn about the core technologies of the web, such as HTML, CSS, and JavaScript, and
how to use them to create interactive and responsive web pages. The course also covers
server-side programming using languages such as PHP, Ruby, or Python, and how to use
web frameworks such as Laravel, Ruby on Rails, or Django to build scalable and
maintainable web applications. Students will gain hands-on experience in using web
development tools and techniques, such as version control, testing, and deployment.
CSC304 emphasizes the importance of web standards, accessibility, and security in the
development of web applications. By the end of the course, students will have a solid
foundation in web technologies and be prepared to create modern and engaging web
applications.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, technologies, and frameworks used in web
development.
2. Design and implement interactive and responsive web pages using HTML, CSS,
and JavaScript.
3. Develop server-side web applications using languages such as PHP, Ruby, or
Python, and web frameworks such as Laravel, Ruby on Rails, or Django.
4. Apply web development best practices, such as version control, testing, and
deployment, to ensure the quality and maintainability of web applications.
5. Evaluate the usability, accessibility, and security of web applications and propose
improvements.
Course Contents:
1. Introduction to web technologies and web development
2. HTML and semantic markup

Page 163 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

3. CSS and responsive web design


4. JavaScript and client-side scripting
5. Document Object Model (DOM) and event handling
6. Asynchronous JavaScript and XML (AJAX) and web APIs
7. Server-side programming with PHP, Ruby, or Python
8. Web frameworks (e.g., Laravel, Ruby on Rails, Django)
9. Database integration and data persistence
10. Authentication and authorization mechanisms
11. Web security and secure coding practices
12. Web performance optimization and caching techniques
13. Web accessibility and universal design
14. Web testing and debugging tools
15. Emerging web technologies and trends (e.g., progressive web apps, serverless
computing, Web Assembly)
Recommended Textbook:
• "Web Development and Design Foundations with HTML5" by Terry Felke-Morris
Recommended Reference Books:
1. "Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript, and Web
Graphics" by Jennifer Robbins
2. "PHP and MySQL Web Development" by Luke Welling and Laura Thomson
3. "Ruby on Rails Tutorial: Learn Web Development with Rails" by Michael Hartl

Page 164 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC305 - Mobile Application Development


Course Introduction:
CSC305 introduces students to the principles, techniques, and tools used in mobile
application development. The course covers the development of mobile apps for various
platforms, such as iOS and Android, using native and cross-platform frameworks. Students
will learn about the mobile app development lifecycle, from ideation and design to
implementation and deployment. The course covers various topics, such as user interface
design, data storage and persistence, network communication, and device features and
sensors. Students will gain hands-on experience in using mobile development tools and
frameworks, such as Xcode, Android Studio, React Native, and Flutter, to create engaging
and functional mobile apps. CSC305 emphasizes the importance of user experience,
performance, and security in the development of mobile apps. By the end of the course,
students will have a solid foundation in mobile application development and be prepared
to create innovative and user-friendly mobile apps for various domains.
Course Learning Outcomes (CLOs):
1. Understand the principles, techniques, and tools used in mobile application
development.
2. Design and implement user interfaces for mobile apps using native and cross-
platform frameworks.
3. Develop mobile apps for iOS and Android platforms using languages such as Swift,
Kotlin, or Java, and frameworks such as React Native or Flutter.
4. Integrate mobile apps with device features and sensors, such as camera, GPS, and
accelerometer.
5. Apply mobile app development best practices, such as performance optimization,
security, and user experience design, to ensure the quality and usability of mobile
apps.
Course Contents:
1. Introduction to mobile application development and mobile platforms
2. Mobile app development lifecycle and methodologies

Page 165 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

3. User interface design for mobile apps


4. iOS app development with Swift and Xcode
5. Android app development with Kotlin or Java and Android Studio
6. Cross-platform app development with React Native or Flutter
7. Data storage and persistence in mobile apps (e.g., SQLite, Core Data, Realm)
8. Network communication and web services integration
9. Device features and sensors (e.g., camera, GPS, accelerometer, gyroscope)
10. Push notifications and background processing
11. Mobile app security and secure coding practices
12. Mobile app performance optimization and profiling
13. Mobile app testing and debugging techniques
14. App store submission and deployment processes
15. Emerging trends and technologies in mobile app development (e.g., augmented
reality, wearables, IoT)
Recommended Textbook:
• "iOS Programming: The Big Nerd Ranch Guide" by Christian Keur and Aaron
Hillegass
• "Android Programming: The Big Nerd Ranch Guide" by Bill Phillips, Chris
Stewart, and Kristin Marsicano
Recommended Reference Books:
1. "Mobile App Development with Ionic: Cross-Platform Apps with Ionic, Angular,
and Cordova" by Chris Griffith
2. "Flutter in Action" by Eric Windmill
3. "React Native in Action" by Nader Dabit

Page 166 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC306 - Information Security


Course Introduction:
CSC306 provides a comprehensive introduction to the principles, techniques, and tools
used in information security. The course covers the fundamental concepts of information
security, including confidentiality, integrity, availability, and non-repudiation. Students
will learn about various security threats and vulnerabilities, such as malware, network
attacks, and social engineering, and how to mitigate them using security controls and best
practices. The course covers various topics, such as cryptography, access control, network
security, and secure software development. Students will gain hands-on experience in using
security tools and techniques, such as vulnerability scanners, intrusion detection systems,
and security information and event management (SIEM) systems. CSC306 emphasizes the
importance of risk management, compliance, and ethical considerations in the field of
information security. By the end of the course, students will have a solid foundation in
information security and be prepared to design, implement, and manage secure information
systems.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and techniques used in
information security.
2. Identify and analyze various security threats and vulnerabilities, and propose
appropriate security controls and countermeasures.
3. Apply cryptographic techniques, such as encryption, hashing, and digital signatures,
to ensure the confidentiality, integrity, and authenticity of data.
4. Design and implement secure network architectures and protocols using firewalls,
intrusion detection systems, and virtual private networks (VPNs).
5. Evaluate the security of information systems and applications using risk assessment
and management techniques, and propose improvements based on industry
standards and best practices.
Course Contents:
1. Introduction to information security and its importance

Page 167 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

2. Security threats and vulnerabilities (e.g., malware, network attacks, social


engineering)
3. Cryptography and its applications (e.g., symmetric and asymmetric encryption,
hashing, digital signatures)
4. Access control models and mechanisms (e.g., discretionary, mandatory, role-based)
5. Network security and secure communication protocols (e.g., firewalls, intrusion
detection systems, VPNs)
6. Operating system security and secure system administration
7. Database security and data protection techniques
8. Web application security and secure coding practices
9. Mobile and wireless security
10. Cloud computing security and virtualization
11. Incident response and digital forensics
12. Security policies, standards, and regulations (e.g., ISO 27001, NIST, GDPR)
13. Risk management and assessment techniques
14. Ethical hacking and penetration testing
15. Emerging trends and challenges in information security (e.g., IoT security,
blockchain, AI-powered attacks)
Recommended Textbook:
• "Computer Security: Principles and Practice" by William Stallings and Lawrie
Brown
Recommended Reference Books:
1. "Applied Cryptography: Protocols, Algorithms, and Source Code in C" by Bruce
Schneier
2. "The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws"
by Dafydd Stuttard and Marcus Pinto
3. "Network Security Essentials: Applications and Standards" by William Stallings

Page 168 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC307 - Distributed Systems


Course Introduction:
CSC307 introduces students to the principles, techniques, and tools used in the design and
implementation of distributed systems. The course covers the fundamental concepts of
distributed computing, including communication, coordination, and synchronization
among distributed components. Students will learn about various distributed system
architectures, such as client-server, peer-to-peer, and cloud computing, and how to design
and implement distributed applications using these architectures. The course covers
various topics, such as distributed algorithms, fault tolerance, replication, and consistency
models. Students will gain hands-on experience in using distributed system technologies
and frameworks, such as RPC, REST, gRPC, and Apache Hadoop, to build scalable and
reliable distributed applications. CSC307 emphasizes the importance of performance,
scalability, and reliability in the design and operation of distributed systems. By the end of
the course, students will have a solid foundation in distributed systems and be prepared to
design and implement distributed applications for various domains.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and techniques used in the design
and implementation of distributed systems.
2. Design and implement distributed applications using various architectures, such as
client-server, peer-to-peer, and cloud computing.
3. Apply distributed algorithms and protocols, such as leader election, consensus, and
replication, to ensure the coordination and consistency of distributed components.
4. Analyze the performance, scalability, and reliability of distributed systems using
various metrics and tools, and propose optimizations based on the results.
5. Evaluate the trade-offs and challenges of different distributed system architectures
and technologies, and select the appropriate ones for a given application or domain.
Course Contents:
1. Introduction to distributed systems and their characteristics
2. Distributed system architectures (e.g., client-server, peer-to-peer, cloud computing)

Page 169 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

3. Communication and networking in distributed systems (e.g., sockets, RPC, REST,


gRPC)
4. Coordination and synchronization in distributed systems (e.g., clock
synchronization, mutual exclusion, leader election)
5. Distributed algorithms and protocols (e.g., consensus, replication, load balancing)
6. Fault tolerance and reliability in distributed systems (e.g., checkpointing, rollback
recovery, Byzantine fault tolerance)
7. Consistency models and data replication (e.g., eventual consistency, strong
consistency, quorum-based replication)
8. Distributed file systems and storage (e.g., NFS, HDFS, Amazon S3)
9. Distributed databases and transaction processing (e.g., two-phase commit, Paxos,
Raft)
10. Distributed computing frameworks and platforms (e.g., Apache Hadoop, Apache
Spark, Google MapReduce)
11. Distributed system security and privacy
12. Performance and scalability analysis of distributed systems
13. Monitoring and management of distributed systems
14. Case studies and real-world examples of distributed systems (e.g., Google,
Facebook, Amazon)
15. Emerging trends and challenges in distributed systems (e.g., edge computing,
serverless computing, blockchain)
Recommended Textbook:
• "Distributed Systems: Principles and Paradigms" by Andrew S. Tanenbaum and
Maarten van Steen
Recommended Reference Books:
1. "Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable,
and Maintainable Systems" by Martin Kleppmann
2. "Distributed Systems: An Algorithmic Approach" by Sukumar Ghosh

Page 170 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC308 - Cloud Computing


Course Introduction:
CSC308 introduces students to the principles, technologies, and tools used in cloud
computing. The course covers the fundamental concepts of cloud computing, including
service models, deployment models, and essential characteristics. Students will learn about
various cloud computing platforms and services, such as Amazon Web Services (AWS),
Microsoft Azure, and Google Cloud Platform (GCP), and how to use them to design,
deploy, and manage cloud-based applications and services. The course covers various
topics, such as virtualization, containerization, serverless computing, and cloud storage and
databases. Students will gain hands-on experience in using cloud computing tools and
technologies, such as Docker, Kubernetes, and AWS Lambda, to build and deploy scalable
and resilient cloud applications. CSC308 emphasizes the importance of cloud security,
compliance, and cost optimization in the design and operation of cloud-based systems. By
the end of the course, students will have a solid foundation in cloud computing and be
prepared to design, deploy, and manage cloud-based applications and services for various
domains.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and technologies used in cloud
computing.
2. Design and deploy cloud-based applications and services using various cloud
computing platforms and services, such as AWS, Azure, and GCP.
3. Apply virtualization and containerization technologies, such as virtual machines,
Docker, and Kubernetes, to build and manage scalable and portable cloud
applications.
4. Implement serverless computing and event-driven architectures using cloud
services, such as AWS Lambda and Azure Functions.
5. Evaluate the security, compliance, and cost implications of different cloud
computing solutions, and propose optimizations based on the business requirements
and constraints.

Page 171 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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

Page 172 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC309 - Data Mining


Course Introduction:
CSC309 introduces students to the principles, techniques, and tools used in data mining
and knowledge discovery. The course covers the fundamental concepts of data mining,
including data preprocessing, data warehousing, association rule mining, classification,
clustering, and anomaly detection. Students will learn about various data mining algorithms
and techniques, such as decision trees, k-nearest neighbors, support vector machines, and
neural networks, and how to apply them to real-world datasets. The course covers various
topics, such as feature selection, dimensionality reduction, and model evaluation and
selection. Students will gain hands-on experience in using data mining tools and libraries,
such as Weka, RapidMiner, and scikit-learn, to perform data mining tasks and build
predictive models. CSC309 emphasizes the importance of data quality, privacy, and ethical
considerations in the application of data mining techniques. By the end of the course,
students will have a solid foundation in data mining and be prepared to apply data mining
techniques to various domains, such as business, healthcare, and social media.
Course Learning Outcomes (CLOs):
1. Understand the fundamental concepts, principles, and techniques used in data
mining and knowledge discovery.
2. Apply data preprocessing techniques, such as data cleaning, integration, and
transformation, to prepare data for mining tasks.
3. Implement and evaluate various data mining algorithms and techniques, such as
association rule mining, classification, clustering, and anomaly detection, using data
mining tools and libraries.
4. Analyze and interpret the results of data mining tasks, and communicate the findings
and insights to stakeholders using appropriate visualizations and reports.
5. Evaluate the ethical, legal, and social implications of data mining applications, and
propose solutions to address the challenges and risks associated with data mining.

Page 173 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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.

Page 174 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC310 - Advanced Database Systems


Course Introduction:
CSC310 provides an in-depth study of advanced topics in database systems, building upon
the foundation established in the introductory database course. The course covers the
design, implementation, and optimization of modern database systems, with a focus on
scalability, performance, and reliability. Students will learn about various database
architectures and models, such as distributed databases, NoSQL databases, and graph
databases, and how to design and implement database applications using these
architectures. The course covers various topics, such as query optimization, transaction
management, concurrency control, and recovery techniques. Students will gain hands-on
experience in using advanced database technologies and tools, such as Apache Cassandra,
MongoDB, and Neo4j, to build and manage large-scale database systems. CSC310
emphasizes the importance of data integrity, consistency, and security in the design and
operation of database systems. By the end of the course, students will have a solid
understanding of advanced database concepts and be prepared to design, implement, and
optimize database systems for various applications and domains.
Course Learning Outcomes (CLOs):
1. Understand the advanced concepts, principles, and techniques used in the design,
implementation, and optimization of modern database systems.
2. Design and implement database applications using various database architectures
and models, such as distributed databases, NoSQL databases, and graph databases.
3. Apply query optimization techniques, such as indexing, partitioning, and
materialized views, to improve the performance and scalability of database systems.
4. Implement and evaluate transaction management and concurrency control
mechanisms, such as two-phase locking, optimistic concurrency control, and multi-
version concurrency control, to ensure the consistency and reliability of database
systems.

Page 175 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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

Page 176 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC401 - Machine Learning

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 Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of machine learning.

2. Apply supervised learning algorithms for classification and regression tasks.

3. Implement unsupervised learning techniques for clustering and dimensionality


reduction.

4. Evaluate and compare the performance of different machine learning models.

5. Develop machine learning solutions using popular programming languages and


libraries.

Page 177 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Machine Learning

2. Data Preprocessing and Feature Selection

3. Linear Regression

4. Logistic Regression

5. Decision Trees and Random Forests

6. Support Vector Machines

7. Naive Bayes Classifier

8. K-Nearest Neighbors

9. Ensemble Methods

10. Clustering Algorithms (K-means, Hierarchical Clustering)

11. Dimensionality Reduction (PCA, t-SNE)

12. Neural Networks and Deep Learning

13. Regularization Techniques (L1/L2 regularization, Dropout)

14. Model Evaluation and Selection

15. Ethical Considerations in Machine Learning

Recommended Textbook:

"Machine Learning" by Tom M. Mitchell, McGraw-Hill, ISBN: 0070428077

Recommended Reference Books:

1. "Pattern Recognition and Machine Learning" by Christopher M. Bishop, Springer,


ISBN: 0387310738

2. "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow" by


Aurélien Géron, O'Reilly Media, ISBN: 1492032646

Page 178 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC402 - Internet of Things (IoT)

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and architecture of IoT systems.

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.

4. Analyze and visualize IoT data for insights and decision-making.

5. Evaluate the security and privacy challenges in IoT and implement appropriate
countermeasures.

Course Contents:

1. Introduction to Internet of Things (IoT)

Page 179 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

2. IoT Architecture and Components

3. Sensors and Actuators

4. IoT Communication Protocols (MQTT, CoAP, HTTP)

5. IoT Networking (Wi-Fi, Bluetooth, Zigbee, LoRaWAN)

6. IoT Platforms and Cloud Services

7. IoT Data Analytics and Visualization

8. IoT Security and Privacy

9. IoT Application Development (Arduino, Raspberry Pi)

10. Smart Home and Smart City Applications

11. Industrial IoT and Industry 4.0

12. Wearable Devices and Healthcare IoT

13. IoT Interoperability and Standards

14. Scalability and Performance Considerations in IoT

15. Ethical and Social Implications of IoT

Recommended Textbook:

"Internet of Things: Architectures, Protocols, and Standards" by Simone Cirani, Gianluigi


Ferrari, and Marco Picone, Wiley, ISBN: 1119456746

Recommended Reference Books:

1. "Designing the Internet of Things" by Adrian McEwen and Hakim Cassimally,


Wiley, ISBN: 111843062X

2. "Building the Internet of Things with IPv6 and MIPv6" by Daniel Minoli, Wiley,
ISBN: 1118473477

3. "Mastering Internet of Things" by Peter Waher, Packt Publishing, ISBN:


1788397487
Page 180 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC403 - Advanced Networking

Course Introduction:

Advanced Networking is a course that builds upon the foundational knowledge of


computer networks and delves into more complex and specialized networking concepts.
This course aims to provide students with a deep understanding of the advanced
technologies, protocols, and architectures used in modern computer networks. Students
will explore topics such as software-defined networking (SDN), network function
virtualization (NFV), content delivery networks (CDN), and advanced network security
mechanisms. They will learn about the design and implementation of large-scale networks,
including data center networks and cloud computing environments. The course also covers
advanced routing protocols, quality of service (QoS) mechanisms, and network
performance optimization techniques. Students will gain hands-on experience in
configuring and managing advanced network devices and services using industry-standard
tools and platforms. By the end of the course, students will have a comprehensive
understanding of advanced networking concepts and be prepared to design, implement, and
troubleshoot complex network infrastructures.

Course Learning Outcomes (CLOs):

1. Understand the advanced concepts and technologies used in modern computer


networks.

2. Design and implement software-defined networks (SDN) and network function


virtualization (NFV) solutions.

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.

5. Evaluate and implement advanced network security mechanisms to protect against


threats and vulnerabilities.
Page 181 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Review of Computer Networking Fundamentals

2. Software-Defined Networking (SDN)

3. Network Function Virtualization (NFV)

4. Content Delivery Networks (CDN)

5. Advanced Routing Protocols (BGP, OSPF, IS-IS)

6. Quality of Service (QoS) Mechanisms

7. Network Performance Optimization Techniques

8. Data Center Networking

9. Cloud Computing Networking

10. Advanced Network Security (Firewalls, IDS/IPS, VPN)

11. Network Automation and Orchestration

12. Network Programmability (Python, REST APIs)

13. Wireless and Mobile Networking

14. Internet of Things (IoT) Networking

Recommended Textbook:

"Computer Networking: A Top-Down Approach" by James Kurose and Keith Ross,


Pearson, ISBN: 0133594149

Recommended Reference Books:

1. "TCP/IP Illustrated, Volume 1: The Protocols" by Kevin R. Fall and W. Richard


Stevens, Addison-Wesley Professional, ISBN: 0321336313

2. "Software Defined Networks: A Comprehensive Approach" by Paul Goransson and


Chuck Black, Morgan Kaufmann, ISBN: 0128045558

Page 182 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC404 - Elective I-Compiler Design

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.

Course Learning Outcomes (CLOs):

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.

5. Evaluate and optimize compiler performance for various programming languages


and target architectures.
Page 183 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Compiler Design

2. Lexical Analysis and Regular Expressions

3. Parsing Techniques (Top-Down and Bottom-Up Parsing)

4. Context-Free Grammars and Syntax Analysis

5. Semantic Analysis and Type Checking

6. Symbol Tables and Scope Management

7. Intermediate Code Generation

8. Code Optimization Techniques

9. Code Generation and Target Machine Architecture

10. Runtime Systems and Memory Management

11. Garbage Collection Algorithms

12. Compiler Optimization for Parallel and Distributed Systems

13. Compiler Construction Tools and Frameworks

14. Case Studies of Real-World Compilers

Recommended Textbook:

"Compilers: Principles, Techniques, and Tools" by Alfred V. Aho, Monica S. Lam, Ravi
Sethi, and Jeffrey D. Ullman, Pearson, ISBN: 0321486811

Recommended Reference Books:

1. "Engineering a Compiler" by Keith Cooper and Linda Torczon, Morgan Kaufmann,


ISBN: 012088478X

2. "Modern Compiler Implementation in C" by Andrew W. Appel and Jens Palsberg,


Cambridge University Press, ISBN: 052182060X

Page 184 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC405 - Elective II-Virtual Reality

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.

Course Learning Outcomes (CLOs):

1. Understand the principles and techniques used in the design and development of VR
systems.

2. Design and develop immersive VR applications using popular VR development


platforms and tools.

3. Apply 3D modeling, rendering, and animation techniques to create realistic VR


environments.

4. Evaluate and optimize VR system performance for various hardware and software
configurations.

5. Analyze the psychological and physiological aspects of VR and design VR


experiences that minimize motion sickness and discomfort.
Page 185 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Virtual Reality

2. VR Hardware and Devices

3. VR Software and Development Platforms

4. 3D Graphics and Rendering in VR

5. 3D Modeling and Animation for VR

6. User Interaction and Input Devices in VR

7. Spatial Audio and Sound in VR

8. Haptics and Touch Feedback in VR

9. VR Tracking and Motion Capture

10. VR Scripting and Programming

11. VR User Experience Design

12. Presence, Immersion, and Motion Sickness in VR

13. VR Applications in Gaming and Entertainment

14. VR Applications in Education and Training

Recommended Textbook:

"Virtual Reality" by Steven M. LaValle, Cambridge University Press, ISBN: 1107034256

Recommended Reference Books:

1. "Understanding Virtual Reality: Interface, Application, and Design" by William R.


Sherman and Alan B. Craig, Morgan Kaufmann, ISBN: 0128009462

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

Page 186 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of cybersecurity.

2. Identify and analyze various types of cyber threats and vulnerabilities.

3. Apply cryptographic techniques and protocols to secure data and communications.

4. Design and implement secure network architectures and access control mechanisms.

5. Evaluate and mitigate security risks in computer systems and applications.

Course Contents:

1. Introduction to Cybersecurity

2. Cryptography and Cryptographic Protocols

3. Network Security Fundamentals

Page 187 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Firewalls and Intrusion Detection/Prevention Systems

5. Secure Network Design and Architecture

6. Operating System Security

7. Application Security and Secure Coding Practices

8. Web Security and Secure Web Development

9. Database Security and Data Protection

10. Mobile and Wireless Security

11. Cloud Security and Virtualization

12. Incident Response and Forensics

13. Penetration Testing and Vulnerability Assessment

14. Social Engineering and Phishing Attacks

15. Legal and Ethical Aspects of Cybersecurity

Recommended Textbook:

"Computer Security: Principles and Practice" by William Stallings and Lawrie Brown,
Pearson, ISBN: 0134794109

Recommended Reference Books:

1. "Cryptography and Network Security: Principles and Practice" by William


Stallings, Pearson, ISBN: 0134444284

2. "The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws"
by Dafydd Stuttard and Marcus Pinto, Wiley, ISBN: 1118026470

3. "Applied Cryptography: Protocols, Algorithms, and Source Code in C" by Bruce


Schneier, Wiley, ISBN: 1119096723

Page 188 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC407 - Big Data Analytics

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of big data analytics.

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.

5. Visualize and communicate insights derived from big data analysis.

Page 189 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Big Data Analytics

2. Big Data Characteristics and Challenges

3. Data Storage and Management for Big Data

4. Hadoop Ecosystem and MapReduce

5. Apache Spark and Spark SQL

6. NoSQL Databases (MongoDB, Cassandra)

7. Data Preprocessing and Cleaning

8. Data Mining Techniques for Big Data

9. Machine Learning for Big Data

10. Text Mining and Natural Language Processing

11. Graph Analytics and Social Network Analysis

12. Data Visualization and Dashboard Design

13. Big Data Analytics Tools and Libraries

14. Performance Optimization and Scalability

Recommended Textbook:

"Big Data: Principles and Best Practices of Scalable Real-time Data Systems" by Nathan
Marz and James Warren, Manning Publications, ISBN: 1617290343

Recommended Reference Books:

1. "Hadoop: The Definitive Guide" by Tom White, O'Reilly Media, ISBN:


1491901632

2. "Learning Spark: Lightning-Fast Big Data Analysis" by Holden Karau, Andy


Konwinski, Patrick Wendell, and Matei Zaharia, O'Reilly Media, ISBN:
1449358624
Page 190 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC408 – Block-chain Technology

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of blockchain technology.

2. Analyze the architecture and components of blockchain networks, including


consensus mechanisms and smart contracts.

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.

Page 191 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Blockchain Technology

2. Distributed Ledger Technology (DLT) and Decentralization

3. Blockchain Architecture and Components

4. Cryptographic Primitives in Blockchain

5. Consensus Mechanisms (Proof of Work, Proof of Stake)

6. Types of Blockchain Networks (Public, Private, Consortium)

7. Smart Contracts and Decentralized Applications (DApps)

8. Ethereum and Solidity Programming

9. Hyperledger Fabric and Chaincode Development

10. Blockchain Interoperability and Cross-Chain Communication

11. Blockchain Security and Privacy

12. Blockchain Scalability and Performance Optimization

13. Blockchain Use Cases and Applications

14. Regulatory and Legal Aspects of Blockchain

Recommended Textbook:

"Mastering Blockchain: Unlocking the Power of Cryptocurrencies, Smart Contracts, and


Decentralized Applications" by Imran Bashir, Packt Publishing, ISBN: 1839213191

Recommended Reference Books:

1. "Blockchain Basics: A Non-Technical Introduction in 25 Steps" by Daniel


Drescher, Apress, ISBN: 1484226038

2. "Ethereum: Blockchains, Digital Assets, Smart Contracts, Decentralized


Autonomous Organizations" by Henning Diedrich, CreateSpace Independent
Publishing Platform, ISBN: 1523930470
Page 192 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC409 - Elective III-Quantum Computing

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of quantum computing,


including qubits, quantum gates, and quantum circuits.

2. Apply the mathematical foundations of quantum computing, including linear


algebra and quantum mechanics.

3. Analyze and implement quantum algorithms, such as Shor's algorithm and Grover's
algorithm.

Page 193 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Develop and simulate quantum circuits using quantum programming languages and
frameworks.

5. Evaluate the challenges and limitations of quantum computing and propose


solutions for error correction and scalability.

Course Contents:

1. Introduction to Quantum Computing

2. Mathematical Foundations of Quantum Computing

3. Quantum Bits (Qubits) and Quantum States

4. Quantum Gates and Quantum Circuits

5. Quantum Algorithms: Shor's Algorithm

6. Quantum Algorithms: Grover's Algorithm

7. Quantum Fourier Transform and Phase Estimation

8. Quantum Error Correction and Fault Tolerance

9. Quantum Programming Languages and Frameworks

10. Quantum Circuit Simulation and Emulation

11. Quantum Hardware and Architectures

12. Quantum Cryptography and Quantum Key Distribution

13. Quantum Machine Learning and Optimization

14. Quantum Simulation and Quantum Chemistry

15. Future Trends and Applications of Quantum Computing

Recommended Textbook:

"Quantum Computation and Quantum Information" by Michael A. Nielsen and Isaac L.


Chuang, Cambridge University Press, ISBN: 1107002176

Page 194 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Quantum Computing: A Gentle Introduction" by Eleanor Rieffel and


Wolfgang Polak, The MIT Press, ISBN: 0262015064

2. "Quantum Computing for Computer Scientists" by Noson S. Yanofsky and


Mirco A. Mannucci, Cambridge University Press, ISBN: 0521879965

3. "Quantum Algorithms via Linear Algebra: A Primer" by Richard J. Lipton


and Kenneth W. Regan, The MIT Press, ISBN: 0262028395

Page 195 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC410 - Elective IV-Project Management in IT

Course Introduction:

Project Management in IT is an elective course that focuses on the principles, techniques,


and tools used to effectively manage information technology projects. IT projects are
complex endeavors that require careful planning, execution, and monitoring to ensure
successful delivery within the constraints of time, budget, and quality. This course provides
students with a comprehensive understanding of the project management lifecycle, from
initiation to closure. Students will learn about various project management methodologies,
such as Waterfall, Agile, and Lean, and their application in IT projects. They will explore
project management processes, including scope management, time management, cost
management, quality management, and risk management. The course covers the use of
project management tools and techniques, such as work breakdown structures, Gantt
charts, and earned value analysis. Students will gain hands-on experience in developing
project plans, managing project teams, and communicating with stakeholders. They will
also learn about the challenges and best practices in IT project management, including
change management, stakeholder management, and project governance. By the end of the
course, students will have a solid foundation in project management principles and be
prepared to lead and contribute to successful IT projects.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of project management in the


context of IT projects.

2. Apply various project management methodologies, such as Waterfall, Agile, and


Lean, to IT projects.

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.

Page 196 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Communicate effectively with project stakeholders and manage project teams to


ensure successful project delivery.

Course Contents:

1. Introduction to Project Management in IT

2. Project Management Lifecycle and Processes

3. Project Initiation and Charter Development

4. Project Scope Management and Requirements Gathering

5. Project Time Management and Scheduling

6. Project Cost Management and Budgeting

7. Project Quality Management and Quality Assurance

8. Project Risk Management and Contingency Planning

9. Project Human Resource Management and Team Building

10. Project Communication Management and Stakeholder Engagement

11. Project Procurement Management and Vendor Selection

12. Agile Project Management and Scrum Framework

13. Lean Project Management and Kanban System

14. Project Monitoring, Controlling, and Reporting

15. Project Closure and Lessons Learned

Recommended Textbook:

"A Guide to the Project Management Body of Knowledge (PMBOK Guide)" by Project
Management Institute, Project Management Institute, ISBN: 1628253827

Page 197 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Effective Project Management: Traditional, Agile, Extreme" by Robert K.


Wysocki, Wiley, ISBN: 1119562805

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

Page 198 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC501 - Research Methodologies in Computer Science

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of research methodologies in


computer science.

2. Formulate research questions and hypotheses based on a thorough literature review


and gap analysis.

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.

Page 199 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Communicate research findings effectively through research papers, presentations,


and publications.

Course Contents:

1. Introduction to Research Methodologies in Computer Science

2. Research Paradigms: Quantitative, Qualitative, and Mixed-Methods

3. Research Design Strategies: Experimental, Quasi-Experimental, and Case Study

4. Literature Review and Problem Formulation

5. Research Questions and Hypotheses

6. Sampling Techniques and Sample Size Determination

7. Data Collection Methods: Surveys, Interviews, and Observations

8. Quantitative Data Analysis: Descriptive and Inferential Statistics

9. Qualitative Data Analysis: Coding and Thematic Analysis

10. Validity, Reliability, and Generalizability in Research

11. Research Ethics and Intellectual Property Rights

12. Writing Research Proposals and Grant Applications

13. Conducting Experimental Research in Computer Science

14. Case Studies and Field Research in Computer Science

15. Disseminating Research Findings: Papers, Presentations, and Publications

Recommended Textbook:

"Research Methods in Computer Science" by Danel Selechnik, Springer, ISBN:


3030634132

Page 200 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Research Methods for Computer Science" by Stuart Watt, Springer, ISBN:


3030729370

2. "Empirical Research Methods in Computer Science" by Marvin V. Zelkowitz,


Springer, ISBN: 3030719898

3. "Conducting Research in Computer Science and Engineering" by Syed Ahson and


Mohammad Ilyas, CRC Press, ISBN: 1498781756

Page 201 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC502 - Advanced Machine Learning

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of advanced machine learning


techniques, including deep learning, reinforcement learning, and transfer learning.

2. Design and implement neural network architectures for various tasks, such as image
classification, natural language processing, and generative modeling.

3. Apply advanced optimization techniques and regularization methods to improve


model performance and generalization.

Page 202 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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:

1. Introduction to Advanced Machine Learning

2. Deep Learning: Neural Network Architectures

3. Convolutional Neural Networks (CNNs) for Image Processing

4. Recurrent Neural Networks (RNNs) for Sequence Modeling

5. Generative Adversarial Networks (GANs) and Variational Autoencoders (VAEs)

6. Advanced Optimization Techniques: Gradient Descent Variants and Regularization

7. Transfer Learning and Domain Adaptation

8. Reinforcement Learning: Markov Decision Processes and Q-Learning

9. Deep Reinforcement Learning: Policy Gradients and Actor-Critic Methods

10. Handling Imbalanced Datasets and Class Imbalance Techniques

11. Dealing with Missing Data and Data Imputation Methods

12. Feature Selection and Dimensionality Reduction Techniques

13. Model Interpretability and Explainable AI

14. Fairness, Bias, and Ethics in Machine Learning

15. Deploying Machine Learning Models in Real-World Applications

Recommended Textbook:

"Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville, The MIT
Press, ISBN: 0262035618

Page 203 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Pattern Recognition and Machine Learning" by Christopher M. Bishop, Springer,


ISBN: 0387310738

2. "Reinforcement Learning: An Introduction" by Richard S. Sutton and Andrew G.


Barto, The MIT Press, ISBN: 0262039249

3. "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow" by


Aurélien Géron, O'Reilly Media, ISBN: 1492032646

Page 204 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC503 - Deep Learning

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.

Course Learning Outcomes (CLOs):

1. Understand the fundamental concepts and principles of deep learning, including


neural network architectures, activation functions, and optimization algorithms.

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.

Page 205 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

4. Train deep neural networks using techniques such as backpropagation, gradient


descent, and regularization.

5. Deploy deep learning models in real-world applications, considering aspects such


as model compression, quantization, and edge deployment.

Course Contents:

1. Introduction to Deep Learning

2. Neural Network Architectures and Activation Functions

3. Backpropagation and Gradient Descent Optimization

4. Regularization Techniques: Dropout, L1/L2 Regularization, and Early Stopping

5. Convolutional Neural Networks (CNNs) for Image and Video Processing

6. Recurrent Neural Networks (RNNs) for Sequence Modeling

7. Long Short-Term Memory (LSTM) and Gated Recurrent Units (GRUs)

8. Attention Mechanisms and Transformers for Natural Language Understanding

9. Autoencoders and Unsupervised Learning with Deep Networks

10. Generative Adversarial Networks (GANs) for Image Synthesis

11. Transfer Learning and Fine-Tuning Deep Models

12. Hyperparameter Tuning and Model Selection

13. Model Compression and Quantization Techniques

14. Edge Deployment of Deep Learning Models

15. Applications of Deep Learning in Computer Vision, Natural Language Processing,


and Speech Recognition

Recommended Textbook:

"Deep Learning with Python" by François Chollet, Manning Publications, ISBN:


1617294438
Page 206 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Neural Networks and Deep Learning" by Michael Nielsen, Determination Press,


ISBN: 1548792607

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

Page 207 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC504 - Elective V-Advanced Topics in Artificial Intelligence

Course Introduction:

Advanced Topics in Artificial Intelligence is an elective course that explores cutting-edge


research and emerging trends in the field of artificial intelligence (AI). AI has made
significant strides in recent years, with advancements in areas such as machine learning,
natural language processing, computer vision, and robotics. This course provides students
with exposure to advanced topics and state-of-the-art techniques in AI, enabling them to
stay at the forefront of this rapidly evolving field. Students will learn about advanced AI
algorithms, such as deep reinforcement learning, generative models, and graph neural
networks. They will explore topics such as explainable AI, AI ethics, and the societal
implications of AI systems. The course covers advanced applications of AI, including
autonomous systems, intelligent agents, and AI-driven decision-making. Students will
engage in research projects and case studies to gain hands-on experience in applying
advanced AI techniques to real-world problems. They will also learn about the challenges
and opportunities in deploying AI systems in various domains, such as healthcare, finance,
and transportation. By the end of the course, students will have a deep understanding of
advanced topics in AI and be prepared to contribute to cutting-edge research and
development in this field.

Course Learning Outcomes (CLOs):

1. Understand advanced AI algorithms and techniques, such as deep reinforcement


learning, generative models, and graph neural networks.

2. Analyze and evaluate the societal implications and ethical considerations of AI


systems.

3. Apply advanced AI techniques to real-world problems through research projects and


case studies.

4. Identify and address the challenges and opportunities in deploying AI systems in


various domains.

Page 208 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Contribute to cutting-edge research and development in the field of artificial


intelligence.

Course Contents:

1. Introduction to Advanced Topics in Artificial Intelligence

2. Deep Reinforcement Learning: Algorithms and Applications

3. Generative Models: Variational Autoencoders (VAEs) and Generative Adversarial


Networks (GANs)

4. Graph Neural Networks and Graph Representation Learning

5. Explainable AI: Interpretability and Transparency in AI Systems

6. AI Ethics: Fairness, Accountability, and Transparency

7. Societal Implications of AI: Bias, Privacy, and Security

8. Advanced Natural Language Processing: Transformers and Language Models

9. Computer Vision: Object Detection, Segmentation, and Tracking

10. Autonomous Systems and Intelligent Agents

11. AI-Driven Decision-Making and Optimization

12. AI in Healthcare: Diagnosis, Prognosis, and Personalized Medicine

13. AI in Finance: Algorithmic Trading and Risk Management

14. AI in Transportation: Self-Driving Cars and Intelligent Traffic Systems

15. Research Projects and Case Studies in Advanced AI

Recommended Textbook:

"Artificial Intelligence: A Modern Approach" by Stuart Russell and Peter Norvig, Pearson,
ISBN: 0134610997

Page 209 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville, The
MIT Press, ISBN: 0262035618

2. "Reinforcement Learning: An Introduction" by Richard S. Sutton and Andrew G.


Barto, The MIT Press, ISBN: 0262039249

3. "Ethics of Artificial Intelligence" edited by S. Matthew Liao, Oxford University


Press, ISBN: 0190905050

Page 210 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC505 - Capstone Project I

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.

Course Learning Outcomes (CLOs):

1. Identify and formulate a real-world problem or opportunity that can be addressed


through a computing system or application.

2. Conduct a thorough literature review and gather requirements for the proposed
project.

3. Design the architecture and components of the proposed system, considering


scalability, performance, and maintainability.

4. Develop a comprehensive project plan, including timelines, milestones, and


resource allocation.

5. Demonstrate effective project management skills, such as planning, scheduling, and


communication.
Page 211 of 227
Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Capstone Projects

2. Problem Identification and Formulation

3. Literature Review and Related Work

4. Requirements Gathering and Analysis

5. System Architecture and Design

6. Component Design and Specification

7. Project Planning and Scheduling

8. Resource Allocation and Budgeting

9. Risk Management and Contingency Planning

10. Ethical, Social, and Professional Considerations

11. Project Documentation and Reporting

12. Presentation and Communication Skills

13. Mentoring and Feedback Sessions

14. Project Proposal and Plan Refinement

15. Preparation for Capstone Project II

Recommended Textbook:

"Software Engineering: A Practitioner's Approach" by Roger S. Pressman and Bruce R.


Maxim, McGraw-Hill Education, ISBN: 0078022126

Page 212 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Cracking the Coding Interview: 189 Programming Questions and Solutions" by


Gayle Laakmann McDowell, CareerCup, ISBN: 0984782850

2. "The Pragmatic Programmer: From Journeyman to Master" by Andrew Hunt and


David Thomas, Addison-Wesley Professional, ISBN: 020161622X

3. "Code Complete: A Practical Handbook of Software Construction" by Steve


McConnell, Microsoft Press, ISBN: 0735619670

Page 213 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC506 - Advanced Software Development Practices

Course Introduction:

Advanced Software Development Practices is a course that focuses on the principles,


methodologies, and tools used in modern software development to ensure the delivery of
high-quality, maintainable, and scalable software systems. This course builds upon the
foundational knowledge of software engineering and introduces advanced practices and
techniques used in industry. Students will learn about agile software development
methodologies, such as Scrum and Kanban, and their application in real-world projects.
They will explore advanced topics in software design, including design patterns,
architecture patterns, and microservices. The course covers advanced testing techniques,
such as test-driven development (TDD), behavior-driven development (BDD), and
continuous integration and continuous deployment (CI/CD). Students will gain hands-on
experience in using modern development tools and frameworks, such as version control
systems, issue tracking systems, and automated build and deployment pipelines. They will
also learn about software quality assurance practices, including code reviews, static code
analysis, and performance testing. By the end of the course, students will have a deep
understanding of advanced software development practices and be prepared to apply them
in real-world software projects.

Course Learning Outcomes (CLOs):

1. Apply agile software development methodologies, such as Scrum and Kanban, in


real-world projects.

2. Design and implement software systems using advanced design patterns,


architecture patterns, and microservices.

3. Implement advanced testing techniques, such as test-driven development (TDD)


and behavior-driven development (BDD).

4. Utilize modern development tools and frameworks, including version control


systems, issue tracking systems, and automated build and deployment pipelines.

Page 214 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Ensure software quality through practices such as code reviews, static code analysis,
and performance testing.

Course Contents:

1. Introduction to Advanced Software Development Practices

2. Agile Software Development Methodologies: Scrum and Kanban

3. Advanced Software Design: Design Patterns and Architecture Patterns

4. Microservices Architecture and Design

5. Test-Driven Development (TDD) and Unit Testing

6. Behavior-Driven Development (BDD) and Acceptance Testing

7. Continuous Integration and Continuous Deployment (CI/CD)

8. Version Control Systems and Collaborative Development

9. Issue Tracking and Project Management Tools

10. Automated Build and Deployment Pipelines

11. Code Reviews and Static Code Analysis

12. Performance Testing and Optimization

13. Software Quality Assurance and Quality Control

14. DevOps Practices and Principles

15. Case Studies and Real-World Applications

Recommended Textbook:

"Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin,


Prentice Hall, ISBN: 0132350882

Page 215 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich


Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Addison-Wesley
Professional, ISBN: 0201633612

2. "Continuous Delivery: Reliable Software Releases through Build, Test, and


Deployment Automation" by Jez Humble and David Farley, Addison-Wesley
Professional, ISBN: 0321601912

3. "The DevOps Handbook: How to Create World-Class Agility, Reliability, and


Security in Technology Organizations" by Gene Kim, Jez Humble, Patrick Debois,
and John Willis, IT Revolution Press, ISBN: 1942788002

Page 216 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC507 - Data Visualization

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.

Course Learning Outcomes (CLOs):

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.

Page 217 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Data Visualization

2. Visual Perception and Cognition

3. Design Principles for Data Visualization

4. Data Preprocessing for Visualization

5. Chart Types and Their Use Cases

6. Geospatial Data Visualization and Mapping

7. Network and Hierarchical Data Visualization

8. Dashboards and Interactive Visualization

9. Tableau for Data Visualization

10. D3.js for Interactive Web-Based Visualization

11. Python Libraries for Data Visualization (Matplotlib, Seaborn, Plotly)

12. Storytelling with Data and Narrative Visualization

13. Ethical Considerations in Data Visualization

14. User Experience and Accessibility in Visualization Design

15. Case Studies and Real-World Applications

Recommended Textbook:

"Storytelling with Data: A Data Visualization Guide for Business Professionals" by Cole
Nussbaumer Knaflic, Wiley, ISBN: 1119002257

Recommended Reference Books:

1. "The Visual Display of Quantitative Information" by Edward R. Tufte, Graphics


Press, ISBN: 0961392142

Page 218 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

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

Page 219 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC508 - Ethical Hacking

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.

Course Learning Outcomes (CLOs):

1. Understand the principles and techniques used in the ethical hacking process,
including reconnaissance, scanning, exploitation, and post-exploitation.

2. Identify and analyze various types of security vulnerabilities, such as web


application vulnerabilities, network vulnerabilities, and social engineering.

3. Utilize ethical hacking tools and techniques, including port scanners, vulnerability
scanners, and exploit frameworks.

4. Conduct simulated ethical hacking exercises and penetration testing on virtual


environments.

Page 220 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Apply countermeasures and best practices for securing systems against common
attacks.

Course Contents:

1. Introduction to Ethical Hacking

2. Legal and Ethical Aspects of Ethical Hacking

3. Reconnaissance and Information Gathering

4. Scanning and Enumeration Techniques

5. Network Security and Vulnerabilities

6. Web Application Security and Vulnerabilities

7. Social Engineering and Human Factors

8. Exploitation Techniques and Tools

9. Post-Exploitation and Privilege Escalation

10. Malware Analysis and Reverse Engineering

11. Wireless Network Security and Hacking

12. Mobile Application Security and Hacking

13. Cryptography and Cryptanalysis

14. Incident Response and Forensic Analysis

15. Countermeasures and Best Practices for System Security

Recommended Textbook:

1. "The Basics of Hacking and Penetration Testing: Ethical Hacking and Penetration
Testing Made Easy" by Patrick Engebretson, Syngress, ISBN: 0124116442

Page 221 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

2. "Penetration Testing: A Hands-On Introduction to Hacking" by Georgia Weidman,


No Starch Press, ISBN: 1593275641

3. "The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws"
by Dafydd Stuttard and Marcus Pinto, Wiley, ISBN: 1118026470

4. "Metasploit: The Penetration Tester's Guide" by David Kennedy, Jim O'Gorman,


Devon Kearns, and Mati Aharoni, No Starch Press, ISBN: 159327288X

Page 222 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC509 - Capstone Project II

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.

Course Learning Outcomes (CLOs):

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.

3. Conduct comprehensive software testing, including unit testing, integration testing,


and user acceptance testing.

4. Prepare the system for deployment, considering aspects such as packaging,


installation, and user documentation.

Page 223 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

5. Demonstrate the completed system or application and present the project outcomes
to stakeholders.

Course Contents:

1. Review of Capstone Project I Outcomes

2. Agile Development Methodologies and Practices

3. Implementation of System Components

4. Integration of System Components

5. Software Testing Strategies and Techniques

6. Unit Testing and Test-Driven Development

7. Integration Testing and System Testing

8. User Acceptance Testing and Usability Testing

9. Debugging and Troubleshooting Techniques

10. Deployment Planning and Preparation

11. Packaging and Installation Procedures

12. User Documentation and Training Materials

13. Project Demonstration and Presentation

14. Lessons Learned and Retrospective Analysis

15. Future Enhancements and Maintenance Plans

Recommended Textbook:

"Software Engineering: A Practitioner's Approach" by Roger S. Pressman and Bruce R.


Maxim, McGraw-Hill Education, ISBN: 0078022126

Page 224 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Recommended Reference Books:

1. "Code Complete: A Practical Handbook of Software Construction" by Steve


McConnell, Microsoft Press, ISBN: 0735619670

2. "Agile Testing: A Practical Guide for Testers and Agile Teams" by Lisa Crispin and
Janet Gregory, Addison-Wesley Professional, ISBN: 0321534468

3. "Continuous Delivery: Reliable Software Releases through Build, Test, and


Deployment Automation" by Jez Humble and David Farley, Addison-Wesley
Professional, ISBN: 0321601912

Page 225 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

CSC510 - Professional Ethics in Computing

Course Introduction:

Professional Ethics in Computing is a course that focuses on the ethical principles,


responsibilities, and challenges faced by computing professionals in today's digital world.
As technology becomes increasingly pervasive and influential in our lives, it is crucial for
computing professionals to understand and adhere to ethical standards and make informed
decisions. This course provides students with a comprehensive understanding of the ethical
frameworks, codes of conduct, and best practices relevant to the computing field. Students
will explore various ethical theories and their application to real-world scenarios in
computing. They will examine ethical issues related to privacy, security, intellectual
property, data management, and the social impact of technology. The course covers
professional responsibilities, such as maintaining confidentiality, ensuring data integrity,
and promoting accessibility and inclusivity. Students will also learn about the legal aspects
of computing, including regulations, compliance, and liability. Through case studies,
discussions, and practical exercises, students will develop critical thinking skills and ethical
reasoning abilities. By the end of the course, students will have a solid foundation in
professional ethics and be prepared to navigate ethical dilemmas in their computing
careers.

Course Learning Outcomes (CLOs):

1. Understand the ethical principles, frameworks, and codes of conduct relevant to the
computing field.

2. Analyze and evaluate ethical issues related to privacy, security, intellectual


property, and data management in computing.

3. Apply ethical reasoning and decision-making skills to real-world scenarios in


computing.

4. Recognize and fulfill professional responsibilities, such as maintaining


confidentiality, ensuring data integrity, and promoting accessibility and inclusivity.

Page 226 of 227


Accord University, Faculty of Engineering and Computer Science Curriculum 2024-25

Course Contents:

1. Introduction to Professional Ethics in Computing

2. Ethical Theories and Frameworks

3. Codes of Ethics in Computing (ACM, IEEE, etc.)

4. Privacy and Data Protection

5. Information Security and Cybersecurity Ethics

6. Intellectual Property and Copyright

7. Data Management and Governance

8. Social Impact of Computing and Technology

9. Accessibility, Inclusivity, and Digital Divide

10. Professional Responsibilities and Accountability

11. Ethical Decision-Making and Case Studies

12. Legal Aspects of Computing

13. Regulations, Compliance, and Liability

14. Emerging Ethical Issues in Computing (AI, Machine Learning, etc.)

Recommended Textbook:

"Ethics for the Information Age" by Michael J. Quinn, Pearson, ISBN: 0134296540

Recommended Reference Books:

1. "The Cambridge Handbook of Information and Computer Ethics" edited by Luciano


Floridi, Cambridge University Press, ISBN: 0521888981

2. "Professional Ethics in Computing" by Simon Rogerson, Springer, ISBN:


3030338592

Page 227 of 227

You might also like