Computer Curriculum
Computer Curriculum
Level 3
Course Code EEX3262
Course Title Introduction to Object Oriented Programming
Credit value 2
Core/Optional Optional (Computer, Electrical, Electronics and Communication)
Course Aim/s To write Programmes in Java by applying object-oriented concepts with
appropriate error handling and code refactoring techniques for a given scenario.
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Explain the impact of object oriented paradigm over major Programming
paradigms, object oriented principles and how object oriented
Programming evolved.
CLO2: Apply code refactoring techniques and naming standards to refine the
source code in written Programmes.
CLO3: Develop solutions for a given set of problems in Java using appropriate
object oriented concepts and exception handling techniques.
Content Outline Syllabus:
(Main topics, sub
topics) Unit 1: Introduction to Object Oriented Programming
Session 1: Overview of Object Oriented Programming
Session 2: Java Programming Environment
Session 3: Data Types and Variables in Java
Session 4: Conditional and Recursions
Session 5: Objects and Classes
Session 6: Attributes, Methods and Constructors
Unit 2: Object Oriented Concepts
Session 7: Encapsulation
Session 8: Inheritance
Session 9: Polymorphism
Session 10: Refactoring, Abstraction and Reusability Mechanisms
Session 11: Errors, Exceptions handling and Debugging
Laboratory Work:
1. Write simple java Programmes to get familiar with Java control structures,
class and method declarations, refactoring techniques.
2. Write simple java Programmes to get familiar with access specifiers,
constructor, initializing an object, instantiation of an object, message passing
and mutator methods
3. Write simple java Programmes to illustrate more examples with message
passing, inheritance ,overriding and overloading
4. Write a console java Programme to solve a given problem by applying object
oriented concepts to achieve code reuse
EEX3266 Information Systems and Data Management
Level 3
Course Code EEX3266
Course Title Information Systems and Data Management
Credit value 2
Core/Optional Optional (Computer, Electrical, Electronics and communication)
Course Aim/s To design a relational database model by applying database design concepts,
techniques and data interpretation methods for a given real world scenario.
Course Learning At the completion of this course student will be able to
Outcomes (CLO):
CLO1: Describe the evolution of different types of Information systems.
CLO2: Develop Entity Relationship (ER) models using basic concepts of ER
diagrams for database modelling.
CLO3: Design relational database schema in ER model using the normal forms
(NF).
CLO4: Implement a database using suitable DBMS.
CLO5: Present analysed data to interpret useful information using appropriate
formats.
Content Outline Syllabus:
(Main topics,
subtopics) Unit 1 : Evolution of Information systems
Session 1: Different types of Information systems
Session 2: Managing Information Systems
Unit 2: Introduction to Database
Session 3: Introduction to database
Session 4: Degrees of Data Abstraction in Data Modelling
Unit 3: Database Analysis and Design
Session 5: Database system development life cycle
Session 6: Entity Relationship Model
Session 7: Integrity Rules and Constraints
Session 8: Relational Data Model
Session 9: Data Normalization and the normal forms
Unit 4: Database Users, Data manipulation & interpretation and visual
presentation
Session 10: Database Users, Data interpretation and visual presentation
Session 11: Data manipulation using Structured Query Language (SQL)
Laboratory Work:
Level 3
Course Code EEX3269
Course Title Introduction to Mobile Application Development
Credit value 2
Core/Optional Optional (Computer, Electrical, Electronics & Communication)
Course Aim/s Impart the knowledge of mobile application development platforms and constituents of
a mobile application
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Identify how different features are incorporated in mobile application designs in
different mobile platforms.
CLO2: Select appropriate mobile architecture, development platform and monetize
mechanism for a mobile application.
CLO3: Design mobile application wireframes for the identified software
specifications.
Content Outline Syllabus:
(Main topics,
Unit 1: Introduction to Mobile Applications
subtopics)
Session 1: Introduction to Mobile Applications
Session 2: Components of a Mobile Application
Session 3: Basics of Mobile Application Design
Unit 2: Mobile Operating Systems
Session 4: Introduction to Mobile Operating Systems
Session 5: Basics of Android
Session 6: Basics of iOS
Session 7: Basics of Windows Mobile
Unit 3: Mobile Hardware
Session 8: Mobile Processors
Session 9: Memory
Session 10: Sensors
Session 11: Input-Output
Unit 4: Mobile Application Development Tools
Session 12: Native Development Tools
Session 13: Cross Platform Development tools
Session 14: Publishing tools and Developer Program
Session 15: Monetization and Security
Mini Research:
Carry out a survey and identify how different features are implemented in mobile
application designs of multiple mobile platforms.
Design Class:
· Apply fundamentals of Android app design, including how to build a simple user
interface and handle user input.
· Come up with an idea, design the wireframes and, select the mobile architecture,
development platform and monetize mechanism for a mobile application as a group
Laboratory Work:
Level 3
Course Code EEX3336
Course Title Communications and Computer Technology
Credit value 3
Core/Optional Core (Computer, Electrical, Electronic & communication)
Course Aim/s To provide knowledge on fundamentals of computer technology, networking and
communication.
Course Learning At the completion of this course, student will be able to
Outcomes (CLO):
CLO1: Describe the evolution of microprocessors and computer models, and their
applications to solve real-world problems.
CLO2: Describe basic components of a microprocessor and their operations with
reference to different Instruction Set Architectures (ISAs), and peripherals
used in computers.
CLO3: Build a personal computer connected to a network using basic
components and peripherals.
CLO4: Write a simple Programme using a given ISA and simulate its operation in
fetch-execute cycle.
CLO5: Perform simple arithmetic calculations in different number systems for a
given problem.
CLO6: Describe the fundamentals of computer networking, Internet and Internet
services, and how OSI reference model is applicable in a computer
network.
CLO7: Explain security threats and preventive & recovery measures in
computers and computer networks.
CLO8: Identify components commonly used in wired and wireless
communication systems.
CLO9: Perform basic calculations related to analog and digital modulation
techniques and power in communication systems.
Laboratory work:
Level 4
Course Code EEX4347
Course Title Software Engineering
Credit value 3
Core/Optional Core (Computer)
Course Aim/s To provide knowledge to develop a software solution/s for a given problem using
appropriate software engineering concepts
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Select appropriate software development model for the development and
maintenance of diverse software products.
CLO2: Analyze the requirements gathered in technical and non-technical fields to
prepare a Software Requirement Specification (SRS).
CLO3: Design a solution for a given problem using an appropriate design method.
CLO4: Apply principles of Human Computer Interaction (HCI) in designing a
software system.
CLO5: Develop a software application integrated with a database for a given
problem.
CLO6: Use appropriate verification and validation techniques for software quality
assurance.
CLO7: Describe how basic concepts in project management can be applied to a
software project.
Content Outline Syllabus:
Mini Project:
Level 4
Course Code EEX4362
Course Title Object Oriented Design & Programming
Credit value 3
Core/Optional Elective (computer)
Course Aim/s Design and develop software solution/s by applying appropriate object oriented
concepts, design patterns and frameworks
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Apply the basic concepts of object oriented design and Programming for a
given scenario.
CLO2: Explain how abstraction mechanisms support the creation of reusable
software components.
CLO3: Perform object oriented design and analysis on real world problems.
CLO4: Document the design solutions with UML notations and diagrams.
CLO5: Select appropriate software design patterns and frameworks for different
problems.
Content Outline Syllabus:
(Main topics, sub
topics) Unit 1: Programming Concepts(2)
Laboratory work:
1. Write simple java Programmes to get familiar with Java control structures,
class and method declarations, refactoring techniques. Write simple java
Programmes to illustrate applying OOP concepts
2. Use of API, Interfaces and abstract classes
3. Write a Multithreaded Programming
4. Using Hibernate, Object Relational Mapping, use of Factory and Abstract
factory design pattern,
Level 4
Course Code EEX4366
Course Title Data Modelling and Database Systems
Credit value 3
Core/Optional Elective(Computer, Electrical, Electronics and Communication)
Course Aim/s Apply appropriate data modelling techniques to design a database system using
DBMS for a real-world scenario
Course Learning At the completion of this course student will be able to:
Outcomes (CLO): CLO1: Design a relational model through conceptualized EER and refine using the
normal forms (NF) to reduce redundancy and improve data integrity.
CLO2: Implement the relational database design in an appropriate DBMS with
database storage structures and access techniques.
CLO3: Use SQL to create, manipulate and query a database.
CLO4: Explain the role of a database administrator.
CLO5: Design a database system for web applications.
Content
(Main topics, sub Outline Syllabus:
topics)
Unit 1 Database Systems and Data Modelling Techniques
Laboratory Work:
1. Create tables and write queries to extract data
2. Create views and triggers
3.Use appropriate SQL - Stored Procedures
4. Design a Web application using XML
Get familiar with :
-Specifying path expression in XML
-* Query in XML
Mini Project:
Design a normalized relational database for a given case and implement using
an appropriate DBMS.
EEX4435 Data Structures and Algorithms
Level 4
Course Code EEX4435
Course Title Data Structures and Algorithms
Credit value 4
Core/Optional Core (Computer), Elective(Electronic and Communication)
Course Aim/s To teach students to formulate and implement an algorithm using appropriate
data structures to provide solutions for given problems.
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Use appropriate data structures in real world software applications.
CLO2: Design algorithms for solving complex problems.
CLO3: Evaluate the complexity and the efficiency of different algorithms.
CLO4: Implement an algorithm using a suitable Programming language.
Content
(Main topics, sub Outline Syllabus:
topics)
Unit 1: Algorithms
Session 1: Introduction to data structures, Algorithms and Programming
Session 2: Fundamentals of Algorithmic Problem Solving
Session 3: Analysis of Algorithm Efficiency
Session 4: Recursion
Unit 2: Fundamental Data Structures
Session 5: Lists
Session 6: Stacks
Session 7: Queue
Session 8: Binary Trees
Session 9: Binary Search Trees
Session 10: Heaps and Priority Queues. Properties Implementation
Unit 3: Sorting and Searching
Session 11: Internal Sorting
Session 12: External Sorting
Session 13: Searching
Session 14: Hashing
Unit 3: Advance Data Structure
Session 15: Graphs
Session 16: Shortest path problems
Unit 4 Theory of Algorithms
Session 17: Algorithm Designing Techniques
Session 18: Recurrence Relation
Session 19: Algorithmic complexity
Session 20: Emerging trend in the field of data structures and
algorithms
Session 21: Parallel algorithms
Laboratory Work:
Mini Project:
Apply and implement appropriate data structures and algorithms to device a
solution for a given real world problem scenario.
Course Learning At the completion of this course student will be able to:
Outcomes
(CLO): CLO1: Describe the information security overview relating to the history,
standards, governance and regulations.
CLO2: Describe the vulnerabilities relating to technical and human factors in
information security.
CLO3: Demonstrate the relationship between information security and risk
management.
CLO4: Describe algorithms and measures for enhancing security.
CLO5: Distinguish strategic and tactical design issues in information security.
Content Outline Syllabus:
(Main topics,
sub topics) Unit 1: Information Security overview
Session 01: History and overview
Session 02: Security principles and mechanisms
Session 03: Data protection standards
Session 04: Computer Forensics
Unit 2: Vulnerabilities: technical and human factors
Session 05: Role of human behavior in security system design
Session 06: Fault tree analysis and code reviews
Session 07: Security Attacks
Session 08: Ransomware and Malware
Unit 3: Resource protection models, Message authentication codes, Secret and
public key cryptography
Session 9: Resource protection models
Session 10: Cryptography
Session 11: Symmetric algorithm design and implementation issues
Session 12: Encryption using secret key
Session 13: Message authentication codes
Session 14: Public Key Infrastructure(PKI)
Unit 4: Network and web security
Session 15: Transport layer security (TLS)
Session 16: Secure Network Access
Session 17: Security in Software
Unit 5: Secure Computing
Session 18: Authentication
Session 19: Trusted computing
Session 20: Side-channel attacks
Case Study:
Level 5
Course Code EEX5280
Course Title Creative Design
Credit Value 2
Core/ Optional Optional (Computer, Electrical, Electronics & Communication)
Course Aim/s The aim of this course is to develop ability to understand, contextualize and analyze
engineering designs catered to solve an identified problem and communicate to
stakeholders
Course At the completion of this course student will be able to:
Learning CLO1: Explain the principles of design process with respect to the design environment
Outcomes and develop a holistic view.
(CLOs) CLO2: Carry out a need analysis and a requirement analysis.
CLO3: Design products to cater the need applying innovative ideas.
CLO4: Evaluate the proposed design against social, economic and environment
impacts.
Content (Main Outline Syllabus:
topics, Session 1: Introduction and Principles of design
subtopics) Problem identification, Ideate and Innovation, what is design, Design
Environment, Holistic design, Intellectual Property, 10 step design process- Dieter
Rams, Different design methods, Physical laws, Principles of reliability (design, cost
and probability)
Session 2: Design in practice
How people treat different things, Research: stakeholder analysis / market
research, Environmental impacts, Socio economic impact / constraints, Design
process, Descriptive, prescriptive, Cost models, Design for manufacture and
assembly
Session 3: Psychology in design
Theoretical aspects, Social psychology- establishing relationships, Motivation,
Different thinking pattern- divergent, convergent, Evaluating ideas, Different
mental, approaches- mind mapping, Left brain-right brain, Reflection- as a process
of learning, Pattern Breaking-(Thinking differently ,Changing your point of view),
Idea-collection processes-(Brainstorming/Brain-writing, Metaphoric thinking,
Outrageous thinking), Mapping thoughts, Systematic logical thinking, Using math
concepts
Session 4: Designing tools and Product Development
K-scripts for dialogue systems, State machines, Usability testing methods,
Development concept, Product development process, Scope of the product
development-(Technical questioning, Harvard business case methodology),
Functional decomposition, Reverse engineering, Bench making and establishing
engineering specification
Session 5: Evaluation
Evaluation Mechanisms, Social impact, cost impact, Usability testing, Performance
evaluation.
Laboratory work:
1. Demonstrate the functionalities of the development system board using
self-test method.
2. Implement the embedded system using development system board as a
prototype model
3. Analyze energy usage of the prototype model for different configurations.
Design Project:
Design an embedded system for a real-world application fulfilling the given
specifications.
Mini Project
Provide a critical analysis based on a comprehensive literature survey on a
given topic.
Level 5
Course Code EEX5467
Course Title Software testing and quality assurance
Credit value 4
Core/Optional Elective (Computer)
Course Aim/s To develop competencies of students to apply principles and concepts of testing and
quality assurance to perform as a professional in software development process.
Course At the completion of this course student will be able to:
Learning
Outcomes CLO1: Demonstrate the ability to plan tests including the selection of techniques and
(CLO): methods to be used to validate the product against its approved requirements
and design.
CLO2: Demonstrate the ability to execute tests, design test cases; use test tools; and
monitor testing to ensure correctness and completeness in a software quality
assurance team.
CLO3: Apply different testing techniques in an effective and efficient manner to test
different software problems.
CLO4: Analyse a software process to evaluate how effective it is at promoting quality.
CLO5: Identify industry wide quality standards and processes to apply in different type
of businesses.
Content Outline Syllabus:
(Main topics,
subtopics) Unit 1: Introduction to Software Quality Assurance
Session 1: Definitions of Quality and Quality attributes of software and Quality
Vocabulary
Session 2: Societies concerns for Quality, the costs/impact of bad quality and
Cost of Quality Model
Session 3: The dimensions of quality engineering and roles of people
Laboratory Work:
Interface I/O devices with computers developing necessary software.
Requirements: analyze pipelines, parallel port, serial port, ISA, PCI card
Level 6
Course Code EEX6181
Course Title Research Methodology and Project Identification (Computer Engineering)
Credit value 1
Core/Optional Core
Course Aim/s To provide the student with knowledge of research-based approach in providing solutions to
engineering problems
Course After completion of this course student will be able to:
Learning
CLO1: Demonstrate the knowledge of types of research designs, quantitative and qualitative
Outcomes
forms of research, and use the most appropriate design for a given issue.
(CLO):
CLO2: Create problem statement, purpose statement, research problem and objective of a
research.
CLO3: Conduct a literature survey effectively in view of information collection with regard to
a given issue, critically evaluate outcomes of literature survey, and document them
with recognized referencing methods.
CLO4: Prepare a research proposal based on preliminary investigations.
CLO5: Describe ethical issues concerning research and identify and avoid such issue in
engineering research.
CLO6: Plan and execute substantially research based projects with innovativeness and
initiative and with a personal autonomy and accountability.
CLO7: Prepare research abstracts and full length articles according to standard formats.
Content Outline Syllabus:
(Main topics,
sub topics) Session 01: Meaning and objectives of research
Session 02: Types of research
Session 03: Literature survey and referencing methods
Session 04: Defining a research problem
Session 04: Preparation of a research proposal
Session 05: Ethics in research
Session 06: Dissemination of research outcomes and patenting
Activities:
Workshop on research problem formulation
EEX6236 Advanced Computer Architecture
Level 6
Course Code EEX6236
Course Title Advanced Computer Architecture
Credit value 2
Core/Optional Core (Computer)
Course Aim/s To disseminate knowledge of techniques to improve the performance of
processor and computer system.
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Observe the evolution of instruction sets to improve performance and the
enhancement of instruction sets for different application domains.
CLO2: Compare various techniques and approaches used for parallel processing
and Programming.
CLO3: Distinguish Multi/many-core architectures and Distributed system
architectures including their Programming techniques, models,
frameworks, and languages.
CLO4: Explain memory organization in parallel computing systems and
mechanisms used to improve performance and the reliability of the
memory system.
CLO5: Create parallel Programmes to a target platform for given problems.
Content
(Main topics, sub Outline Syllabus:
topics)
Unit 1: Instruction set Architecture, Computer Arithmetic and Processor
organization (3 sessions)
Describe features and applications of short vector instruction sets:
Streaming extensions, AltiVec, relationship between computer
architecture and multimedia applications.
Describe algorithms for higher-complexity functions, such as square
roots and transcendental functions.
Mini Research:
Review research papers to analyze contemporary computer architectures and
their impacts on computer performance
Level 6
Course Code EEX6335
Course Title Compiler Design
Credit value 3
Core/Optional Core (Computer)
Course Aim/s Aim of this course is to provide required knowledge and skills to develop
compiler for real applications.
Course Learning At the completion of this course student will be able to :
Outcomes (CLO):
CLO1: Develop grammar for a compiler by analysing a target application
CLO2: Apply the principles of theory of computation to develop the compiler
based on the grammar developed.
CLO3: Create scanner, parser and code generator of the compiler using LEX
and YACC tools.
CLO4: Construct the compiler of the target application.
CLO5: Validate the constructed compiler with a selected set of samples for the
target application.
Content Outline Syllabus:
(Main topics,
subtopics) Unit 1: Theory of Computation
Session 01: Grammars: Properties of Context Free Grammars
Session 02: Finite State Automata and Regular Expressions
Session 03: Pushdown Automata
Session 04: Turing Machines
Design Project:
Content (Main Various contemporary and future trends in technology, delivered by thought
topics, leaders such as Industry representatives, leading researchers and other academics.
subtopics)
Level 7
Course Code EEX7241
Course Title Neural Networks and Fuzzy Logic
Credit Value 2
Core/ Optional Optional (Computer, Electrical)
Course Aim/s To be able to apply neural network concepts and fuzzy logic for learning and prediction in
intelligent systems.
Course At the completion of this course student will be able to:
Learning
CLO1: To create neural networks with suitable learning algorithms and architectures to
Outcomes
solve a given problem.
(CLOs)
CLO2: To generate Fuzzy rules in order to create fuzzy interference systems
CLO3: To apply neuro-fuzzy systems in Signal processing, communication systems and
optimization system.
Content (Main Outline Syllabus:
topics, sub
Unit 1:
topics)
Session 1: Review of Fundamentals of Artificial Neural Networks (ANNs):
Neuron Physiology, Network architectures and learning processes, Single
and multilayer perceptions, Back propagation algorithm
Session 2: Learning Algorithms:
Learning paradigms (Supervised, unsupervised, recurrent) with examples
Session 3: Different types of Neural network models:
Multilayer systems, radial basis function, simulation packages
Session 4: Competitive networks:
Self-organizing maps and applications
Session 5: Deep learning Networks:
Introduction, Convolution networks, Issue with Deep learning
Unit 2:
Session 6: A review of fuzzy set theory:
crisp values, linguistic variables, fuzzy sets, fuzzy rules and fuzzy
reasoning
Session 7: Fuzzy relations and fuzzy rule-based systems:
fuzzifier, fuzzy rule base, fuzzy inference systems, defuzzifier
Session 8: Fuzzy systems:
Design and implementation of fuzzy systems and applications
Session 9: Principal components analysis:
Application of PCA in Neural network and Fuzzy systems, real world
applications, short comings in PCA
Session 10: Neuro-Fuzzy Modeling:
Fuzzy neural networks, Neuro-Fuzzy Control, designing neuro-fuzzy
systems,
Level 7
Course Code EEX7244
Course Title Data Mining
Credit Value 2
Core/ Optional Optional (Computer)
Course Aim/s To equip the students with different Data mining algorithms and computational
paradigms that allow computers to find patterns and regularities in databases, perform
prediction and forecasting, and generally improve their performance through interaction
with data.
Course Learning At the completion of this course students will be able to:
Outcomes (CLO)
CLO1: Describe and apply basic concepts and techniques of data mining.
CLO2: Apply different methods to extract processed information from large amounts of
data, both in theory and in practical applications.
CLO3: Apply the learnt methods with the use of recent data mining software tools for a
given scenario/dataset.
CLO4:- Extract and present new information and insights with respect to the analysed
scenario/data set.
Content (Main Outline Syllabus:
topics,
Session 01: Introduction to Data Mining - What is data mining?, Related technologies -
subtopics)
Machine Learning, DBMS, OLAP, Statistics,
Session 02: Basics of Data mining - Data Mining Goals, Stages of the Data Mining Process,
Data Mining Techniques, Knowledge Representation Methods
Session 03: Data pre-processing - Data cleaning, Data transformation, Data reduction,
Discretization and generating concept hierarchies
Session 04: Introduction to Data mining System – Installing of the Data Mining System,
Experiments with the system - filters, data cleaning
Session 05: Data mining knowledge representation - Task relevant data, Background
knowledge, Interestingness measures, Representing input data and output
knowledge, Visualization techniques
Session 06: Attribute-oriented analysis - Attribute generalization, Attribute relevance,
Class comparison, Statistical measures, use of filters
Session 07: Data mining algorithms- Association rules - Motivation and terminology,
generating item sets and rules efficiently, Correlation analysis, mining
association rules
Session 08: Data mining algorithms: Classification - Basic learning/mining tasks,
inferring rudimentary rules: 1R algorithm, Decision trees, Covering rules,
Implementation with a DM software
Session 09: Data mining algorithms: Prediction - Prediction task, Statistical (Bayesian)
classification, Bayesian networks, Instance-based methods (nearest
neighbour), Linear models, Implementation with a DM software
Session 10: Clustering- Introduction to clustering, Partitioning methods: k-means,
expectation maximization (EM), Hierarchical methods: distance-based
agglomerative and divisible clustering, Implementation with a DM software
Session 11: Clustering different source data - Clustering streaming data, Clustering graph
data and network data, Constraint-based clustering and semi-supervised
clustering, Application examples of cluster analysis
Session 12: Mining real data - Pre-processing data from a real domain, applying various
data mining techniques to create a comprehensive and accurate model of the
data.
Level 7
Course Code EEX7337
Course Title System Design in Groups
Credit value 3
Core/Optional Core (Computer)
Course Aim/s Design and develop a solution for a given problem as a team.
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Apply systems engineering principles throughout a computer system’s life
cycle, including important trade-offs to design a target application.
CLO3: Develop user experience design for a target computer system using
appropriate tools.
Design project
Level 7
Course Code EEX7340
Course Title AI Techniques and Agent Technology
Credit value 3
Core/Optional Optional (Computer)
Course Aim/s To equip students with concepts of knowledge representation and reasoning in AI
and develop solution mechanisms for real world problems using different
applications of AI.
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Apply suitable knowledge representation mechanism for different
scenarios
CLO2: Evaluate the applicability of different reasoning mechanisms in a given
situation.
CLO3: Select an appropriate searching method to design an algorithm
CLO4: Implement a solution in Prolog to solve a given problem
CLO5: Build an expert system for an identified scenario
CLO6: Design and implement simple agent based solutions for real world problems
Content Outline Syllabus:
(Main topics,
subtopics) Unit 01 Introduction and KRR mechanisms
Session 1: Introduction to AI –History, development, different thought
schools,
Session 2: Knowledge Representation – rule-based systems, frames,
semantic nets, scripts
Session 3: Propositional logic for knowledge representation – logical
operators, truth tables, representing natural language
sentences in propositional logic
Session 4: Predicate logic for knowledge representation – quantifiers,
representing natural language sentences in predicate logic
Session 5: Resolution in predicate logic – conversion of predicate logic
to CNF, principle of resolution, unification
Session 6: Foundations of reasoning mechanisms – deductive,
abductive, inductive, case based, analogical
Session 7: Basic search methods – data driven/goal driven, depth first,
breadth first etc, and applications
Session 8: Heuristic search methods – hill climbing, A*, best first,
beam search
Session 9: Constraint satisfaction- forward checking, identifying most
constrained variable, heuristic repair
Unit 02 Introduction to AI languages
Session 10: Introduction to AI languages – Prolog, Lisp, Java
Session 11: Basic operations in prolog –facts, queries, writing rules,
recursions
Session 12: Data structures and file handling- data objects, lists,
operators, backtracking, implementations
Unit 03 AI Techniques
Session 13: Expert Systems – representation, development
methodologies and tools, inference engine, uncertainty
handling, knowledgebase
Session 14: Game Playing – minimax algorithms, Alpha-beta cutoffs,
reference on specific games
Session 15: Intelligent Agents – introduction, properties,
classifications, architectures Graphs - Representation of
graphs
Session 16: Multi Agent Systems – introductions, properties,
development
Session 17: Multi Agent system development – introduction to
different tool kits, JaDE, MadKit, practical developments
of mini real world
Session 18: Current trends in AI – emerging areas, major break
throughs, future directions
Laboratory work:
Mini Project:
Level 7
Course Code EEX7436
Course Title Processor Design
Credit value 4
Core/Optional Core (Computer), Elective (Electronic and Communication)
Course Aim/s To provide design principles, techniques and hands-on experience on design
simulation and construction of digital hardware and processors.
Course Learning At the completion of this course student will be able to:
Outcomes (CLO):
CLO1: Design an instruction set by analyzing the requirements of a targeted
application.
CLO2: Design main components of a processor necessary for the data path
design.
CLO3: Construct the processor by interconnecting previously designed
components.
CLO4: Evaluate the processor implemented in VHDL for its cost and
performance.
CLO5: Perform the implementation of the processor on FPGAs using
hardware/software tools for testing.
Content
(Main topics, sub Outline Syllabus:
topics)
Fundamentals of Computer design:
Task of a computer designer, Technology, Cost, Performance, Design
methodologies, design levels, design cycle, ethics
Processor design:
Instruction set design, ALU design, and arithmetic processors. Control
design.
VLSI design:
Behavioural design & system specification; VHDL, modelling simulation.
Logic design, schematic capture, synthesis; Implementation in PLD’s.
Security & safety
Performance & cost analyzing
Relevant tools, standards and/or engineering constraints:
o Describe and contrast two hardware description languages, such as
VHDL and Verilog, and identify tools to simulate computer system at
different levels of design abstraction: system, ISP, register-transfer
(RTL), and gate level.
o Discuss the effect of a processor’s arithmetic unit on its overall
performance.
Computer arithmetic:
o Discuss the effect of a processor’s arithmetic unit on its overall
performance.
Processor organization:
o Design a data path and a hard-wired control unit for a simple instruction
set architecture.
o Design arithmetic units for multiplication, division, and floating-point
arithmetic.
Laboratory Work:
Synthesize digital circuits on FPGA
1. implement digital circuits based on digital components using VHDL and
implement them on FPGAs
2. implement circuits to access memory in FPGA
3. implement the designed processor/digital system on FPGA
Design Project:
Design, implement and analyse an Application Specific Processor/Digital system
Level 4
Course Code EEY4181
Course Title Group Project (Computer Engineering)
Credit value 1
Core/Optional Core
Course Aim/s Aim of this course is to instil in learners the ability to investigate problems and/or
issues by following a methodical and a shared approach, to discover the required
areas of knowledge in providing sustainable solutions.
Course Learning CLO1: To apply concepts and principles in a related area of study; analyse
Outcomes information and suggest solutions to selected problems.
(CLO):
CLO2: To communicate successfully, the results of analysis and arguments to
specialist and non-specialist audiences.
CLO4: To display qualities and transferable skills as well as subject specific skills
necessary for employment, carry out further training and to manage their
own learning.
Content The content is based on prior learning and information researched.
EEY7881 Engineering Research Project (Computer Engineering)
Level 7
Course Code EEY7881
Course Title Engineering Research Project (Computer Engineering)
Credit value 8
Core/Optional Core
Course Aim/s Aim of this course is to carry out an industry-based project during the final year, in
order to demonstrate learners’ exposure to professional engineering practice. It
should also demand individual analysis and judgement, assessed independently
from the work of others. Learners are encouraged to undertake Projects in their
main discipline or to undertake projects of inter-disciplinary nature.
Course Learning CLO1: To engage with selected information in the research literature to construct
Outcomes (CLO): new knowledge related to the Research Question, the learner plans to
investigate.
CLO2: To plan out the investigation of a complex engineering problem using
research-based knowledge and research methods including design of
experiments, analysis and interpretation of data, and synthesis of
information to provide valid conclusions.
CLO3: To display qualities and transferable skills as well as subject specific skills
necessary to communicate successfully, to a specialist audience.
CLO4: To construct/create/make/build knowledge based on established pre-
knowledge and techniques, using the Scientific Method.
CLO5: To apply suitable/recognised methods, tools and procedures when
executing the work.
CLO6: To demonstrate individual analysis and judgement based on reflective
learning (Concrete Experience, Reflective Observations, Abstract
Conceptualisation, and Active Experimentation).
CLO7:To verify accuracy and relevance of the proposed methodology and research
findings.
CLO8: To design and develop suitable concepts and models (graphical,
mathematical, statistical, prototype) to analyse, interpret and
communicate research findings.
CLO9: To disseminate research findings in a professional and ethical manner.
Content The content is based on prior learning and information researched.