curriculum b.e computer software€¦ · ee221-digital logic design.....19 cs220-database systems...

125
1 CURRICULUM B.E Computer Software Applicable from Fall 2010 Department of Computer Software Engineering Military College of Signals National University of Sciences and Technology

Upload: others

Post on 03-Jun-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

1

CURRICULUMB.E Computer Software

Applicable from Fall 2010

Department of Computer Software Engineering

Military College of Signals National University of Sciences and Technology

Page 2: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in
Page 3: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

i

Table of ContentsTable of Contents...................................................................................................... i1. Introduction ......................................................................................................... 1

1.1 The Discipline of Software Engineering ............................................. 11.2 Vision .................................................................................................. 11.3 Aim...................................................................................................... 11.4 Software Engineering Degree Programs ............................................. 11.5 Objectives of BE Computer Software Degree Program ...................... 31.6 Guidelines and standards..................................................................... 31.7 Area-wise List of Courses ................................................................... 41.8 Definitions and Keywords used in this Document. ............................. 9

2. Semester Wise Breakdown of Program ............................................................. 103. Course Contents................................................................................................. 13

3.1 Computing Core Courses .................................................................. 13CS110-Fundamentals of Computer Programming .................... 13CS212-Object Oriented Programming ...................................... 16CS250-Data Structures and Algorithms.................................... 18EE221-Digital Logic Design..................................................... 19CS220-Database Systems ......................................................... 20CS330-Operating System.......................................................... 20SE200-Software Engineering.................................................... 23MATH161-Discrete Mathematics............................................. 24CS320-Computer Networks ...................................................... 25CS260-Human Computer Interaction........................................ 27EE321-Computer Architecture & Organization........................ 27SE499-Senior Project ................................................................ 29

3.2 Software Engineering Core Courses.................................................. 30SE210-Software Design & Architecture ................................... 30SE312-Software Construction................................................... 30CS321-Software Quality Engineering....................................... 33CS311-Software Requirement Engineering .............................. 31SE430-Software Project Management ...................................... 34SE320-Formal Methods ............................................................ 35

3.3 Supporting Science Core Courses ..................................................... 36MATH111-Calculus-I ............................................................... 36MATH361-Probability and Statistics........................................ 37MATH222-Linear Algebra ....................................................... 37PHY101-Applied Physics ......................................................... 38

3.4 General Education Core Courses....................................................... 40HU109-Communication & Interpersonal Skills........................ 40HU218-Technical Business Writing ......................................... 42HU107-Pakistan Studies ........................................................... 43HU101-Islamic Studies ............................................................. 44HU222-Professional Ethics ....................................................... 44

Page 4: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

ii

CS100-Fundamentals of ICT .................................................... 46GMT471-Entrepreneurship ....................................................... 46

3.5 Software Engineering / Computing Electives.................................... 48CS352-Theory of Automata and Formal Languages................. 48CS381-Networks Security......................................................... 50CS370-Artificial Intelligence .................................................... 51CS473-Theory of Intelligent Systems ....................................... 51CS426-Digital Image Processing .............................................. 53CS361-Computer Graphics ....................................................... 55CS332-Distributed Computing.................................................. 55CS344-Web Engineering........................................................... 58MATH352-Numerical Methods ................................................ 58CS380-Introduction to Computer Security................................ 60CS481-Computer Forensics ...................................................... 61CS334-Open Source Systems.................................................... 63CS482-System Incident Handling ............................................. 65CS483-Information Security Management................................ 67CS423-Data Warehousing and Data Mining ............................. 68CS340-Web Technologies-I ...................................................... 70CS441-Web Technologies-II..................................................... 70SE423-Software Metrics ........................................................... 72SE422-Software Testing ........................................................... 74SE431-Software Engineering Economics ................................. 74CS453-Programming Languages .............................................. 76CS471-Machine Learning ......................................................... 77CS472-Natural Language Processing........................................ 77CS322-RDBMS Using Oracle .................................................. 79CS414-Advanced Java with emphasis on Internet Applications .............................................................................. 80CS331-System Programming.................................................... 80CS362-Multimedia System and Design .................................... 81SE301-Object Oriented Software Engineering ......................... 83SE490-Advanced Topics in Software Engineering ................... 83CS222-Data Communication .................................................... 85CS321-Advanced Database Systems......................................... 87CS425-Management Information Systems................................ 88CS443-e-Commerce and Solutions ........................................... 90CS342-Mobile Computing ........................................................ 91CS251-Design and Analysis of Algorithms .............................. 91CS424-Information Retrieval .................................................... 93CS433-Applied Parallel Computing.......................................... 93CS213-Advanced Programming................................................ 95EE321-Signals and Systems...................................................... 96SE440-Business Process Automation ....................................... 96SE313-Design Patterns.............................................................. 97EE430-Telecommunication Systems ........................................ 98CS427-Wireless Networks ...................................................... 100

3.6 Supporting Sciences Electives......................................................... 101

Page 5: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

iii

MATH133-Engineering Mathematics..................................... 101MATH234-Multivariable Calculus ......................................... 101MATH221-Number Theory.................................................... 102CS353-Fundamentals of Cryptography................................... 103OTM455-Planning Engineering Project Management............ 105EE102-Basic Electrical Engineering....................................... 107EE210-Basic Electronics......................................................... 108EE477-Analog and Digital Communications.......................... 109MATH351-Numerical Methods.............................................. 110EE331-Digital Signal Processing............................................ 111EE215-Electronic Circuits & Devices..................................... 112EE414-Digital Electronics ...................................................... 114

3.7 General Education Electives............................................................ 115ECO130-Engineering Economics ........................................... 115HU443-Psychology................................................................. 117GMT164-Introduction to Management ................................... 118GMT175-Intellectual Property Rights .................................... 119

Page 6: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in
Page 7: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

1

1. Introduction1.1 The Discipline of Software EngineeringSoftware Engineering is the discipline of creating high-quality software environment in a systematic, controlled and efficient manner, while maintaining it affordably. It involves the application of engineering concepts, techniques, and methods to develop the software systems. A software engineering program develops professionals who have a mastery of software development principles, theory, practice, and process. Software Engineering aims to use the science and technology already available to create products and tools for use. Software Engineering derives its essence from computer science as other engineering disciplines do from natural or life sciences, with an emphasis on issues of process, design, measurement, analysis and verification providing a strong foundation in engineering principles and practices as applied to software development.

1.2 VisionThe Software Engineering education at MCS NUST is focused on imparting the knowledge and training to students which enable them to harmonize theory with practice, concept with application, and problem with solution. It prepares them to ably apply engineering principles, processes and practices to software components and systems, and their maintenance. The program also, in addition to students’ professional growth, attends to development of their personal and interpersonal skills. It helps students to enhance their ability in oral and written communication, and their adaptability to group-work environments. The program strives to develop a capacity in the professionals for innovation and a passion for life long learning. SE curricula thus developed reflect the aim to satisfy professional demands of the industry and academia. The graduates thus produced are adequately equipped to exploit the opportunities and answer the challenges offered by the modern world.

1.3 AimThe aim of Department of Computer Software Engineering is to “Conduct Bachelor of Engineering in Software Engineering, Master of Science in Computer Sciences and Ph.D Programs Under (National University of Science and Technology), with the objective to produce competent Software Engineers and researchers to face the technological challenges of 21st century”.

1.4 Software Engineering Degree Programs

Page 8: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

2

Department of Computer Software Engineering at MCS NUST presently running three programs of Software Engineering, these are:-

Bachelor of Engineering in Computer Software - BE Computer Software Engineering - BE (CSE)

Master of Science in Computer Software Engineering - MS Computer Software Engineering - MS (CSE)

Doctor of Philosophy in Software Engineering - Ph.D. Software Engineering - Ph.D.

The Department of Computer Software Engineering focuses on conducting the Bachelor of Engineering Degree course in Software Engineering consisting of 136 credits to be completed in 4 years.

Page 9: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

3

1.5 Objectives of BE Computer Software Degree ProgramThe main objective of Computer Software Engineering programme is to produce Software Engineers who have a strong knowledge and skills related to principles, theory, practices and processes necessary to produce quality software systems.

1.6 Guidelines and standardsThe curriculum is based on HEC’s guidelines for Bachelor’s program in Software Engineering. The course breakdown as suggested by HEC isshown in Table 1.1.

Table 1.1 HEC Guidelines

Major AreasCore/Required

Electives CHs

Computing 4321

8864.70%

Software Engineering 18Software Engineering (Application Domain)

- 6

Supporting Studies (Math/Science )

12 921

15.45%

General Education 15 1227

19.85%

Total88 48

13664.70% 35.30%

The MCS-NUST revised curriculum revised in March, 2010 is shown in the table 1.2.

Page 10: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

4

Table 1.2 MCS-NUST Revised Curriculum (March, 2010)

Major Areas Core/ Required

Electives CHs

Computing 47

2087

63.97%Software Engineering 20Software Engineering (Application Domain)

-

Supporting Studies (Math/Science ) 13 1023

16.91%

General Education 16 1026

19.12%

Total 96 40

13670.58% 29.42%

1.7 Area-wise List of CoursesList of courses in each category are listed below.

A. Computing Core Courses

S.No Course Code Course Name Lec/Lab CHs

1CS110 Fundamentals of Computer

Programming3-1 4

2 CS212 Object Oriented Programming 3-1 4

3 CS250 Data Structures & Algorithms 3-1 4

4 EE221 Digital Logic Design 3-1 4

5 CS220 Database Systems 3-1 4

6 CS330 Operating Systems 3-1 4

7 SE200 Software Engineering 3-0 3

8 MATH101 Discrete Mathematics 3-0 3

9 CS320 Computer Networks 3-1 4

10 CS260 Human Computer Interaction 3-0 3

11EE321

Computer Architecture and Organization

3-1 4

12SE499 Senior Project

0-30-3

6

Total 47

B. Software Engineering Core Courses

Page 11: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

5

S.No Course Code Course Name Lec/Lab CHs

1 SE312 Software Construction 3-1 4

2 SE210 Software Design and Architecture 3-1 4

3 SE321 Software Quality Engineering 3-0 3

4 SE430 Software Project Management 3-0 3

5 SE320 Formal Methods 3-0 3

6 SE311 Software Requirements Engineering 3-0 3

Total 20

C. Supporting Science Core Courses

S.No Course Code Course Name Lec/Lab CHsl MATH111 Calculus I 3-0 3

2 MATH361 Probability and Statistics 3-0 3

3 MATH222 Linear Algebra 3-0 3

4 PHY101 Applied Physics 3-1 4

Total 13

Page 12: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

6

D. General Education Core Courses

S.No Course Code Course Name Lec/Lab CHs1

HU109Communication and Interpersonal

Skills 2-0 2

2 HU218 Technical & Business Writing 2-0 2

3 HU107 Pakistan Studies 2-0 2

4 HU101 Islamic Studies 2-0 2

5 HU222 Professional Ethics 2-0 2

6 CS100 Fundamentals of ICT 2-1 3

7 GMT471 Entrepreneurship 3-0 3

Total 16

E. Computing/SE Electives

S. No Course Code Course Name Credit Hours

1 CS 332 Distributed Computing 3-1

2 CS 222 Data Communication 3-0

3 CS 423 Data Warehousing and Data Mining 3-1

4 CS 321 Advanced Database Systems 3-0

5 CS 340 Web Technologies-I 2-1

6 CS 381 Network Security 3-0

7 CS 443 E-Commerce and Solutions 3-0

8 CS 251 Design and Analysis of Algorithms 3-0

9 CS 370 Artificial Intelligence 3-1

10 CS 425 Management Information Systems 3-0

11 CS 490 Advanced Topics in Computing 3-0

12 CS 427 Wireless Networks 3-0

13 CS 361 Computer Graphics 3-1

14 EE 430 Telecommunication Systems 3-0

15 CS 342 Mobile Computing 3-0

16 CS 424 Information Retrieval 3-0

17 CS 426 Digital Image Processing 3-1

18 CS 433 Applied Parallel Computing 2-1

19 CS 213 Advanced Programming 3-1

Page 13: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

7

20 EE 231 Signals and Systems 3-0

21 EE 331 Digital Signal Processing 3-1

22 SE 440 Business Process Automation 3-0

23 SE 313 Design Patterns 2-1

24 SE 423 Software Metrics 3-0

25 SE 422 Software Testing 3-0

26 SE 431 Software Engineering Economics 3-0

27 CS 453 Programming Languages 3-0

28 CS 471 Machine Learning 3-1

29 CS 472 Natural Language Processing 3-0

30 BIO 317 Computational Biology 3-0

31 BIO 215 Bioinformatics 3-0

32 CS 352Theory of Automata and Formal Languages 3-0

33 CS 322 RDBMS Using Oracle 2-1

34 CS 414Advanced Java with emphasis on Internet Applications 3-1

35 CS 441 Web Technologies-II 3-1

36 CS 331 System Programming 2-1

37 CS 362 Multimedia Systems and Design 2-1

38 CS 334 Open Source Systems 3-1

39 CS 380 Introduction to Computer Security 3-0

40 CS 481 Computer Forensics 3-1

41 CS 482 System Incident Handling 3-0

42 CS 344 Web Engineering 3-1

43 CS 473 Theory of Intelligent Systems 3-1

44 SE 301 Object Oriented Software Engineering 3-0

45 SE 490Advanced Topics in Software Engineering 3-0

46 CS 483 Information Security Management 3-0

47 MATH 352 Numerical Methods 2+1

Page 14: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

8

F. General Education Electives

S. No Course Code Course Name Credit Hours

1 HRM 441 Human Resource Management 2-0

2 GMT 175 Intellectual Property Rights 3-0

3 HU 103 Sociology 3-0

4 HU 102 Psychology 3-0

5 HU 104 English Literature 3-0

6 FIN 100 Principles of Accounting 3-0

7 CS 309 Computing and Society 3-0

8 GMT 164 Introduction to Management 2-0

9 HRM 240 Organizational Behavior 2-0

10 ECO 130 Engineering Economics 2-0

G. Supporting Science Electives

S. No Course Code Course Name Credit Hours

1 MATH 112 Calculus II 3-0

2 EE 210 Basic Electronics 3-1

3 CS 261 Computational Logic 3-0

4 CH 101 Chemistry 2-1

5 PHY 401 Advanced Physics 2-1

6 MATH 232 Complex Variables and Transforms 3-0

7 EE 201 Engineering Mechanics 3-0

8 MATH 221 Number Theory 3-0

9 CS 353 Fundamentals of Cryptography 3-0

10 EE 102 Basic Electrical Engineering 3-1

11 EE 215 Electronic Circuits & Devices 3-1

12 OTM 455Planning Engineering Project Management 2-0

13 EE 414 Digital Electronics 3-1

14 MATH 133 Engineering Mathematics 3-0

15 MATH 234 Multivariable Calculus 3-016 EE 477 Analog and Digital Communication 3-1

17 MATH 351 Numerical Methods 3 - 0

Page 15: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

9

1.8 Definitions and Keywords used in this Document.Pre Requisites: It is the subject or course that is essential to complete before taking the required subject or course. Credits Hours: A lecture of one hour duration per week per semester for a subject countable towards a student’s Cumulative Grade Point Average, will be considered as one credit hour. However, in case of seminars, tutorials and laboratory work, one credit hour requires three contact hours depending upon the nature of subject.Contact Hours A lecture of one credit hour duration per week is equal to one contact hour per week and a lab of one credit hour per week is equal to 3 contact hour per week depending on the subject.Cumulative Sum of contact hours for a lectures and its essential lab work for particular subject or course. Subject or Course A “Subject” or “Course” means a topic or a subject related to an academic programme, which is to be studied by a student for a fixed number of hours during a semester. Each subject will carry a specific faculty code and number.

Page 16: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

10

2. Semester Wise Breakdown of ProgramSemester 1

S.No Code Subjects Theory Labs1 CS 100 Fundamentals of ICT 2 12

HU 109Communication and Interpersonal Skills

2 0

3MATH 161

Discrete Mathematics 3 04

PHY 101Applied Physics*** 3 1

5MATH 111

Calculus-I 3 06

CS 110Fundamentals of Computer Programming

3 1

Total CHs 16 3

Semester CHs 19

Semester 2S. No Code Subjects Theory Labs

1 HU 101 Islamic Studies*** 2 0

2 CS 212 Object Oriented Programming 3 1

3 EE 221 Digital Logic Design 3 1

4 HU 107 Pakistan Studies*** 2 0

5 Supporting Science Elective –I 3 0

6 General Education Elective-I 2 0

Total CHs 15 2

Semester CHs 17

NOTE:*** These subjects can be interchanged and offered in different semesters subject to availability of faculty.

Page 17: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

11

Semester 3

S.No Code Subjects Theory Labs

1 MATH 361 Probability and Statistics 3 0

2 CS 250 Data Structures & Algorithms 3 1

3 CS 220 Database Systems 3 1

4 MATH 222 Linear Algebra 3 0

5 SE 200 Software Engineering 3 0

Total CHs 15 2

Semester CHs 17

Semester 4S.No Code Subjects Theory Labs

1 EE 321 Computer Architecture & Organization 3 1

2 CS 260 Human Computer Interaction 3 0

3 SE 210 Software Design and Architecture 3 1

4 Supporting Science Elective –II 3 1

5 SE Elective-I 2 1

Total CHs 14 4

Semester CHs 18

Page 18: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

12

Semester 5S.No Code Subjects Theory Labs

1 CS 330 Operating Systems 3 12 HU 218 Technical & Business Writing*** 2 03 SE 311 Software Requirements Engineering 3 0

4 CS 320 Computer Networks 3 15 HU 222 Professional Ethics*** 2 0

6 SE Elective-II 3 1

Total CHs 16 3

Total CHs 19

Semester 6

S.No Code Subject Theory Lab1 SE 312 Software Construction 3 12 SE 320 Formal Methods 3 03 SE 321 Software Quality Engineering 3 04 SE Elective – III 3 05 General Education Elective – II 2 06 Supporting Science Elective –III 3 0

Total CHs 17 1

Semester CHs 18

NOTE:*** These subjects can be interchanged and offered in different semesters subject to availability of faculty.

Page 19: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

13

Semester 7

S.No Code Subject Theory Lab1 SE 430 Software Project Management 3 02 GMT 471 Entrepreneurship 3 03 SE Elective – IV 3 04 SE Elective – V 3 05 General Education Elective -III 3 06 SE 499 Senior Project 0 3

Total CHs 15 3

Semester CHs 18

Semester 8

S.No Code Subject Theory Lab1 General Education Elective – IV 3 0

2 SE Elective – VI 3 1

3 SE 499 Senior Project 0 3

Total CHs 6 4

Semester CHs 10

Overall CHs 115 21

Grand Total (Credit Hours) 136

3. Course Contents3.1 Computing Core Courses

CS110-Fundamentals of Computer Programming

Page 20: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

14

Course Code:

CS110

Pre Requisite:

Nil

Credits:3+1 Contact Hrs: 6

Course Objectives:

The main objective of this course is to introduce students to computer systems and the underlying basic concepts. Students will also learn in this course programming principles and techniques in an appropriate programming language according to current industrial needs. At the end of this course students will be able to useful and efficient software programs to solve basic computing problems.

Course Contents1 Introduction to Programming Languages:Programming Languages, Low

Level, High Level, Programming Philosophy, Procedural Programming Concept, Object Oriented Programming Concept, Creating computer Program. Definition of IDE, Editing a Program & Working of IDE for Program Compilation & Execution.

2 Introduction to C++: Development of basic algorithms/flowcharts.Analysis and testing of algorithms. Fundamental programming concepts, source file, object file, exe file.

3 C/C++ Programming Basics: C/C++ Program Structure, program statement, white spaces, string constant, Variables, Input/output with cout and cin, Arithmetic operators, assignment and increment operators

4 Loops and Decisions: Relational operators, loops for, do-while, while, decisions if , if-else, else-if, switch , logical operators and or not operators, control statement break, continue, go to statement

5 Structures: Declaration, defining strict variables, and accessing structure members, nested strict, enumerations

6 Pointers: Declaration, defining pointers, argument passing using pointers, other uses and applications of pointers.

7 Functions: Declaration, defining functions, comparison with library functions, passing arguments constants variables value, structures as arguments, returning values from function, returning structure variables, passing data by reference, overloaded functions, inline functions, default arguments, variables and storage classes, auto external and static variables, const function arguments.

8 Arrays and Strings: Definition, accessing elements, initialization, multidimensional arrays, passing array to function, array to structure, C-string variable constant, reading embedded blanks, multiple lines, copying strings

Text Book: 1. C Programming using Turbo C++ by Robert Lafore

Page 21: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

15

Page 22: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

16

CS212-Object Oriented ProgrammingCourse Code:

CS212

Pre Requisites:

CS110 Fundamental of Computer Programming

Credits:3+1 Contact Hrs: 6Course Objectives:

The objectives of the course are to acquaint the students with the Object Oriented concepts and terminology and to provide them with a solid foundation for developing software using the object paradigm. By the course completion, students should be proficient in OO programming using C++ and have learnt the basics of Object Oriented analysis and design. Students should then be able to develop software solutions to a variety of problems given to them easily.

Course Contents1 Introduction Procedural versus OO programming languages. Evolution of

OO. OO concepts and principles. Characteristics and Advantages of OO approach.

2 Objects and Classes Classes and objects, declaration, calling member function, constructors, destructors, overloaded constructors, objects as arguments, default copy constructors, classes objects and memory, static class data, const and classes

3 Arrays and Strings Definition, accessing elements, initialization, multidimensional arrays, passing array to function, array to structure, C-string variable constant, reading embedded blanks, multiple lines, copying strings, standard C++ string class, defining assigning string objects, input/ output with string object

4 Operator Overloading Unary operators, binary operators, op arguments, return value, nameless temp objects, post fix notation, overloading binary op, arithmetic op, concatenating strings, multiple overloading, comparison op, arithmetic and subscript op, data conversion between object and basics types, object and different classes.

5 Inheritance Derive and base classes, specifying, accessing base class members, protected access specifier, derived class constructors, overriding member functions, class hierarchies abstract base class, public and private inheritance, multiple inheritance, container-ship classes within classes

6 Pointers Addresses and Pointers, Address-of Operator, Pointers and Arrays, Pointers and Functions, Memory management – new and delete operators, A linked list example.

7 Streams and Files Stream classes, stream errors. File I/O with streams.Text Book: 1. Object Oriented Programming in C++ by Robert Lafore.3/e

SAMSReference: 1. Understanding Object Oriented Programming, Budd, Addison

Wesley.2. C++: How to Programme, Deitel and Deitel, 4/e, Pearson.3. Thinking in C++, 2nd Edition, Bruce Eckel, Prentice Hall.

Page 23: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

17

Page 24: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

18

CS250-Data Structures and AlgorithmsCourse Code:

CS250

Pre Requisites:

CS110 Fundamental of Computer Programming

Credits:3+1 Contact Hrs: 6Course Objectives:

The objective of this course is to gain a solid understanding of the fundamental design, analysis and implementation of basic data structures and algorithms. The course will help the students in developing the basic concepts in the specification and analysis of programs.

Course Contents1 Data Structures Introduction to Data structures and types of data

structures.

2 Algorithms Definition of algorithm, running time of algorithm, examples, role of efficient algorithms.

3 Recursion: Definition of Recursion, Direct and Indirect Recursion, Examples of Recursive Functions.

4 Queues & Lists Linear Queue & Its Features, Linear Queue Implementation, Circular Queue, Linked List & Its Features, Linked List Implementation, Doubly Linked List & its Implementation.

5 The Stack Stack & Its Implementation, Postfix Notation Concept, Implementation Of Postfix Notation.

6 Trees Binary Trees, Strictly Binary Tree, Complete Binary Tree, Almost Complete Binary Tree, Binary Tree Applications, Traversing Trees, Pre-Order Traversing In-Order Traversing, Post-Order Traversing.

7 Sorting Bubble Sort, Quick Sort, Binary Sort, Merge Sort, Insertion Sort, Heap, Heap Construction, Heap Sort, Heap Sort Implementation. Hashing & its Implementation

8 Searching Linear and Binary Search.

9 Graphs What Are Graphs, Representation Of Directed Graphs, Graph Vocabulary, Graph Operations (Add Vertex, Add Edge), C++ Implementation.

10 Hashing Hashing, dictionaries and hash tables, hashing function, hashing implementation using array and linked list.

Text Book: 1. Data Structures Using C++, Prentice Hall Inc., 1994, by Aaron M. Tenebaum, Yedidyah Langsam Moshe J. Augenstein

Reference: 1. C++ How To Program, Prentice Hall Inc., 1994, by H.M. Deitel, P.J. Deital2. Data Abstraction & Problem Solving with C++ by Frank M. Carrano.3. Data Structures with C++ - Schaum Series..

Page 25: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

19

EE221-Digital Logic DesignCourse Code:

EE221

Pre Requisites:

Nil

Credits:3+1 Contact Hrs: 6Course Objectives:

The objectives of this course are to introduce students to the fundamentals of a computer system design such as the instruction set architecture, data path, MSI, LSI and sequential circuits. So after the course, students can then actually design these functional units for a given instruction set architecture.

Course Contents1 Binary Systems: Number Systems, Bin, Octal and Hex numbers, Base

conversions, Compliments, Binary codes, Bin Addition, subtraction, Multiplication, Division, Bin Logic.

2 Binary Algebra: Basic definitions, Basic theorems and properties, Functions, Venn Diagrams, Canonical and Standard forms, Conversion between canonical forms, Logic Operations, Digital Logic gates, Introduction to Logic families and their characteristics

3 Simplification of Boolean Functions Karanugh Map representation and simplification of Boolean Functions, Product of Sums simplification, NAND and NOR implementation, Two level implementations, Quine Mc Cluskey Method.

4 Combinational Logic: Design procedure, Adders, Subtractors, Code conversion, Analysis procedure, Multi level NAND and NOR circuits, Exclusive OR and Equivalence functions

5 Combinational Logic with MSI & LSI: Bin Parallel Adder, Decimal Adder, Magnitude comparator, Decoders, Multiplexers, ROM function implementation, PLAs.

6 Sequential Logic: Basic flip-flops, RS flip-flops, D flip-flops, JK flip-flop, T flip-flop, Master-Slave and Edge triggered flip-flop, Analysis of clocked sequential circuits, State reduction and assignment, Design of sequential circuits.

7 MSI-Sequential Circuits:Registers, Shift registers, Ripple counters, Synchronous counters, Timing sequences, Memory unit, Introduction to register transfer Logic.

Text Book: 1. M Morris Mano, “Digital Logic and Computer Design”Reference: 1. Fredrick Hill & Gerald R Peterson “Digital Logic and

Microprocessors”2. B. Holdsworth “Digital Logic Design”3. Edward J McClukey “Logic Design Principles”

Page 26: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

20

CS220-Database SystemsCourse Code:

CS220

Pre Requisites:

Nil

Credits:3+1 Contact Hrs: 6Course Objectives:

This course will provide a thorough introduction to the theory and practice of database systems. The emphasis will be on theoretical considerations involved in modeling data and in designing the efficient database systems. Students will also be able to implement the systems using database management systems i.e. queries.

Course Contents1 Storage of and access Data stored in files.2 Implementation of storage/accesses algorithms like indexing, hashing and

range accesses on data stored in independent files. Drawing conclusions regarding advantages/ disadvantages of data stored in files

3 Concept of database, Database Management Systems. Advantages of database management systems over file systems.

4 Different database models Implementation, storage and data retrieval strategies of Network three data models- Network, Hierarchical and relational data model, OODB, comparison with each other

5 Query languages, SOL6 Relational Algebra – their syntax and use in Client server and single user

environments7 Transaction processing Types and Different stages of transactions.

Aborted/incomplete transactions, Roll Back and different techniques of recovery from the exceptional situation.

8 Parallel execution of transactions their inherent problems, limitations. Serialisation of transactions.

9 Distributed Database System & Advance TopicsTextBook:

1. C. Ricardo, “Database Systems, Principles, Design & implementation” Macmillan, 1990. 2. C.J. Date, “ Database Systems”, Mc Graw Hill, 1999.

Reference:

1. Tech Sig Movie ser 29, “What is Electronic Data Processing Concept” – 30 mins2. Gen Trg Movies ser 8, “Data Communication” – 29 mins3. Gen Trg Movies ser 8, “ Data Representation” – 29 mins

CS330-Operating SystemCourse Code:

CS330

Pre Requisites:

CE-420 Computer Architecture and Organization

Page 27: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

21

Credits:3+1 Contact Hrs: 6Course Objectives:

Course aims to develop the fundamental concepts of operating system. The course will also cover the basic resource management techniques, issues of performance, avoiding deadlocks etc to equip students with sufficient knowledge about the working mechanism of Operating System.

Course Contents1 Operating System Objectives & Functions of Operating System, Operating

System Characteristics, Desirable Features of an Operating System, Fetch & Execute Cycle, Typical operations performed by the processor, Processor –Memory, Processor – I/O, Data – Processing, Control.

2 I/O Management & Disk Scheduling Interrupts, Interrupts & the Execution Cycle, Short I/O Wait, Long I/O Wait, Kinds of Interrupts, Interrupt, Processing, Multiple Interrupts, Multi-Programming, I/O Organization, Generic Model of an I/O module, I/O Function, Requirement of an I/O Module, External Devices, Classification of the Devices, Difference Between These Devices, Model of an External Device, I/O Communication Techniques, Programmed I/O, Interrupt Driven I/O, DMA, Logical Structure of the I/O Function, Local Peripheral, Communication Port, File System, I/O Buffering, Disk Scheduling, Disk Performance Parameter, Disk Scheduling Policies.

3 Process Management Process Management, Process States, Basic Two State Process Model, Three State Process Model, Five State Process Model, Creation & Termination of Processes Suspended Processes, Suspended States Model, Characteristics of Suspended State Model, Process Description, Operating System Control Structure, Process Control Structure, Process Location, Process Attributes, Process Identification, Processor State Information, Scheduling of State Information, Process Control Modes of Execution, Creation Of Processes, Process & Context Switching, Processes & Threads.

4 Files Files, File Management System, Objectives of the File Management System, Minimum Requirements from user point of view for a File Management System, File System Architecture, Functions of File Management, File Directories, File Sharing, Record Blocking, Secondary Storage Management, File Allocation, Pre-allocation Vs Dynamic Allocation, Portion Size, File Allocation Methods, Free Space Management, Reliability, Disk Interleaving.

5 Concurrency Motivation for Concurrency, Program Structuring Alternatives, Process Interaction, Competition Among Processes for Resources, Mutual Exclusion, Dead Lock, Starvation, Requirements for Mutual Exclusion.

6 Memory Management Memory Management, Memory Management Requirements, Equal & Unequal Partitioning, Dynamical Loading & Swapping of Processes, Memory Management Schemes, Virtual Memory Concept, Paging & Segmentation.

7 Introduction To Network & Distributed O/S Motivation, Topology, Communication, Network Types & Operating Systems.

TextBook: 1. Operating Systems by: William StallingsReference:

1. Modern Operating System by: Tanenbaum2. Operating System Concepts by: L.J. Peterson

Page 28: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

22

Page 29: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

23

SE200-Software Engineering Course Code:

SE200

Pre Requisite:

Fundamentals of ICT

Credits:3+0 Contact Hrs: 3Course Objectives:

To help students to develop skills that will enable them to construct software of high quality; software that is reliable, and that is reasonably easy to understand, modify and maintain. Course fosters an understanding why these skills are required by the professionals. By the course completion student will be able to model any system before its development.

Course Contents1 Concepts Perspectives on Software ,What is Software Engineering, History,

Software Process, Life Cycle Models2 Phases Requirements Engineering, Analysis and Specification, Design

Concepts, Software Architecture, Software Testing, Software Maintenance3 Management Software Project Management, Measurement and Metrics,

Project Planning, Software Quality Assurance, Risk Management, Configuration Management, Software Reliability

4 Methodologies Formal Methods, Algebraic Specification, Model-Based Specification, Clean room Software Engineering, Human Computer Interaction, Component-based Development, Real-Time Systems

5 Knowledge Areas Capability Maturity Model, Life Cycles Standard ISO/IEEE 12207, Software Engineering Body of Knowledge, Software Engineering as Profession, The Evolution of Software Engineering, Certifications

Text Book:

1. Software Engineering : A Practitioners Approach by Goger S. Pressman

Reference: 1. Software Engineering by Summerville

Page 30: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

24

MATH161-Discrete MathematicsCourse Code: MATH161Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3Course Objectives:

To develop mathematical maturity for Students entering the Computer Science program and cover specific topics relevant to further study in Computer Science. The course will aim to make students understand the basic set terminology and operations, characterization of mathematical relationships, basic terminology and operations for trees and graphs etc. By course completion students will have a good understanding of the discrete structures.

Course Contents1. Logic: logical Form and logical Equivalence, Conditional Statements, Valid

and Invalid Arguments, Predicates and Quantifiers.2. Relations: Relations and their properties, n-ary relations and their

applications, Representing Relations, Closures of Relations, Equivalence Relations, and Partial Orderings.

3. Graphs: Introduction to Graphs, Graph Terminology, Representing Graphs and Graphs Isomorphism, Connectivity, Euler and Hamilton Paths, Shortest Path Problems, Planner Graphs, and Graph Coloring.

4. Trees: Introduction to Trees, Applications of Trees, Tree Traversal, Trees and Sorting, Spanning Trees, and Minimum Spanning Trees.

Text Book:

1. Discrete Mathematics and its Applications, by Kenneth H. Rosen.

2. Discrete Mathematics and its Applications, by Susanna S. Epp.Reference:

1. Discrete Mathematics, by Morman L. Biggs.

Page 31: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

25

CS320-Computer Networks Course Code:

CS320

Pre Requisites:

Nil

Credits:3+1 Contact Hrs: 6

Course Objectives:

By the course completion, student will have the knowledge of many key protocols underlying the operation of the Internet and fundamental ideas of designing and evaluating reliable network. Course covers a range of topics from basic such as transmission, signals etc to the advanced ones such as OSI layers, mobile networks etc. The student would also be able to develop network based programs.

Course Contents1. Introduction Introduction to Networks protocols and standards line,

configuration- Networks Topologies, Transmission Model, Categories of networks-Inter networks-The OSI Model Functions of layers-TCP/IP Protocol suite.

2. Signals and Encoding Annals and digital signals-periodic and a periodic signals –Time and Frequency domains signals-A to D conversion- D to D conversion, D to A conversion, A to A conversion

3. Transmission of Digital Data DTE-DCE Interface-Modems 56K Modems- Cable modems – Guided and unguided transmission Media-Transmission impairment- Performance, Shannon Capacity- Media comparison..

4. Multiplexing, Error Detection and correction FDM, TDM and WDM-Multiplexing applications _digital subscriber lines (DSL), FTTC- types of errors- Error detection- vertical, longitudinal and cyclic redundancy checks- Checksum-Error correction.

5. Data Link Control and Protocols Asynchronous protocols- character and Bit oriented protocol –Link Access procedures-link Discipline-flow control-Error control.

6. Local and Metropolitan Area Networks Project 802-Ethernet, token bus, Token Ring, FDDI-802.6 (DQDB), SMDS, circuit switching and Packet switching.

7. Point-to point Protocol (PPP) Transition states- PPP Layers-Link control protocol- Authentication – Network control protocol.

8. Frame Relay and ATM Frame relay operation –Layers-congestion control leaky Bucket Algorithm –Traffic control- ATM design goals-Architecture –Switching and Switch Fabrics-ATM layers- service classes-ATM applications.

9. Networking and Internetworking Devices Repeaters- Bridges –Routers-Gate ways-Other devices- Routing Algorithms- Distance vector and link state routing, Congestion Control Algorithms.

Page 32: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

26

10. Transport Layer and Upper OSI Layers Fructose of Transport layer-Commotion establishment termination- OSI transport layer- Application layer, Congestion Control

11. TCP/IP Protocol Suite Overview- Network layer- Addressing-Sunbathing protocols in Network Layer- Transport layer (UDP and TCP)-client server model- Boot P- DHCP-DNS-TELENET-FTP-TFTP-SMTP-SNMP HTTP-word wide web.

12. Introduction to Mobile Networks Mobile Adhoc Networks, Issues and Applications of MANETs, Reactive and Proactive Protocols

13. Network Layer (Extension) Routing algorithms, Shortest-path problems, Optimality

Text Book: 1. Data Communications and Networking, Second Edition by Behrouz Forouzan

Reference: 1. Computer Networks by Andrew S. Tanenbaum

Page 33: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

27

CS260-Human Computer InteractionCourse Code:

CS260

Pre Requisites:

CS110 Fundamentals of Computer Programming

Credits:3+0 Contact Hrs: 3Course Objectives:

Acquire the knowledge and skills needed to create highly usable software systems. The course will cover the design process, evaluation techniques, design solutions evaluation as well as the appropriate uses of graphics etc. By course completion, student will be able to utilize design concepts/principles to solve problems using the integration of graphic design elements and techniques for important print and online design elements, including typography, color, icons, buttons and photographs.

Course Contents1. Background to human-computer interaction. Underpinnings from

psychology and cognitive science2. More background. Evaluation techniques: Heuristic evaluation3. More evaluation techniques: Videotaped user testing; cognitive

walkthroughs4. Task analysis. User-centred design5. Usability engineering processes; conducting experiments6. Conceptual models and metaphors7. Designing interfaces: Coding techniques using colour, fonts, sound,

animation, etc.8. Designing interfaces: Screen layout, response time, feedback, error

messages,etc.

9. Designing interfaces for special devices. Use of voice I/O10 Designing interfaces: Internationalization, help systems, etc. User interface

software architecturesText Books:

HCI Models, Theories, and Frameworks: Toward a Multidisciplinary Science by John

Reference: 1. Mary Rosson, John Carroll, Mary Beth Rosson

EE321-Computer Architecture & OrganizationCourse Code: EE321Pre Requisites:

EE221 Digital Logic Design

Credits:3+1 Contact Hrs: 6Course Objectives:

The objective of this course is to study computer architecture design by examining architectural concepts with consideration of performance, usability, reliability, power management etc. This course covers a number of topics such as Instruction Set

Page 34: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

28

Architecture, Pipeline Microprocessor, Cache and Memory, Parallel Computing, Embedded Systems etc to give deep insight about the computer architecture to the students.

Course Contents1. Introduction to Computer Architecture, Evolution of Computers, Types of

Computers, Hardware, Firmware and Software. Future trends.2. Programming model of 8086 family. Addressing Modes.3. Data types, complements, fixed point representation, floating point

representation, binary codes.4. Register Transfer Language. Bus and Memory Transfer. Arithmetic Micro-

operations, Logic Micro-operations, shift micro-operation, Arithmetic Logic Unit.

5. Instruction Codes, Computer Register, Computer Instruction, Timing and Control, Instruction Cycle, Memory-Reference Instruction, Input-Output, Interrupt, Complete description and design of Basic Computer. Design of Accumulator and ALU.

6. Assembly Language Programming with help of MASM and Debugger7. Control Memory, Address Sequencing, Micro program, Computer

Configuration, Microinstruction format, Symbolic Microinstruction. The Fetch Routine, Symbolic Micro program, Binary Micro program, Design of Control Unit, Micro program Sequencer.

8 Memory Hierarchy, Main Memory, Cache Memory, Virtual Memory, Memory Management.

9 General Register Organization, Stack Organization, Instruction format, Addressing Modes, Date transfer and manipulation, Program Control, RISC & CISC Computer and their characteristics.

10 Parallel Processing, Pipelining, Arithmetic Pipeline, Instruction Pipeline, Vector Processing.

Text Book: 1. Computer Architecture and Organization by John P. Hayes, 3rd

Edition, McGraw -Hill.2. Computer System Architecture by M. Morris Mano, Third Edition

Reference: 1. Computer Architecture by Morio De Blasi.2. Computer Architecture & Organization by A.J.Van De Goor.

Page 35: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

29

SE499-Senior ProjectCourse Code: SE499Credits Hrs 7th Semester: 0+3

8th Semester: 0+3Course Objectives:

The purpose of this course is to make students ready for the professional life. The project development helps them to know all those things which are required in the industry to carry out any project development.

Thesis Procedure1 Syndicate formation and choosing Project Advisor in the 4th week of 6th

Semester2 Approval of Syndicate formation by the Dept in the 12th week of 6th Semester3 Proposal Defence in the 12th week of 6th Semester4 1st Progress Presentation 2nd and 3rd week of 7th Semester5 2nd Progress Presentation 12th week of 7th Semester6 3rd Progress Presentation 3rd week of 8th Semester7 4th Progress Presentation 10th week of 8th Semester8 Final Presentation after the Final Exams.TextBook: As advised by Project SupervisorReference: As advised by Project Supervisor

Page 36: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

30

3.2 Software Engineering Core CoursesSE210-Software Design & Architecture

Course Code:

SE210

Pre Requisites:

SE200 Software engineeringCS212 Object oriented programming

Credits:3+

1

Contact Hrs: 6

Course Objectives:

The objective of this course is to enhance the abilities of students to develop reusable software designs. In this course, students are introduced to principles of good design, and techniques for the evaluation of software design quality. The course will introduce the students to a number of design patterns and their applications. This course also covers the principal architectural issues associated with the design and construction of large scale software systems including architectural design and documentation, component models and technologies, and frameworks.

Course Contents1 In-depth study of design patterns, building on material learned previously.2 Application of design patterns to several example applications3 In-depth study of middleware architectures including COM, CORBA, and

.Net4 Extensive case studies of real designs.5 Basics of software metrics; measuring software qualities6 Reengineering and reverse engineering techniques.7 Design patterns8 Application of design patterns to several example applications9 Case studies of real designs.10 Basics of software metrics; measuring software qualities11 Reengineering and reverse engineering techniques12 Building a significant project using one or more well-known middleware

architecture(practicals only)Text Book: 1. Software Architecture in Practice by Len Bass

Reference: 1. Evaluating Software Architectures by Paul Clements2. Ed Roman, “Mastering Enterprise Java Beans & java2 Platform”

SE312-Software ConstructionCourse Code: SE312Pre Requisites:

CS110 Fundamentals of Computer ProgrammingSE200 Software Engineering

Credits:3+1 Contact Hrs: 6

Page 37: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

31

Course Objectives:

The goal of this course is for the student to acquire an understanding of the principles of and skills in current practices for, developing a solution to a problem using the object-oriented philosophy. Course covers range of topics including a current process for developing software, formal languages, parsing, the processes of problem analysis etc which will help the students to get insight into the software modeling and construction.

Course Contents1 The system engineering context (the software engineering process,

already covered in previous course, a review)2 Basic principles of requirements analysis (approaches and notations)3 Requirements specification4 SDL – structure and behavior5 SDL – data and timers6 SDL - concurrency and dynamic process creation7 Introduction to languages and compilers8 Lexical analysis: formal languages, regular expressions, finite state

machines, deterministic and non-deterministic finite automata, transformation from regular expression to DFA, tools for lexical analysis (Lex)

9 Syntax analysis: parse trees, ambiguity, context-free grammars, LL(1) parsing method, semantic analysis and semantic attributes (this section may or may not be covered), different notations for specifying languages

10 Chomsky’s hierarchy, Concurrency: concept of concurrency, sub-program level concurrency, semaphores, monitors, message passing, Java threads

11 Implementation design12 Verification and validation

Text Book: 1. Software Engineering by Roger S. PressmanReference: 1. R.W.Sebesta, Concepts of Programming Languages, 5th ed.,

Addison-Wesley, 2002.2. A. V. Aho, R. Sethi and J. D. Ullman, Compilers, Principles, Techniques and Tools, Addison Wesley.

CS311-Software Requirement EngineeringCourse Code:

SE311

Pre Requisites:

SE200 Software Engineering

Credits:3+0 Contact Hrs: 3+0Course Objectives:

Understand the role of requirements engineering within the software life cycle. Compare and contrast, and valuate structured, object-oriented, data-oriented, and formal approaches to

Page 38: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

32

requirements modelling. Gather the requirements necessary to develop the specifications, given a “customer” who wants a software system to be developed. Develop an informal requirements specification, given a set of requirements. Model, prototype, and specify requirements for a software system.

Course Contents1 Basics. Requirements Engineering, Challenges in Requirements

Engineering for Embedded Systems, Combining Requirements Engineering and Agents, Maturing Requirements Engineering Process Maturity Models, Requirements Prioritisation for Incremental and Iterative Development, A Quality Model for Requirements Management Tools

2 The Importance of Requirements. What Are Requirements and Why Are They Important?, Why Plan?, A Suggested Strategy, Requirements Activities in the System Life Cycle, Investment in the Requirements Process, A Process Approach, The Requirements Plan, Factors Affecting Your Career Decisions, A Comment Concerning Small Projects, Case Study.

3 The Roles of the RA. Suggested Roles of the RA, Case Study

4 Skills and Characteristics of an Effective RA. Skills of the RA, Characteristics of an Effective RA, Case Study

5 Types of Requirements. Views of Requirements, Types Definitions and Descriptions of Requirements, Types Business Requirements, Stated Requirements Versus Real Requirements, User Requirements, High-Level or System-Level Requirements, Business Rules, Functional Requirements, Non functional Requirements, Derived Requirements, Design Requirements and Design Constraints, Performance Requirements, Interface Requirements, Verified Requirements, Validated Requirements, Qualification Requirements, The “Ilities” and Specialty Engineering Requirements, Unknowable Requirements, Product Requirements, Process Requirements, Logistics Support Requirements, Environmental Requirements System, Subsystem, and Component Requirements Terminologies to Avoid Source or Customer Requirements Nonnegotiable Versus Negotiable Requirements Key Requirements Originating Requirements Other Guidelines

6 Gathering Requirements. Plan the Approach, Case Study

7 Best Practices for Requirements Development and Management

8 The RA’s Specialty

Text Book: 1. Software Requirements Engineering, 2nd Edition.

Page 39: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

33

CS321-Software Quality EngineeringCourse Code:

SE321

Pre Requisites:

SE200 Software Engineering

Credits:3+0 Contact Hrs: 3Course Objectives:

The course helps the students to understand and apply the concepts of product and project life-cycle, error propagation, cost to repair, regression testing and test construction techniques. Course highlights all those aspects which can help in improving the quality of a product. By the course completion student will be able to use the idea of usability engineering along with the above mentioned skills.

Course Contents1 Introduction to software quality assurance2 Inspections and reviews3 Principles of software validation4 Software verification5 Software testing6 Specification based test construction techniques7 White-box and grey-box testing8 Control flow oriented test construction techniques9 Data flow oriented test construction techniques10 Cleanroom approach to quality assurance11 Software process certificationText Book: 1. CMM In Practice: Processes for Executing Software Project at

Infosys by Jalote, Pankaj..Reference: 1. Software Testing in the Real World: Improving the Process by

Kit, Edward

Page 40: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

34

SE430-Software Project ManagementCourse Code:

SE430

Pre Requisites:

SE200 Software Engineering

Credits:3+0 Contact Hrs: 3Course Objectives:

The students of the course are expected to achieve the basic knowledge about the sizing and costing software projects, measuring performance of software during development and participate in group project during the course. The course will develop the skills so that the students will be able to discuss the basic concepts of software project management, plan and implement the projects, perform risk assessment and employ suitable mechanisms for tracking and controlling the projects.

Course Contents1 Introduction & Fundamentals2 Software Development Fundamentals and Management Fundamentals3 Processes4 Planning & Scheduling

5 Organization6 Estimation7 Work Breakdown Structure8 Risk and Change Management9 Quality & Application ToolsText Book: 1. Software Project Management by E. M. Bennatan

Reference: 1. PMBOK Guide: A Guide to the project management body of Knowledge2. Software Engineering: Software Engineering by Roger S. Pressman

Page 41: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

35

SE320-Formal MethodsCourse Code:

SE320

Pre Requisites:

Discrete Mathematics, Data Structures

Credits:3+0 Contact Hrs: 3Course Objectives:

Mathematical foundations for formal methods. Formal languages and techniques for specification and design, including specifying syntax using grammars and finite state machines. Analysis and verification of specifications and designs. Use of assertions and proofs. Automated program and design transformation.

Course Contents1 Introduction to formal specification, Transformational development,

Specification analysis and proof, Program verification2 Objects and types: Sets and set types, Tuples and Cartesian product types,

Bindings and schema types, 3 Relations and functions, Properties and schemas, Generic constructions, 4 The Z Language,

5 Syntactic conventions6 Schema references, Schema texts, Predicates, Schema expressions, 7 Generics, Sequential Systems.Text Book: 1. Woodcock, J.C.P. and Davies, J. Using Z: Specification,

Refinement, and Proof, Oxford university Press References: 1. Huth, M.R.A. and Ryan, M.D., Logic in Computer Science:

Modelling and Reasoning about Systems (2nd Edition), Cambridge University Press, 2004.

Page 42: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

36

3.3 Supporting Science Core CoursesMATH111-Calculus-I

Course Code: MATH111Pre Requisite:

Nil

Credits:3+0 Contact Hrs: 3Course Objectives:

Course enhances the basic knowledge acquired during the secondary education, familiarizes the students with the basic concepts of infinite series, functions of several variables, multiple integrals, derivatives etc. and states their usage in solving general problems.

Course Contents1 Derivatives Concept and idea of differentiation. Rules of differentiation. Rates

of change. Derivatives of Trigonometric Functions. The Chain Rule, Implicit Differentiation. Related Rates of Change.

2 Application of differentiation Extreme values of functions3 Integration Concept and idea of Integration, Indefinite integrals, Initial value

problems, Integration by substitution, Riemann sums and Definite Integrals, properties of definite integrals, Area under the curve, Mean value theorem.

4 Techniques of Integration Basic integration formulas, Integration by parts, Partial Fractions, Trigonometric Substitutions, Improper Integrals

5 Complex Numbers and Functions Complex Numbers, Complex Plane, Polar Form of Complex Numbers. Powers and Roots, Exponential Function, Trigonometric Functions, Hyperbolic Functions,

Text Book: 1. Calculus & Analytic Geometry, 9th Edition by Thomas & Finney2. Advanced Engineering Mathematics, 7th Edition by Erwin Kreyszig

Reference: 1. Advanced Modern Engineering Mathematics, by Glyn James2. Calculus, 6th Edition by E. W. Swokoski, M. Olinick, D. Pence, J. A. Cole.

Page 43: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

37

MATH361-Probability and StatisticsCourse Code: MATH361Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3Course Objectives:

To introduce the basic concept of statistics, randomness and probability and build on these concept to develop tools and techniques to work with random variables

Course Contents1 Introduction Probability. The Sample Space. Simple Events, Events2 Combinatorial Theory ( permutations and combinations) Conditional

Probability, Bayes Formula.3 Discrete Random Variables , Introduction and Ideas4 Expected value for a Discrete Random Variable. Probability Distributions

for a Discrete Random Variables, The Binomial Probability Distributions, The Multinomial Probability Distributions, Negative binomial and Geometric Probability Dist. Hypergeometric Probability Distributions, Poisson Probability Distributions Moments and Moment Generating Functions.

5 Continuous Random Variables, Introduction and ideas, Expected value for a Continuous Random Variable Probability Distributions for a Continuous Random Variables, The Uniform Probability Distributions, The Normal Probability Distributions, Moments and Moment Generating Functions.

6 Bivariate Probability Distributions for Discrete and Continuous Random. Variables, Expected Value of functions of Two or More Random Variables. Independence, Covariance.

7 Introduction to Statistics, Types of Data, Population, Sample, Methods For Describing Data, Measures of Central Tendency, Estimation, Test of hypotheses.

Text Book: 1. Statistics foe Engineering and the Sciences, 3rd Edition by W. Mendenhall & Terry Sincich.

2. Advanced Engineering Mathematics, 7th edition by Erwin Kreyszig.

References: 1. Probability and Statistics for the Engineering, Computing, and Physical Sciences, by Edward R. Dougherty.

2. Probability and Statistics for Engineering and the Sciences, 3rd

edition by Jay L. Devore.

MATH222-Linear AlgebraCourse Code: MATH222Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3Course Objectives:

Students will be able to apply the concepts and methods described in the outline, will be able to solve problems using linear algebra, will know a number of applications of linear

Page 44: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

38

algebra, and they will be able to follow complex logical arguments and develop modest logical arguments after the course completion. So students will develop abstract and critical reasoning by studying logical proofs and the axiomatic method as applied to linear algebra.

Course Contents1 Introduction Linear Systems. Matrices. Basic Concepts and Idea2 Matrix Algebra3 Solution of Linear Equations: Gauss Elimination, Gauss-Jordan Method4 Determinants Cofactor Expansion and Applications. Inverse of a Matrix,

Kramer Rule5 Vectors in the Plane, n- Vectors Cross Product in R3

6 Vector Spaces and Subspaces, Linear Independence, Rank, and Bases.7 Linear Transformations The Kernel and Range of a Linear Transformation.

The Matrix of a Linear Transformation.8 Eigen Values and Eigen Vectors. Diagonalization. Application. Lines and

Planes. Quadratic Form. Linear Economic Models. Graph Theory. Least Squares.

Text Book: 1. Introduction to Linear Algebra with Applications by Bernard Kolman.

References: 1. A First Course in Linear Algebra, 2nd Edition by Hal G. Moore and Adil Yaqub.2. Introduction to Linear Algebra, 2nd Edition by Lee W. Johnson, R. Dean Riess and Jimmy T. Arnold.3. Advanced Engineering Mathematics, 7th Edition by Erwin Kreyszig

PHY101-Applied PhysicsCourse Code: PHY101Pre Requisites:

Nil

Credits:3+1 Contact Hrs: 6Course Objectives:

To equip the student with the advance concepts of the physics. Course brushes the basic knowledge of students by starting from the basic concepts and then progresses gradually toward the advance concepts. By the course completion, students would have developed good understanding of physics fundamentals.

Course Contents1 Electrostatics: Coulomb’s Law and its application.2 The Electric Field. : Calculation of electric field, Gauss’s Law & its

applications3 Potential. : Relation between potential energy, work, potential

difference, potential gradient, the electron volt etc.

Page 45: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

39

4 Capacitance & Dielectrics. : Molecular Theory of induced charges Current, resistance& EMF, voltage & power in electrical circuits.

5 The Magnetic Field: Motion of charges in electromagnetic field.6 Semiconductor/Solid State Physics: Free electron theory of solids, the

band theory of solids. Intrinsic semiconductors, extrinsic semiconductors. Properties of current carriers, PN Junction, Doping, PN Diodes transistors.

7 Thermodynamics: First& second law, application8 EM Waves: Introduction, speed of an electromagnetic wave, energy in

electromagnetic waves, electromagnetic waves in matter, sinusoidal waves, standing waves, radiation from an antenna.

9 Nature & Propagation of Light: The electromagnetic spectrum, light spectrum, waves, wave fronts, reflection& refraction, total internal reflections, Huggen principle/dispersion, absorption of light laser, laser diods.

10 Projected Practical/Research: Practical work to include detailed description of the instruments in electronics lab. In addition available practical on light, connecting up a circuit..

Text Book: 1. University Physics by G.W. Sears2. Electronic Devices by Dr Manzer Saeed 3. Essentials of Engineering Chemistry by Dr M. Amjad4. Physics for engineers and scientists by D.Elwell and A.J. Pointon

Reference: 1. Solomon Gratenhaus "Physics, Basic Principles"2. McCormick "Fundamentals of Physics"3. Keller "Physics, Classical and Modern4. Halliday and Resnik "Physics"5. Beiser "Perspectives of Modern Physics"6. Leibof "Quantum Mechanics"

Page 46: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

40

3.4 General Education Core CoursesHU109-Communication & Interpersonal Skills

Course: HU109Pre Requisites:

Nil

Credits:2+0 Contact Hrs: 2Course Objectives

To develop good English writing, language usage, speaking and reading skills. Course aims to highlight the importance of business communication and to develop understanding of communication concepts, principles, theories and problems. By the end of course, students would have developed good oral communication and presentation skills.

Course Contents1 Communication Skills:

a. Introduction b. Components & Principles of Communication

2 Language Skills – Listening:a. Importance, Misconceptions/ Myths b. Listening Barriers, Listening Efficiency, Typesc. Effective Listening

3 Language Skills-Speaking:a. Verbal Communication, Presentation Skillsb. Non-Verbal Communication

4 Language Skills-Reading:a. Purpose, Techniques, Strategies

5 Language Skills-Writing:a. Qualities of effective Writing, Sentence Structure, Writing Techniquesb. Patterns of Essay Writingc. Citing Sources (Bibliographic Conventions)

6 Practical work/ Class Activities a. Public Speakingb. Group Discussionsc. Formal Presentation of Individual Research Paper (IRP)d. Review of Documentarye. Skimming and Scanning

7 Interpersonal Skillsa. Interviewingb. Telephoningc. Meetingd. Negotiation

8 ProjectWriting an individual research paper (IRP)

Page 47: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

41

Text Book: 1. Communication Skills 2nd edition by Leena Sen, Prentice-Hall New Delhi2. Communication Skills for Engineers by Sunita Mishra, Prentice-Hall New Delhi

Reference: 1. Effective Business Communication 7th edition by Herta A. Murphy

Page 48: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

42

HU218-Technical & Business WritingCourse Code: HU218Pre Requisites:

None

Credits:2+0 Contact Hrs: 2Course Objectives:

Course focuses on developing awareness and understanding of research methodologies and to provide the necessary background for students to successfully undertake the project activity and dissertation. By course completion, the students will be able to apply an appropriate research strategy, critically analyze research reports and data, generate research support, undertakes a literature search on a research topic etc. So they will be able to disseminate research in terms of reports and journal publications.

Course Contents1 Technical Writing (03 Weeks)

• Technical Writing- Introduction and Characteristics• Difference between Technical and Academic Writing• The Technical Writing Process• Objectives in Technical Writing• Communication Models and The CMAPP Analysis

2 Correspondence (08 Weeks)• Memorandum• Professional Letters• Electronic Communication• Employment Communication• News Releases• Instructions / Manual Writing

3 Research Writing (03 Weeks)• Abstract/Summary• Data Collection• Formal ProposalPractice• Correspondence (Assignments)• Formal Proposal Writing (Research Writing)

4 Presentation of formal Proposal(02 Weeks)Text Book: 1. Technical Writing for Success by Sue Mehlich & Darlene Smith-

Worthington2. Survivor Guide to Technical Writing by David Ingre.

References: 1. Technical Writing –Process and Product by Sharon J. Gerson & Steven M. Gerson2. Effective Technical Communication by Anne Eisenberg

Page 49: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

43

HU107-Pakistan StudiesCourse Code: HU107Pre Requisites:

None

Credits:2+0 Contact Hrs: 2Course Objectives:

To deepen the understanding of the social and political movements that has shaped Pakistani society and culture. Course also introduces the students to the contending perspectives on the origins of Pakistan, the dynamics of pluralistic society which have shaped the civic and political culture of Pakistan and impact of regional and international environment on Pakistan's domestic and foreign policy choices.

Course Contents1 Origins And Development Of Pakistan Movement Part - I: The basic and

relevance of the Ideology of Pakistan to Islam & Muslim freedom struggle. Part-II The flow of events, political actors and interactions from the 1857 'War of independence' and the role of Syed Ahmed Khan to the demand of Pakistan, its ultimate fulfilment under the able leadership of Quaid-i-Azam.

2 Development Of Political & Constitutional System In PakistanSociety, State, Elements of State; i.e. Executive, Legislature and judiciary. History of Constitutional development in Pakistan from 1947 to 2004, different political System experimented so for , Political crisis.

3 Economic Development In Pakistan Indian Muslim’s conditions during the British Period & Economic Problems at the time of independence. Pakistan’s planning experience: Five-year plans, National Income, savings and investments, Monetary theory and fiscal policy, inflation, balance of payments foreign assistance.

4 Foreign Policy & Relations of Pakistan The Geo-strategic importance of Pakistan. The basic principles and broad goals of Pakistan foreign policy. Need to redefine the goals and direction of Pakistan’s foreign policy. Constructive and mutually rewarding relations with India, Pakistan’s role in central Asia and Afghanistan, Relations with U.S, China, Iran and Russia.

5 Educational & Technological Progress In Pakistan Status of Education in Pakistan. Impact of information technology and satellites on education. Development of an educational system.

6 Social & Environmental Problems in Pakistan Poverty, Gender discrimination, Water management, Pollution, populations & others

Text Book: 1. The Emergence of Pakistan By Chaudhary Muhammad AliReference: 1. Economic and Social Progress in Asia. Umar Noman, Karachi,

19992. Pakistan’s Foreign policy: An Historical analysis: S.M. Burke, 19933. Newspapers editorial and selected journalistic writings.

Page 50: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

44

HU101-Islamic StudiesCourse Code: HU101Pre Requisites:

Nil

Credits:2+0 Contact Hrs: 2Course Objectives:

To impart an understanding of the fundamental principles/teachings of Islam through study of verses of the Quran and Prophetic Sayings, important facets of the Prophet’s life and salient, features of Islamic Civilization. Course aims to provide appreciation of other prominent religions, systems of ethics and cultures to prepare students to survive in international/multicultural work place.

Course Contents1 Study of Quran Fazail –e-Quran, The Miricles of Quran,Compilation of Quran,

Usool-e-Quran, Study of Sura Al-Hujurat (The Chambers),Study of Sura Al-Furqan (The Criterion), Ayat.ul Kursi, Sura Al Akhlas

2 Study of Haddees Definition , Difference between Hadees and Sunnah, The types of Hadees, Parts of Hadees, The compilation, Importance of Hadees , Six books of Hadees, Study of Slected Ahadees

3 Sirat-Un-Nabi Life of Holly Prophet (PBUH) before Prophet hood , and after Prophethood, Reasons /Causes of migeration, Establishment of Islamic State , The Pact of Madina, Selected Bettless, Treaty of Hudaibia, Conquest of Mekkah, The last Sermon, Death.

4 The Philosophy of Islamic Beliefs The Articles of Faith. Oneness of Allah, The Angles, The Prophets, Revealed books, The day of Judgment, Life after death.b. The Pillars of Islam: Tawheed, Namaz, Roza, Hajj, Zakat, and Jihad.

5 Different Topics The characteristics of Islamic ideology, Huqooq Aallah, Huqooq-ul- Ebad, Place of Women in Islam, The Rights of Elders, Kasbe-Halal, Truthfulness, Taqwa Tawakul

Text Book: 1. Islami Taleemat by Prof Abdul Hameed Tigga, A One Publisher

HU222-Professional EthicsCourse Code:

HU222

Pre Requisites:

Nil

Credits:2+0 Contact Hrs: 2Course Objectives:

All the degree programs offered in different universities/institutes are not able to provide a broader outlook on some very important aspects of everyday life. So graduates are still unprepared to work in professional environments after their degree. This course aims to help the students find answers to the meaning of life and to illuminate the struggle between right and wrong.

Course Contents

Page 51: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

45

1 Understanding Ethics (01 Week)• Profession• Ethics• Professional Ethics

2 Origin and Development of Human Society and Ethics (03 Weeks)Culture and SocietySocial and Cultural DevelopmentEthnocentrism & XenocentrismCulture and Humanity

3 Personality and Moralization (03 Weeks)• The meaning of Personality• Factors in the development of personality• Moralization and the self• Desirable and undesirable personality traits

4 Ethics - Role and Status (01 Week)• Moralization through role and status• Ascribed and Achieved Status• Character Ethics

5 Moral Philosophy & Theories (01 Week)• Utilitarian• Right, Duty & Virtue

6 Ethics & Role of Social Institutions (02 Weeks)• Family• Religion• Education

7 Contemporary Moral Issues (03 Weeks)• Moral Dilemma• Problem Solving• Concept of Safety & Risk• Gender• Welfare• Environmental Ethics

8 Project:Selected Engineering Case Studies

Text Book: Engineering Ethics: Concepts and Cases by Harris, C.E. –Wordsworth

Reference: Engineering Ethics by Charles B – Pearson Education

Page 52: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

46

CS100-Fundamentals of ICTCourse Code:

CS100

Pre Requisite:

Nil

Credits:2+1 Contact Hrs: 5Course Objectives:

This is an introductory course on Information and Communication Technologies. Topics include ICT terminologies, hardware and software components, the Internet and Web, and ICT based applications.

Course Contents1 Introduction: Introduction to IT, Computing & Communication,

Understanding Computer, Peripheral Devices2 Hardware: Hardware Technology, System Unit, Storage Devices,

Input/Output devices, Output Devices, Telecommunications3 Computer Software: Operating Systems, Application Software, Microsoft

Office4 Internet and Web: World Wide Web, Browsers & Search Engines, Web

Page Basic Design5 Introduction to Data Communication and Computer Networks

Connectivity, Interactivity & Multimedia, Internet Access Devices and connecting medias, Basics of Digital & Analogue Signal, Digital Communication, Networks & Protocols

6 Development: System Development, Introduction to Programming, Programming Languages, Problems solving Techniques

7 Introduction to Software EngineeringText book: 1. Introduction to Computers by Peter Norton, 6th International

Edition (McGraw Hill)Reference: 1.Using Information Technology: A Practical Introduction to

Computer & Communications by Williams Sawyer, 6th Edition (McGraw Hill)2. Computers, Communications & information: A user's introductionby Sarah E. Hutchinson, Stacey C. Sawyer3. Computing Essentials by O’Leary, O’Leary, (McGraw Hill)

GMT471-EntrepreneurshipCourse Code:

GMT471

Pre Requisite:

Nil

Credits:3+0 Contact Hrs: 3Course Objectives:

This course will introduce students to the concepts of entrepreneurship so that they have the necessary skill set to explore entrepreneurial opportunities in order to create value,

Page 53: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

47

generate wealth and serve society.Course Contents1 The Entrepreneurial Process, Entrepreneurs and Enterprise2 Evolution and Competition in Technology Markets, Technology Leaders

The Entrepreneurs of Silicon Valley, The New Internet Entrepreneurs3 The State of the Art of Individual Entrepreneurship, The State of the Art E-

Business4 Communication and Presentation Skills5 Business Plans: 1. Industry and Competitor Analysis ( Opportunity

Recognition) 2. Company 3. Product and Services Description (Idea Generation),

6 Business Plan: 4. Marketing Plan: a) Entrepreneurial Marketing b) Marketing Management, 5. Operations 6. Development Plan: a) Human Resource Management b) Growth Strategies : Managing a Growing Business ; Franchising, Management: Fundamentals of Management

7 Business Plan: Legal Form of Business: a) US Structures b) Pakistan Structures

8 Business Plan: 9. Critical Risks (Challenges) a) Intellectual Property b) Intellectual Capital / Property,

9 Business Plan: 10. Financial Plan (Start-up Finance, Revenue Projections), Pro Forma Financial Statements, Funding Sources: a) Venture Capital b) Debt and Other Forms of Finance c) Financing of Enterprise d) Lease Financing and Hire Purchase, New Venture Finance f) Working Capital Management c) Offering (Funding request) Harvesting, The Real New Economy.

Text Book: 1. Entrepreneurship: Strategies and Resources by Marc J. Dillinger, Third Edition (Pearson Education)

Reference: 1. Essentials of Entrepreneurship and Small Business Management, Thomas W. Zimmerer, Norman M. Scarborough, Pearson Education

Page 54: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

48

3.5 Software Engineering / Computing ElectivesCS352-Theory of Automata and Formal Languages

Course Code: CS352Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3Course Objectives:

The major objective of this course is to introduce the students to the concepts of theory of computation in computer science. The course will help the students to acquire and develop insights into the relationship among formal languages, automata, grammars and Turing theory.

Course Contents1 Languages and Regular Expressions: Defining languages, Kleene closure,

Definition of regular expressions (RE’s), Languages associated with regular expressions.

2 Finite Automata (FA): Definition of FA’s, FA’s and their languages, Transition Graphs (TG’s), No determinism, Unification of RE’s, FA’s and TG’s.

3 Finite Automata with Output: Moore machine, Mealy machines Equivalence of Moore and Mealy machines, Transducers

4 Regular Languages: Union, concatenation, Kleene closure, complementation and intersection of regular languages, Decision procedures for the finiteness, and equivalence, Nonregular languages Pumping lemma.

5 Context-Free Grammars (CFG): Symbolism for generative grammars, Regular grammars, Chomsky normal form, Leftmost derivations.

6 Pushdown Automata (PDA): Adding input tape and pushdown stack to FA’s, Definition of PDA’s, Non context free languages, Closure, intersection, and complement of context free languages, Decision problems, emptiness, uselessness, finiteness, The CYK algorithm, Parsing.

7 Turing Theory: Turing machines, Post machines, Two stack PDA, Recursively enumerable languages, Type 0 grammars, The universal Turing Machine.

TextBook:

1. Introduction to Computer Theory, 2nd Edition, by Daniel I A. Cohan John Wiley, 1997.

Reference:

1. An Introduction to the Theory of Computations, by Eitan M. Gurari Computer Science Press, 1989.

2. Automata Theory: Machine and Languages, by Richard Y. Kain McGraw Hill Book Company, 1972

3. Automata and Formal Languages: An Introduction, by Dean Kelley Prentice Hall, October 1995.

4. Automata and Computability, by Dexter C. Kozen Springer Verlag, 1997.

5. An Introduction to Automata Theory, by M.W. Shields Books Britain, 1988.

Page 55: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

49

Page 56: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

50

CS381-Networks SecurityCourse Code: CS381Pre Requisites:

CS320-Computer Networks

Credits:3+0 Contact Hrs: 3Course Objectives:

Course narrates the principles and techniques used to make the network secure. The course attempts to help the students to understand the security terminology and acronyms, basic and advance security vulnerabilities, shared keys, encryption/decryption algorithms, etc. Students will be able to design/utilize secure networks on basis of knowledge obtained via the course.

Course Contents1 Introduction Cryptology and simple cryptosystems2 Conventional encryption techniques3 Stream and Block Ciphers DES; More on Block Ciphers; The Advanced

Encryption Standard. Confidentiality & Message authentication: Hash functions;

4 Number Theory and Algorithm Complexity Public key Encryption. RSA and Discrete Logarithms

5 Identification Schemes Dial-up security. E-mail security, PGP, S-MIME; Kerberos and directory authentication. Emerging Internet security standards

6 SET; SSL and IPsec VPNs; Firewalls; Viruses; Miscellaneous topics.7 Block Ciphers-modes of Operation, Modular Arithmetic8 Diffie-Hellman key exchange9 Mutual authentication protocols10 Denial of service attacks11 Intrusion detection, access control, wormsText Book: W. Stallings, Cryptography and Network SecurityReference: Prentice Hall PTR, Upper Saddle

Page 57: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

51

CS370-Artificial Intelligence Course Code: CS370Pre Requisites:

CS110 – Fundamental of Computer Programming

Credits:3+1 Contact Hrs: 6Course Objectives:

Objective for this course is to give the student an overview of this field while at the same time giving depth in the most fundamental areas. Course will teach students about the different AI techniques such as searching, reasoning, game playing etc. By the end of the course, student would have a proficient knowledge of the AI field and can utilize the AI techniques as necessary to solve a problem. Student will also be fluent in using an AI language to write the programs.

Course Contents1 Introduction: The Turing Test approach, The cognitive modelling approach,

The laws of thought approach, The rational agent approach2 Solving Problems by Searching: Breadth-first search, Uniform cost search,

Depth-first search, Depth-limited search, Iterative deepening search, Bidirectional search

3 Informed Search Methods: Best-First Search, Heuristic Functions, Memory Bounded Search, Iterative Improvement Search

4 Game Playing: Alpha-Beta pruning, Mini max5 Knowledge and Reasoning: A Knowledge-Based Agent, Propositional Logic6 First-Order Logic: Syntax and Semantics, Extensions and Notational

Variations, Using First-Order Logic, Deducing Hidden Properties of the world7 Building a Knowledge Base: General Ontology, Representing CategoriesText Book:

1. Peter Norvig, “Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp”, Morgan Kaufman Publishers, Inc. 1992.

Reference: 1. Guy L. Steele Jr., “Common Lisp the Language”, 2nd edition, Digital Press, 1990.

2. Peter Jackson, “Introduction to Expert Systems”, Addison-Wesley Publishing Company, 1986.

CS473-Theory of Intelligent SystemsCourse Code:

CS473

Pre Requisites:

CS370 Artificial Intelligence

Credits:3+1 Contact Hrs: 6Course Objectives:

To acquaint students with theory and principles of intelligent systems. The course will help the students to develop the knowledge of intelligent systems design (control, ordering etc.) based on combinations of various theories such as simulation, neural networks, Bayesian, genetic algorithms, fuzzy sets and

Page 58: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

52

reinforcement learning.Course Contents1 Introduction: Well-Posed Learning Problems, Choosing the Training

Experience, Choosing the Target Function, Choosing a Representation for the Target Function, Choosing a Function Approximation Algorithm, Issues in Machine Learning

2 Concept Learning and the General-to-Specific Ordering: A concept Learning Task: The Notation, The Inductive Learning Hypothesis, FIND-S: Finding a Maximally Specific Hypothesis, Version Spaces and the CANDIDATE-ELIMINATION Algorithm, Inductive Bias: An Unbiased Learner

3 Decision Tree Learning: Entropy and Information Gain, Building the Decision Tree, Hypothesis Space Search in Decision Tree Learning, Inductive Bias in Decision Tree Learning, Occam’s Razor

4 Artificial Neural Networks: Biological Motivation, Neural Network Representations, The Basic Perceptron, Gradient Descent and the Delta Rule, Multilayer Networks and the Back propagation Algorithm

5 Bayesian Learning: Bayes Theorem and its significance in intelligent decision making, MAP Hypotheses and Consistent Learners, Bayes Optimal Classifier

6 Evolutionary Algorithms:Genetic Algorithms: Representing Hypotheses, Genetic Operators, Fitness Function and Selection, Mathematical FoundationsGenetic Programming: Representing Programs

7 Learning Set of Rules: Learning First-Order Rules, Learning Sets of First-Order Rules: FOIL

8 Reinforcement Learning: Q Learning, Nondeterministic Rewards and Actions, Temporal Difference Learning, Generalizing from Examples

Text Book:

1. Tom M. Mitchell, “Machine Learning,” McGraw-Hill, © 1997

Reference: 1. “Soft Computing: Integrating Evolutionary, Neural, and Fuzzy Systems". Tettamanzi, Andrea, Tomassini, Marco, Springer, 2001.2. "Soft Computing and Intelligent Systems Design: Theory, Tools and Applications" by Fakhreddine O. Karray, Clarence W De Silva, Addison Wesley, 2004.

Page 59: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

53

CS426-Digital Image ProcessingCourse Code: CS426Pre Requisites: Credits:3+1 Contacts Hrs: 6Course Objectives:

The course emphasizes the application of processing and analysis of digital images. The primary objective of the course is to provide students with the skills and knowledge to apply the different kinds of processing on the digital image to develop different kind of application soft wares. Course covers various topics ranging from image enhancements in frequency and spatial domain, image degradation, image restoration etc which provide a good understanding about the existing digital image processing techniques.

Course Contents

1 Introduction Digital Image Processing Computer Vision and Pattern Recognitions

2 Field Usage of DIP, Fundamental steps in DIP Component. 3 Digital Image Fundamentals. Element of visual Perception, Image

Sensing and Acquisition Image Sampling and Quantization. Pixels operation, linear & Non lineate operation.

4 Image Enhancement in spatial Domain: Background, Grey level Transformation. Edge detection sharpening.

5 Image Enhancing in Frequency Domain, background, Frequency domain, Faired Transform smarting, Sharpening, Homo-morphic Filtering implementation.

6 Image Restorations. A model of the Image Degradation/ Restoration Process, Noise Model, Restoration in the Presence of Noise-spatial filtering, Periodic Noise Reduction by frequency Domain filtering.

7 Linear, Position-Invariant Degradation Estimating the Degradation. Inverse Filtering, Wiener filtering, Min Mean Squares Error, Filtering constrained least squares filtering Geometric mean filter and Transformation

8 Colour Image Processing: Colour fundamentals, Colour model pseudo-colour Image processing, Basics of full colour Image processing colour Transformation

9 Colour Filtering Sharpening, Smoothing, Segmentation, Noise, and colour Image Compression.

10 Image Compression: Fundamental, Image compression models. Elements of information theory, Error free compression, Image Compression standards, lossy compression

11 Image Segmentation: Detection of Discontinuities, Edge linking, Boundary detection, Thresholding, Region Based segmentation

12 3 D Imaging: Pattern Recognitions classes, and decision making. Text Book: 1. Digital Image Processing using Matlab by Gonzalez, Woods and

Eddins

Page 60: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

54

Ref Book: 1. Digital Image Processing by R. C. Gonzalez and R. E. Woods, Addison Wesley, Second Ed., 2002.

2. Computer Vision by Linda Shapiro and George Stockman, Prentice- Hall 2001.

Page 61: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

55

CS361-Computer GraphicsCourse Code:

CS361

Pre Requisites:

CS212 Object Oriented Programming

Credits:3+1 Contact Hrs: 6Course Objectives:

This course is designed to provide a comprehensive introduction to computer graphics leading to the ability to understand contemporary terminology, issues, and trends. Topics cover geometric transformations, view port transformations, software systems (OpenGL), shading and mapping etc. Course material is structured to meet the needs of both designers and users of interactive computer graphics systems.

Course Contents1 Introduction to Computer Graphics2 Computer Graphics System: Video Display Devices and Systems, Raster

Scan System, Graphic Monitors & Workstation, Input and Output Devices, Graphic Software and Hardware.

3 Output Primitive its Attributes. Point and Line, Line, Circle Ellipse Algorithms and Functions. Loading Frame Buffer, Special Curve Drawing Algorithms, Pixel Addressing, Filled Algorithms. Attributes of line, curve, Area fill and Characters, Antialiasing.

4 2D Geometric Transformation: 2D, Composite and other Transformations, Matrix Representation, Transformation between Coordinate System. Affine and Raster Methods for Transformation.

5 2D-Viewing: Window to View-port Transformation, 2D Viewing Function, Clipping in Raster World, Clipping Lines, Curves & Polygons Text

6 3D Geometrical Transformation & Viewing: Projections, View Planes & Viewing Geometries, Co-ordinate Systems, Matrix Representation of 3D Transformations, Composite 3D Transformations, Visible Line & Surface Identification.

7 Colour Model: Properties of Light, Colour Models (RGB, YIQ, CMY(K), HSV), Conversion between Colour Models.

8 Advance Topics:Introduction to Sp line & Curves, Visible Surface Detection, Animation & Simulation.

Text Book:

1. Computer Graphics by Pauline Baker

Reference: 2. Computer Graphics: Principles & Practice by Foley, Van Dam, Feiner & Huges.

CS332-Distributed ComputingCourse Code: CS332

Page 62: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

56

Pre Requisites:

CS212 Object Oriented ProgrammingCS330 Operating Systems

Credits:3+1 Contact Hrs: 6Course Objectives:

The course will provide an introduction to the distributed computing concepts including the network operating systems, middleware, client-server systems, common layer application protocols (RPC, RMI, streams), distributed processes, network naming, distributed synchronization, and distributed object based systems. By the course completion, the student will gain a positive exposure to the professional responsibilities that are part of distributed system design and development.

Course Contents1. Characterization of Distributed Systems: Introduction to Distributed

Systems, Examples of Distributed Systems, Resource Sharing and the web 2. System Models: Architectural Models, Fundamental Models3. Inter-process Communication: External data representation and

marshalling, Group communication, Case Study: Inter process Communication in UNIX

4. Distributed Objects and Remote Invocation: Communication between distributed objects, Remote procedure call, Events and notifications, Java RMI case study

5. Operating System Support: The operating system layer, Protection and address spaces, Processes and Threads, Communication and invocation, Operating system architecture

6. Distributed File Systems: File server architecture, Sun Network File System, The Andrew File System

7. Name Services: Name services and the Domain Name System, Directory and discovery services, Case study of the Global Name Service, Case study of the X.500 Directory Service

8. Time and Global States: Clocks, events and process states, Synchronizing physical clocks, Logical time and logical clocks, Global states, Distributed debugging

9. Coordination and Agreement: Distributed mutual exclusion, Elections, Multicast communication, Consensus and related problems

10. Transactions and Concurrency Control: Transactions, Nested transactions, Locks, Optimistic Concurrency Control, Timestamp ordering

11. Distributed Transactions: Flat and nested distributed transactions, Atomic commit protocols, Concurrency control in distributed transactions, Distributed deadlocks, Transaction recovery

12. Replication: System model and group communication, Fault-tolerant services, Highly available services, Transactions with replicated data

13. Distributed Shared Memory: Design and implementation issues, Sequential consistency and Ivy, Release consistency and Munin

14 Mobile Agent ParadigmText Book: 1. Distributed Systems: Concepts and Design” 4th Ed. by George

Coulouris, Jean Dollimore and Tim Kindberg Addison-Wesley, Pearson Education 2001.

Page 63: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

57

Reference: 1. Tanenbaum, Andrew S. and van Steen, Maarten, Distributed Systems, Principles and Paradigms. Prentice-Hall, 2002 (ISBN 0-13-088893-1).

Page 64: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

58

CS344-Web EngineeringCourse Code:

CS344

Pre Requisites:

CS212 Object Oriented Programming

Credits:3+1 Contact Hrs: 6Course Objective:

With the advancement in the Internet and Web technologies, Web applications are becoming increasingly popular. This course focuses on the development of Web applications based on software engineering practices and methodologies. Main objectives of this course are to introduce students to various analysis and design techniques for Web applications, main technologies being used for the Web application development and various methods for testing and improving Web application performance. This course will cover Web technologies according to the latest industrial trends and requirements.

Course Outline

1 Introduction to Web Engineering

2 Requirement Engineering for Web Applications

3 Web Applications

4 Accessibility

5 Client Side Technologies

6 Developing Web Applications

7 Technologies: CGI and Perl

8 Server Side Technologies-I

9 Server Side Technologies-II

10 Testing, Operation & Maintenance

11 Performance of Web Applications

Text Book: 1. Web Engineering by G.Kappel, B.Proll, S. Reich & W. Retschitzegger (2006), 1st edition.

Reference: 1. JSP 2.0: The Complete Reference, Second Edition by Phillip Hanna2. A Little Book on Perl by Robert Sebesta, Prentice Hall. 3. ASP.NET Bible by Mridula Parihar, Essam Ahmed, Jim Chandler, Bill Hatfield, Rick Lassan

MATH352-Numerical MethodsCourse MATH352

Page 65: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

59

Code:Pre Requisites:

MATH111 Calculus-1CS110 Fundamentals of Computer Programming

Credits:2+1 Contact Hrs: 5Course Objectives:

To familiarize the students with the fundamental concepts in numerical analysis and to enable them to apply materials learned in the course to determine the numerical solutions efficiently and to assess the quality of the solutions. This course will consider different problems ranging including linear systems, differential equation solutions, interpolation, numerical integration etc which can help them in developing the through skills for providing the numerical solution to any mathematical problem.

Course Contents1 Introduction: Sources of Errors in numerical methods. Error measurements,

Significant Digits, Precision and Accuracy, Taylor’s Series.2 Solution of Linear System of Equations: Direct Methods ( Matrix

factorization, L-U decomposition methods). Indirect or Iterative Methods (Jacobi’s Method, Gauss Siedal Method)

3 Numerical Solution of Differential Equations: Euler’s Method, Error estimation in Euler’s method, Euler’s Modified Method, Runge Kutta Method.

4 Eigen-Value and Eigen Vectors: Computation using Characteristic Equation, Power method.

5 Non-Linear System of Equations: Bisection method, Method of False Position, Newton Raphson Method, Secant Method.

6 Finite Differences: Use of Difference Tables, Detection and Correction of Difference Tables, Difference Operators (Forward, Backward, Central, Average, Shift Operator).

7 Interpolation: Newton’s Forward Difference and Backward Difference Interpolation Formula, Lagrange’s Method.

8 Numerical Differentiation: Derivatives using Newton’s Forward Difference and Backward Difference Formula.

9 Numerical Integration: Trapezoidal Rule, Simpson’s 1/3 and 3/8 Integration rules.

Text Book :

1. Curtis F. Gerald, Applied Numerical Analysis, Addison-Wesley Pub Co, 1989

Reference: 1. Richard L. Burden, J. Douglas Faires, Numerical Analysis, Brooks/Cole Pub Co, November 1996.

2. Walter Gautschi, Numerical Analysis : An Introduction, Springer Verlag, April 1, 1997

3. Shoichiro Nakamura, Applied Numerical Methods, Prentice –Hall international Edition, 1991

4. Kamal B. Rojiani, Programming in C with Numerical Methods for Engineers, Prentice- Hall, 1996.

5. Numerical Analysis, 3 rd Edition Dr Saeed Akther

Page 66: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

60

CS380-Introduction to Computer SecurityCourse Code: CS380Pre Requisites:

CS100 Fundamentals of ICTCS110 Fundamentals of Computer Programming

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course aims to develop an understanding of information systems security practiced in computer operating systems, distributed systems, networks and representative applications.The students will gain familiarity with prevalent network and distributed system attacks, defences against them, and forensics to investigate the aftermath. The course helps to develop a basic understanding of cryptography, how it has evolved, and some key encryption techniques used today and develop an understanding of security policies (such as authentication, integrity and confidentiality) as well as protocols to implement such policies in the form of message exchanges.

Course Contents1 Confidentiality, integrity, and availability 2 Operational issues, cost-benefit and risk analyses, legal and human factors 3 Planning and implementing effective access control 4 Defining security, confidentiality, and integrity policies5 Access Control Models6 Using cryptography and public-key systems, and recognizing their limits7 Understanding and using authentication: from passwords to biometrics 8 Security design principles: least-privilege, fail-safe defaults, open design,

economy of mechanism, and more9 Controlling information flow through systems and networks 10 Assuring security throughout the system lifecycle 11 Malicious logic: Trojan horses, viruses, boot sector and executable infectors,

rabbits, bacteria, logic bombs--and defences against them 12 Vulnerability analysis, penetration studies, auditing, and intrusion detection

and prevention 13 Applying security principles to networks, systems, users, and programs14 Database Security Issues15 Physical SecurityText Book: 1. Security in computing by Charles P. Pfleeger

2. Computer security by Deter GollmanReference: 1. An Introduction to Computer Security: The Nist Handbook, by

Barbara Guttman2. Introduction to Computer Security By Matt Bishop

Page 67: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

61

CS481-Computer ForensicsCourse Code: CS481Pre Requisites:

CS380 Introduction to Computer Security

Credits:3+1 Contact Hrs: 6

Course Objectives:

The course aims to help students in developing abilities to determine whether organizational processes for the collection, preservation, presentation and preparation of computer-based evidence are appropriate for satisfying the requirements of criminal law enforcement and civil litigation. The course will assist in the formulation and implementation of organizational computer forensics preparedness policies. This course will enable students to determine the necessity for forensic preparedness procedures and recognize the appropriate moments for instigating an investigation and involving lawenforcement.

Course Outline1 Understanding computer forensics definitions of computer forensics, a

brief history of computer forensics, computer forensics resources2 Preparing for computer investigations enforcement agency investigations,

Corporate Investigations, Professional Conduct3 Understanding Computer Investigations Preparing a computer

investigation, systematic approach, data-recovery workstations and software, investigation execution, case completion, case critique

4 Investigator's Office and Laboratory forensic lab certification requirements, physical layout of a computer forensics lab, basic forensic workstation selection, disaster recovery plan establishment

5 Computer Forensics Tools Computer forensics software needs, Computer forensics software, Computer forensics hardware tools, Validating and testing forensic software

6 Digital Evidence Controls Identifying digital evidence, Cataloguing digital evidence, Storing digital evidence, Obtaining a digital hash

7 Computer Forensic Analysis DriveSpy to analyze computer data, digital intelligence computer forensics tools, AccessData's forensic toolkit, Guidance software's EnCase, Computer forensics cases, Performing a computer forensic analysis, data hiding techniques

8 Recovering Image Files Recognizing an image file, lossless and lossy data compression, Locating and recovering image files, Analyzing image file headers

9 E-mail Investigations roles of the client and server in e-mail, e-mail crimes and violations, e-mail servers, specialized e-mail forensics tools

10 Network Forensics Understanding internet fundamentals, network basics, Acquiring data on Linux computers, network forensics

11 Investigation Reports Writing Importance of Reports, Formal report format, Generating report findings with forensic software tools

Page 68: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

62

Text Book: 1. Computer Forensics and Privacy, by Michael A. Caloyannides, Artech House 2001. 2. Digital Evidence and Computer Crime: Forensic Science, Computers, and the Internet, Second Edition, by Eoghan Casey, Academic Press 2004.

Reference: 1. Handbook of Computer Crime Investigation: Forensic Tools and Technology, by Eoghan Casey (ed), Butterworth Heinemann 2002.2. Computer Forensics: Computer Crime Scene Investigation, by John R. Vacca, Charles River Media 2002.

Page 69: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

63

CS334-Open Source SystemsCourse Code: CS334Pre Requisites:

CS330 Operating SystemsCS110 Fundamentals of Computer Programming

Credits:3+1 Contact Hrs: 6

Course Objectives:

The course aims to help students discuss the relationship of Linux and its various versions to other open source operating systems in the contemporary network environment, identify career paths open to individuals with the ability to administer open source platforms and networks. The course will help students to install Linux for a network client and for a network server, explain and administer the file management system and the user account management system; build a basic open source one-tier network, including configuring TCP/IP protocols necessary for this level of network.

Course Outline1 Introduction: Open source philosophy, advantages of open source systems,

licenses (GPL, LGPL, intellectual and copyrights issues in open source systems, life cycle of open source software development, issues is open source development.

2 Open source operation system Needs for open source operation systems, Linux, differences between Linux and propriety operating systems.

3 Graphical Desktop environments Evolution of graphical user interface, open-source graphical desktop environments (KDE, GNOME), open-source graphics libraries (GTK, GTK+).

4 File Systems File system basics, local file systems (ext2, ext3, Reiser FS, IBM Journaled FS), network file systems (NFS, Lustre), interoperability between different file system, permissions, backup techniques and tools.

5 Print Services Printing services, local and network printing, comparative study of printing protocols.

6 Networking Networking overview, networking configuration on open-source systems, network services (ftps, telnet, nfs), remote execution, network applications, interoperability between different operating systems on a network.

7 Multimedia tools Audio/video standards, encoders/decoders, licensing issues related to various audio/video formats, open-source ports for proprietary codecs, open-source multimedia application.

Text Book: 1. Introduction To Linux: A Beginner's Guide by Machtelt GarrelsReference: 1. Linux in a Nutshell by Ellen Siever, Jessica P. Hackman,

Stephen Spainhour, Stephen Figgins, O'Reilly UK, ISBN 05960002512. Running Linux by Matt Welsh, Matthias Kalle Dalheimer, Lar Kaufman, O'Reilly UK, ISBN 156592469X3. Linux Unleashed by Tim Parker, Bill Ball, David Pitts, Sams, ISBN 0672316889

Page 70: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

64

Page 71: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

65

CS482-System Incident HandlingCourse Code: CS482Pre Requisites:

Number TheoryCS482-Introduction to Computer Security

Credits:3+0 Contact Hrs: 3

Course Objectives:

The emphasis in the course will be on gaining an in-depth understanding of the information technologies necessary for dealing with computer security incidents as well as digital evidence. The course will deal with the forensic as well as computing aspects of preventive, detective, corrective, and protective measures to provide assurance that the digital evidence is admissible and the chain of custody of such evidence is maintained. The course also will consider the legal and reporting aspects of handling incidents.

Course Outline1 An Introduction to Incident Response What Is Incident Response? The

Rationale for Incident Response. Overview of Incident Response. 2 Risk Analysis About Risk Analysis. Types of Security-Related Risks.

Obtaining Data About Security-Related Incidents. The Importance of Risk Analysis in Incident Response.

3 A Methodology for Incident Response Rationale for Using an Incident Response Methodology. A Six-Stage Methodology for Incident Response. Caveats.

4 Forming and Managing an Incident Response Team What Is an Incident Response Team? Why Form an Incident Response Team? Issues in Forming a Response Team. About Managing an Incident Response Effort.

5 Organizing for Incident Response Virtual Teams-Ensuring Availability. Training the Team. Testing the Team. Barriers to Success. External Coordination. Managing Incidents.

6 Tracing Network Attacks What Does Tracing Network Attacks Mean? Putting Attack Tracing in Context. Tracing Methods. Next Steps. Constructing an Attack Path. Final Caveats.

7 Responding to Insider Attacks Types of Insiders. Types of Attacks. Preparing for Insider Attacks. Detecting Insider Attacks. Responding to Insider Attacks. Special Considerations. Special Situations. Legal Issues.

8 The Human Side of Incident Response Integration of the Social Sciences into Incident Response. Cybercrime Profiling. Insider Attacks. Incident Victims. Human Side of Incident Response.

9 Traps and Deceptive Measures About Traps and Deceptive Measures. Advantages and Limitations of Traps and Deceptive Measures. Focus: Honeypots. Integrating Traps and Deceptive Measures into Incident Response.

10 Future Directions in Incident Response Technical Advances. Social Advances. The Progress of the Profession. The Nature of Incidents.

Text Book: 1. Computer Security Incident Handling: Step-by-Step by Stephen Northcutt

Page 72: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

66

2. Incident Response: A Strategic Guide to Handling System and Network by E. Eugene Schultz, Russell Shumway

Reference: 1. Digital Evidence and Computer Crime by Eoghan Casey 2. Critical Incident Management by Alan B. Sterneckert

Page 73: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

67

CS483-Information Security ManagementCourse Code: CS483Pre Requisites:

CS380 Introduction to Computer Security

Credits:3+0 Contact Hrs: 3

Course Objectives:

To teach the issues involved in Information Security Management. The students will be able to understand the indigenous needs for information security for an organizations including risk assessment/treatment process of their information assets.

Course Contents1 Organization Security, Information Security Management System

(ISMS) ImplementationIndustry Standard bodies (NIST), Industry Standards (International Organization for Standardization (ISO) and the International Electrotechnical Commission (ISO/IEC), BSI), Organization Security Levels, Organization Security Structure, Risk analysis and assessment, Information classification, Policy, Standards, Procedure, Baselines, Guidelines and Policy enforcement.

2 Social Engineering Attack, Techniques and Defenses3 Physical Security A-I-C Triad (Availability, integrity and Confidentiality),

Crime prevention through environmental design (CPTED), Perimeter andBuilding Ground Perimeter Protection, Building entry points, Inside the Building: Building Floors, Office suites, Offices, Penetration (intrusion) Detection System, Assurance Trust and Confidence Mechanism, Information Assurance and Protection Mechanisms

4 Business Continuity Planning /Disaster Recovery PlanningIntroduction to Incident Handling, Project Management and Initiation, Business Impact Analysis (BIA), Recovery Strategies, Plan Development and Implementation, Testing, Maintenance, Awareness and Training.

5 IT Governance COBIT: Control Objectives for Information and Related Technology

6 Law, Investigation and Ethic Pakistani Cyber Law, Privacy and Data Protection laws around the world

7 Invited Speaker from IndustryText Book: 1. Book of Information Security Management/Hal Tipton and

MickiKarrause, Consulting Editors Publishing by CRC Press LLCCISSP by Shone Harris

Reference: ISO27001, ISO27001 Documents

Page 74: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

68

CS423-Data Warehousing and Data MiningCourse Code: CS423

Pre Requisites:

CS220 Database Systems

Credits:3+1 Contact Hrs: 6

Course Objectives:

This course aims to introduce students to the basic concepts and techniques of Data Mining, to develop skills of using recent data mining software for solving practical problems, and to gain experience of doing independent study and research.

Course Outline1 Introduction Data mining concepts, Data mining process models, Data

mining project management, Data mining tasks and techniques, Examples for data mining applications, Data Mining and Data Fusion.

2 Data Pre-processing Why Preprocess the Data? Descriptive Data Summarization, Data Cleaning, Data Integration and Transformation, Data Reduction, Data Discretization and Concept Hierarchy Generation

3 Data Warehouse and OLAP Technology: An Overview Data Warehouse, A Multidimensional Data Model, Data Warehouse Architecture, Data Warehouse Implementation, From Data Warehousing to Data Mining

4 Data Cube Computation and Data Generalization Efficient Methods for Data Cube Computation, Development of Data Cube and OLAP Technology, Attribute-Oriented Induction—An Alternative Method for Data Generalization and Concept Description

5 Mining Frequent Patterns, Associations, and Correlations Basic Concepts and a Road Map, Efficient and Scalable Frequent Item set Mining Methods, Mining Various Kinds of Association Rules, From Association Mining to Correlation Analysis, Constraint-Based Association Mining

6 Classification Problems Formulation, Decision trees, Algorithm for Decision Tree Generation, Entropy, Information gain, K-Nearest Neighbor.

7 Clustering What is Clustering, Distance Measure, Clustering Algorithm: K-Means, Hierarchical Clustering, Genetic Algorithm.

8 Association Rule Mining What is Association Rule Mining, Concepts, Algorithms to Extract Association Rules, Apriori Principle, Sequential Patterns, Bottlenecks of Apriori Algorithm, Methods to Improve Apriori Algorithm: Hash-based itemset counting, Transaction reduction, Partitioning, Sampling, Dynamic itemset counting.

9 Ensemble of Machine Learning Idea of Ensemble of Machine Learning, Bagging and Boosting: Ada Boost Method, Ensemble learning for data fusion

10 Applications: Case Study of DM Case Study: Microarray Data Classification and Cancer Diagnosis, Data Mining System Products and Research Prototypes, Additional Themes on Data Mining, Social Impacts of Data Mining, Trends in Data Mining

Text Book: 1. Margaret Dunham, ‘Data Mining, Introductory and Advanced Topics’, Prentice Hall, 2003. ISBN: 0-13-088892-3 2. Data Mining: Practical Machine Learning Tools and Techniques

Page 75: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

69

(Second Edition) by Ian H. Witten, Eibe FrankReference: 1. Ian H. Witten, Eibe Frank, Data Mining: Practical Machine

Learning Tools and Techniques with Java Implementations, Morgan Kaufmann, 1999. ISBN: 1-558-60552-5 2. Jiawei Han and Micheline Kamber, Data Mining: Concepts and Techniques, Morgan Kaufmann Publishers, ISBN 1-55860-489-8

Page 76: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

70

CS340-Web Technologies-ICourse Code: CS340

Pre Requisites:

CS212 Object Oriented Programming

Credits:2+1 Contact Hrs: 5

Course Objectives:

On successful completion of this course students will be able to:Fairly understand about World Wide Web & Internet, will be able to develop Static and Dynamic web sites and applications. Will be able to understand and use design and developmenttechniques for building data-driven web applications.

Course Contents1 Introduction: Fundamental Internet and WWW concepts, W3C standards and

recommendations,

2 HTML Basics: Web page, hypertext, mechanism of tags, hyperlinks,

3 Advance HTML: Forms, frames, embedded objects, Cascading Style Sheets: Levels, selectors, style elements,

4 Web Graphics: Color palettes, image manipulation in Photoshop, Flash animations,

5 Web Scripting: JavaScript basics, objects, events, functions,

6 Dynamic HTML: Advance JavaScript, DHTML, combining JavaScript, CSS and DOM, cross browser compatibility issues,

7 Server-side Scripting, Introduction to PHP, Configuration PHP & Apache web server,

8 HP Basics: Variables, program control, built-in functions,9 Advance PHP: Form processing, session management, cookies,10 MySQL: Introduction, configuration and setup11 PHP/MySQL Integration Part 01, Debugging, error management,

performance, and user activity analysis, web application vulnerabilities, 12 Jquery and Ajax with PHPText Book Multiple references will be used.References 1. “HTML & XHTML: The Definitive Guide”, 6th Edition, By

Bill Kennedy, Chuck Musciano2. “HTML For Dummies”, 5th Edition. By Ed. Tittel3. “Beginning PHP 5 and MySQL 5 - From Novice to Professional”, By Jason Gillmore, 2nd Edition

CS441-Web Technologies-IICourse Code: CS441

Pre Requisites:

CS212 Object Oriented Programming

Page 77: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

71

Credits:3+1 Contact Hrs: 6

Course Objectives:

This course provides a necessary knowledge for building web application and web services using component and enterprise scale technology. Microsoft .NET technologies will be used in this course.

Course Contents1 Fundamental Internet and World Wide Web concepts and technologies. How

these scale to enterprise level efforts. The idea of architecture. 2 .NET Framework concepts and technologies

3 C# Programming: C# Basics, Delegates, Events, Lambdas, Exception Handling, Generics & Collection basics

4 XML Essentials: XML Basics, XML Schema, XSLT, XPath & XQuery

5 ASP.Net (and Web Forms): ASP Essentials (Forms & Controls), Validation Controls, Master Page, Site Navigation and Personalization, ADO.net entity framework, Data Binding, State Management & Data Cache

6 Miscellaneous Topics: LINQ, Web Services creation & usage, Windows Presentation Foundation

Text Book: 1. MacDonald, M., Freeman, A and Szpuszta, M., “Pro.ASP NET 4 in CSharp 201”, 4th Edition, Jun.2010, APress.

Reference: 1. Trolsen, A. “Pro C#2010 and the Dot Net Platform”, APress2. Walter, Stephan, “ASP.NET Unleashed”, Techmedia-SAMS

Page 78: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

72

SE423-Software MetricsCourse Code: SE423

Pre Requisites:

SE321 Software Quality Engineering

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course is a step by step description of the software metrics. It includes introduction to foundations of measurement theory, models of software engineering measurement, software products metrics, software process metrics and measuring management.

Course Contents1 Introduction software metrics, Basic Measurement Theory , Measurement

quality, Measurement process, Measurement validation, Software measure classification

2 Goal-based paradigms: Goal-Question-Metrics (GQM), Goal-Question-Indicator- Metrics (GQIM) and Applications of GQM and GQIM

3 Design Metrics, Measurements and Models, Measurements Scales

4 Software engineering investigation, Investigation principles, Investigation technique

5 Formal experiments: Planning, Formal experiments: Principles and Formal experiments: Selection

6 Internal Metrics, Types of metrics, Software Size, Software Size: Length (code, specification, design), Software Size: Reuse, Software Size: Functionality (function point, feature point, object point, use-case point)

7 Complexity: Representing concurrency, and analyzing concurrent designs, Software structural measurement, Control-flow structure, Cyclomatic complexity, Data flow and data structure attributes, Architectural measurement

8 Software cost model, COCOMO and COCOMO II, Constraint model, Software Lifecycle Management (SLIM), Cost models: advantages and drawbacks

9 software quality, Software quality models: Boehm's model, McCall's model, ISO 9126 model, Especially account of ISO/ IEC 9126 External Metrics suite etc. Basic software quality metrics, Quality management models, Measuring customer satisfaction

10 Object-Oriented measurement concepts, Basic metrics for OO systems, CK metrics, OO analysis and design metrics, Metrics for productivity measurement, Metrics for OO software quality

11 SQA, Test concepts, definitions and techniques, Estimating number of test case, Allocating test times , Decisions based on testing, Test coverage measurement, Software testability measurement, Remaining defects measurement

Text Book: 1. Metrics and Models in Software Quality Engineering, by Stephen H. Kan, 2nd Ed. Addison-Wesley Professional (2002) 2. Software Metrics: A Rigorous and Practical Approach, (2nd

Page 79: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

73

ed.), by N.E. Fenton and S.L. Pfleeger, PWS Publishing, 1998References: 1. “Software Engineer's Reference Book”, by J. McDermid

(Edt.), Butterworth Heinemann. Year of Publication 2. “Software Metrics: A Guide to Planning, Analysis, and Application”, C. Ravindranath Pandian, Auerbach Publications, (2004). 3. “Applied Software Measurement: Assuring Productivity and Quality”, C. Jones, McGraw-Hill. Year of Publication 4. ISO/IEC 9126 External Metrics Reports I & II 5. “Guide to Advance Empirical Software Engineering” by Forrest Shull, Janice Singer (Eds.), Springer-Verlag, 2007.

Page 80: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

74

SE422-Software TestingCourse Code: SE422

Pre Requisites:

SE312-Software Construction

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course is about testing techniques and principles: Defects vs. failures, equivalence classes, boundary testing. Types of defects. Black-box Vs. Structural testing. Testing strategies: Unit testing, integration testing, profiling, test driven development. State based testing; configuration testing; compatibility testing; web site testing. Alpha, beta, and acceptance testing. Coverage criteria. Test instrumentation and tools. Developing test plans. Managing the testing process. Problem reporting, tracking, and analysis.

Course Contents1. Introduction and overview: Testing and inspection concepts, Testing

categories

2. Inspection process: Objective of formal inspection Organizing Test cases: Decision Tables

3. Black box and white box testing Unit testing

4. Integration testing

5 Regression testing

5. System testing6. User acceptance testing7. Metrics and complexity, State based testing8. Syntax testing9. Use of software testing toolsText Book: 1. Software Testing in the Real World: Improving the Process by

Kit, Edward.References:

SE431-Software Engineering EconomicsCourse Code: SE431

Pre Requisites:

SE200 Software Engineering

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course is about determining software costs, applying the fundamental concepts of microeconomics to software engineering, and utilizing economic analysis in software engineering decision making.

Course Contents

Page 81: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

75

1 Programming aspects, economic aspects, human relations aspects

2 Software trends: cost, social impact, the plurality of SE Means,

3 The GOALS Approach to Software Engineering,

4 The Software Work Breakdown Structure (WBS)

5 Introduction to COCOMO, definitions and assumptions, development effort and schedule, phase distribution, The Raylaigh Distribution, interpolation, basic software maintenance effort estimation.

6 Performance Models, Optimal Performance, Sensitivity Analysis, Cost-Effectiveness Models.

7 Software MaintenanceText Book 1. Boehm et al., Software Cost Estimation with COCOMO II,

Prentice Hall, 2000References 1. Boehm, Software Engineering Economics, Prentice Hall, 1981

2. Reifer, Don. Making the Software Business Case: Improvement by the Numbers , Addison Wesley, 2001.

Page 82: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

76

CS453-Programming LanguagesCourse Code: CS453

Pre Requisites:

CS212 Object Oriented Programming

Credits:3+0 Contact Hrs: 3

Course Objectives:

In this course we will understand the structure and design principles of programming languages. We will also develop your skills in describing, analyzing, and using the features of programming languages

Course Contents1. Overview of programming language paradigms

2. Abstract vs. concrete syntax, abstract grammars, algebraic signatures, terms and substitution

3. Role of types in programming and programming languages, types and their operations: products, sums, functions, recursive types, reference and array types

4. Type systems: strongly typed languages type checking (static vs. dynamic), type equivalence (by name vs. structural), overloading, coercion, polymorphism, type inference

5 Declarations and environments. Block structure: scope and visibility, stack discipline. Bound occurrences: static vs. dynamic binding.

6. Information hiding, modules, abstract data types, classes.Text Book: 1. R.W. Sebesta Concepts of Programming Languages. 5th edition.

Addison Wesley, 2002References: 1. R. Sethi Progamming Languages: Concepts and Constructs. 2nd

edition. Addison Wesley. 1996.

Page 83: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

77

CS471-Machine LearningCourse Code:

CS471

Pre Requisites:

Introductory Probability and Statistics, Linear Algebra

Credits:3+1 Contact Hrs: 6

Course Objectives:

This course introduces topics in machine learning for both generative and discriminative estimation. Material will include least squares methods, Gaussian distributions, linear classification, linear regression, Bayesian inference, mixture models and the EM algorithm. Students are expected to implement several algorithms in Matlab/C and have some background in linear algebra and statistics.

Course Contents1 Introduction to Machine Learning and Applications

2 Least Squares Estimation

3 Linear Classification and Regression

4 Neural Networks

5 Support Vector Machines

6 Kernels and Mappings7 Probability Models8 Bernoulli Models9 Naive Bayes10 Multinomial Models for Text11 Graphical Models Preview12 Gaussian Models and Estimation13 Gaussian Classification and Regression14 Principal Component Analysis15 Linear Discriminant AnalysisText Book 1. Christopher M. Bishop, Pattern Recognition and Machine

Learning, Springer.References 1. R.O. Duda, P.E. Hart and D.G. Stork, Pattern Classification,

John Wiley & Sons, 2001.2. Trevor Hastie, Robert Tibshirani and Jerome Friedman, The Elements of Statistical Learning. Springer Series in Statistics, Springer-Verlag New York USA. 2001.

CS472-Natural Language ProcessingCourse Code: CS472

Pre Probability and Statistics

Page 84: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

78

Requisites:

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course presents an introduction to Statistical NLP. It focuses on standard and recent statistical methods applied to mainly three problems in grammatical processing: Part of Speech tagging, NP chunking, and grammatical parsing. This course is intended to give participants sufficient background to allow independent reading and understanding of the current research literature and to allow the execution of intermediate level research projects in Statistical NLP.

Course Contents1 Mathematical, Statistical, and Linguistic Foundation

2 Statistical Inference: n-gram Models over Sparse Data

3 Word Sense Disambiguation

4 Lexical Acquisition

5 Markov and Maximum Entropy Models

6 Part-of-Speech Tagging7 Phonetics and Speech Synthesis8 Probabilistic Context Free Grammars9 Probabilistic Parsing10 Computational and Lexical Semantic11 Statistical Alignment and Machine Translation12 Clustering and Text CategorizationText Book: 1. Manning and Schütze (1999): Foundations of Statistical

Natural Language Processing, MIT Press References: 1. Jurafsky and Martin (2008): Speech and Language Processing

(An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition), 2/Ed., Prentice Hall

Page 85: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

79

CS322-RDBMS Using OracleCourse Code: CS322

Pre Requisites:

CS220 Database Systems

Credits:2+1 Contact Hrs: 5

Course Objectives:

The course focuses generally on the SQL and PLSQL programming languages, database application development and database administration of Oracle DBMS.

Course Contents1 Oracle RDBMS, SQL SELECT, restricting, and sorting data

2 Single row and aggregate functions

3 Displaying data from multiple tables and writing sub-queries

Introduction to DML and DDL

5 Adding constraints, creating view, indexes, sequences, and synonyms

6 Oracle PL/SQL Basics, Block structure, embedding SQL7 Cursors and Exceptions in PLSQL8 Procedures, Functions, Packages, Triggers9 Oracle Developer Suite – Forms builder10 Interface controls, Windows, Canvases, and Triggers11 Advance triggers and multiple forms application12 Oracle Developer Suite – Reports builder13 Oracle Application Server configuration and deployment conceptsText Book: 1. Introduction to Oracle: SQL and PLSQL (OCP track student

guide)Reference: 1. Oracle PL/SQL: Program Unit (OCP track student guide)

2. Build Internet Applications I by Oracle Press (OCP track student guide)3. Oracle Reports by Oracle Press (OCP track student guide)

Page 86: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

80

CS414-Advanced Java with emphasis on Internet ApplicationsCourse Code: CS414

Pre Requisites:

CS212 Object Oriented Programming

Credits:3+1 Contact Hrs:6

Course Objectives:

This course provides a hands-on experience of different advance topics of Java APIs. Students will learn how to write a maintainable/extensible code. Will also learn methods of debugging, logging & profiling in Java. Main objective of this course is to teach student how to develop an enterprise level application. To achieve this lot of emphasis will give on concepts, practical usage and importance of Design Patterns.

Course Outline1 Course Introduction, How to write a maintainable/extensible code, Java

Review , Java Generics2 Concept of Reflection, Thread Programming

3 Intro Java IDEs – Eclipse & Netbeans, Code debugging, Logging & Profiling tools

4 J2EE Overview & Web Application Architecture

5 Java Servlets Programming

6 Intro to JSP & Java Beans,Advance JSP7 J2EE Session Handling8 Servlet Filters and Container Event handling9 Java Server Faces10 J2EE Classical Custom Tags JSP 1.2, J2EE Simple Tags 11 JSP 2.0, Expression Language , JSLT12 Adv JDBC and JDBC Hibernate13 Struts Framework, Spring Framework Intro & Architecture14 Presentation Tier Design Patterns, Business Tier Design Patterns,

Integration Tier Design Patterns, Crosscutting Tier Design PatternsText Book No specific text book.References 1. The Design Patterns Java Companion, By James W. Copper,

Publisher Addison Wesley 2. Advanced Java 2 Platform, How to Program. By Deitel & Dietel.3. Pro Java Spring Patterns, By Dhrubojyoti Kayal, Publisher APress.4. The Java EE Tutorial, For Sun Java System Application Server 9.1

CS331-System ProgrammingCourse Code: CS331

Page 87: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

81

Pre Requisites:

CS212 Object Oriented Programming CS330 Operating Systems

Credits:2+1 Contact Hrs: 5

Course Objectives:

After completing this course, student will be able to demonstrate: mastery of the internal operation of Unix system software, comprehend the working of assemblers, loaders, macro-processors, interpreters and understand inter-process communication.

Course Outline1 System Programming overview: Application Vs. System Programming,

System Software, Operating System, Device Drivers, OS Calls.

2 Window System Programming for Intel386 Architecture: 16 bit Vs 32 bit, Programming, 32 bit Flat memory model, Windows Architecture.

3 Virtual Machine (VM)Basics, System Virtual Machine

4 Portable Executable Format, Ring O Computer, Linear Executable format,

5 Virtual Device Driver (V + D), New Executable format,

6 Module Management, COFF obj format 16 bit. (Unix) other 32-bit O.S Programming for I 386;

7 Unix Binary format (ELF), Dynamic shared objects, 8 Unix Kernel Programming (Ring O), 9 Unix Device Architecture (Character & Block Devices), 10 Device Driver Development, 11 Enhancing Unix Kernel.Text Book 1. The UNIX Programming Environment, B. Kernighan & R. Pike

Prentice-Hall, 1984References 1. Leland L. Beck, “System Software” Addison-Wesley Longmsan,

1990, ISBN: 0-201-50945-8.2. John J Donovan, “Systems Programming”.

CS362-Multimedia System and DesignCourse Code: CS362

Pre Requisites:

CS250 Data Structures & Algorithms

Credits:2+1 Contact Hrs:5

Course Objectives:

In this course we will understand how to work with different media and use them to make engaging applications.

Course Contents1 Digital video coding

2 Transcoding for universal media access

3 3D and Multiview TV

Page 88: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

82

4. High Dynamic Range Video

5 Quality of Experience for HDR and 3D

6 Scalable Video Coding7 Content protection (watermarking)8 Design of multimedia middleware (e.g., multimedia authoring) and

Standards such as MPEG-2, MPEG-4, H.264, MPEG-7, and MPEG-21Text Book: 1. Multimedia Systems: Algorithms, Standards, and Industry

Practices by Parag Havaldar and Gerard Medioni (Jul 21, 2009)References: 2. An Introduction to Digital Multimedia by T. M. Savage and

K.E. Vogel (Oct 14, 2008)

Page 89: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

83

SE301-Object Oriented Software EngineeringCourse Code: SE301

Pre Requisites:

SE200 Software EngineeringCS212 Object Oriented Programming

Credits:3+0 Contact Hrs: 3

Course Objectives:

Object Oriented Software engineering (OOSE) is about the development and application of processes and tools for managing the complexities inherent in creating high quality software systems. It covers in detail object oriented requirements engineering, software design, architecture style, implementation and testing. It will also give an overview of software reengineering.

Course Contents1 Introduction to Object-Oriented Software Engineering

2 Object-Oriented Analysis

3 Application Domain Model (Mapping use cases to objects, Identifying relations among objects)

4 System and Sub-System Design

5 Solution Domain Model (Object Design)

6 Design Principles7 Reuse and Design Patterns8 Mapping design to code9 Forward and Reverse Engineering10 Testing11 Architecture Frameworks Text Book: 1. Bernd Brugge, “Object Oriented Software Engineering: Using

UML, Patterns and Java”, (2004) References: 1. “Design Patterns: Elements of Reusable Object-Oriented

Software”, Addison-Wesley Professional Computing Series2. R.S. Pressman, “Software Engineering: A Practitioner's Approach”, 6th ed., McGraw-Hill Book Co., NY, 2005

SE490-Advanced Topics in Software EngineeringCourse Code: SE490

Pre Requisites:

SE200 Software EngineeringSE311 Software Requirements EngineeringSE321 Software Quality EngineeringSE210 Software Design & Architecture

Credits:3+0 Contact Hrs: 3

Course Objectives:

The main objective of this course is to acquaint the students with the latest technologies, concepts and research in the area of software engineering, which can not be covered otherwise in a

Page 90: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

84

particular course due to very rapid changing environment of the technology.

Course Contents1 Latest trends in Software Engineering

2 Software Development and Software management techniques

3 Software validation and verification techniques

4 Development in various computing technologies

5 Open source software development

6 Software & IT operations & maintenanceText Book As requiredReferences As required

Page 91: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

85

CS222-Data CommunicationCourse Code:

CS222

Pre Requisites:Credits:3+0 Contact Hrs: 3

Course Objectives:

This course is a study of terminology, hardware and software associated with data communications and network technology. Areas of study will include design principles for human-computer dialogue, selection criteria for communications devices, the technology of data transmission, techniques and message protocols for line control and error processing, local area networks, networking concepts, network topologies and access control, network performance, network services and design issues, and network media and access methods.

Course Outline1. Fundamentals of Network Technology, Network Models, Layered

Architectures, Client-server Components , History of Network Development2. The Application Layer, Application architectures Client-server, Peer-to-peer,

Communications, Services, Protocols3. The Transport Layer, Delivery protocols, Quality of service 4. The Network Layer, Network models, Services Addressing, Routing5. The Data Link Layer, Data Transmission, Network basics, Protocols, Services,

Switches 6. The Physical Layer, Communications Hardware, Media, Switches, Routers,

Terminals, Peripheral Equipment, Types of Networks, Local Area Networks, Wide Area Networks, The Internet, Wireless and mobile technology, Multimedia

7. Network Management Administration, Performance and Optimization, Design Issues, Security

8. Current and Future Trends, Advanced topics

Text Book 1. “Computer Networking: A Top-Down Approach”, 4th edition. Kurose, James and Ross, Keith. Pearson-Addison-Wesley, 2008.

2. “A Practical Guide to UBUNTU Linux”. Sobell, Mark. Prentice-Hall, 2008.

3. “Introduction to Windows Server 2003”. Eric Ecklund, McGraw-Hill, 2005.

References 1. “Applied Data Communications: A Business-Oriented Approach”. James Goldman and Philip Rawles, 4th edition, Wiley, 2004.

2. “CISCO Networking Simplified”, 2nd edition. Doherty, Jim, Andersonn, Neil, and DellaMaggiora, Paul. Cisco Press, 2007.

3. “A Practical Guide to Red Hat Linux” 3rd edition. Sobell, Mark. Prentice-Hall, 2007.

Page 92: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

86

4. “SUSE Linux 10 Unleashed”. McCallister, Michael, SAMS Publishing, 2006.

Page 93: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

87

CS321-Advanced Database SystemsCourse Code: CS321

Pre Requisites:

CS220 Database systems

Credits:3+1 Contact Hrs: 6

Course Objectives:

The course focuses generally on the advanced concepts prevail in databases. This course covers: (a) files storage and structures; (b) query processing component of a relational database system; (c) Fundamental knowledge of concurrency control and database recovery.

Course Outline1. Introduction to database management system 2. Review of Relational Database Design 3. Transaction Processing Concepts and Theory4. Concurrency Control Techniques 5. Database Recovery Techniques 6. Relational Algebra 7. Physical Storage, Indexing and Hashing 8. Query Processing and Optimization 9. Object Oriented Databases 10. Distributed DatabasesText Book 1. Silberschatz, Korth and Sudarshan (2006): Database System

Concepts 5/E, McGraw-Hill2. Elmasri and Navathe (2006): Fundamentals of Database

Systems 5/E, Addison WesleyReferences

Page 94: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

88

CS425-Management Information SystemsCourse Code: CS425

Pre Requisites:

CS220 Database SystemsSE200 Software Engineering

Credits:3+0 Contact Hrs: 3

Course Objectives:

Students will learn the concept of system, components of MIS, roles of MIS that influence organizational competitiveness, IT infrastructures in modern organizations, the unique economics of information and MIS, MIS enabled business processes and decision support techniques, MIS development and acquisition processes, the nature of MIS management, and social and global subjects such as ethics, cyber-crime, security, and cultural issues relative to MIS.

Course Contents1. Roles of MIS in the Organization

• Competitive advantage of information and MIS• Systems concepts; MIS components and their relationships• Value and quality of information and MIS• Artificial intelligence techniques in business

2. Types of Management Information Systems• Enterprise MIS, e-business, and MIS in business functional areas• E-commerce• Decision support systems

4. Information Systems Development Process• Systems specification, systems analysis and design, and MIS re-engineering• Roles of MIS professionals in system development• Structured approach and object-oriented approach

Page 95: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

89

5 Social and Managerial Issues of Information Systems• Information and MIS security• Cyber-crime• MIS ethics• Cultural factors and global MIS

5. Information Technologies in Business• Competitive advantage of information and MIS• Systems concepts; MIS components and their relationships

• Value and quality of information and MIS

Text Book 1. Management Information Systems: Managing the Digital Firm by Laudon and Laudon, 9th Edition (Prentice Hall)

2. Using MIS by David M. Kroenke. Prentice Hall (2007)References 1. Management Information Systems by JamesA. O’Brien and

George M. Marakas, 7th Edition (McGraw-Hill)

Page 96: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

90

CS443-e-Commerce and SolutionsCourse Code: CS443

Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3

Course Objectives:

To introduce the environment in which e-commerce, e-government and e-health takes place, the main technologies for supporting e-technologies, and how these technologies fit together; provides students with an intensive survey of technologies used to support all aspects of electronic business.

Course Outline1. Intersection of Business models and Electronic Commerce Solutions.2. e-Commerce Business Models.3. Electronic Commerce Technical Tools.4. Electronic Commerce Infrastructure.5. Design, Maintenance, and Administration of Electronic Commerce Sites.6. Security Issues in e-Commerce.7. Ethical, Social and Political issues in Electronic Commerce.

Text Book 1. E-Commerce: Business, Technology, Society – 2nd editionAuthors: Kenneth C. Laudon & Carol TraverPublisher: Addison Wesley, 2004

References 1. Electronic Commerce, A Managerial Perspective 2006Authors: Efraim Turban, David King, Dennis Viehland, and, Jae Lee Publisher: Prentice Hall, 2006

Page 97: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

91

CS342-Mobile ComputingCourse Code: CS342

Pre Requisites:

Introduction to the wireless networking and computer programming is an essential for this course

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course covers the essential skills required to develop mobile computing systems. Building from the basics of wireless networking, the course establishes a deep understanding of the mobile computing concepts. The final project provides an essential practice to the extensive knowledge and programming APIs in developing sophisticated mobile computing systems.

Course Outline

Wireless networking Wireless systems: equipment and technology Wireless networks: architectures and generations Wireless networking protocols Wireless ad hoc and sensor networks

Mobile computing Mobile computing systems Mobile IP Resource and data management Transmission and scheduling mechanisms Transaction management and failure recovery Reliability Security and data protection

Mobile computing applications Mobile Platform programming Internet connectivity services Application APIs Performance and code optimization Data protection over the Internet

Text Book 1. Asoke K. Talukder, Roopa Yavagal, Mobile Computing Technology, Applications, and Service Creation, McGraw-Hill, 2005

References 1. Jochen H. Schiller, Mobile Communications, 2nd edition, Addison-Wesley, 2003.2. Vijay Kumar, Mobile Database Systems, Wiley, 2006.

CS251-Design and Analysis of AlgorithmsCourse Code: CS251

Page 98: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

92

Pre Requisites:

CS 250- Data Structures and Algorithms

Credits:3+0 Contact Hrs; 3

Course Objectives:

This course is designed to provide students with an understanding of advanced principles of principles and techniques used in the design and analysis of computer algorithms.

Course Outline1. Introduction to Algorithms,2. Asymptotic Analysis of Algorithms 3. Divide and Conquer Algorithms,4. Greedy Algorithms,5. NP-Complete Problems,6. Approximation Algorithms

Text Book: 1. Algorithm Design by Jon Kleinberg and Éva TardosReferences: 2. Introduction to Algorithms by Thomas H. Cormen, Charles E.

Leiserson, Ronald L. Rivest, and Clifford Stein

Page 99: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

93

CS424-Information RetrievalCourse Code: CS424

Pre Requisites:

CS212 Object Oriented ProgrammingWeb Engineering or Web Technologies

Credits: 3+0 Contact Hrs: 3

Course Objectives:

This course covers theoretical foundation of text information retrieval systems. Different text indexing models such as Boolean, vector space and probabilistic retrieval models will be discussed. Result ranking and evaluation strategies will also be covered. Other topics include: text clustering and classification methods, Latent semantic indexing, taxonomy induction, cluster labeling; classification algorithms and their evaluation, text filtering and routing.

Course Outline1. Introduction to Information Retrieval2. Inverted indices and boolean queries3. The term vocabulary and postings lists, Tokenization, stemming,

lemmatization, stop words, phrases, Optimizing indices with skip lists, Proximity and phrase queries, Positional indices

4. Dictionaries and tolerant retrieval, Dictionary data structures, Wild-card queries, permuterm indices, n-gram indices, Spelling correction and synonyms, soundex

5 Index construction and compression6. Scoring, term weighting, and the vector space model., TF.IDF weighting,

cosine measure, scoring documents7. Evaluating search engines, User happiness, precision, recall, F-measure,

Creating test collections, kappa measure, inter-judge agreement, Approximate vector retrieval

8. Relevance feedback, Pseudo relevance feedback, Query expansion, Automatic thesaurus generation, Sense-based retrieval

9. Web Search, Crawling and web indexes10. Advance Topics, Latent Semantic Indexing, Support Vector Machines for

Text ClusteringText Book Introduction to Information Retrieval, by C. Manning, P. Raghavan,

and H. Schütze. Cambridge University Press, 2008References

CS433-Applied Parallel ComputingCourse Code: CS433

Pre Requisites:

MATH222 Linear Algebra

Credits:2+1 Contact Hrs: 5

Page 100: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

94

Course Objectives:

The aim of this course is to study the hardware and software issues in parallel computing. It is an advanced interdisciplinary introduction to applied parallel computing on modern computers. It will cover the architecture and enabling technologies of parallel computing systems and their applications in various domains.

Course Outline1. Introduction and Overview

2. Models of Parallel Computers and Computation

3. Message Passing Computing and MPI, Shared Memory and OpenMP

4. Parallel Prefix, Dense Linear Algebra

5 Parse Linear Algebra, Parallel Machines, FFT

5. Domain Decomposition, Particle Methods6. Partitioning and Load Balancing, Mesh Generation7. Support Vector Machines and Singular Value DecompositionText Book 1. An Introduction to Parallel Programming by Peter S. Pacheco.

Morgan Kaufman, 2011References 1. Parallel Programming in C With MPI and OpenMP by Michael J.

Quinn, 2003

Page 101: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

95

CS213-Advanced ProgrammingCourse Code: CS213

Pre Requisites:

CS110 Fundamentals of Computer ProgrammingCS212 Object Oriented ProgrammingCS250 Data Structures and Algorithms

Credits:3+1 Contact Hrs: 6

Course Objectives:

This course is designed to help students succeed in advanced system related courses, e.g., Operating Systems and Computer Networks, by enabling them in developing software and systems that interact more closely with the operating system and/or hardware. The course takes the students through a series of programming environments on a Unix platform to make the students feel more comfortable with variety of programming languages.

Course Outline1. Introduction to basic Unix programming concepts and terminology2. Various Unix standardization efforts3. Different Unix implementations, make/ automake, 4. The Unix Shell – programming with bash, I/O - unbuffered I/O, Properties of

files and directories, 5. The Unix Shell – bash, The standard I/O library, The standard system data

files, Processes - the environment of a Unix process, 6. The Unix Shell – bash, Process control, The relationships between different

processes, Signals7. IPC - Interprocess communication, More I/O - terminal I/O, advanced I/O,

daemon processes, TCL, TK, Python, Pearl, sed, awkText Book: 1. Advanced Programming in the Unix Environment, by W.

Richard Stevens, Addison-Wesley. ISBN 0201563177References: 1. Linux Shell Scripting Tutorial v1.05r3A Beginner's handbook

(ONLINE).

Page 102: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

96

EE321-Signals and SystemsCourse Code: EE321

Pre Requisites:

MATH111 CalculusMATH222 Linear Algebra

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course lays down the foundations for further studies in digital signal processing and communications. Concepts of Signals and Systems and the response of various common systems to common signals are introduced. Treatment is done in time domain and then in frequency domain. Stress will be on developing clear and strong concepts.

Course Outline1. Basic Concepts. Continuous time and Discrete Time Signals. Transformations

of the independent variable (time). Some Common Signals. Basic Properties of Systems: Linearity, Time-invariance, causality, stability, invertibility, memory.

2. LTI Systems. Description of signals in terms of impulses. Convolution Sum, Convolution Integral; Linear differential equation and linear difference equation to describe systems, Properties of LTI Systems.

3. Fourier Series. Periodic Signals; representing aperiodic signals in Fourier Series. Properties of Fourier series.

4. Continuous-Time Fourier Transforms. Properties of continuous time Fourier transform.

5. Discrete-Time Fourier transforms. Properties of Discrete time Fourier transform.

6. Sampling. Continuous-time signal in terms of its samples: Nyquist Rate; The effect of under-sampling—Aliasing

7. Laplace Transform. Review; Analysis of LTI Systems Using Laplace Transform.

8. Z-Transforms. Definition and comparison with Lap lace transform. ROC and its properties. Properties of Z-transform and Application to Discrete-Time System Analysis;

Text Book: “Signals and Systems” by Oppenheim and Wilsky with Hamid Nawab

References:

SE440-Business Process AutomationCourse Code: SE440

Pre Requisites:

SE200 Software Engineering

Credits:3+0 Contact Hrs: 3

Course Objectives:

The BPA-course combines the disciplines of business process re-engineering (BPR) and service-oriented computing (SOC) to achieve automation with the help of Internet technologies. This

Page 103: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

97

course teaches students how to model businesses in current and proposed states, with a particular emphasis on business process modeling. Students will also learn how to bridge the gap between business and system models, ensuring that project requirements and solutions strongly align to business needs. As a result, this course will help students to deliver successful projects that generate valued business outcomes

Course Outline1. Business Process Definitions2. Business Process Analysis and Modelling, 3. Business Process Lifecycle, Policies, Procedures and Rules (in terms of

business processes)4. Role of People, Customers, Trading Partners and Suppliers in Business

Processes5. Business Process Simulation6. Business Process Re-Engineering (objectives and techniques)7. Basic concepts of Six Sigma (in terms of business process improvement)

Text Book: 1. August-Wilhelm Scheer , Ferri Abolhassan, Wolfram Jost , Mathias Kirchmer , August Wilhelm Scheer (Author), Business Process Automation, Springer; 1 edition (May 14, 2004)

References 1. Hofstede, A.H.M.; van der Aalst, W.M.P.; Adams, M.; Russell, N.,Modern Business Process Automation, Springer, 2010, ISBN 978-3-642-03120-5

SE313-Design PatternsCourse Code: SE313

Pre Requisites:

CS212 Object Oriented Programming

Credits:2+1 Contact Hrs: 5

Course Objectives:

This course provides good knowledge about design patterns and how they are practically implemented in order to enhance existing systems and their design solutions. The course focuses on studying a large number of general design patterns and their practical application.

Course Outline

Page 104: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

98

1. Overview of object-oriented design, Software reusability, 2. Design Principles, 3. Classification of design patterns, 4. Pattern description formats, 5. Design and implementation issues in: Creational patterns, Structural patterns,

Behavioral patterns; 6. Patterns in software architecture, 7. Patterns for user-interface design, 8. Specific patterns for technical real-time systems. Furthermore, some patterns

and idioms (Pattern languages / language specific techniques) meant for real-time systems will be provided.

Text Book 1. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Third Edition by Craig Larman, published by Prentice hall, 2004

References 1. Design Patterns Explained: A New Perspective on Object-Oriented Design, 2/e by James Trott (Kindle Edition - Feb 24, 2009)2. Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley, 1995) by Eric Gamma Et al.

EE430-Telecommunication SystemsCourse Code: EE430

Pre Requisites:Credits:3+0

Course Objectives:

An introduction to and overview of modern communications systems. A review of linear systems and signal processing techniques. An introduction to analogue modulation techniques; amplitude modulation (AM) and “angle” modulation (FM and PM). An introduction to digital communications; sampling, quantization, coding.

Course Outline1. Introduction Overview of system types: point-point, point-multipoint,

broadcast systems; Simplex, half & full duplex, baseband & pass band; analog & digital: transmission media. Analog and digital communications, power-bandwidth tradeoffs, signal-to-noise ratio, channel capacity concepts.

2. Review of Signals and Systems Classification and representation of signals, Fourier representation, energy and power spectral density, linearity, types of distortion.

3. Amplitude modulation (AM) Carriers and modulation, types of amplitude modulation, AM receivers, Generation and detection of DSB-LC and DSB-SC signals. Transmission bandwidth. Power in carrier and signal.

4. Angle modulation (FM and PM) Instantaneous frequency, approximate

Page 105: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

99

analysis of angle modulation (bandwidth, spectral content), FM/PM receivers. Equations for FM and PM. Single tone narrow band and wide band FM: Bessel functions. Carson's rule. Power in carrier and signal. Modulators: direct and indirect. Demodulators: discriminators, delay (phase shift or Quadrature) detector. FM receiver. Threshold effect. Pre-emphasis/deemphasis.

5. Pulse and Digital communications Sampling and pulse-code-modulation (PCM), line coding, pulse shaping, error control, digital carrier systems and multiplexing. Sampling theorem, Nyquist frequency. Spectral density of signals. PCM encoder, regenerator, decoder, ISI and Nyquist filters. TDM and PCM frames. T1 system. Binary signal formats and spectral densities. ASK, FSK, PSK: Modulators, Demodulators.

Text Book 1. Modern Digital and Analog Communication Systems, 3rd ed., B.P. Lathi, Oxford University Press, 1998.

References

Page 106: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

100

CS427-Wireless NetworksCourse Code:

CS427

Pre Requisites:Credits:3+0 Contact Hrs: 3

Course Objectives:

The objective of this course is to give an introduction to the fundamentals of the wireless communications systems, the wireless network architectures, protocols, and applications. Topics of study include an overview of wireless communications and mobile computing systems, signal propagation characteristics of wireless channels, wireless channel modelling, frequency reuse/cellular/microcellular concepts, spread-spectrum modulation for wireless systems, multiple access techniques, and wireless networking standards (e.g., 2.5G, 3G, IEEE 802.11,IEEE 802.15, IEEE 802.16/WiMAX).

Course Outline1. Overview of Wireless Communication Networking and Mobile

Computing: Historical perspectives, first and second generation cellular systems, land mobile vs. satellite vs. indoor wireless systems, adaptation and mobility in wireless information systems, challenges of mobile computing, mathematical preliminaries.

2. Wireless Channel Modelling: Path-loss and shadow fading models, Rayleigh and Ricean fading, coherence time, coherence bandwidth, frequency flat and selective fading.

3. Modulation, Coding, Diversity Techniques: Digital modulation and coding techniques for wireless communication systems, spread-spectrum modulation, diversity combining techniques.

4. Cellular Concept: Frequency reuse/cellular/microcellular concepts including sectorization and cell splitting, trunking efficiency, Erlang capacity.

5. Multiple Access Techniques: TDMA, FDMA, CDMA, ALOHA, Slotted-ALOHA, CSMA/CA, MACA, reservation protocols, PRMA, capture effects.

6. Wireless Networking Standards: 3G systems, wireless LAN standards (IEEE 80.11), WMAN standards (IEEE 802.16), WPAN standards (IEEE 802.15).

Text Book: 1. Wireless Communications: Principles and Practice, T.S. Rappaport, Prentice Hall, 2nd edition, 2002.

References: 2. Principles of Wireless Networks, Kaveh Pahlavan and Prashant Krishnamurthy, Prentice Hall, 2002.

Page 107: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

101

3.6 Supporting Sciences ElectivesMATH133-Engineering Mathematics

Course Code:

MATH133

Pre Requisites:

MATH111

Credits:3+0 Contact Hrs: 3Course Objectives:

To formulate the engineering problems using mathematical models and seek solution by mathematical modeling. Course covers a range of topics ranging from first order/second order differential equations, Laplace transform, Z-transforms etc. So course aims to focus on developing the mathematical solutions for every problem.

Course Contents1 First Order Differential Equations (Basic Concepts and Ideas). Separable

Differential Equations. Modelling Separable Equations. Reduction to Separable Form. Exact Differential Equations. Integrating Factors. Linear Differential Equations. Modelling: Electric Circuits

2 Second Order Linear Differential Equations. Homogeneous Linear Equations. Homogeneous Equations with Constant Coefficients. Case of Complex Roots. Complex Exponential Functions. Euler-Cauchy Equations. Non homogeneous Equations. Solution by Undetermined Coefficients. Solution by Variation of Parameters. Modelling of Electric Circuits.

3 Laplace Transforms, Transforms of Derivatives and Integrals.4 Fourier Series, Integrals and Transforms: Periodic Functions.

Trigonometric Series. Fourier Series. Functions of Any Period. Even and Odd Functions. Half Range Expansion. Fourier Integrals. Fourier Transforms.

5 Z – TransformsText Book: 1. Calculus & Analytic Geometry, 9th Edition by Thomas & Finney

2. Advanced Engineering Mathematics, 7th Edition by Erwin Kreyszig

References: 1. Advanced Modern Engineering Mathematics, by Glyn James2. Calculus, 6th Edition by E. W. Swokoski, M. Olinick, D. Pence, J. A. Cole.

MATH234-Multivariable CalculusCourseCode:

MATH234

Pre Requisites:

MATH111 Calculus

Credits:3+0 Contact Hrs: 3Course Objectives:

The primary objective for the students in this course is to appreciate the power and beauty of the calculus. Course covers a

Page 108: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

102

range of topics ranging from differential equations, wave equations, long integrals etc. With the progression of course, students will begin to experience the organic and highly interconnected nature of mathematics by using calculus to analyze and solve problems from the sciences and business related fields.

Course Contents1 Partial Differential Equations (Basic Concepts and Ideas), Modelling

Vibrating String, Wave Equation. Separation of Variables. Use of Fourier Series. D’Alembert’s Solution of Wave Equation.

2 Heat Equation. Solution by Fourier Series. Solution by Fourier Integrals.3 Modelling Membrane, Two-Dimensional Wave Equation. Rectangular

Membrane, Use of double Fourier Series.4 Double Integrals. Areas, Moments, and Centre of Mass. Double Integrals in

Polar Form5 Triple Integrals in Rectangular Co-ordinates. Masses and Moments in Three

Dimensions.6 Cylindrical and Spherical Co-ordinates. Triple integrals in Cylindrical and

Spherical Co-ordinates.7 Line Integrals. Vector Fields, Work, Circulation, and Flux. Green’s Theorem

in the Plane8 Surface Area and Surface Integrals. Stokes’s Theorem The Divergence

Theorem.Text Book: 1. Calculus & Analytic Geometry, 9th Edition by Thomas & Finney

2. Advanced Engineering Mathematics, 7th Edition by Erwin Kreyszig

Reference: 1. Calculus, 6th Edition by E. W. Swokoski, M. Olinick, D. Pence, J. A. Cole.

MATH221-Number TheoryCourse Code: MATH221Pre Requisites:Credits:3+0 Contact Hrs: 3Course Objectives:

After completion of the course the student will be able to describe classical number theory topics and their history, prove major results of number theory, and increase algebraic manipulative skills, and computational sophistication.

Course Contents1 Introduction 2 The integer, numbers and sequences, sums and products, Mathematical

induction, the Fibonacci Numbers, Divisibility 3 Integer Representation. Representation of integers, computer operations

with integers, complexity of integer operation

Page 109: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

103

4 Prime and Greatest Common Divisors. Prime numbers, the distribution of primes, greatest common divisors, the Euclidean algorithm, the fundamental theorem of arithmetic, factorization methods and Fermat numbers, liner Diophantine equation

5 Congruence. Introduction to congruencies, linear congruencies, the Chinese remainder theory, solving Polynomial congruencies

6 Application of congruencies. Divisibility tests, the perpetual calendar, round robin tournamaent, hashing function, check digit

TextBook: 1. Elementary Number Theory and its applications by Kenneth H. Rosen 5th edn

Reference:

CS353-Fundamentals of CryptographyCourse Code: CS353Pre Requisites:

Probability & Statistics

Credits:3+0 Contact Hrs: 3

Course Objectives:

This course is designed, to introduce the fundamental components of cryptography, namely symmetric and public key algorithms, and examine the key management issues relating to the use of these techniques.

Course Outline1 Introduction Terminology, Cryptography and Cryptanalysis, Aspects of

Security2 Secrecy System Alphabets, Plaintext source, Cryptographic systems,

Bayesian decision, Perfect secrecy, Entropy, Random cryptographic systems, Unicity distance

3 Classical cipher systems Introduction, Transposition ciphers, Substitution ciphers, Caesar, Vigenere, Vernam, Playfair

4 Monoalphabetic Substitution Letter substitutions, Substitution systems, Caesar substitution, Affine Caesar substitution, General Monoalphabetic substitution, Two-gram substitution, N-Gram substitution

5 Polyalphabetic Substitution The One-Time system, Vigenere Encipherment, Generalized Vigenere Encipherment, The Phi Test, Incidence of Coincidence

6 Rotor Systems Rotors, Rotational equivalence, Enigma machine7 Block Ciphers and Data Encryption standard Block ciphers, building

blocks of block ciphers, Block cipher systems, DES8 Pseudo-Random-Sequence Generators and Stream Ciphers 9 Shift-registers10 Key management Communication security, Key management in

information processing systems, session keys11 Public key systems Trap door and One-Way Hash Functions, Diffie

Hellman algorithm, RSA algorithm, Berlekamp solution12 Digital Signature and Authentications Threats, Authentication, Examples

Page 110: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

104

of signatures, Handshaking, Transaction, Disputes, RSA Signature system, quadratic residue signature scheme, Trusted authority, Threat analysis

Text Book: 1. Applied Cryptography/Bruce Schnier Publishing 1996 by Jon Wiley & Sons2. Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. Van Oorschot, Scott A. Vanstone

Reference: 1. Cryptography Theory & practice/Douglas Robert Stinson Publishing 1995 by CRC Press2. Foundations of Cryptography by Oded Goldreich

Page 111: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

105

OTM455-Planning Engineering Project ManagementCourse Code:

OTM455

Pre Requisites:

Nil

Credits:2+0 Contact Hrs: 2Course Objectives:

The course objectives are to help students understand each area of management issues, exercise management skills, and learn how to integrate the management skills and the engineering skills in order to prepare themselves for career paths. The students will be able to compete in the globalization with ever-changing business and technology environment after the course completion.

Course Contents1 Engineering Management Introduction: Knowledge of Technology is not

enough to be successful in the Industry of today. 2 The management challenges in the Industry: Product-Management,

Process-Management, Total Quality-Management, Project-Management, What Organizations are and What They Do: Nature, Overview. Introduction & Aim of Organizations (Corporate Objectives), The legal establishment of organizations, Sole traders, Partnership, Co-operatives, Franchising. Strategies for survival, Strategies marketing, Simultaneous Engineering, Manufacturing strategies. Functions of Organizations, Purchasing, Operations, manufacturing, Marketing and sales, Finance, Product Development, Research, Quality control, Personnel, Company operation and the role of engineers.

3 The Management of Engineering: Finance, The need for monetary control, Inadequate financial systems-a case study, The ideal financial system, Investment appraisal, Depreciation. Business Plan, The purpose of the plan, What should be in the plan?, Preparation of the plan.

4 Product Development: Overview, Customers and product development, Product life cycles and GAP analysis, The ideal product development process, Managing the product Development process, Management techniques in product development,

5 Operations Management: Overview, Organization of manufacturing, Job production, Batch production, Flow production, Group Technique, Production planning and control, Operational data, Product data, Scheduling, Capacity planning. Material management, Stores, Purchasing, Materials requirements planning (MRP), Just in Time, The principles of JIT, JIT techniques

6 Quality Management: Introduction, Inspection and test, Quality control, Quality assurance, Total quality management. Quality assurance and ISO 9000, What is a standard?, ISO 9000, ISO 9001,

7 Project Planning and Management: Introduction, Defining & Specifying the project, The implication of the project, Constraints, The project proposal. Planning the project, Project activities,

Page 112: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

106

8 The Management of Engineers: Personnel Management, Structure of organizations, Organization charts, Methods of company organization, Development of personnel, Factors that affect company organization. Employing people, Recruitment, Selection processes. Making o job offer, Legal aspects of recruitment and selection, The induction process, Termination of employment. Motivation and Leadership, Motivation, Leadership. Appraisal of employees, Training and Development, Job design and payment systems, Job design, Payment systems

9 Team Working and Creativity: Introduction, Team working, Holistic tears, Optimizing team composition-theory, Optimizing team composition-practice. Group dynamics, The needs of the group, Meeting these needs –group dynamics. Managing the creative process, Planning innovation, Problem solving, Decision-making

10 Personal Management: Overview, Introduction, Personal Organization, Time management, Good desk keeping, The boss-subordinate relationship. Objective setting, The need for objectives, Writing objectives. Maintaining progress. Self-appraisal, Career planning, Curriculum vitae, General Wellbeing

11 Engineering management in practice: Industry today is Faces Severe Challenges: Merging markets of Information, Telecommunications and Media, Liberalization, deregulation, globalization, Driving forces by Internet-based and by mobile applications, Short technology cycles and short time-to market , Over-investment and disillusion after hype, The vocation of engineering management,

Text Book: 1. Management in engineering By Gail Freeman Belt, James Balkwill Prentice Hall

References: 1. Finney, D.J., Statistical Science & Effective Scientific Communication, Journal of Applied Statistics 1995,Vol 2 (293-308)2. Finances of engineering companies, A I Reynolds.

Page 113: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

107

EE102-Basic Electrical Engineering

Course Code: EE102 [Previous Code: EE-280]Pre Requisites:

PHY101

Credits:3+1 Contact Hrs: 6Course Objectives:

To explain sources and circuit parameters of electrical systems, circuit laws and theorems governing electric circuits. Electromagnetism, electrostatics and A.C fundamentals and basics are also included to lay a strong foundation of electrical engineering.

Course Contents1 Basic Concepts and Circuit Elements: System of units. Energy. Electric

Charge, current, electromotive force and potential difference. Ohm’s Law. Resistors, conductors and insulators. Active and passive circuit elements. Dependent and independent current and voltage sources.

2 Simple DC Circuits: Series circuits, Parallel networks. Kirchhoff’s laws. Power and energy. Resistivity. Temperature co-efficient of resistance.

3 Network Theorems: Network analysis by Kirchhoff’s laws. Superposition theorem. Thevenin’s theorem. Norton’s theorem. Delta-Star transformation. Maximum power transfer.

4 Capacitance and Capacitors: Hydraulic analogy. Capacitance. Charging and discharging, series and parallel connection of capacitors. Relative permittivity dielectric strength.

5 Electromagnetism and magnetic Circuits: Magnetic field and flux due to and electric current. Solenoid. Force on current carrying conductor. Magnitude and direction of induced e.m.f. Magneto motive force, field strength and reluctance. Comparison of electric and magnetic circuits. Determination of B/H Characteristic.

6 Inductance in a DC Circuit: Inductive and non-inductive circuit. Inductance of air-cored and iron- cored coil. Growth and decay of current in LR circuit. Energy storage. Mutual inductance and coupling co-efficient.

7 AC Fundamentals: Generation of single phase and three phase alternating e.m.f. Relationship between frequency, speed and number poles. RMS, average, instantaneous and Peak Values of sinusoidal waveform. Voltages and currents in star and delta circuits. Inductive reactance and impedance of RL load. Phasor representation of alternating quantity. Active, reactive and apparent powers, power factor and power triangle. Working principle of transformer.

Text Book: 1. Principles of Electric Circuits By Thomas L. Floyd 6th EditionReferences: 1. Electric Circuits (Shaums Series) by Joseph

2. Electrical Technology by B.L Theraja.3. Tech Sig Movie ser 3, “Solders & Applications” - 60 mins

Page 114: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

108

EE210-Basic Electronics

Course Code: EE210Pre Requisites:

PHY101

Credits: 3+1 Contact Hrs: 6Course Objectives:

To provide the foundation of electronic devices & circuits

Course Contents1. Introduction to Electronics Semiconductor Diodes, Forward & Reverse

Characteristics of Diode, Special Purpose Diodes, Equivalent Circuit of aDiode, Diode as a Switch, Diode Applications

2. Half Wave & Full wave rectifiers, Clipper & Clamper circuits3. Transistors: Bipolar Junction Transistor, Transistor Operation, Types of

Transistor, Unbiased Transistor, Transistor Biasing Configurations, Common Emitter, Common Base, Common Collector

4. DC & AC analysis of BJT5. Field Effect Transistors, FET Biasing Techniques, Common drain, common

source, common gate, fixed Bias and Self Bias Configuration, Voltage Divider Biasing

6. Universal JFET Bias Curve. 7. DC & AC analysis of FETText Book:Reference:

Page 115: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

109

EE477-Analog and Digital Communications

Course Code: EE477PreRequisites:

PHY101- Applied Physics, Engineering Mathematics

Credits: 3+1 Contact Hrs: 6Course Objectives:

To develop a fundamental understanding of the communication systems. Signal modulation techniques will be emphasized. Both analog techniques (amplitude modulation, frequency modulation) and digital techniques (pulse code modulation, phase shift keying, frequency shift keying) will be considered. Modulation techniques will be analyzed both on the basis of spectral characteristics and performance in random noise.

Course Contents1 Introduction to communication systems, time domain and frequency domain

representation of signals.2 Modulation, Analog modulation and demodulation, AM, DSB, SSB, and

USB communication3 Frequency modulation demod comparison of AM & FM4 Sampling theorem, PCM systems, differential pulse code modulation

systems, delta modulation and adaptive delta modulation system.5 Digital modulation, BPSK, QPSK, FSK techniques.6 Multiplexing, FDM and TDM techniques, TDM hierarchy of T-1/CEPT

system.Text Book: 1. B.P. Lathi, “Modern Digital and Analog Communication”Reference: 1. Trab & Schilling, “Principle of Communication”

2. Kamen, “Signal and System”

Page 116: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

110

MATH351-Numerical Methods

Course Code: MATH351Pre Requisites:

Calculus

Credits:3+0 Contact Hrs: 3Course Objectives:

The course gives the students sound knowledge to solve non-linear equations numerically. Lengthy and suckle problems of differential, integral calculus and ordinary differential equations are also solved using numerical techniques. Curve Fitting and Interpolation like topics are also included which are very useful for engineers /technologists. Computer based assignments are given to the students to make them conversant with MATLAB/C++ programming.

Course Outline1 Solution of Transcendental Equations2 System of Non linear Equations3 Curve Fitting4 Numerical Linear Algebra5 Calculus of Finite Difference6 Interpolation 7 Numerical Differentiation8 Numerical Integration9 Numerical Solutions of Ordinary Differential EquationsText Book: 1. Curtis F. Gerald, Applied Numerical Analysis, Addison-Wesley

Pub Co, 1989Reference:

Page 117: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

111

EE331-Digital Signal ProcessingCourseCode:

EE331 [Previous Code: EE-466]

Pre Requisites:Credits: 3+1 Contact Hrs: 6Course Objectives:

To produce graduates who understand how to analyze and manipulate the digital signals and have the fundamental Matlab programming knowledge to analyze the signals and can develop the digital signal processing applications.

Credits:3+1 Contact Hrs: 6Course Contents1 Introduction to Discrete Time Signals and Systems: Analog to

digital conversion, sampling theorem in time and frequency domain, sampled digital signal representation, LTI system and its properties, convolution and correlation operations and structures.

2 Z-Transform: Definition of Z-Transform, properties of Z-transform, Z-transform and LTI systems, LTI transfer function and its analysis in frequency domain using Z-transform.

3 Discrete Fourier Transform (DFT) Introduction to DFT and its definition, properties of DFT, time and frequency resolution, computation of DFT and the development of fast algorithms (FFT).

4 Digital Filtering:Introduction to FIR and IIR digital filters, their properties and applications. Design of low pass, high pass and band pass FIR filters using window, frequency sampling and CAD techniques. Comb filters, Hilbert transformer and differentiator design using FIR techniques.Digital IIR filter design from equivalent analogue filters using bilinear Z-transformation.

5 DSP Applications: Direct digital synthesis, DTMF generation and detection. FFT applications.

6 Digital Signal Processors (DSP) Introduction to Digital Signal Processors (DSP), the key features and architectural review, word length issues in digital signal processing.

7 Multi rate Digital Signal Processing Introduction to multirate DSP systems. Introduction to decimation and interpolation operations using FIR filtering. Design of poly phase filter structures for sampling rate conversion.

Text Books: 1. Robert D. Strum, “First Principles of Discrete Systems and Digital Signal Processing”.2. Sanjit K. Mitra, “Digital Signal Processing: A computer based Approach”.

Reference: 1. Johnathon Stein, “Digital Signal Processing: A Computer Science Prospective”. www.dspguru.com/

Page 118: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

112

EE215-Electronic Circuits & DevicesCourseCode:

EE215

Pre Requisites:Credits:3+1 Contact Hrs: 6Course Objectives:

The student will gain knowledge of circuits, Fourier analysis and synthesis, amplifiers, oscillators, transistors, diodes and silicon-controlled rectifiers. The course will help the students to develop the ability to use diodes, transistors, operational amplifiers, and silicon-controlled rectifiers in simple applications. So course will narrate the utilization of mentioned things in practical life.

Course Contents1 Introduction to Semiconductors Atomic Structure, Semiconductors,

Conductors & Insulators. Covalent Bond., The N-Type & P-Type Semiconductors., The PN Junction, Biasing of PN Junction, Current -Voltage Characteristics of a PN Junction, The Diode.

2 Diode Application Half Wave Rectifier., Full Wave Rectifier. ,Power Supply Filters, Diode Limiting & Clamping Circuits.

3 Bipolar Junction Transistor: The Junction Transistor. The Ebers Moll Representation of The BJT, Large Signal Current Gains, Mode of Transistor Operation, Minority Carrier Concentration. Common Base Characteristics, Output Characteristic, Input Characteristic, The Early Effect. Common Emitter Configuration, Output Characteristics, Input Characteristics. DC Models. The BJT as a Switch. The BJT as an Amplifier. The BJT Small Signal Model, Low Frequency Model, High Frequency Model.

4 Special Purpose Diodes Zener Diodes., Varactor Diodes., Optical Diode..5 Bipolar Junction Transistors Transistor Construction., Basic Transistor

Operation., Transistor Characteristics & Parameters., Transistor as an Amplifier., Transistor as a Switch

6 Transistor Bias Circuits DC Operating Point , Base Bias., Emitter Bias., Voltage Divider Bias., Collector Feedback Bias..

7 Small Signal Bipolar Amplifier .Small Signal Amplifier Operation., Transistor AC Equivalent Circuits, Common Emitter Amplifiers., Common Collector Amplifiers., Common Base Amplifiers, Multistage Amplifiers.

8 Field Effect Transistors and Biasing . The Junction FET, JFET Characteristics & parameters, JFET Biasing, The Metal Oxide Semiconductor FET (MOSFET), MOSFET characteristics and parameters, MOSFET Biasing.

9 Small- Signal FET Amplifier . Small Signal FET Amplifier Operation., FET Amplification. , Common-Source Amplifier., Common –Drain Amplifier., Common-Gate Amplifier.,

10 Amplifier Frequency Response The Decibel., Low Frequency Amplifier Response., Miller Capacitance., High Frequency Amplifier Response., Total Amplifier Freq Response.

Page 119: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

113

11 Operational Amplifier Introduction to Operational Amplifiers, The Differential Amplifier., Op-Amp Parameters., Negative Feedback , Op –Amp configurations with Negative feedback

12 Oscillators Oscillator principles., Oscillator with RC Feedback Circuit, Oscillator with LC Feedback Circuit, Non Sinusoidal Oscillators. 555 Timer as an Oscillator.

Text Book: 1. Microelectronics by Sedra and Smit 1997Reference: 1. Microelectronics by J. Millman and A Grabel 4th Edition

2. Fundamentals of Electronic Devices by Ronald J Tocci & Mark E Oliver

Page 120: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

114

EE414-Digital Electronics Course Code: EE414 [EE-345]Pre Requisites: Digital Logic DesignCredits:3+1 Contact Hrs: 6Course Objectives The purpose of this course is to develop critical thinking

skills directly related to microprocessors and digital logic design. Course covers a wide range of topics including electronic gates, boolean logic, decoding multiplexing, digital filters etc which will give a deep insight to the students about the digital electronics and their utilization.

Course Contents1. Fundamental Concepts: Analog versus Digital, Atoms, Molecules, and

Crystals, Conductors and Insulators, Voltage, Current, Resistance, Capacitance, Inductance

2. Semiconductors: Diodes, Transistors3. Primitive Logic Functions: NOT, AND, OR, XOR, NAND, NOR, XNOR,

Numbering Systems, Binary, Decimal, Octal, Hexadecimal, Binary Arithmetic, Binary Addition and Subtraction, Signed Binary Numbers, Binary Multiplication

4. Complex Circuits from Primitive Logic Elements: Combinational Circuits, Sum-of-Products Form, Simplifying Logic Circuits, Designing Combinational Logic Circuits, Basic Characteristics of Digital Integrated Circuits, Internal Digital IC Faults, External Faults, Programmable Logic

5. Sequential Circuits: Latches, Clock Signals and Clocked Flip-Flops, Flip-Flop Timing Considerations, Flip-Flop Applications, Detecting and Input Sequence, Serial Data Transfer, Microcomputer Applications, Analyzing Sequential Circuits

6. State Diagrams, Tables, and Machines: Integrated Circuit Applications, Gate Array Devices, Standard Cell Devices, Full Custom Devices

7. Memory: Memory Technology, General Memory Operations, Memory Considerations, ROM · RAM · Static RAM (SRAM)· Dynamic RAM (DRAM), Programmable Logic Devices (PLDs), Magnetic and Optical Memories, Digital System Application

8. Technologies of the Future: Reconfigurable Hardware, Optical Interconnect, Optical Memories, Protein Switches and Memories, Electromagnetic Transistors.Diamond Substrates, Conductive Adhesives, Superconductors, Nano-technology

TextBook:

1. Digital Fundamentals by Thomas L. Floyd, Eighth Edition2. Digital Design by M. Morris Mano, 4th Edietion Prentice Hall

Reference:

1. Verilog HDL A Guid to Digital Design and Synthesis by Samir Palnitkar 2. Digital Signal Processing, A Computer Based Approach by Sanjit A. Mitra Mcgraw Hill

Page 121: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

115

3.7 General Education ElectivesECO130-Engineering Economics

Course Code: ECO130Pre Requisites: NilCredits:2+0 Contact Hrs: 2Course Objectives:

Course aims to provide students with a basic understanding of the role of the economic and its analysis. This will include a review of microeconomics, necessary for the understanding of issues related to the economics of telecommunications, information and capital markets. The course also covers the economic and public policy issues related to the different categories of industries from a historical, present and future perspective.

Course Contents1 Introduction to Engineering Economics (EE) Introduction, The decision

making process, Origins of Engineering Economy, The relationship between Engineering & Management, Non-monetary factors and multiple objectives, Capital allocation and Engineering Economy, Principles of Engineering Economy

2 Cost Concept and the Economic Environment Introduction, Cost Terminology, Application of Cost Concept, Accounting and Engineering Economy Studies, Steps in an Engineering Economics Analysis

3 The Time value of money Return to Capital, Origins of Interest, Simple Interest, Compound Interest, Five basic methods for assessing economic worth, Present worth, Annual worth, Future worth, Internal rate of return

4 More Time Value: Bond & Inflation Bond price and yields, Bond Pricing, The yield to maturity, Bond Pricing, The yield to maturity, Interest rate risk, Reading the financial pages, Inflation and the time value of money, Inflation and interest rates

5 Discounted cash flow analysis Discount cash flows, Discount incremental cash flows, include all incidental effects, Forget sunk costs, Remember working capital, Discount nominal cash flows by the nominal cost of capital, Separate investment and financing decision, Example: Blooper Industries

6 Project Analysis Capital budgeting in the large corporations, Stage 1: Capital Budget, Stage 2: Project authorizations, Problems and some solutions, Some ‘what if’ questions, Sensitivity, scenario, break even analysis, Flexibility in capital budgeting, Decision trees

7 Introduction to risk, return & opporty cost of capital Rate of return, View seventy years of capital market history, Market Indexes, Using historical evidences to estimate today’s cost of capital Measuring the variation in stock return, Risk & Diversifications, Thinking about Risks, Messages, Market risks.

8 Risk return and capital budgeting Measuring market risk, Measuring betas, Betas for Microsoft and Boston Edison, Risk and Return, Why the CAMP works, Capital budgeting and project risk, Determinants for project risk

Page 122: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

116

9 The Cost of Capital The cost of capital, The company cost of capital and the weighted average, Calculating cost of capital, Market versus book weight, Taxes and the weighted- average cost of capital, Measuring capital structure

Text Book: 1. Engineering economy (9th edition) by E. Paul Degarmo, Sullivan Bitadelli Macmillan Publishing company2. Fundamentals of Corporate Finance by Richard Brealy

Page 123: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

117

HU443-PsychologyCourse Code: HU443

Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3

Course Objectives

The main objective of the course is to familiarize students with the core concepts of Psychology empirically and that how they can apply to them or others to gain a better understanding of life in the light of scientific enterprise.

Course ContentsIntroduction, definition, goals, history and areas or fields of Psychology, Research Methods / Enterprise in Psychology, Psychological Test Administration, Analysis of the above, Psychoanalysis, Behavioral Psychology, Abnormal Psychology and Some Psychotherapeutic Techniques

Text Book 1.Passer.M, Smith.R, (2001). Psychology: Frontiers and Applications. New York: McGraw-Hill. ISBN 0-07-365795-6

References 1. Weiten.W, (2001). Psychology Themes & Variations. 5th Edition, USA: Wadsworth Thomson Learning. ISBN 0-534-36714-32. Mc Conkey.Bond, (2001). Psychological Science. Australia: McGraw-Hill. ISBN 0-074-70408-7.3. Students Dictionary of Psychology

Page 124: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

118

GMT164-Introduction to ManagementCourse Code: GMT164

Pre Requisites:

Nil

Credits:2+0 Contact Hrs: 2

Course Objectives:

This course aims to equip the students with the basic concepts of management. The importance of developing good managerial skills has never been greater than now. Every forward-looking, growing organization aspires to hire such employees who have a certain level of understanding in the basic management concepts along with their core areas of expertise. This is why more and more engineers, doctors, and technical experts are getting professional training in basic areas of management.

Course ContentsIntroduction and Overview, Pioneering Ideas in Management, Understanding Competitive Environments and Organizational Cultures, Social Responsibility and Ethics in Management, Managerial Decision Making, Establishing Goals and Plans, Human Resource Management, Strategic Management, Elements of Organizational Design, Strategic Organizational Design, Change Management and Innovation, Motivation, Leadership, Managerial Communication and Interpersonal Processes and Controlling the organization.

Text Book 1. Kathryn M. Bartol and David C. Martin, Management, McGraw-Hill, 1998, 3rd Edition

References Harold Koontz, Heinz Weihrich, Essentials of Management An International Perspective, Tata McGraw Hill, 2004, 6th Edition

Page 125: CURRICULUM B.E Computer Software€¦ · EE221-Digital Logic Design.....19 CS220-Database Systems ... The curriculum is based on HEC’s guidelines for Bachelor’s program in

119

GMT175-Intellectual Property RightsCourse Code: GMT175

Pre Requisites:

Nil

Credits:3+0 Contact Hrs: 3

Course Objectives:

This is an introductory course that provides overview of Intellectual Property (IP) and the reasons why it is considered an important economic and cultural asset in today’s life and a nation’s economy. This course also aims to raise awareness of the significance of patenting technology and the impact it has with regards to the intellectual property rights of its inventors.

Course Contents1 Part-I Basic building blocks of IPR including Copyright Law, Trademarks,

Geographical Indications, Patents and Trade Secrets. In depth analysis of international treaties is given to the students along with the rationale behind protecting the particular legal form of IP. Infringements coupled with civil / criminal remedies and counterfeiting are discussed individually. Bilateral and international protection and potential barring activities are associated with each form of protection.

2 Part-II Technology commercialization. It includes topics of technology transfer process, commercialization roadmap, technology incubation, institutional IP policy, office of IP management and licensing.

Text Book: No Text book (Case studies will be provided)References: 1. Intellectual Property Law for Engineers and Scientists, Howard

B. Rockman2. Foundations of Intellectual Property, Robert P. Merges and Jane C. Ginsburg3. Intellectual Property – Examples and Explanations (Second Edition), Stephen M. McJohn