Department of Computer Science & Information Technology University of Sargodha
Department of Computer Science & Information Technology University of Sargodha
[email protected]
[email protected]
BS(SE) Curriculum
Table of Contents
Credit Requirements for BS (SE) Degree Program....................................................... 3
Summary of Required Credit Hours for BS (CS) Degree............................................... 3
Courses for BS (SE) Degree Program............................................................................. 4
Course Outlines................................................................................................................. 6
MTH 101 - Calculus I ................................................................................................. 6
MTH 102 - Calculus II................................................................................................ 6
MTH 210 - Linear Algebra ......................................................................................... 7
MTH 250 - Probability and Statistics ......................................................................... 7
NSc 101 - Mechanics and Wave Motion .................................................................... 8
NSc 103 - Electricity and Magnetism......................................................................... 8
ENG 101 - Writing Workshop.................................................................................. 10
ENG 201 - Communication Skills ............................................................................ 10
ENG 205 - Business and Technical Writing............................................................. 11
HUM 150 - Islamic Studies I .................................................................................... 11
HUM 250 - Professional Ethics and issues............................................................... 12
HUM 260 - Arabic Language ................................................................................... 13
HUM 350 - French.................................................................................................... 13
SSc 170 - Pakistan Studies........................................................................................ 14
CMP 140 Programming Fundamentals..................................................................... 14
CMP 200 - Discrete Mathematics............................................................................. 15
CMP 210 - Data Structures and Algorithms ............................................................. 15
CMP 120 – Digital Logic Design ............................................................................. 16
CMP 121– Digital Logic Design Laboratory............................................................ 17
CMP 223 - Computer Organization and Assembly Language ................................. 17
CMP 224 - Computer Organization and Assembly Language Lab .......................... 18
CMP 240 - Object Oriented Programming ............................................................... 18
CMP 320 Operating Systems.................................................................................... 19
CMP 330 - Computer Networks ............................................................................... 20
CMP 331 - Computer Networks Lab ........................................................................ 20
CMP 370 - Database Systems................................................................................... 21
CMP 290 - Software Engineering............................................................................. 21
CMP 390 - Object Oriented Analysis and Design .................................................... 22
CMP 100 - Introduction to Computing..................................................................... 22
SE 310 - Analysis of Algorithms .............................................................................. 23
CS 211 - Theory of Automata and Formal Languages ............................................. 23
SE 490 - Capstone Project I ...................................................................................... 24
SE 491 - Capstone Project II..................................................................................... 24
SE 451 - Human Computer Interaction .................................................................... 25
SE 495 - Design Patterns .......................................................................................... 25
SE 492 - Software Project Management................................................................... 26
SE 493 - Software Quality Assurance ...................................................................... 26
SE 390 - Software Requirements Engineering ......................................................... 27
SE 391 - Software Design and Architecture ............................................................. 28
SE 342 - Enterprise System Development................................................................ 28
2
BS(SE) Curriculum
Credit Requirements for BS (SE) Degree Program
Credit
Category
Hours
Computing Core Courses 40
Software Engineering – Core Courses 27
Software Engineering - Technical Electives 12
Mathematics 12
Natural Sciences 06
Humanities and Social Sciences 33
Total Credit Hours 130
3
BS(SE) Curriculum
4
BS(SE) Curriculum
Science
SSc x7x Introduction to Management 3
SSc x7x Introduction to Sociology 3
SSc x7x History of Civilization 3
Total Credits 12
Total Credit Hours 43
Course Outlines
Course Description
This course provides a systematic introduction to the aspects of differential and integral calculus. It
provides a sound foundation in calculus for students of Mathematics and Computer Science. Emphasis of
the course is on modeling and applications. The following topics will be covered in this course: Number
systems, Intervals, Inequalities, Functions, Solving absolute value equations and inequalities, Limits,
Continuity, Limits and continuity of trigonometric functions, Slopes and rates of change, the Derivative,
Local linear approximation, Differentials, Analysis of functions, Rolle’s theorem and Mean value theorem,
the indefinite integral, the definite integral, L’Hopital’s rule; Integration, First order differential equations
and applications, Second order linear homogeneous differential equations, Polar coordinates and Graph
sketching, Conic sections in calculus.
Prerequisites
None
Text Book
Anton, Bivens and Davis, Calculus, 7th Edition, John Wiley and Sons, 2002. ISBN: 9971-51-431-1
Reference Books
Thomas and Finney, Calculus with Analytic Geometry, Addison Wesley 10th Edition, 2001. ISBN:
0201163209
Dennis G.Zill & Michael R. Cullen, Differential equations with boundary value problems, 3rd
Edition,1992. ISBN: 0534418872
Online Material: www.mathworld.com
Course Description
The objective of this course is to prepare the students for coordinating problems by various viewpoints and
to encourage and motivate the students to think abstractly, and explore possibilities in field of computer
science, in particular, computer graphics. Class assignment will be given at the end of each lecture, and
Software MATLAB/MATHEMATICA/MAPLE will be used to demonstrate the visualization of surfaces.
The following topics will be covered in this course: Motivation and applications of the course, Rectangular
6
BS(SE) Curriculum
coordinates in 3-space, spheres, cylindrical surfaces, Vectors, Scalar (dot) products, projections, Vector
(cross) products, Parametric Equations of Lines, Planes in 3-space, Quadric surfaces, Spherical and
cylindrical coordinates, Introduction to vector-valued functions, Calculus of vector-valued functions,
Change of parameter, Arc length, Unit tangent, normal, and binormal vectors, Curvature, Functions of two
or more variables, Partial derivatives, The Chain rule, Directional derivatives and Gradients, Tangent
planes and normal vectors, Maxima and minima of functions of two variables, Lagrange multipliers,
Double integral , Parametric surfaces; Surface area, Triple integral, Line integrals, Green’s Theorem,
Surface integrals; application of surface integrals, Divergence Theorem, Stoke’s Theorem.
Prerequisites
MTH 101 – Calculus I
Text Book
Anton, Bivens and Davis, Calculus, 7th Edition, John Wiley and sons, 2002.ISBN: 9971-51-431-1
Reference Books
Thomas and Finney, Calculus with Analytic Geometry, Addison Wesley, 9th Ed, 1999. ISBN:
0201163209
Course Description
The purpose of this course is to provide a solid foundation in Linear Algebra. It will enable the students to
master the concepts and to know when and how to apply linear algebra. Applications are taken from such
areas as Cryptography, Fractals, Chaos, Computer Graphics, Game of Strategy, Computer Tomography,
Warps and Morphs. The Software MATLAB will be used for the implementation of Linear Algebra. The
following topics will be covered in this course: Introduction to Linear Algebra (History, differentiation
between Matrix Algebra and Linear Algebra), Concept of a matrix with real entries, Operations of matrices
(Addition, multiplication, scalar multiplication, trace, transpose), Determinant of a matrix and its
properties. Singular and non-singular matrices, Row/Column elementary Operations defined on a matrix
Inversion of a matrix (by elementary operations), Reduction of matrix into echelon and reduced echelon
form by elementary operations. Rank of a matrix, Introduction to system of linear equations, Solution of
system of linear equations by Gauss elimination method, Concept of algebraic Structures (Semi group,
Group, abelian group), Sub groups, Cosets, Mappings, Ring and Field, Introduction to vector spaces, Linear
combination, linear span, Linear dependence and independence of vectors, Concept of basis and dimension,
Linear transformations, Kernel and Range, Matrix representations of a linear transformation, Matrix
transformations (dilation, contraction, reflection, compressions and expansion), Affine Transformations
(Shearing, Scaling, Rotation, and Translations), Concepts of eigenvalue and eigenvector, Characteristic
equation, Eigenvalues of an upper & lower triangular matrix, Diagonalization of matrices, Matrix
Functions, Concepts of Norm and inner product space.
Prerequisites
Calculus – II
Text Book
Anton - Rorres “Elementary Linear Algebra, application version”. 8th Edition, John Wiley & Sons, Inc.
2000, ISBN: 978-0-471-44902-7
Reference Material
David C Lay, Linear Algebra, Pearson Addison Wesley, 1999, ISBN: 0201660369
7
BS(SE) Curriculum
Course Description
This course is aimed to introduce the concept of statistics, randomness and probability and build on these
concepts to develop tools and techniques to work with random variables. The following topics will be
covered in this course: Introduction to Statistics, Descriptive Statistics, Statistics in decision making,
Graphical representation of Data Stem-and Lead plot, Box- Cox plots, Histograms and Ogive, measures of
central tendencies, dispersion for grouped and ungrouped Data, Moments of frequency distribution;
examples with real life, use of Elementary statistical packages for explanatory Data analysis. Counting
techniques, definition of probability with classical and relative frequency, subjective approaches, sample
space, events, laws of probability. General Probability Distributions, Conditional probability, Bayes
theorem with application to Random variable (Discrete and continuous) Binomial, Poisson, Geometric,
Negative Binomial Distributions, Exponential Gamma and Normal distributions, Regression and
Correlation.
Prerequisites
None
Text Book
Walpole, Introduction to Statistics, Prentice Hall, , 1982, ISBN: 0024241504.
Reference Material:
G. Cowan G, Statistical Data Analysis, Clarendon, Oxford, 1998, ISBN13: 9780198501558
Mariano R, Advances in Statistical Analysis and Statistical Computing III, JAI Press, Greenwich,
Conn, 1993
Course Description
To teach students calculus based general physics by way of learning about the following topics in depth:
Measurement and vectors, Motion in one, two and three dimensions, Newton’s laws of motions, Work and
energy principles, Laws of conservation of momentum and energy, One- and two-dimensional collisions,
Rotational kinematics and dynamics, Conservation of angular momentum, Gravitation, Oscillations and
waves.
Prerequisites
None
Textbook
Resnick, Halliday and Krane, Physics, vol. 1, 2001, ISBN: 978-0-471-32057-9
Reference Material
Sears and Zemansky, University Physics, vol. 1, 2003, ISBN-10: 0201603365
Course Description
The primary objective of the course is to teach student calculus based general physics, particularly basic
concepts of thermodynamics, electricity, and magnetism. The following topics will be covered in the
course: Temperature, Thermal expansion, Kinetic theory and the ideal gas, Heat and First law of
thermodynamics, Entropy and Second law of thermodynamics, Review of Vectors, Electric Charge and
Coulomb’s law, Electric field, Gauss’s law, Electric potential, Capacitors and dielectrics, Current and
8
BS(SE) Curriculum
resistance, Ohm’s Law, Simple resistive circuits (series and parallel), Magnetic field, Ampere’s law,
Faraday’s law of induction, Lien’s Laws, Ampere’s Law and its applications.
Prerequisites
Mechanics and Wave Motion
Text Book
Halliday, Resnick, and Walker, Fundamentals of Physics Extended, Sixth Edition, 2000, ISBN: 978-0-471-
32000-5
Reference Books
1. Sears and Zemansky, University Physics, vol. 1, 2003, ISBN-10: 0201603365
Sears and Zemansky, University Physics, vol. 2, 1997, ISBN-10: 02016033655
9
BS(SE) Curriculum
Course Description
The basic philosophy behind writing workshop is to allow students to daily spend time writing for real
purposes about things that interest them. Students can experiment with a variety of genres. English,
spelling, handwriting and other mechanics can be taught within writing workshop. Students learn the craft
of writing through practice, conferring, and studying the craft of creative and fundamental writings. Topics:
Introduction of communication; 4 skills of communication; Importance and Benefits of Effective
communication; Components of communication; Components of communication; Concepts and problems
of communication; Forms of communication: verbal/ nonverbal; The general principles of communication;
The general principles of communication; Communication and the Global Context; Strategies for
Successful Speaking. Project Documentation and Presentation must be treated as compulsory part of this
paper. Note for the instructor: make frequent use of worksheets in class and in homework assignments.
Prerequisites
None
Text Book
George Stern, Learners’ Writing in English, Learners Publishing, ISBN: 981-4107-03-4
Reference Books
Hand outs: Synonyms, Antonyms, Idiomatic Phrases and Difference Between American and
British English
Useful links: www.owl.english.purdue.edu, www.askoxford.com
Course Description
The aim of this course is to develop good English writing, language usage and reading skills, to appreciate
the importance of business communication and to develop understanding of communication concepts,
principles, theories and problems. It will also help in developing good oral communication and presentation
skills. The following topics will be covered in the course: Principles of writing good English, understanding
the composition process, Comprehension and expression, Use of grammar and punctuation, Process of
writing, observing, audience collecting, composing, drafting and revising, persuasive writing, reading
skills, listening skills and comprehension, skills for taking notes, Business communications, planning
messages, writing concise but with impact, Letter formats, mechanics of business, letter writing, letters,
memo and applications, summaries, proposals, writing resumes, styles and formats, oral communications,
verbal and nonverbal communication, conducting meetings, small group communication, taking minutes,
Presentation skills, Presentation strategies, material gathering, material organization strategies, time
management, opening and concluding, use of audio-visual aids, delivery and presentation.
Prerequisites
Writing Workshop
Text Book
Modern Approach to Communication Skills, Organized and Complied by Samreen Jawed, Published by
University Book Corner, Urdu Bazaar Lahore
Reference Material
Handouts will be provided by the instructor
Vawdrey, Stoddard, Bell, Practical Business English, ISBN-10: 0256102740
• Herta A. Murphy, Effective Business Communication, ISBN-10: 007044398X
10
BS(SE) Curriculum
Course Description
The objective of this course is to upgrade students’ ability to write effectively in the world of science,
technology and business, to produce experts and specialists in the business and technical writing, to
enhance students’ skills for the effective delivery of technical information to audience (listeners or
viewers). It will help the students to generate thorough understanding of common types of reports, special
format items and other technical features of business documents, to develop verbal and non verbal
communication skills for an effective display of personality. The following topics will be covered in the
course: Business communication overview, Communication and organizational effectiveness, Process of
creating effective messages, five planning steps and organizational plans, Different Forms of Written
communication including Persuasive messages, Good News and Neutral messages, Bad News,
Memorandum writing, Letter writing, Informative and positive messages, Academic, research and business
proposals writing, Formal Report Writing, Business Research Methods, Documentation and Research
Citation, Oral presentation, Strategies for an effective Audience Analysis, Non-verbal communication,
Employment communication, Cross-cultural communication, Business Communication and the Ethical
Contexts.
Prerequisites:
Communication Skills
Text Book
The Modern Business and Professional Communication, Revised Edition, Organized and Complied by
Samreen Jawed, Published by University Book Corner, Urdu Bazar.
Reference Material:
• Handouts provided by the instructor
• Greenfield, T., Research Methods, Guidance for Postgraduates, Arnold, 1996, ISBN-10:
0340806567
Course Description
This course provides a comprehensive knowledge of Islam. It covers the basic beliefs and practices of
Islam. This course is intended to familiarize students with a range of the most important Islamic beliefs,
practices, and issues. It should equip them to recognize, understand and appreciate the different dimensions
of Islam that they will encounter in their practical life. This course will enable the students to perform their
worship in the manner prescribed by Allah. It will also make them aware of their duties as Muslims,
including what is compulsory, what is permitted and what is forbidden for a Muslim in his day-to-day life.
This course will also enable the students to appreciate the beauty and excellence of Islamic moral and
social teachings and adopt them as their guidance in life thereby demonstrating values and attitudes
necessary for a healthy and balanced lifestyle. The following topics will be covered in this course:
Aqeedah, Tawheed, Risalah and Al-Akhira, Tahara, Salah, Sujood as-Sahw, Qadda (making up), Qasr
(Shortening) and Jama(Joining), Sawm (Fasting), Salah at-Taraaweeh (The Night Prayer), Zakaah, Hajj,
Jihad, Birth, Tehneek , Aqeeqah and Circumcision (Khittaan), Death, The Funeral Prayer, Burial, Food and
Dress/Adornment, Male/Female relationship, Social Interaction Between Men & Women,
Marriage(Nikah), Rights and Obligations of the Spouses, The Law of Divorce, Inheritance, Major Sins
(Kabirah), Crime & Punishment, Islamic Economics & Finance, Contemporary issues, Moral/ Manners /
Tazkiyah Nafs, concepts of Taqwa, Tazkiyah, Ihsan, Huqooq ullah and Huqooq ul-Ibad.
Prerequisites
None
Text Book
11
BS(SE) Curriculum
Dr. Muhammad Hamidullah, Introduction to Islam, 2003, publisher-wilmett:III, BAHAI Publications
Trust, ISBN-1931847061.
Reference Material
• Marwan Ibrahim Al-Kaysi, Morals And Manners in Islam, 1991, The Islamic Foundation,
Leicester, United Kingdom, 1991.
• Mohammad Yusuf Islahi, Etiquettes of Life In Islam, Markazi Maktabah Islami Publishers, New
Delhi, 2003.
• Dr. Abu Ameenah Bilal Philips, The Foundations of Islamic Studies.
• John Esposito, Islam: The Straight Path, 3rd Edition 2005 Oxford University Press, ISBN-
0195182669
• Abul A'la Mawdudi, Al-Jihad Fil Islam
• Dr. Abu Ameenah Bilal Philips, Funeral Rites in Islaam –2nd Edition 2005, International Islamic
publishing (IIPH) ISBN-9960850846
• Jamal A. Badawi, At-Taharah: Purity And State Of Undefilement
• Abul A'la Mawdudi, Human Rights in Islam, The Islamic Foundation, Leicester, United Kingdom,
ISBN-0950395498
• Abul A'la Mawdudi, Ethical Viewpoint of Islam 1972, KALI Publishers, ISBN-0935782990
• Muhammad Akram Khan, An Introduction to Islamic Economics, 1994, The International Institute
of thoughts Islamabad.
• Khurshid Ahmad, Studies in Islamic Economics, 1980, The Islamic Foundation, Leicester, United
Kingdom.
Course Description
The objective of this course is to impart an understanding of the fundamental principles and teachings of
Islam through study of selected verses of the Quran and Prophetic Sayings. It also includes the important
facets of the Prophet’s life and salient features of Islamic Civilization. It will provide appreciation of other
prominent religions, systems of ethics and cultures to prepare students to survive in international and
multicultural work place. This course introduces students to the basic teachings of Islam so that they can
understand the rationale behind Islamic beliefs and practices. The following topics will be covered in the
course: Basic sources of teaching, beliefs and their impact on human life, obligation to God, obligations to
fellow human beings, and other related issues.
Prerequisites
None
Text Book
Dr. Muhammad Hamidullah, Introduction to Islam, 2003, publisher-wilmett:III, BAHAI Publications
Trust, ISBN-1931847061.
Reference Material
• Marwan Ibrahim Al-Kaysi, Morals And Manners in Islam, 1991, The Islamic Foundation,
Leicester, United Kingdom, 1991.
• Mohammad Yusuf Islahi, Etiquettes of Life In Islam, Markazi Maktabah Islami Publishers, New
Delhi, 2003.
• Dr. Abu Ameenah Bilal Philips, The Foundations of Islamic Studies.
• John Esposito, Islam: The Straight Path, 3rd Edition 2005 Oxford University Press, ISBN-
0195182669
• Abul A'la Mawdudi, Al-Jihad Fil Islam
• Dr. Abu Ameenah Bilal Philips, Funeral Rites in Islaam –2nd Edition 2005, International Islamic
publishing (IIPH) ISBN-9960850846
12
BS(SE) Curriculum
• Jamal A. Badawi, At-Taharah: Purity And State Of Undefilement
• Abul A'la Mawdudi, Human Rights in Islam, The Islamic Foundation, Leicester, United Kingdom,
ISBN-0950395498
• Abul A'la Mawdudi, Ethical Viewpoint of Islam 1972, KALI Publishers, ISBN-0935782990
• Muhammad Akram Khan, An Introduction to Islamic Economics, 1994, The International Institute
of thoughts Islamabad.
• Khurshid Ahmad, Studies in Islamic Economics, 1980, The Islamic Foundation, Leicester, United
Kingdom.
Course Description
The main objective of this course is to give students an introduction to the basic syntax and morphology of
the Arabic language so that they can study the language at an advanced level on their own. At the end of
the course students will be in a position to understand simple Arabic sentences and decipher the meaning of
complex sentences to some extent with the help of a dictionary. Although the main stress shall be on
explaining the sentence structure, it is expected that some use of Situational Language Teaching (SLT) and
communication will also give the students a limited ability to read Arabic texts and communicate in that
language. The following topics will be covered in the course:
Prerequisites
None
Text Book
Standard textbook by Punjab University
Reference Material
None
Course Description
The aim of this course is to introduce a beautiful and world’s second spoken language to students and
importance of bilingual vision of a person in modern era, to make the students capable of understanding
and speaking a new language, to establish the concept and basis about the grammar in students. It
emphasizes not only on theoretical education but the implication of French language in practical life in
different situations. The following topics will be covered in the course: Introduction to French Language,
Nature, scope and importance of another language, acquisition of the four skills of oral/written
comprehension and oral/written production within the framework of real communication situations linked
to the realities of the workplace using audio-oral approach, cultural dimension, pride of place as each unit
focuses on a particular civilization theme. Different daily life situations e.g. To take an appointment,
Introduce one’s self to another person, Hotel reservations, Arrivals, Departures, Buying a ticket and
seeking information etc.
Prerequisites
None
Text Book
13
BS(SE) Curriculum
S. Truscott – M. Mitchell and B. Tauzin, Le Français à grande vitesse –2003 (Cours Intensif), Mark Rouse
publishers, France, ISBN-0-7897-2849-4
Reference Material
• Dr. S.H.A Rasool, French For Intermediate
Course Description
The main objective of this course is to make the students familiar with the History of Pakistan, its ideology
and all the Problems, which have been faced at the time of creation of Pakistan. All the great nations
remember their history and it is very important to make the new generation familiar about it to achieve their
goals and to set the future trends. Students will learn the reason behind the achievements of the Pakistan.
The following topics will be covered in the course: Historical background of Pakistan: Muslim society in
Indo-Pakistan, Ideology of Pakistan, Two Nation Theory, the movement led by the societies, the downfall
of Islamic society, establishment of British Raj- Causes and consequences, Political evolution of Muslims
in the twentieth century, Sir Syed Ahmed Khan, Muslim League, Nehru, Allama Iqbal, Independence
Movement, Lahore Resolution, Creation of Pakistan and transfer of power, Pakistan culture and society,
Constitutional and Administrative issues, Pakistan and its geo-political dimension, Pakistan and
International Affairs, Pakistan and the challenges ahead.
Prerequisites
None
Text Book
Dr. Muhammad Sarwar, A Text book of Pakistan Studies, Ilmi Kitab Khana, Urdu Bazar, Lahore, 2003
Reference Material:
• Ikram ul Haq Raja Pak. Studies, Azeem Academy, Urdu Bazar Lahore 2001
Course Description
“Programming is to Computer science as Calculus to Physics and Engineering”. Theories of computer
science can effectively be verified via programming. Emphasis of the course is on developing Problem
Solving skills. Introduction: Introduction to Course, Program and Algorithm, Programming Language,
Flow-charting, Software Development Life Cycle: Analysis, Design, Implementation, Testing, Deployment
and Maintenance. Flowcharting as schematic representation of an algorithm or a process; Program
Development Life Cycle: Editing, Compiling, Linking, Loading and Execution; C Programming Language:
introduction, history, significance. Basic C Language Constructs: Data types, Variable and Constants,
Operator and Expressions, Console I/O, Formatted I/O, Escape Sequences. Structured Programming in C
Language: Decision making using if control structure, Repetition using for and do while, multiple selection
using switch and logical operators. Procedural Programming in C Language: functions, prototype,
parameter and arguments, call by value, header files, scope and lifetime of variables (storage classes),
recursion. Pointers: Pointer Significance, pointer definition, pointer arithmetic, constant pointers, Call by
Reference; Composite Data Types Arrays: definition, processing, multi dimensional arrays, searching and
sorting, passing of array to a function. Strings: string and characters, string conversion functions, Dynamic
Memory Allocation. User Defined Data Types: structures, definition, initialization, accessing members of
structures, Self Referential Structures, typedef, union and bitwise operators, enumerations. C File
Processing: files and streams, Sequential Access File, Random Access File. Miscellaneous Topics:
Command Line Arguments, Compiling Multiple Source Files, Developing Libraries. exit and atexit.
14
BS(SE) Curriculum
Graphics (Which must be the last session of this course) Preparing for Graphics, Line, Circle, Filling Color,
Text and Graphics, Pixel, Bit Images
Prerequisites
None
Text Book
• H.M. Deitel, “C How To Program”, 2nd Ed., Pearson Education, 2004. ISBN 81-297-0676-8
• Dennis M. Ritchie, The C Programming Language, 2nd Ed., Prentice Hall, 1988. ISBN 0-13-
110362-8
Reference Books
Koenig Andrew, “C Traps and Pitfalls”, 2nd Ed., Addison-Wesley, Nov., 1988, ISBN
9780201179286
Stephen G. Kochan, “Programming in ANSI C”, Ist Ed., Prentice-Hall, 1993, ISBN:0672303396
Clovis L. Tondo, Scott E. Gimpel, “The C Answer Book”, Ist Ed., November 19998, Prentice
Hall, ISBN 0131096532
Alan R. Feuer, “The C Puzzle Book”, 2nd Ed., Prentice Hall, October 1989, ISBN:0-13-115502-4
Course Description
This course introduces the foundations of discrete mathematics as they apply to Computer Science,
focusing on providing a solid theoretical foundation for further work. It aims to develop understanding and
appreciation of the finite nature inherent in most Computer Science problems and structures through study
of combinatorial reasoning, abstract algebra, iterative procedures, predicate calculus, tree and graph
structures. The following topics will be covered in the course: Introduction to logic and proofs, Direct
proofs, proof by contradiction, Sets, Combinatorics, Sequences, Formal logic, Prepositional and predicate
calculus, Methods of Proof, Mathematical Induction and Recursion, loop invariants, Relations and
functions, Pigeon whole principle, Trees and Graphs, Elementary number theory, Optimization and
matching, Fundamental structures, Functions (surjections, injections, inverses, composition), relations
(reflexivity, symmetry, transitivity, equivalence relations), sets (Venn diagrams, complements, Cartesian
products, power sets), pigeonhole principle; cardinality and countability.
Prerequisites
None
Text Book
Rosen, Discrete Mathematics and Its Applications, 5th edition, 2002, McGraw-Hill, ISBN: 0072424346
Reference Material
• Richard Johnsonbaugh, Discrete Mathematics, Prentice Hall, 1996, ISBN: 0135182425
• Kolman, Busby & Ross, Discrete Mathematical Structures, 4th Edition, 2000, Prentice-Hall,
ISBN: 0130831433
Course Description
This course is designed to teach students structures and schemes, which allow them to write programs to
efficiently manipulate, store, and retrieve data. “An apprentice carpenter may want only hammer and saw,
but a master craftsman employs many precision tools; (Robert L. Kruse Data Structure and Program
Design)”. Computer programming likewise requires sophisticated tools to cope with complexity of real
applications and only practice with these tools will build skill in their use. Topics: Introduction:
15
BS(SE) Curriculum
Introduction to Course, Review of Object Oriented Programming Concepts. Algorithm Specification:
Properties of Algorithm, examples, performance, analysis, measurement, and Big Oh notation. Introduction
to ADTs: Array and Polynomial as an ADT, and Representation of Arrays. Stack ADT, Expressions,
Postfix Notation, and Infix to postfix conversion. Recursion: Recursive Definition and Processes, Writing
Recursive Programs. Queue: The Queue ADT, Circular and Double Ended Queue. Self-Referential Classes,
Linked List: Linear/Circular Singly/Double Linked Lists, Linked Stacks and Queues. Trees: Introduction to
Trees, Logical construction and Traversing of Binary Trees, Implementation of Binary Trees (Insertion and
Traversing), Searching and deletion in Binary Trees, Binary Search Tree, Introduction to Balanced and
AVL Trees. Heaps: Heaps and Heaps as Priority Queues, Double Ended Priority Queue. Hashing: Hash
Functions: Division; Overflow Handling: Chaining; Introduction to Some advance topics like: B-Trees,
Indexing, Sets, Compression and Network Flows etc. Sorting Types and Techniques: Logical and
Algorithmic Implementation of Selection, Bubble, Insertion, Shell, Radix, Merge, Quick, Heap, and Tree
Sorts. Graphs: Graph terminology, Adjacency List and Adjacency Matrix and Adjacency list representation
of Graph; Elementary Graph Operations: Breadth First Search and Depth First Search, Spanning Trees
(BFSST, DFSST), Minimum Cost Spanning Trees.
Prerequisites
CMP-240 Object Oriented Programming
Text Book
• Mark Allen Weiss, “Data Structure and Algorithms in C++”, 2nd Ed., Addison Wesley, 1999,
ISBN 0201361221
• Ellis Horowitz, Sartaj Sahni, and D. Mehta “Fundamentals of Data Structures in C++”, 2nd Ed.,
Computer Science Press, 1995. ISBN 81-7808-792-8
Reference Material
• Michael T. Goodrich, “Data Structures and Algorithms in C++”, Ist Ed., John Wiley & Sons,
2006, ISBN: 0470075619
• Adam Drozdek “Data Structure and Algorithm in Java”, 2nd Ed., Brooks/Cole Publishing Co,
2001, ISBN 0-534-37668-1
• D. Samanta. “Classic Data Structures”, 2nd Ed., Prentice Hall, 2001, ISBN: 8120318749
• Tenenbaum, M. Augenstein, and Y. Lang Sam, “Data Structures using C and C++” 2nd Ed.,
Prentice Hall, 1999, ISBN-10: 0130369977
• Standish, Thomas A., "Data Structures, Algorithms, and Software Principles in C", Ist Ed., 1994,
Addison-Wesley, ISBN 0201528800.
• Timothy Budd “Data Structures in C++ using the STL Ist Ed., 1998, Addison Wesley, ISBN
0201308797
• Standish, Thomas A., "Data structure techniques Reading", Ist Ed., Addison-Wesley, 1980, ISBN
0201072564
Course Description
The primary objective of the course is to develop in students a thorough understanding of digital logic
design principles. The following topics will be covered in the course: Number Systems, Codes
(Parallel/Serial), Logic Gates, Boolean Algebra, Boolean Algebra, Positive/Negative Logic, Boolean
Algebra (Dual/De-Morgan), Algebraic simplification, Combinational Logic, Truth Tables, Min/Max terms,
Combinational Logic, K-Maps, Don’t Cares, Multiple outputs, Combinational Logic, 5-6 K-Maps,
Combinational Logic Design Practices, Negative numbers, Addition, multiplication, parity, decoders,
Encoder, Multiplexor /Demux, Hazards, Tristate, Latches & Flip Flops, Counters / Registers, Synchronous
Counters, Sequential Logic Design Principles (Wakerly), Mealy / Moore Design—Sequential Circuits—
(Wakerly), ROMS, SRAMS, DRAMS, Memory Organization, ADC / DAC Interf Analog World, Digital
Electronics, Characteristics, Parameters, Digital Electronics, Logic Families, TTL, CMOS, BiCMOS, ECL,
Low-Voltage Logic, Open/Tristate Wired Logic, Bus Tnterface Logic, Mixing CMOS/TTL
16
BS(SE) Curriculum
Prerequisites
None
Text Book
Tocci & Widmer, Digital Systems, Principles and Applications, 10th Edition, 2006, Published by Pearson
Education, ISBN-10: 0131725793 and ISBN-13: 978-0131725799
Reference Books
• John F. Wakerly, Digital Design, Principles & Practices, 3rd Edition Updated, Published by
Prentice Hall, ISBN-10: 0137691912 and ISBN-13: 978-0137691913
Course Description
The primary objective of the course is to give students practice in designing, implementing, and testing
simple digital circuits by using simulation tools and actual integrated circuits (ICs). Experiments must
cover the use of following digital circuit elements: logic gates (AND, OR, NOT, NAND, NOR), half-
adders, full-adders, multiplexers, demultiplexers, decoders, encoders, flip-flops, shift registers, counters,
and RAM.
Prerequisites
None
Text Book
Laboratory Manual prepared by the institution.
Reference Books
None
Course Description
The main objective of this course is to introduce the organization of computer systems and usage of
assembly language for optimization and control. Emphasis should be given to expose the low-level logic
employed for problem solving while using assembly language as a tool. The students will be capable to
acquire knowledge that is specific to Intel 80x 86 processor families, as well as knowledge that is universal.
They will learn the programming methodologies showing how to use Assembly Language for Application
Software’s, System Programming and Terminate and Stay Resident. They will develop programs based on
the interaction between Assembly Language and Operating System, Security Software’s, encryption and
decryption programs, programs for Reverse Engineering, programs for small scale Embedded Systems and
Games specially Networking Games using serial and parallel ports. Following topics will be covered in this
course: Processor Architecture and Organization, Memory Architecture, Intel 8086 Registers, Addressing
Modes, Memory Addressing, MOV The Basic Instruction, Debugger, Mathematical and Bit wise Logical
instruction, Stack Instructions, Interrupts, Memory Models, Practice of Program Writing and Debugging,
Control Transfer and Conditional Action Instructions, Procedures, Macros, Shift and Rotate Instructions,
Procedures to Input and Display Binary, Decimal, Hexadecimal Numbers, Reading DOS Command Tail,
Data Communication, File Handling, Recursion, High–Level Logic Structures, Interfacing of Assembly
and C++ , Languages, Storage of Real Numbers, Math co-processor, String instructions, Introduction to
Machine Code, Protected Mode, Terminate and Stay Resident Programs, Micro Controller Programming
(8051)
Prerequisites
Digital Logic Design
17
BS(SE) Curriculum
Text Book
Barry B. Brey, 'The Intel Microprocessors, 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium and
Pentium Pro Processor, Pentium II, Pentium III and Pentium 4, Architecture, Programming and Interfacing'
Seventh Edition, Prentice Hall, 2006, ISBN-9780131195066
Kip R. Irvine, Assembly Language for Intel Based Computers, Fifth Edition, Prentice-Hall Publishing, 2006,-
ISBN-13: 9780132383103
Reference Material
• Allen L. Wyatt, Using Assembly Language, 3rd Edition, Publishing Que Corporation 1992,-ISBN:
0-88022-884-9
• I Scott Mackenzie, Raphael C.-W.Phan, 8051 Micro-controller Programming, 4th Edition, Prentice
Hall PTR, 2006, ISBN 0130195626
Course Description
Instruction set architecture. Accumulator based, Stack Based and General Purpose Register Organization.
Processor’s Data Path. Design of a basic computer highlighting the timing and control system in instruction
execution cycle. Interrupts, traps and signals. Comparison of Intel 80x86 and MIPS architectures.
Addressing Modes. Mapping of High level language to corresponding assembly and machine language.
Memory and Cache organization techniques. I/O techniques (Memory mapped and isolated I/O). Latest
trends in Architectures.
Prerequisites
Digital Logic Design
Text Book
• Barry B. Brey, 'The Intel Microprocessors, 8086/8088, 80186/80188, 80286, 80386, 80486,
Pentium and Pentium Pro Processor, Pentium II, Pentium III and Pentium 4, Architecture,
Programming and Interfacing' Seventh Edition, Prentice Hall, 2006, ISBN-9780131195066
• Kip R. Irvine, Assembly Language for Intel Based Computers, Fifth Edition, Prentice-Hall
Publishing, 2006,-ISBN-13: 9780132383103
Reference Material
• Allen L. Wyatt, Using Assembly Language, 3rd Edition, Publishing Que Corporation 1992,-ISBN:
0-88022-884-9
• I Scott Mackenzie, Raphael C.-W.Phan, 8051 Micro-controller Programming, 4th Edition, Prentice
Hall PTR, 2006, ISBN 0130195626
Course Description
The aim of this course is to equip the learner with the philosophy and necessary skills to formulate
solutions of real world problems using object oriented paradigm. The following topics will be covered in
the course: Overview of Structured Programming, Moving from C to C++: Switching from ‘C’ header files
to ‘C++’, printf/scanf, Bugs of Macros and C++ Replacement, global identifiers, Overloading & Default
18
BS(SE) Curriculum
Arguments, Alias, Dynamic Memory Allocation; Evolution of Programming Paradigms; Why OOP and
Basic OOP concepts: Terminology (with the help of real world examples and all possible synonym terms):
Data Abstraction, Encapsulation, Information Hiding, Principle of Least Privilege, Object, attribute/Data-
Member, operation/Member-Function, Encapsulation, Wrapper Method: Setter/Mutator and
Getter/Accessor methods, Utility Operation/Method, Interface, Implementation, Separating Interface from
Implementation; Class Header, Class Body, Special Methods: Constructor and Destructor; Pointer to
Object; Object Passing: By Reference/Value, Shallow/Deep Copy Problems, Temporary Objects; Modifier
const: constant functions/data-member/objects; Modifier static: static functions/data-member/objects; Array
of objects, Composition; Friend Function and Classes, Operator Overloading: Arithmetic/logical/relational
operators, assignment operator, index operator, Function Object, type-cast operator, Smart Pointer,
new/delete operators; Inheritance: Generalization Is-A relationship, Is-Kind of, Problem solving in OO
paradigm, OO program design process , Polymorphism: Compile Time and Runtime/Overriding, V-Table
structure, Pointer to Member Functions; Function/Class Templates: Full/Partial/Extended Specialization;
C++ Streams: Members and Manipulators of Streams, File Processing using Streams: Input/Output of
Object from/to File (binary/ text mode), Access Techniques: Sequential and Random Access Files;
Exception Handling: Error vs. Exception, Evolution of Exception Handling: exit, abort, assert, new-
keywords: try, catch, throw, Unhandled Exception, throw list, Propagation of Exception and its advantage;
Prerequisites
CMP 140 Programming Fundamentals
Text Book
• Bruce Eckel, “Thinking in C++”, 2nd Ed, Pearson Publication, ISBN 0-13-979809-9
• P J Deitel & H M Deitel, “C++ How to Program”, 4th Ed., Prentice Hall, 2001. ISBN 0130384747
Reference Material
• Bjarne Stroustrup, “The C++ Programming Language” 3rd Ed, Addison Wesley, ISBN: 0-201-
88954-4
• Stanley B. Lippman and Josee Lajoie, “C++ Primer”, April 1998, 3rd Edd., Addison Wesley,
ISBN 0201824701
• David Vandevoorde and Nicolai M. Josuttis, “C++ Templates”, November 2002, Ist Edd.,
Addison Wesley, ISBN 0201734842
• Scott Meyers, “Effective C++”, September 1997, 2nd Edd., Addison Wesley, ISBN 0201924889
• Herbert Schildt, “C/C++, The Complete Reference”, 3rd Ed, Osborne McGraw-Hill, ISBN 0-07-
882476-1
• Herbert Schildt, Herb Schildt. “STL Programming”, Ist Edd.December 1998, McGraw-Hill
Osborne Media, ISBN 0078825075
Course Description
The objective of this course is to give students knowledge of construction and working of Operating
systems, to enable them to understand management and sharing of computer resources, communication and
concurrency and develop effective and efficient applications and also to appreciate the problems and issues
regarding multi-user, multitasking, and distributed systems. The following topics will be covered in the
course: Introduction to Main Frames System, multi programmed System, batch system, Time sharing
system, Desktop System, Multiprocessor system, distributed system, client server, Real time system, Hand
held System, Computer System Structure, Caching, Coherency and consistency, Operating System
Structure, Process management, System calls, Process control, Communication, micro-kernels, Virtual
machines, Processes, Threads, multithreading models, CPU Scheduling, Process Synchronization, Critical
section problem, Semaphores, Deadlock, Memory Management, Memory allocation, Fragmentation,
Paging, Segmentation, Virtual Memory, Demand paging, Page replacement, Allocation of frames,
Thrashing, File System Interface, Directory structure, File system mounting, File System Implementation,
NFS, Protection.
Prerequisites
19
BS(SE) Curriculum
Data Structures and Algorithms
Text Book
• Silberschatz A., Peterson, J.L., and Galvin P.C., Operating Systems Concepts, 7th Edition, John
Wiley & Sons, Inc., 2004, ISBN: 0-471-69466-5
Reference Material
• Tanenbaum A.S., Modern Operating Systems, 2nd Edition, Prentice Hall PTR, 2001. ISBN-10:
0130313580
Course Description
The aim of this course is to introduce students to the basic concept of computer networks and
communication. It will provide a detailed overview of the Network models (OSI, TCP/IP) and Protocol
Standards. Emphasis will be given on the understanding of modern network concepts. The following topics
will be covered in the course: Analogue and digital Transmission, Noise, Media, Encoding, Asynchronous
and Synchronous transmission, Protocol design issues, Network system architectures (OSI, TCP/IP), Error
Control, Flow Control, Data Link Protocols (HDLC, PPP), Local Area Networks and MAC Layer protocols
(Ethernet, Token ring), Multiplexing, Switched and IP Networks, Internetworking, Routing, Bridging,
Transport layer protocols TCP/IP, UDP, Network security issues, Programming exercises or projects
involving implementation of protocols at different layers.
Prerequisites
Operating Systems
Text Book
Behrouz A Forouzan, Data Communication and Networking, 4th Ed., McGraw-Hill, 2006, ISBN-13: 978-
0073250328
Reference Material
• Richard Stevens, Unix Network Programming, ISBN-10: 013490012X
• Larry Peterson, Bruce Davie, Computer networks: a systems approach, Princeton Univ.,
Princeton. ISBN-10: 1558605142
• James F Kurose, Keith W Ross, Computer Networking: A Top-Down Approach Featuring the
Internet, 2/e, Addison Wesley 2003. ISBN: 0-201-97699-4.
• Andrew S. Tenenbaum , Computer Networks, 4th Ed., Prentice Hall, 2002, ISBN-10: 0-13-
066102-3
• William Stallings, Data and Computer Communication, 8th Ed., Prentice Hall, 2006, ISBN-13:
978-0132433105
Course Description
The aim of Computer Networks Lab is to provide a hands-on experience to the students so that they can
confidently cope with the practical issues/problems in Computer Networks. The following topics will be
covered in this course: Hardware Components, PC Hardware, Laboratory Safety and Tools, Hardware
Assembling, Portable Devices, Adding a Network Interface Card (NIC), TCP/IP Utilities, Connecting a
Printer, Sharing a Printer, Managing a Printer, Dealing with paper problems, Layer 2 Internetworking
Devices, Switch configuration, Media and Design (Topology Design), Structured Cabling (Straight-
20
BS(SE) Curriculum
Through Cable, Crossover Cable, Rollover Cable), Using the Router, Router Components, Router Startup
and Setup, Router Configuration, Operating System Installation, Implementing a small LAN.
Prerequisites
None
Text Book
Lab Manual provided by instructor
Reference Material
None
Course Description
The course aims to introduce basic database concepts, different data models, data storage and retrieval
techniques and database design techniques. The course primarily focuses on relational data model and
DBMS concepts. The following topics will be covered in the course: Traditional File Based Systems, Roles
in Database Environment, ANSI-SPARC Architecture, Data Manipulation Language (DML), Data Models,
Multi-User DBMS Architectures, Relational Data Structures, Database Schemas, Relational Integrity,
Introduction to SQL, Data Manipulation, Creating a Database, Tables, Index, Views, Transactions,
Database Application Life Cycle, Database Planning, Database Design, Data Administration & Database
Administration, Entity Types, Relationship Types, Structural Constrains, Problems with ER Models,
Specialization/Generalization For EERD, Anomalies, Functional Dependency, Process of Normalization,
Database Design Methodology, Database Security, Client Server Architecture, Centralized and Distributed
Databases, Advance Topics.
Prerequisites
Data Structures and Algorithms
Text Book
C.J. Date, An Introduction to Database Systems, 8th edition, Addison Wesley Publications Co., 2003.
ISBN-10: 0321197844
Reference Material
• R.Connolly and P.Begg, Database Systems: A Practical Approach to Design, Implementation and
Management, Addison-Wesley Publications Company, 2004. ISBN: 0201708574
• Elmasri and Navathe, Fundamentals of Database Systems, 5th edition, Addison-Wesley, 2006.
ISBN-10: 0321369572
Objectives
The aim of this is course is to study various software development models and phases of software
development life cycle. The concepts of project management, change control, process management,
software development and testing are introduced through hands-on Team Projects. The following topics
will be covered in the course: The Scope of Software Engineering, Software Process, Software
Development Life Cycle, Project Management Concepts, (Planning, Costing, Risk Analysis, Quality
Assurance, Risk Management, 4Ps of Project Management), Software Measurement concepts, Product
metrics (LOC based and FP based metrics), Software Quality Metrics, Software Project Planning, Software
21
BS(SE) Curriculum
Cost Estimation techniques, COCOMO model, Project Scheduling, (GANTT chart, Critical Path Method),
Requirements Engineering, Use Case Techniques, Entity Relationship Diagram, State Transition Diagram,
Data Flow Diagrams, Software Designing, Abstraction, refinement, modularity, software architecture,
Cohesion & Coupling, Architectural Design, Data Design, Mapping ER to Data Model, Interface Design,
Human Computer Interface, Modular Design, Mapping Design to Code, Software Testing, White Box
Testing & Black Box Testing, Test Case Design using Cyclometic Complexity Technique, Debugging
practices, Software Inspection, Software Quality Assurance, Software Quality Standards.
Prerequisites
Databases
Text Book
Roger Pressman, Software Engineering: A Practioner's Approach, McGraw-Hill, 2005. ISBN
9780073019338
Reference Material
• Ian Sommerville, Software Engineering, McGraw Hill, 6th Edition ISBN-10: 020139815
•
Course Description
The objective of this course is to demonstrate knowledge and understanding of essential facts, concepts,
principles, and theories relating to computer science and software applications. It involves the applications
of object-oriented concepts and to Identify and analyze criteria and specifications appropriate to specific
object oriented problems, and plan strategies for their solution. It will help the students to analyze, design,
and implement computer-based systems. It will also enable them to select and apply appropriate Design
Pattern. The following topics will be covered in the course: Introduction to Object Oriented Concepts,
Object-Oriented Analysis and Design, Linear and Iterative Process Models, Requirement Engineering
utilizing Object-Oriented Techniques, Software Design and Architectures, Object-Oriented Design, UML
modeling, Use-Case Modeling, Domain Modeling, Interaction Diagrams, Design Modeling, and
Implementation Modeling; Design Patterns (GRASP), User Interface Design, Usage of Rational Rose,
Object-Oriented Testing, Object-Oriented Metrics, Component Based Development, Reusability.
Prerequisites
Software Engineering
Text Book
Craig Larman, Applying UML and Patterns, Pearson Education, Third Edition, 2005. ISBN- 81-7758-979-2
Stephan Schach, Irwin, Object-Oriented Software Engineering, 1999. ISBN: 0072418729
Reference Material
• Roger Pressman, Software Engineering: A Practioner's Approach, McGraw-Hill, 2005. ISBN
9780073019338
Course Description
In today’s information age, computers are used in almost each and every aspect of human life: from cell
phones to cruise missiles, from disease diagnostics to design of space ships, etc. Objective of this course is
to get a breadth-first overview of computing and information technology, and to make students productive
22
BS(SE) Curriculum
with widely used software applications and the World-Wide Web (WWW). The following topics will be
covered in the course: The Information Age, Computer Hardware, Introduction to Internet Explorer,
Software, Central Processing Unit, Introduction to Microsoft Office, Input & Output, Storage &
Multimedia, Microsoft Word, Computer Networks, The Internet, Spreadsheets & Business Graphics,
Programming Languages, Software Engineering, Management Information Systems, Artificial Intelligence,
Microsoft Excel, Database Management Systems, Microsoft Access, Microsoft Power Point, Introduction
to Web Development, Introduction to HTML, Images & Links, Lists and Tables, Forms, Maps and Frames,
Introduction to Microsoft FrontPage, Introduction to JavaScript, E-commerce, Security, Privacy and Cyber-
Ethics, Introduction to Programming, Algorithms & Flowcharts, Variables & Data Types, Operators &
Precedence, Conditional Statements, Loops, Functions, Arrays, HTML Tabular Data Control, New
hardware/software technologies.
Prerequisites
None
Text Book
Capron, Computers – Tools for an Information Age, Sixth Edition, Prentice Hall, ISBN-10: 0131405640
Deitel, Internet & World Wide Web – How to Program, Prentice Hall, ISBN-10: 0131405640
Reference Books
Brookshear; Computer Science – An Overview; Addison-Wesley, ISBN-10: 0201781301
Sanders; Computers Today; McGraw Hill, ISBN 9780070547018
Course Description
The objective of this course involves a detailed study of the basic notions of the design of algorithms and
the underlying data structures. Several measures of complexity are introduced. Emphasis will be given on
the structure, complexity, and efficiency of algorithms. The following topics will be covered in the course:
Introduction; Asymptotic notations, Recursion and recurrence relations, Divide-and-conquer approach,
Sorting, Search trees, Heaps, Hashing, Greedy approach, Dynamic programming, Graph algorithms,
Shortest paths, Network flow, Disjoint Sets, Polynomial and matrix calculations, String matching, NP
complete problems, Approximation algorithms.
Prerequisites
Discrete Mathematics
Text Book
T. H. Cormen, C. E. Leiserson, and R. L. Rivest, Introduction to Algorithms, MIT Press, McGraw-Hill,
New York, NY, 1990. ISBN-10: 0262531968
Reference Material
None
Course Description
The course aims to develop an appreciation of the theoretical foundations of computer science through
study of mathematical & abstract models of computers and the theory of formal languages. Theory of
formal languages and use of various abstract machines as ‘recognizers’ and parsing will be studied for
identifying/validating the synthetic characteristics of programming languages. Some of the abstract
23
BS(SE) Curriculum
machines shall also study as ‘Transducers’. The following topics will be covered in the course: Formal
language, Defining Language, Regular Expression, Finite Automata, Transition Graphs, Kleene’s Theorem,
Finite Automata with output, Regular Languages, Non regular Languages, Decidability, Demonstration Of
JFLAP, Context Free Grammars, Grammatical Format, Pushdown Automata (PDA), CFG=PDA, Non-
Context-Free Languages, Context-Free Languages, Decidability, Turing Machine, The Chomsky
Hierarchy.
Prerequisites
Discrete Structures
Text Book
Denial Cohen, Introduction to Computer Theory, John Wiley & Sons, Inc. ISBN-10: 0471137723
Reference Material
• J Hopcraft, D. Ullman, Introduction to Automata Theory, Languages and Computation, Addison
Wisely, 2nd Edition, ISBN-10: 0201441241
• Thomas A. Sudkamp, Languages and Machines, An Intro to the Theory of Comp. Sc., 2/e Addison
Wesley. ISBN-10: 0201821362
Course Description
The software project involves research, conceive, plan and develop a real and substantial project related to
computer science. It provides an opportunity to the students to crystallize their acquired professional
competence in the form of a demonstrable software product. Make oral and written project presentations.
Prerequisites
Software Engineering – I, Data Base Systems, Computer Architecture
Resources
• Punkaj Jalote, Software Project Management, Addison-Wesley Professional; 1st edition (January
31, 2002), ISBN-10: 0201737213
Course Description
The software project involves research, conceive, plan and develop a real and substantial project related to
computer science. It provides an opportunity to the students to crystallize their acquired professional
competence in the form of a demonstrable software product. Make oral and written project presentations.
Prerequisites
Software Engineering – I, Data Base Systems, Computer Architecture
Resources
• Punkaj Jalote, Software Project Management, Addison-Wesley Professional; 1st edition (January
31, 2002), ISBN-10: 0201737213
24
BS(SE) Curriculum
SE 451 - Human Computer Interaction
Course Description
This course provides an overview of human-computer interaction. The following topics will be covered in
the course: Underpinnings from psychology and cognitive science, Evaluation techniques, Heuristic
evaluation, Videotaped user testing, cognitive walkthroughs, Task analysis, User-centered design, Usability
engineering processes, conducting experiments, Conceptual models and metaphors, Designing interfaces:
Coding techniques using color, fonts, sound, animation, Screen layout, response time, feedback, error
messages, Designing interfaces for special devices, Use of voice I/O, Internationalization, help systems,
User interface software architectures, Expressing design rationale for user interface design.
Prerequisites
None
Text Book
John Carroll, HCI Models, Theories, and Frameworks: Toward a Multidisciplinary Science, Morgan
Kaufmann, April 2003, ISBN-10: 1558608087
Reference Material
• Mary Rosson, John Carroll, Mary Beth Rosson, Usability Engineering: Scenario-Based
Development of Human Computer Interaction, Morgan Kaufmann ISBN-10: 1558607129
Objectives
The aim of this course is to provide an in-depth look at software design and architecture. It will give an
overview of current middleware architectures. Students will learn evaluation and evolution of designs. This
course covers advanced topics of object technology, with particular emphasis on problem solving with
design patterns. The goal of patterns within the software community is to create a body of knowledge /
literature to help software developers resolve recurring problems encountered throughout software
development. Patterns help create a shared language for communicating insight and experience about these
problems and their solutions. This course presents 23 fundamental design patterns. The patterns presented
include design and code examples. Design examples use UML and all code examples are in Java. The latter
part of the course will cover a brief introduction of Analysis Patterns followed by in depth presentation of
patterns from a few business domains. The following topics will be covered in the course: Software
Structure and Architecture, Structures and View Points, Overview of object-oriented design, Software
reusability, Classification of design patterns, Pattern description formats, Architectural Styles (Macro-
Architectural patterns): General structures, Distributed Systems, Interactive Systems, Adaptable Systems,
Software Design: Design Patterns (Micro-Architectural patterns), Fundamental Design patterns, Creational,
Structural, Behavioral patterns, Families of Programs and Frameworks, Design and implementation issues
in Creational patterns, Structural patterns, Behavioral patterns, Patterns in software architecture, Patterns
for user-interface design, Pattern languages, coupling and cohesion issues, Recurring design problems,
Study of creational, structural, and behavioral patterns, Introduction to Software Architecture, Architecture
Description including Representation and Quality Attributes, Architecture Trade-offs, Architectural Styles
and Standards, Architectural Levels, Standards, Architecture and framework Patterns and Anti-patterns.
Prerequisites
Object Oriented Analysis and Design
Text Book
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable
Object-Oriented Software, Pearson Publications, 2004 ed, ISBN: 0-201-63361-2
25
BS(SE) Curriculum
Reference Material
• L. Bass, P. Clements, R. Kazman, Software Architecture in practice, Addison-Wesley, 2003 Ed,
ISBN: 0-321-15495-9
• F. Buschmann, Patterns Oriented Software Architecture – A systems of Patterns, ISBN:0-471-
95869-7
Course Description
This course will enable students to initiate software projects, perform project scheduling, plan the
resources, carry out the staffing, track the progress, apply software metrics, manage and motivate the team,
and manage the crisis situation. The following topics will be covered in the course: Introduction to Project
Management, Project Phases and Project Life Cycle, Project Integration Management, Project Scope
Management, Project Estimation, Size and Schedule Management, Activity Control, Schedule
Development, Controlling Changes to the Project Schedule, Project Cost Management, Resource Planning,
Cost Budgeting, Cost Control, Project Human Resource Management, Organizational Planning, Project
Staff Acquisition, Team Development, Project Risk Management, Quantitative and Qualitative Risk
Analysis, Current and Prevailing Practices, Software Configuration Management, Project Monitoring and
Control, Project Quality Management, Software release Management, Process improvement frameworks.
Prerequisites
Software Engineering
Text Book
Kathy Schwable, IT Project Management, Course Technology; 3rd Bk & Cdr edition, July 2003, ISBN-10:
0619159847
Reference Material
Robert K. Wysoki, Effective Project Management, Wiley; 2nd Bk&Cdr edition, March 2000,
ISBN-10: 0471360287
Punkaj Jalote, Software Project Management, Addison-Wesley Professional; 1st edition, January
2002, ISBN-10: 0201737213
Roger S. Pressman, Software Engineering- A practitioner’s approach, 5th Edition, ISBN
9780073019338
• Robert Futrell, Quality Software Project Management Prentice Hall PTR; 1st edition, 2002, ISBN-
10: 0130912972
Course Description
The objective of this course is to study in detail the issues involved in software quality engineering. The
course focuses on current practice, research and trends in Quality. The following topics will be covered in
the course: Introduction to Software Quality Assurance, Software Quality in Business Context, Quality
Assurance in Software Support Projects, Product Quality and Process Quality, Models for Software Product
Quality, Hierarchal Quality Model, Factor Criteria Metrics model (FCM), McCall’s Model, Boehm’s
Model , FURP Model, ISO 9126 Model, Dromey’s Quality Model, QMOOD, SATC’s Quality Model , Non
Hierarchal Models, Bayesian Belief Model, Star Model, CMM, Software Metrics, Defect Metrics,
Reliability Metrics, GQM, Introduction to Testing, Software Testing Principles, Test Planning,
Measurement, Execution, and Reporting, Software Testing Techniques, White Box Testing, Black Box
Testing, Software Testing Strategies, Regression Testing, Alpha Testing, Beta Testing, Integration Testing,
26
BS(SE) Curriculum
Bottom-Up Integration Testing, Verification and Validation, Unit Testing, Integration Testing, Validation
Testing, System Testing, Recovery Testing, Security Testing, Performance Testing, Stress Testing, Review
Techniques.
Prerequisites
None
Text Book
Nina S Godbole, Software Quality Assurance, Alpha Science International, Ltd, 2004, ISBN-10:
1842651765
Reference Material
• R A Khan, K Mustafa, SI Ahson, Software Quality: Concepts and Practices, Naroosa
Publications, 2006, ISBN: 8173197229
• Srinivasan Desikan, Gopalaswamy Ramesh, Software Testing Principals and Practices, Pearson
Education India, 1st Ed, 2005, ISBN: 817758121X
• Stephen H. Kan, Metrics and Models in Software Quality Engineering, 2003, 2nd Ed, ISBN:
8129701758
Course Description
The primary objective of the course is to comprehend the current techniques, notations, methods, process,
and tools used in Requirement Engineering. Gain practical experience in selected RE techniques. Develop
an essential understand of the RE in software life cycle, gain knowledge of contextual factors and
practicalities that effects different approaches to RE. Review different models for formal recording of RE,
related process tailoring methodologies and case based experience implementation on a project. The
following topics will be covered in the course: Introduction to Software Requirement, Definitions, types,
placement within the software lifecycle, Properties Requirement Process: Models, comparative analysis of
models on the basis of project, planning and alignment methodologies, Support and Management, Quality
and Improvement; integration techniques Requirement Elicitation: Sources and Techniques, Requirement
Analysis, Requirement Classification, distributive requirement management, requirement negotiation
techniques and models, pitfalls of RE; Requirement Specifications: Scripting, System Definition
Documents, Software and System Requirement Specifications, conventional analysis and design
methodologies, comparison and tade off; Requirement Validation: Validations Models, Reviews, testing;
Software Requirement Metrics and Measures: requirement specification languages, formal requirement
modeling, Z - language basics; Change Management: requirement scope management, requirement conflict
resolution techniques, case base examples, change measurement and tracking, models and practices;
Tracing Requirements: planning, scheduling, RTM management, requirement prioritizing matrix
Prerequisites
None
Text Book
R.H. Thayer and M. Dorfman, eds., Software Requirements Engineering, IEEE Computer Society Press,
2nd Ed, ISBN: 978-0-8186-7738-0
Reference Material
• A.M. Davis, Software Requirements: Objects, Functions and States, Prentice Hall, 2nd Ed., ISBN-
10: 013805763X
• Stephen R Schach Object-Oriented and Classical Software Engineering, Prentice Hall, 5th Ed.,
ISBN-10: 0072554509
27
BS(SE) Curriculum
• IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications,
IEEE,1998, ISBN 0-7381-0332-2
Course Description
An in-depth look at software design and architecture. Continuation of the study of design patterns,
frameworks, and architectures. Survey of current middleware architectures. Design of distributed systems
using middleware. Measurement theory and appropriate use of metrics in design. Designing for qualities
such as performance, safety, security, reusability, reliability, scalability. Measuring internal qualities and
complexity of software. Learn evaluation and evolution of designs. The following topics will be covered in
the course: Software Design: Concepts, Context, Principals, Process, Models, Enabling Techniques;
Software Design Quality Concerns: Concurrency, Control and Handling, Distribution, Fault Tolerance,
Interactive Systems, Persistence; Software Structure and Architecture: Structures and View Points;
Architectural Styles (Macro-Architectural patterns): General structures, Distributed Systems, Interactive
Systems, Adaptable Systems; Design Patterns (Micro-Architectural patterns): Creational, Structural,
Behavioral; Families of Programs and Frameworks; Software Design Quality Analysis and Evaluation:
Software Design Quality Attributes; Quality Analysis and Evaluation Techniques: Reviews, Simulations,
Prototyping ; Software Quality Design Measures: Structured and Object oriented
Prerequisites
None
Text Book
L. Bass, P. Clements, and R. Kazman, Software Architecture in practice, Addison-Wesley, 2nd Ed, 2003,
ISBN-10: 0321154959
Reference Material
• D. Budgen, Software Design, Addison-Wesley, 2nd Ed, 2003, ISBN-10: 0201722194
F. Buschmann, R. Meunier, H. Rohnert, and M. Stal , Patterns Oriented Software Architecture –
Asystems of Patterns, Wiley and Sons, Vol-1, 2007, ISBN: 978-0-471-95869-7
Course Description
This course intends to teach the technologies underpinning modern enterprise wide applications including
client-server, distributed and object-based systems. The purpose of the course is to explain the role of
enterprise java beans in enterprise application development and its relationship to other J2EE technologies
such as JSP, Servlets , JMS, CORBA and XML .This course includes explanation of EJB architecture: role
of EJB container ,transaction control, authorization control and object pooling and EJB development
lifecycle: Java source code compilation ,XML deployment descriptors , EJB compilation and deployment
and use by an application server. It will provide a sound foundation for distributed application
development. Emphasis of the course is on enterprise level development of applications. The following
topics will be covered in this course: Overview of enterprise Java beans: Component architecture and
service oriented architecture, Enterprise application design issues , Distributed computing model applying
RMI, Naming and directory service(JNDI, LDAP) overview, Enterprise Fundamentals: Enterprise beans
overview ,types of beans ,Entity beans: CMP,BMP and session beans: Stateless session beans and stateful
session beans , Development of an EJB component: Remote interface ,Home interface, local interface, local
home interface, bean class ,deployment descriptor and bean deployment Introduction to JMS and MDBs ,
Introduction to JINI ,Introduction to Java namespaces, Introduction to Java Mail API, Introduction to Java
cryptography, Model view controller. This course also covers different frameworks and technologies used
in enterprise applications development: AJAX, Hibernate, Struts, and Java Server Faces.
28
BS(SE) Curriculum
Prerequisites
Object Oriented Programming
Text Book
Ed Roman and Gerald Brose, Mastering Enterprise Java beans, 3rd Edition, WILEY, 2005,
ISBN: 9780764576829.
Marty Hall and Larry Brown, Core Servlets and JavaServer Pages, 2nd Edition, Pearson, Sun
Microsystems, 2004, ISBN: 81-297-0300-9
Reference Books
Ed Roman and Floyd Marinescu, EJB Design Patterns Advanced Patterns,
Processes, and Idioms, John Wiley & Sons, 2002, ISBN: 978-0471208310.
http://www.coreservlets.com/
http://courses.coreservlets.com/Course-Materials/csajsp2.html
http://courses.coreservlets.com/Course-Materials/scwcd.html
http://courses.coreservlets.com/Course-Materials/msajsp.html
http://www.coreservlets.com/JSF-Tutorial/
http://courses.coreservlets.com/Course-Materials/ajax.html
http://courses.coreservlets.com/Course-Materials/struts.html
http://courses.coreservlets.com/Course-Materials/java5.html
http://java.sun.com/
http://www.theserverside.com/
http://java.sun.com/docs/books/tutorial
29