Computer Science and Engineering (CSE)
Computer Science and Engineering (CSE)
Computer Science and Engineering (CSE)
Undergraduate Curriculum
BACHELOR OF SCIENCE
IN
COMPUTER SCIENCE AND ENGINEERING (CSE)
1
The curricula are designed to provide a challenging assortment of courses that will command the
attention of the students, and yet be delivered in a method and at a pace that will permit the student to
achieve success. In addition to preparing the students to apply their knowledge and skills, these
curricula develop the right attitude to attain a specific ability for the profession to deliver. Delivery of
the curriculum will engage the students in an active learning process, in which their critical thinking
and problem-solving skills will continue to be refined. The curricula are designed to equip the 21st
century students with the skills that is required to become accomplished in their respected fields. This
will transform the students into highly competent professionals having the potential of becoming
future leader in their fields. In this era of Information and Communication Technology (ICT), the
university emphasizes on the integration of information and technology-based education. In addition
to coursework specific to ethics and regulatory laws, these topics will be woven into other courses
where appropriate.
The Computer Science and Engineering (CSE) program gives students the opportunities to the key
emerging technologies of the ever-changing ICT era. As the world is going towards technology,
peoples’ lives are changing. Technology is entering in every domain of human life. So to keep pace
with these ongoing changes, our education system should also be changed and updated with the
emerging scopes and facilities and changes in industries. The scope of this program is not only
limited to designing computer systems or developing software but also has the access for finding
solutions to multidisciplinary problems with a focus on a total engineering and managerial solutions.
Students will learn the computer science principles that are critical to development of software,
hardware and worldwide networking. From that background, engineering concepts and methods are
to be added to give students’ exposure from designing of Information Technology systems to
development of Internet of Things (IoT) devices, circuits and networks. Elements of engineering
practices include the systems view, manufacturing and economic issues, and multi-disciplinary
engineering applications.
World is moving very fast with the challenges of meeting the ever-increasing needs of using ICT.
CSE is the base facilitators for introducing such a technology in the world. The world demand of
CSE graduates is increasing tremendously. All countries of the world including Bangladesh, USA,
Japan, Australia and Canada are facing extreme challenges for getting and producing qualified CSE
graduates to meet its current technological needs. Many multi-national companies, like Intel,
Microsoft, Google and Facebook are searching qualified CSE graduates worldwide.
Considering these needs, benefits and advantages, we have started CSE department at the university.
The program is designed to provide students with the fundamentals of computer science, both
hardware and software, and the application of engineering concepts, techniques and methods to many
folds including computer systems engineering, software development and Information Technology
for embracing the upcoming changes of the world.
Program Visions
1. Providing excellent education in an interactive environment which prepares students well for
their careers in industry, academia and government;
2. Strengthening the core competence in CSE through tutorial-based education;
3. Enhancing Industrial Training program to get acquainted with corporate culture as well as to
gather practical skills before graduating;
4. Arranging regular workshops, seminars, contests etc. to create successful, competent and
skillful graduates;
5. Grooming the students to be able to solve complex problems, gain leadership and other
interpersonal skills that will help them apply their knowledge in multidisciplinary areas.
Program Objective
The primary goal of the degree program on CSE is to make the students technically qualified to
practice in the related professional area. The curriculum emphasizes the development of analytical
skills, acquisition of knowledge and a good understanding of the languages, tools and emerging
computer systems. The students will not only be able to possess theoretical knowledge but also
real-life practical skills on CSE that will help them establish good careers in the industry. It will help
them to design, implement and evaluate computer-based systems. Also, this curriculum will prepare
them for not only professional employment but also for advanced education and research to find out
the innovations for the future including entrepreneurships.
Program Outcome
At the time of graduation, the students of the CSE program studying under this curriculum are
expected to possess the following abilities:
2. Modeling, designing and developing computing systems: An ability to model, design and
develop computer-based system, process, component, or program with varying complexity in a
way that demonstrates comprehension of the tradeoffs involved in design choices;
3. Analyzing problems and finding solutions: An ability to analyze real world problems,
determine the computing requirements and develop appropriate technical solutions;
4. Using advanced tools: An ability to use current techniques, skills, and tools necessary for
computing practices;
6. Professionalism: An understanding of professional, ethical, legal, security and social issues and
3
responsibilities;
8. Evaluating the impacts: An ability to evaluate the local and global impact of computing on
individuals, organizations, and society;
9. Professional development: Recognition of the need for and an ability to engage in continuing
professional development;
11. Innovation: An ability to innovate new ideas to facilitate advancement in the global technology;
12. Presentation: An ability to present something in an impressive way without losing the clarity of
the subject matter; and
4
ADMISSION CRITERIA AND OTHER POLICIES
Every applicant, without any exception, must fulfill the admission requirements as laid down in this
document.
Admission Requirements
For admission into undergraduate programs in the Department of Computer Science and Engineering
(CSE), the students must meet all of the following conditions (Compliance with UGC)-
1. Must have science background with PCM (Physics, Chemistry, Math) and minimum GPA
2.50 in both S.S.C and H.S.C level; or must have minimum 5 subjects including PCM in
O-level and 2 subjects in A-level among them minimum grade of B in at least 4 subjects and
minimum grade of C in at least other 3 subjects from science group.
2. Must appear in admission test and become qualified for admission.
3. Must have a minimum score in English in the admission test;
Admission Process
The university operates round the year admission system divided into semesters i.e. January and July.
Each semester runs for a period of six months each. Students who plan to seek admission in the
university are required to fulfill university admission requirement. The admission forms and relevant
information can be collected from admission office. Completed applications along with the required
documents should then be submitted to the admission office as per deadline. The duration of the
semesters and tentative admission schedule are as follows-
● January Semester (January- June): The tentative admission period is to be from January to end
of June.
● July Semester (July – December): The tentative admission period is to be from July to end of
December.
To obtain the degree in Bachelor of Science in Computer Science and Engineering (abbreviated as B.
Sc. Eng. in CSE) a student will have to complete at least 150.00 Credit Hours including assigned
projects and training and must pass all the required courses, have a minimum cumulative GPA of
2.20. Student must also meet all the financial obligations to the university to become qualified for the
degree. If any student fails in any course, he/she will get the opportunity to improve the grade by
retaking the same in the subsequent semesters like other regular students.
The requirement for obtaining 150.00 credit hours in the university is sufficient enough compared
with the minimum requirement of international standard and UGC guidelines. According to the
international standard and UGC guidelines, for a 3 CH course with 15 weeks of classes each having
duration of 60 minutes, the contact hours required is, 60 ×15 ×3 = 2, 700 minutes. In the
university, a 3 CH course is being taken for 13 weeks with 2 classes each week having duration of 1
5
hour 45 minutes or 105 minutes per class. This gives total contact hours of 105 ×13 ×2 = 2, 730
minutes. So,
2700
𝑀𝑢𝑙𝑡𝑖𝑝𝑙𝑦𝑖𝑛𝑔 𝐹𝑎𝑐𝑡𝑜𝑟, 𝑀 = 2730
Under the international standard and UGC guidelines, for obtaining a bachelor degree, a candidate
must complete a minimum of 120 credit hours. Therefore, minimum credit hour required for a student
to be graduated from the university is,
2700
120 ×𝑀 = 120 × 2730
= 118 𝐶𝐻
The university’s requirement for graduation for department of CSE is 150 CH, which is much higher
than the minimum requirement, complying with the international standard and UGC guidelines.
Grading Policy
The letter grade system for assessing the performance of the students shall be as follows:
A letter grade of I (incomplete) shall be awarded for courses that could not be completed
satisfactorily in one semester, which will continue through to the next semester. A letter grade of X
shall be awarded for only CSE 4000: Project and Thesis course when the student’s progress is
satisfactory but yet to complete the course and provide the final grade.
Grading in any course will be based on academic performance as reflected in student’s class
participation, tutorial performances, tests, assignments, mid-term and final exams and results (most
of the courses will use this method of testing). Whenever appropriate, students may also be graded
on lab work, research or other special projects. Attendance and participation in the class may also
constitute a serious component of the grading. However, passing in all the courses is mandatory to
obtain a degree from the university.
6
Calculation of CGPA
Grade Point Average (GPA) is the weighted average of the grade points obtained in all the courses
passed/completed by a student in a semester. For example, if a student passes/completes n courses in a
semester having credits of Cl, C2, ..., Cn and his grade points in the courses are Gl, G2, … Gn respectively,
then
∑𝐶𝑖*𝐺𝑖
𝐺𝑃𝐴 =
∑𝐶𝑖
The Cumulative Grade Point Average (CGPA) is the weighted average of the GPA obtained in all the
Semester passed/completed by a student. For example, if a student passes/completes n Semester having total
credits of TC1, TC2, ..., TCn and his GPA in these semesters are GPA1, GPA2, ..., GPAn, respectively, then
∑𝑇𝐶𝑖*𝐺𝑃𝐴𝑖
𝐶𝐺𝑃𝐴 =
∑𝑇𝐶𝑖
Numerical Example
Suppose a student has completed 6 (six) courses in a Semester and obtained the following grades:
49.75
𝐺𝑃𝐴 = 14.00
= 3. 55
Suppose a student has completed four Semester and obtained the following GPAs-
172.77
𝐶𝐺𝑃𝐴 = 51.00
= 3. 39
Course Designation System
7
Each course has two parts- course code and course title. The course code contains Department
Identification, level, term (i.e., Semester) and its local ID within that semester. The local ID of a
theory course will be an odd number and the sessional course will be an even number, which is one
higher than its related theory course’s local number. The course Designation System is explained
below with an example-
The courses to be offered in a particular term are announced and published in the course Catalog with
the tentative term schedule in the middle of the previous term. A course teacher is to conduct a course
and is responsible for maintaining the expected standard for the course. In case, a course is conducted
by more than one teacher, then one of them will act as the course adviser and shall be responsible for
maintaining expected standard.
The university introduces tutorial based education system for the first time in the country. The system
accumulates all the good features extracted from both the traditional education system and the latest
problem based learning (PBL) to ensure outcome based education (OBE). In this system for a 3.00
CH course there are two hours lecture and two hours tutorial class per week (actual class duration will
be within a period ranges from 105 minutes to 110 minutes depending on a furnished ending of the
class by the teacher). Researchers have found that a student cannot keep continuous attention in a
class for more than 40 minutes. So to sustain the attention for a two hour long class, the teachers
apply various teaching strategies in the class under the methodology switching policy. These
strategies include problem based learning, interacting with the students directly, fostering the
participation of the students, using multimedia based collaboration, playing video and other available
online contents, experimental learning etc. These methodologies not only make the class interesting
but also help to obtain internationalism and applied skills at the stage of academic growth for an
individual student.
In a tutorial class, there are two parts for interactive learning - review and application. Review part is
an interactive session between the teacher and students where they engage in deep discussion
regarding the previous lecture class topics. Then in application part, the teacher gives some real life
problems based on the previous topics to the students for solving them. By following this strategy, the
8
students acquire skills, not only knowledge that help them to solve real life challenges to obtain the
objective of OBE.
The university utilizes software-based recent online learning systems like Moodle to deliver all sorts
of courses allowing students to access class materials via the Internet in additional to providing the
modern class rooms equipped with computerized audio-visual systems with multimedia projectors.
The new learning techniques raise better engagement, interaction and quality learning through the
delivery of leading-edge technology, service and data capability. The university facilitates and
encourages the development of course materials and interactions for all of the courses using the
web-based learning system. The university also encourages the use of various learning tools and
software like Google, YouTube, SPSS etc. The course materials include but not limited to tutorial
problem sets, class notes, power-point presentations, animations, interactive quizzes, discussion
groups and video and audio files of the lectures in the form of podcasts or
.mp3/.mp4/.wav/.mpeg/.avi/.flv files. As with curriculum design, the decision as to which teaching
methods to be utilized will reside with the faculty to achieve the openness for innovating new ideas.
Experience has demonstrated that students learn best when actively engaged in the process. It is
anticipated that this active learning model will be utilized in all courses to effectively establish a
knowledge base in the subject area. The curriculum emphasizes on both the academy and industry
sector. In addition to establishing competence in the subject area, the delivery method should also
provide for further developing and refining the students' critical thinking and problem solving skills
while, at the same time, building the self-confidence they will need in the practice settings.
Curricular Effectiveness
In carrying out its mission to produce competent professionals, the university develops an on-going
assessment of the academic program, which is integrated into the academic infrastructure that plans
and delivers its curriculum. This regularly measures the effectiveness of the program and also fosters
a spirit of experimentation and innovation within the faculty. We employ both formative and
summative assessment methods to evaluate individual student progression and the effectiveness of
the courses in the curriculum.
The university’s University Management System (UMS) is a large system that is used to manage,
maintain and secure the university’s day to day business. In this modern world UMS plays a big role
to provide the users the appropriate academic information within a short period of time with a
user-friendly interface. UMS provides all the features to execute a wide range of academic,
administrative and security services and maintain all from a single database. The features include but
not limited to, taking class attendance, giving and viewing student results, auto calculation of grades,
9
sharing course materials, setting class routines, giving feedbacks, sending tickets, sending automated
SMS/email to the parents or any other staffs etc.
Student Representation
Students are selected to participate in the deliberative processes of the various committees and clubs
where appropriate. In that capacity, they have the opportunity to represent not only their personal
views, but also represent the views of their constituent student body. They arrange interactive and
productive events from their individual student club. They also go on academic tours, participate in
and arrange various inter-university programs that help the overall development of the university.
Students’ feedbacks are also taken to enhance the contents of the curriculum. This is a very essential
part of effective learning. This is why we incorporate our young brains in the feedback system and
value their opinions. This helps the teachers understand their concerns, what is helping them learn in
a course and what is not. This improves the quality of teaching and enhance the overall learning of
the students.
Teachers, Students, Staffs, Alumni, Parents and Employers – these are the six stakeholders who are
favorably affected in any kind of changes in the university’s quality of education. An awareness to the
perception of these stakeholders as well as the feedback that they may give, are very important for
maintaining and improving the quality of services rendered by the university.
Standardized course and instructor evaluations are completed at the end of each semester for each
course under the framework of institutional quality assurance cell (IQAC). The online evaluation
software having the capacity for evaluating multiple instructors in the same course is used for
students’ feedback. Students are authenticated and then restricted for submitting multiple feedbacks
for the same course or instructor but the software is able to make the feedback anonymously. The
individual faculty member and the university Authority, i.e., the members of IQAC, are able to login
to see the aggregated feedbacks on the individual course or individual instructor. Students are asked
to complete these online surveys during a class period near the end of the course. The assessment and
evaluation committee designs the survey under the guidance of IQAC. The data is analyzed and a
report is generated and delivered to the course instructor and the instructor's department chair
automatically. The report highlights both positive and negative findings and may contain
recommendations for improvement from the committee. This report is also a part of the faculty
member's annual performance evaluation.
Final year students will also be surveyed to seek their opinion on all aspects of the university
including the adequacy of the curriculum in preparing them for practice, their experience with student
services and, overall, their satisfaction with the program. Consideration will also be given to conduct
personal interviews between individual faculty members and graduating students, either individually
or in a focus group.
10
Teacher Student Interaction
For promotion of high level of teacher student interaction, each student is to be assigned an advisor
and the student is free to discuss with his advisor all academic matters. One adviser is to be normally
appointed for a batch of students. The adviser advises each student about the courses to be taken in
each term by discussing the academic program of that particular term with the student. However, it is
also the student’s responsibility to keep regular contact with his/her adviser who will review and
eventually approve the student’s specific plan of study and monitor subsequent progress of the
student.
Course Registration
Within the due date and before the commencement of each term, a student has to fill up a course
registration form in consultation with and under the guidance of his/her advisor. The date, time and
venue of registration are announced in advance by the Registrar's Office. Much counseling and
advising are accomplished at this time. It is absolutely essential that all the students be present for
registration at the specified time. Late registration is, however, permitted during the first week on
payment of a late registration fee.
A student must be enrolled for at least a minimum of 9 credit hours and the allocated credit hours
offered for that term and a maximum of 18 credit hours. A student must enroll for the sessional
courses prescribed in a particular term within the allowable credit hour limits. In special cases where
it is not possible to allot the minimum required 9 credit hours to a student, he/she may be approved a
lesser number of credit hours to suit individual requirements. Under no circumstances a student will
be allowed to take more than the maximum limits as a regular course load.
Course Add/Drop
A student has some limited options to add or delete courses from the registration list. Addition of
courses is allowed only within the first week of a term. Dropping a course is permitted within the first
two weeks of a term.
If a student is unable to complete the mid-term or final examination due to serious illness or serious
accident, he/she may apply to the chairman of the department for total withdrawal from the term
within a week after the end of the respective examination. However, he/she may choose not to
withdraw any laboratory/ sessional/ design course if the grade obtained in such a course is `D' or
better. The application must be supported by a medical certificate from the chief or authorized
medical officer of the university. The Academic Council will take the final decision about such
applications.
11
Assessment Methodologies
The total performance of a student in a given course is based on a scheme of continuous assessment.
For theory courses this continuous assessment is to be made through class tests, tutorial performance,
class evaluation, class participation, homework assignment, midterm and a term final examination.
The assessment in laboratory/sessional courses is made through observation of the student at work
during the class, viva-voce, laboratory hours and quizzes.
Marks Distribution
Theory Courses Sessional Courses
Assessment Criteria Grading Weight Assessment Criteria Grading Weight
Class Attendance and 10% Class Attendance and 10%
Performance Performance
Class Test/Tutorial 20% Continuous Evaluation 20%
Mid Term Exam 30% Mid Term Exam 30%
Final Exam 40% Final Exam 40%
Total 100% Total 100%
The courses in which a student has earned a 'D' or a higher grade will be counted as credits earned by
him/her. Any course in which a student has obtained an ‘F’ grade will not be counted towards his/her
earned credits or GPA calculation. A student who obtains an ‘F’ grade in a core course will have to
repeat that particular course. If a student gets an ‘F’ in an optional course, he/she may choose to
repeat that course or take a substitute course if available. A Student may be allowed to repeat the
course only once for the purpose of grade improvement by forgoing his/her earlier grade.
The university has strict rules regarding the issues of attendance in class. All students are expected to
attend classes regularly. The university believes that attendance is necessary for effective learning.
The first responsibility of a Student is to attend classes regularly, and one is required to attend at least
60% of all classes to be held in any course otherwise the attendance marks will be zero. For becoming
suitable for a scholarship, a student must ensure at least 80% of class attendance in the previous
semester.
12
< 70% and ≥ 65% 5
< 65% and ≥ 60% 4
<60% 0
Duration of Terms
A student must complete his studies within a maximum period of six years for engineering degree in
CSE.
A student should not be absent from quizzes, tests, etc. during the term. Such absence will naturally
lead to reduction in points/marks, which count towards the final grade. Absence in both mid-term
and term final examinations will result in an “F” grade in the corresponding course. However,
absence in either mid-term or final examination eventually gives the student an “I” grade and the
student must registrar the course (named incomplete registration) in the next or following term
paying predefined fees to sit for that examination with other students.
A student who has been absent for short periods, up to a maximum of three weeks due to illness,
should approach the course teacher(s) or the course coordinator(s) with appropriate reasons for
makeup class tests. Such request has to be supported by medical certificate. Under no circumstances,
a student will get any marks for his/her attendance in case of being absence from the classes,
whatever the period or reason is.
If a student is absent for two consecutive terms without any permission, then his admission will be
cancelled automatically. Later on if he/she wants to continue, he/she must apply to the academic
council and if academic council permits, he/she has to take re-admission into the program paying full
admission fees.
Honors
Candidates for B. Sc. in CSE will be awarded the degree with honors if their Cumulative Grade
Point Average (CGPA) is 3.75 or higher.
13
A student who completed 3 or 4 years Diploma Engineering may be exempted courses aggregated up
to 12 credit hours if he/she meets all of the following conditions: (1) CGPA 3.00 or above in the
Diploma Engineering; (2) exemption in any course requires that the student scored GPA 3.00 or
above in that course; and (3) The course he/she studied had 80% similarity in course detail with
respect to the syllabus of CSE Department of the university.
Credit transfer shall be allowed only from the approved universities. A student transferring credit
from another approved university or based on equivalence given by UGC to the university may be
exempted or waived maximum 50% credit hours if he/she meets all of the following conditions: (1)
CGPA 3.00 or above in the completed courses; (2) exemption in any course requires that the student
scored GPA 3.00 or above in that course; (3) The course he/she studied had 80% similarity in course
detail with respect to the syllabus of CSE Department of the university; and (4) the evidences must be
supported by the official documents from the previous university.
Upon completion of the required courses by the transferee student for the degree, GPA shall be
computed only from the courses completed at the university. The transcript shall also include only the
courses that the student completed at the university. It is student’s responsibility to bring the
documents regarding his completed courses from the previous university for his/her safeguard and
shall be submitted separately when needed.
14
THE CURRICULUM
The details of course codes and titles organized in different levels and terms are
as follows:
15
Level 2 (Sophomore Year), Semester 1
Course Course Title Credit Contact Hour Pre-requisit
Code Hour e
CSE 2101 Digital Logic Design 3.00 4.00 – 0.00
CSE 2102 Digital Logic Design Sessional 1.00 0.00 – 2.00
CSE 2103 Java and Socket Programming 3.00 4.00 – 0.00 CSE 1201
CSE 2104 Java and Socket Programming Sessional 1.00 0.00 – 2.00
MAT 2161 Matrices and Vector Analysis 3.00 4.00 – 0.00
HUM 2163* Bangla Language and Literature 3.00 4.00 – 0.00
CSE 2201 Numerical Analysis 3.00 4.00 – 0.00
HUM 2261 Principles of Accounting 3.00 4.00 – 0.00
Total Credit Hour 20.00 24.00 – 4.00
* For foreign students, this course will be titled “Elementary Bangla Language”.
16
CSE 3107 Information System Management 3.00 4.00 – 0.00
CSE 3205 Applied Statistics and Queuing Theory 3.00 4.00 – 0.00
CSE 3207 Cyber Crime and Security 3.00 4.00 – 0.00
Total Credit Hour 20.00 24.00 – 4.00
17
*The student has to complete the course CSE 4000: Project and Thesis taking over the two semesters in level 4
(Senior Year). The course shall be evaluated in each semester but the grade “X”, i.e., continuation grade shall be
awarded in Term 1 and Term 2 if the progress is satisfactory. Grade “I” shall be provided if the progress is not
satisfactory. The final grade shall be awarded at the end of the Term 3 of level 4.
CSE 44XY: The values of digits “XY” shall depend on the theory courses to be offered. “X” and “Y” may be any digit.
CSE 45XO/45XE: The values of digits “XO” or “XE” shall depend on the theory or sessional courses to be offered. “X”
may be any digit, “O” stands for an odd digit and “E” stands for an even digit.
** Each student has to submit an evaluation report at the end of the training. This report shall be endorsed by the
respective industry and shall be evaluated by the supervisor to be incorporated in the tabulation sheet.
Optional/Elective Courses
A. Option -I
18
B. Option -II
19
Summary of Courses for B. Sc. in Computer Science and Engineering (CSE) Program:
Theory Contact Hour: 2028; Sessional Contact Hour: 598; Individual Contact Hour: 260
Total Contact Hour: 2886
20
THE COURSE DETAILS
ENG 1161 English 3.00
Objective:
To illustrate the basics English writing principle along with correct English grammar with different ways of
sentence construction and general essay and short story writing.
Outcome:
1. Displaying control of appropriate spelling, grammar, vocabulary, punctuation and capitalization;
2. Understanding the different ways in which grammar has been described;
3. Giving oral presentation using effective delivery strategies.
Contents:
English Phonetics: the places and manners of articulation of English sounds; Vocabulary: techniques of
enriching stock of words; English Grammar: construction of sentences; common grammatical problems;
Reading: techniques and strategies for improving comprehension skills; prose pieces by renowned authors;
Writing: developing paragraphs as the building blocks of larger discourses; Business Correspondence:
importance, classifications and structures; Report: types and layout of reports; Technical Writing: research
paper; dissertation and thesis; technical proposals; instruction manual.
Reference Books:
1. P. C. Wren and H. Martin, High School English Grammar and Composition, published by S. Chand
Publishing.
2. Leslie Cope Cromford, English Composition: A Manual of Theory and Practice, published by
Bastian Books.
Objective:
The objective of the course is to provide insight into differential calculus and applications. This course will
cover differentiation and integration of the elementary functions, with applications to physical and social
sciences.
21
Outcome:
1. Understanding the meaning of differentiation and integration;
2. Applying various methods of calculating derivative of a function;
3. Applying techniques of definite and indefinite integration.
Contents:
Number system, sets and their applications, functions and their domain and range, sketch simple function,
logarithmic and exponential functions; limits of functions, continuity and differentiability of functions;
differentiation of varies types of functions and their applications; successive differentiation of functions,
Leibnitz’s theorem; Roll’s theorem, mean value theorem; Taylor’s theorem in finite and infinite form;
Lagrange’s and other form of reminder, expansion of function; evaluation of indeterminate forms by
L’hospital’s rule; partial differentiation and Euler’s theorem for homogenous function; determination of
maximum and minimum values of functions and point of inflexion of functions; tangent, normal, sub tangent
and subnormal in Cartesian and polar co-ordinates; basic concept of integration, integration by method of
substitution, integration by parts, standard integral; integration of rational fraction, integration of some special
trigonometric function; definite integral, general properties of definite Integral, Walli’s formula, beta function
and gamma function; integration by method of successive reduction, finding values of definite integral by
using reduction formula; improper integral; multiple integrals; area under plane curve in Cartesian and polar
co-ordinate, area of the region enclosed by two curves in Cartesian and polar co-ordinate; rectification:
finding arc length of curves in Cartesian and polar co-ordinate; volume of solids of revolutions, area of
surfaces of revolutions.
Reference Books:
1) B. C. Das and B. N. Mukherjee, Differential Calculus, published by U. N. Dhur, 19th Edition,
2) A. K. Sharma, Text Book of Differential Calculus, published by Discovery Publishing House,.
3) B. C. Das and B. N. Mukherjee, Integral Calculus: Including Differential Equations, published
by U. N. Dhur, 23rd Edition.
4) A. M. Agarwal, Integral Calculus, published by Arihant Publications, 1st Edition.
Objective:
The objective of the course is give students basic exposure to Physics that will better prepare them for more
rigorous courses that will be taken later on. The basics of thermodynamics, light, harmonic oscillation,
polarization and introduction to fluid mechanics will be covered throughout the course.
Outcome:
1. Demonstrate a rigorous understanding of the core theories and principles of physics, which
include mechanics, electromagnetism, thermodynamics, and quantum mechanics;
2. Apply critical reasoning skills to model and solve physics related problems;
3. Demonstrate proficiency in the collection, analysis and interpretation of data.
Contents:
22
Heat & thermodynamics; kinetic theory of gases; laws of thermodynamics; waves and oscillations: simple
harmonic oscillator, total energy and average energy, combination of simple harmonic oscillations, damped
oscillation, forced oscillation, resonance, reduced mass, progressive wave, power and intensity of wave
motion, stationary wave, group velocity and phase velocity, architectural acoustics, reverberation and Sabine's
formula; physical optics: theories of light; interference of light; Young's double slit experiment;
displacements of fringes and its uses; Fresnel’s Bi-prism, interference at wedge shaped films, Newton's rings
and interferometers; diffraction of light; Fresnel and Fraunhoffer diffraction, single slit and N-slits grating;
polarization: polarized light, Brewster's law, malus law, polarization by double refraction, retardation plates,
Nicol prism, optical activity, polarimeters and polaroid; modern physics: theory of relativity, length
contraction, time dilation, relativity of mass, mass and energy relation, velocity addition theorem, twin
paradox, massless particles. atomic structure and nuclear physics- electron orbits, atomic spectra, the Bohr
atom, energy level and spectra, corresponding principle, atomic excitation, the laser, basic properties of
nuclei, radioactivity, binding energy, meson, emergency particles; the solid state physics and statistical
mechanics- crystalling and amorphous solids, ionic crystal, covalent crystal, van der walls bond, metallic
bond, band theory of solids, semiconductor, superconductor.
Reference Books:
1. Resnick, Halliday and Krane, Physics (Vol. 1 & 2), published by Wiley Pvt Ltd, 5th Edition.
2. H. C. Verma, Concepts of Physics (Vol. 1 & 2), published by Bharati Bhavan.
Objective:
The main objective of this course is to introduce programming using C programming language. Its primary
intention is to develop basic programming knowledge and be able to solve problems.
Outcome:
1. Apply fundamental programming concepts, using a structured language, to solve substantial
problems;
2. Generate an innovative design to solve a problem containing a range of constraints;
3. Interpret verbal problem specifications into program code;
4. Enhance ability to approach problems systematically.
Contents:
Structured programming language: data types, operators, expressions, control structures; Functions and
program structure: parameter passing conventions, recursion; Header files; Preprocessor; Pointers and arrays;
Strings; Multidimensional array; User defined data types: structures, unions, enumerations; Input and Output:
standard input and output, formatted input and output, file access; Variable length argument list; Error
Handling; Linking; Library functions.
Reference Books:
1) B. S. Gottfried, Shaum’s Outline of Theory and Problems of Programming with C, McGraw Hill,
3rd edition.
2) Herbert Schildt, Teach Yourself C, Published by Osborne, 3rd Edition.
23
CSE 1102 Structured Programming Language Sessional 1.00
Objective:
The students should understand what coordinate geometry and Equation are and how to apply them to real
life situations for IT professionals.
Outcome:
1. Solve differential equations using graphical, numerical, and analytical methods;
2. Develop the ability to apply differential equations to significant applied and/or theoretical problems;
3. Classify and identify different problem types in coordinate geometry and select suitable problem
solving techniques.
Contents:
Continuity and differentiability; Leibnitz’s forms; Lagrange’s form of remainders; Cauchy’s form of
remainder; Expansion of functions; Evaluation of indeterminate forms by L ’Hospitals rule; Partial
differentiation; Euler’s Theorem; Tangent and Normal; Sub-tangent and subnormal in Cartesian and polar
coordinates; Maximum and minimum values of functions of single variable.
Transformation of coordinates axes and its uses; General equations of second degree and their reduction to
standard forms; Pair of straight lines; System of circles; Coaxial circles and limiting points; Equations of
parabola, ellipse and hyperbola in Cartesian coordinates; Tangents and normal; Pair of tangents; Chord of
contact; Chord in terms of its middle point; Parametric coordinates; Conjugate diameters; Asymptotes.
Reference Books:
1. Sanay Mishra, Fundamental Mathmatics- Coordinate Geometry, published by Pearson Education, 1st
Edition.
2. Luther Pfahler Eisenhart, Coordinate Geometry, published by Dover Publications Inc.,
3. F. G. Tricomi, Differential Equations, published by Dover Publications Inc.
4. Mark Krusemever, Differential Equations, published by MacMillan.
24
Objective:
Economics is the study of how societies allocate scarce resources among competing uses. It is about the
choices made by people, individually and collectively, in the production, exchange, distribution and
consumption of goods and services. Central to economic analysis is the study of how people respond to
incentives in a market economy, how these incentives may be modified by government intervention, and
whether and how government intervention is warranted.
Outcome:
1. Explain the basic economic principles of wants, scarcity, choice, opportunity cost, etc. as applied to
business organizations and engineering firms;
2. Understand the time value of money, and how to sketch the cashflow diagram;
3. Identify areas of conflicts between engineers and accountants;
4. Evaluate the profit of a firm, carry out the break even analysis and employ this tool to make
production decision.
Contents:
Definition of economics; economics and engineering; principles of economics; micro-economics: the theory
of demand and supply and their elasticity’s; price determination; economic theory, economic theories for
developing countries; indifference curve technique; marginal analysis; production and production function;
types of productivity; rational region of production of an engineering firm; concept market and market
structure; cost analysis and cost function; small scale production and large scale production; optimization;
theory of distribution; macro-economics: savings, investment, and employment; national income analysis;
inflation; monetary policy, fiscal policy and trade policy with reference to Bangladesh; economics of
development and planning.
Reference Books:
1. Campbell McConnell, Stanley Brue and Sean Flynn, Economics, published by McGraw-Hill, 18th
Edition.
2. N. Gregory Mankiw, Principles of Economics, published by Cengage Learning, 6th Edition.
Objective:
Electrical and electronics engineers design, plan, research, evaluate and test electrical and electronic
equipment and systems. The basics of electrical circuits and designing along with different electrical devices
mechanism will be covered in this course.
Outcome:
1. Use basic electrical DC concepts and theorems to analyze circuits;
2. Build and simulate electrical DC circuits and perform measurements with electronic test equipment;
3. Explain concepts in the mathematical model used for description of the circuits
4. Write technical reports using collected experiment data.
Contents:
Direct current: voltage, current, resistance and power; Laws of electrical circuits and methods of network
analysis;
25
Introduction to filters: Passive and Active filters; Alternating current: Instantaneous and rms values of
current, voltage and power, average power for various combination of R, L and C circuits, phasor
representation of sinusoidal quantities; Balanced three phase circuit circuits; Ideal operational amplifier
circuits.
Reference Books:
1) B. L. Theraja and A. K. Theraja, A Textbook of Electrical Technology (Volume 1 – Basic
Electrical Engineering), Published by S. Chand and Company Ltd, 1st Edition.
2) Robert L. Boylestad, Introductory Circuit Analysis, Published by Pearson, 12th Edition.
Objective:
This course provides an introduction to object-oriented programming with C++ language, covering topics
such as class design, inheritance, dynamic binding and static binding. Participants will be able to recognize
features of object-oriented design such as encapsulation, polymorphism, inheritance and composition of
systems based on object identity. Sections are also included on the implementation of core data structures
such as lists, graphs, trees and hash tables.
Outcome:
1. Specify simple abstract data types and design implementations, using abstraction functions to
document them;
2. Recognize features of object-oriented design sich as encapsulation, polymorphism, inheritance,
and composition of systems based on object identity;
3. Name and apply some common object-oriented design patterns.
Contents:
Object Oriented Programming (OOP) principles; Techniques using C++; Encapsulation, classes and objects,
access specifiers, static and non-static members; Constructors, destructors and copy constructors; Array of
objects, object pointers, and object references; Inheritance: single and multiple inheritance; Polymorphism:
overloading, abstract classes, virtual functions and overriding; Exceptions; Template functions and classes.
Reference Books:
1) Robert Lafore, Object Oriented Programming, Published by MacMillan Computer Publishing, 3rd
Edition.
2) Herbert Schildt, Teach Yourself C++, Published by McGraw Hill, 3rd Edition.
Objective:
Simplify and evaluate basic logic statements. Use mathematically correct terminology and notation. Apply
logical reasoning to solve problems. Demonstrate an understanding of relations and functions. Demonstrate
different traversal methods for trees and graphs and model problems using graphs and trees.
Outcome:
1. Identify and apply basic concepts of set theory, arithmetic, logic, proof techniques, binary
relations, graphs and trees;
2. Produce convincing arguments, conceive and/or analyze basic mathematical proofs and
discriminate between valid and unreliable arguments;
3. Apply the knowledge and skills obtained to investigate and solve a variety of discrete
mathematical problems.
Contents:
Set theory: sets, relations, and partial ordered sets; functions; Mathematical Logic: propositional logic;
predicates and quantifiers. Mathematical reasoning and proof techniques; Counting: permutations,
combinations, principles of inclusion and exclusion; Discrete Probability; Recurrence relations and recursive
algorithms; Algorithms; Growth of functions; Graph Theory: graphs, paths, and trees.
Reference Books:
1) K. H. Rosen, Discrete Mathematics and its Applications, published by McGraw-Hill, 7th Edition.
2) R. Johnsonbaugh, Discrete Mathematics, published by Prentice Hall, 5th Edition.
3) Seymour Lipschutz and Marc Lipson, Schaum’s Outline of Discrete Mathematics, Published by
McGraw-Hill, 3rd Edition.
Objective:
Electronics engineers design, plan, research, evaluate and test electronic equipment and systems. The basics
of electrical circuits and designing along with different Electronics devices mechanism will be covered in this
course.
Outcome:
1. Develop the ability to analyze and design analog electronic circuits using discrete components;
2. Observe the amplitude and frequency responses of common amplification circuits;
3. Design, construct, and take measurement of various analog circuits to compare experimental
results in the laboratory with theoretical analysis.
Contents:
27
Semiconductor; junction diode characteristics; bipolar transistor: characteristics, small signal low frequency
h-parameter model and hybrid-pi model; amplifiers: voltage and current amplifiers; oscillators; differential
amplifiers, operational amplifiers (OPAMPs); linear applications of OPAMPs, input & output impedances,
off-set null adjustments, frequency response and noise; introduction to JFET, MOSFET, PMOS, NMOS and
CMOS: biasing and application in switching circuits; silicon controlled rectifier(SCR), TRIAC, DIAC, UJT:
characteristics and application; introduction to rectifiers, active filters, regulated power supply; introduction
to IC fabrication techniques.
Reference Books:
1) V. K. Mehta and Rohit Mehta, Principles of Electronics, Published by S. Chand and Company
Ltd, 9th Edition.
2) Allen Mottershead, Electronic Devices and Circuits: An Introduction, Published by Prentice Hall
of India Pvt Ltd, Illustrated Edition.
3) Ramakant A. Gayakward, Op-Amps and Linear Integrated Circuits, Published by Prentice Hall of
India Pvt Ltd, 4th Edition.
Objective:
The aims of this course includes to enable the students to learn sketching and taking field dimensions, to take
data and transform it into graphic drawings, to learn basic engineering drawing formats, to learn basic
AutoCad skills and to learn how to draw 2D drawings in AutoCad.
Outcome:
1. Describe various drawing instruments and conventions;
2. Use drawing instruments in making an engineering drawing;
3. Use AutoCAD to draw plane drawing;
4. Draw multiview projections, sectional views using AutoCAD;
5. Do dimensioning using AutoCAD.
Contents:
Introduction; Instruments and their uses; Third angle projection; Orthographic drawing; Isometric views;
Sectional views; Introduction to computer graphic software: Computer aided drawing (CAD).
Reference Books:
1) K. Venugopal, Engineering Drawing and Graphics + AutoCAD, Published by New Age
International Pvt Ltd, 2009.
28
CSE 1303 Data Structure and Algorithms I 3.00
Objective:
Impart the basic concepts of data structures and algorithms. Be familiar with the basic techniques of
algorithmic analysis. Understand concepts of searching and sorting techniques. Be able to solve problems in a
step by step process with the help of fundamental data structures.
Outcome:
1. Understand the major techniques for implementing the fundamental data types (linked lists, binary
search trees, stacks, hashing, heaps, etc.) and implement several of them;
2. Define basic static and dynamic data structures and relevant standard algorithms for them;
3. Select basic data structures and algorithms for autonomous realization of simple programs or program
parts.
Contents:
Internal data representation; Abstract data types; Elementary asymptotic analysis: growth of functions, O, Ω
and Θ notations; Elementary data structures: arrays, linked lists, stacks, queues, trees and tree traversals,
graphs and graph representations, heaps, binary search trees; Data structures for set operations; Advanced
data Structures: balanced binary search trees (AVL trees, red-black trees, splay trees, skip lists), advanced
heaps (Fibonacci heaps, binomial heaps); Hashing.
Reference Books:
1) Nell Dale, C++ Plus Data Structure, Published by Jones and Bartlett Publishers Inc, 5th Edition.
2) Seymour Lipschutz, Theory and Problems of Data Structure, Published by McGraw Hill Inc.
Objective:
Have fundamental concepts of combinatorial and sequential circuits. Build simple logic circuits using basic
gates and optimize those using Karnaugh Maps. Understand digital representation of information, digital
logic, Boolean algebra.
Outcome:
1. Identify and explain fundamental concepts of digital logic design including basic and universal gates,
number systems, binary coded systems, basic components of combinational and sequential circuits;
2. Demonstrate the acquired knowledge to apply techniques related to the design and analysis of digital
electronic circuits including Boolean algebra and multi-variable Karnaugh map methods;
3. Analyze small scale combinational and sequential circuits.
29
Contents:
Digital logic: Boolean algebra, De Morgan’s Theorems, logic gates and their truth tables, canonical forms,
combinational logic circuits, minimization techniques; Arithmetic and data handling logic circuits, decoders
and encoders, multiplexers and demultiplexers; Combinational circuit design; Flip-flops; race around
problems; Counters: asynchronous and synchronous counters and their applications; Asynchronous and
synchronous logic design: State diagram, Mealy and Moore machines; State minimizations and assignments;
Pulse mode logic; Fundamental mode design; PLA design; Design using MSI and LSI components.
Reference Books:
1) Thomas L. Floyd, Digital Fundamental, Published Pearson, 10th Edition.
2) M. Morris Mano, Digital Logic and Computer Design, Published by Prentice Hall, New Edition.
Objective:
This course provides the basics of different matrix operations and solution methods of different vector based
practical problems.
Outcome:
1. Solve systems of linear equations using multiple methods, including Gaussian elimination and matrix
inversion;
2. Carry out matrix operations, including inverses and determinants;
3. Apply principles of matrix algebra to linear transformations;
4. Describe and manipulate vector spaces, subspaces and their bases;
5. Determine the kernel, image space and matrix representation of a linear transformation.
Contents:
Solution of the linear System of equation; matrices: definition of matrix; different types of matrices; algebra of
matrices adjoint and inverse of a matrix; elementary transformation of matrix; normal and canonical form of
matrix; rank and nullity of matrix;
Multiple products of vectors; Differentiation and integration of vectors together with elementary applications;
Gradient, divergence and curl of point functions; Various formulae; Definition of line, surface and volume
integrals; Green’s theorem; Gauss’s theorem; Stoke’s theorem.
Reference Books:
1) Biswas Suddhendu, Textbook of Matrix, published by PHI, 3rd Edition.
2) David A. Harville, Matrix Algebra: Exercises and Solutions, published by Springer.
30
3) Jerrold E. Marsden and Anthony Tromba, Vector Calculus, published by W. H. Freeman; 6th edition.
4) Thomas H. Barr, Vector Calculus, published by Pearson Education.
Objective:
This course samples the rich tradition of Bangla literature. It includes both the formal study of
literary devices and critical reading of select poems, plays, novels, and short stories. The objective is
to underscore the uniqueness and immense varieties of Bangla literature as well as to explore if and
how Bangla literature has been influenced by the western and English literature and philosophy.
Outcome:
By the end of this course the learner will be able to:
1. identify and critically analyse key ideas.
2. articulate orally and in writing an understanding of these key ideas and practices.
3. demonstrate an understanding of how theatre texts work in a physical space.
4. facilitate group discussions and demonstrations of the ideas discussed in lectures and critical
readings.
Contents:
gvB‡Kj gaym~`b `Ë ÔK‡cvZv¶ b`Õ
iex›`ªbv_ VvKzi ‘‡mvbvi ZixÕ, ÔeuvwkÕ
KvRx bRiæj Bmjvg Ôwe‡`ªvnxÕ, Ô‡gvniigÕ
Rxebvb›` `vk ÔebjZv †mbÕ, Ô‡Zvgvi †hLv‡b mvaÕ, Ôwbiv‡jvKÕ
kvgmyi ivngvb ÔD™¢U D‡Ui wc‡V P‡j‡Q ¯^‡`kÕ, Ô‡MwijvÕ, ÔeY©gvjv, Avgvi
`ytwLbx eY©gvjvÕ
‡mwjg Avj `xb ‘wKËb‡Lvjv Õ
kirP›`ª P‡Ævcva¨vq Ôg‡nkÕ
AvLZviy¾vgvb Bwjqvm Ô`yafv‡Z DrcvZÕ
‰mq` IqvwjDjøvn Ôjvj mvjy Õ
Reference Books:
1. K.S. Murshid (ed.), Literature in Bangladesh: Contemporary Bengali Writing
2. Dipti Tripathi, Adhunik Bangla Kabya Parichay
3. Sajoj Bandopadhaya, Bangla Uponnasher Kalantor
Objective:
This course introduces advanced programming with Java. In this course students will gain an understanding
of designing real world applications and use advanced level API’s available in java correctly. Another
primary objective of this course is to learn the core concepts of networking and techniques of socket based
client server programming.
Outcome:
31
1. Discuss network programming with Java in general, including some of the history and features that
Java brings to network programming;
2. Create original programs in Java that demonstrate key concepts of network programming;
3. Create Java network programs that fulfill specific deliverables and provide significant network
capability as required to fulfill assignment objectives and deliverables.
Contents:
Inheritance; packages and interfaces; exception handling; multithreaded programming; enumerations,
autoboxing and annotations; I/O, Applets and other topics; generics; java library: string handling, java.lang,
java.util and java.io; networking; the applet class; event handling; introducing the AWT; AWT controls,
layout managers and menus; images; the concurrency utilities; NIO regular expressions and other packages;
java beans; introducing swing; exploring swing; Servlets; financial Applets and Servlets; creating a
downloaded manager in Java.
Reference Books:
1) Paul Deitel and Harvey Deitel, JavaTH How to program, Published by Prentice Hall, 9th Edition.
2) Cay S. Horstmann and Gary Cornell, Core Java, Volume 1 & 2, Published by Prentice Hall, 9th
Edition.
Objective:
The objective of the course is to identify and classify the numerical problem to be solved, to choose the most
appropriate numerical method for its solution based on characteristics of the problem and to understand the
characteristics of the method to correctly interpret the results.
Outcome:
1. Demonstrate understanding of common numerical methods and how they are used to obtain
approximate solutions to otherwise intractable mathematical problems;
2. Apply numerical methods to obtain approximate solutions to mathematical problems;
3. Derive numerical methods for various mathematical operations and tasks, such as interpolation,
differentiation, integration, the solution of linear and nonlinear equations, and the solution of
differential equations;
4. Analyze and evaluate the accuracy of common numerical methods.
Contents:
Introduction; Solution of Non-linear Equations: Fixed Point Iteration, Bi-Section method, False Position
method, Newton-Raphson method, Bairstow’s Method; Solution of Linear equations: Triangular systems and
back substitution, Gauss-Jordan elimination method, Pivoting, LU-factorization, Cholesky’s method, Dolittle
32
and Crout factoriza- tion; Interpolation and Approximation: Taylor’s Series, Lagrangian interpolation,
Divided differences formula, Newton’s forward and backward interpolation, Spline interpolation;
Differentiation: Numerical differentiation, Richardson’s extrapolation; Integration: Newton’s-Cote
integration, Trapezoidal rule, Simpson’s rule, Romberg’s integration; Ordinary Differential Equations: Euler’s
method, Picard’s method, Milne’s method, Taylor’s series method, Runge-Kutta method; Curve Fitting: Least
squares lines, Least square polynomials, Non-linear curve fitting; Numerical Optimization: Golden Ratio
search, Newton’s search, Powell’s method, Gradient search.
Reference Books:
1) Steven Chapra and Raymond Canale, Numerical Methods for Engineers, Published by McGraw
Hill, 6th Edition.
2) Jaan Kiusalaas, Numerical Methods in Engineering with Matlab, Published by Cambridge
University Press, 2nd Edition.
3) Santosh K Gupta, Numerical Methods for Engineers, Published by New Age International, 2nd
Edition.
CSE 2203 Computer Organization and Architecture 3.00
Objective:
This course introduces students to the fundamental concepts underlying modern computer organization and
architecture. Students will be familiarized with hardware design including logic design, various functional
modules of the computer and how they interact. The objective is to tie the programmer’s view of a computer
system with the actual hardware and architecture of the underlying machine.
Outcome:
1. Understand the basics of computer hardware and how software interacts with computer hardware;
2. Analyze and evaluate computer performance;
3. Understand computer arithmetic and convert between different number systems;
4. Understand basics of Instruction Set Architecture (ISA) – MIPS;
5. Assemble a simple computer with hardware design including data format, instruction format,
instruction set, addressing modes, bus structure, input/output, memory, Arithmetic/Logic unit, control
unit, and data, instruction and address flow;
6. Use Boolean algebra as related to designing computer logic, through simple combinational and
sequential logic circuits.
Contents:
Information representation; measuring performance; instruction and data access methods: operations and
operands of computer hardware, representing instruction, addressing styles; arithmetic logic unit design:
arithmetic and logical operations, floating-point operations; processor design: data paths-single cycle and
multi cycle implementations; control unit design-hardwired and micro programmed; hazards; exceptions;
memory organization: cache memory, virtual memory; channels; DMA and interrupts; buses; parallel
processing: overview, importance, architecture, hardware and software issues, parallel programming and
parallel algorithms; distributed processing: overview, impact, forms of distributed processing, strategies of
distributed data processing, centralization vs. decentralization.
Reference Books:
1) David A Patterson and John L. Hennessy, Computer Organization and Design – The hardware /
software interface, Published by Morgan Kaufmann, 3rd Edition.
33
2) William Stallings, Computer Organization and Architecture Designing for Performance,
Published by Prentice Hall, 8th Edition.
3) John L. Hennessy and David A. Patterson, Computer Architecture: A Quantitative Approach,
Published by Morgan Kaufmann, 4th Edition.
Objective:
To know the basics of analyzing the running time of different algorithms, designing and implementing
efficient algorithms for solving different classical problems and finally getting an idea of complexity classes
to deal with some hard computational problems.
Outcome:
1. Identify fundamental data structures and algorithms and summarize their typical uses, strengths, and
weaknesses;
2. Analyze the complexity of algorithms;
3. Solve problems computationally through the application of fundamental data structures and
algorithms.
Contents:
Introduction to algorithms; Correctness proof and techniques for analysis of algorithms; Master Theorem;
Methods for the design of efficient algorithms: divide and conquer, greedy methods, dynamic programming;
Sorting: heap sort, merge sort, quick sort; Graph algorithms: DFS, BFS, Applications of DFS and BFS, MST
algorithms, shortest path algorithms, maximum flow and maximum bipartite matching; Lower bound theory;
NP-completeness; NP-hard and NP-complete problems; Coping with hardness: backtracking, branch and
bound, approximation algorithms; String matching algorithms; FFT and its applications.
Reference Books:
1) Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, Introduction to
Algorithms, Published by The MIT Press, 3rd Edition.
2) Ellis Horowitz, Sartaj Sahni and Sanguthevar Rajasekaran, Fundamentals of Computer
Algorithms, Published by Galgotia Publications Pvt. Ltd, 2nd Edition.
34
Objective:
Students will translate a number of small C/C++ programs into assembly language, and learn to trace and
debug at the assembly level. They will extend the simple CPU implementation introduced in class to support
additional instructions. The knowledge of how C/C++ constructs are translated to execute on hardware,
simple hardware operations and interrupt handling are crucial building blocks for the Operating Systems and
Computer Architecture courses.
Outcome:
1. Translate C/C++ code into assembly language;
2. Perform simple optimizations by hand;
3. Trace and debug at the assembly level;
4. Understand and extend simple CPU implementations;
5. Understand basic interrupt/exception handling;
6. Make simple performance estimates for assembly code.
Contents:
Instruction set, Instruction types and their formats; Assembly program format; Assembly process; Interrupts
and system services; Addressing methods; High level control structure formation; Use of subroutines and
macros; Numeric processing and string processing.
Reference Book:
1) Ytha Yu, Charles Marut, Assembly Language Programming and Organization of the IBM PC,
Published By McGraw Hill International Edition
2) Kip R. Irvine, Assembly Language for Intel-Based Computers, Published by Prentice Hall.
Objective:
The objective of this course is to develop and understand the nature and purpose of financial statements,
develop the ability to use the fundamental accounting equation to analyze the effect of business transactions
on an organization’s accounting records and financial statements and to be able to use accounting information
to be able to solve various business problems.
Outcome:
1. Develop and understand the nature and purpose of financial statements in relationship to decision
making;
2. Develop the ability to use the fundamental accounting equation to analyze the effect of business
transactions on an organization's accounting records and financial statements;
3. Develop the ability to use a basic accounting system to create (record, classify, and summarize) the
data needed to solve a variety of business problems;
4. Develop the ability to use accounting concepts, principles, and frameworks to analyze and effectively
communicate information to a variety of audiences;
Contents:
Financial Accounting: Nature of business and accounting; Basic accounting concepts; Accounting as an
35
information system; computerized accounting system; Conceptual framework of accounting; Double entry
mechanism; Accounting equation; Introduction to journal accounting; Posting to ledger accounts; Preparing
trial balance; Adjusting entries; Preparing an adjusted trial balance; Preparing financial statements; Financial
statement analysis and interpretation.
Cost and Management Accounting: Cost concepts, Cost classifications and cost functions; Job order costing
& prepare job cost sheet; Cost allocation; Cost volume profit analysis; Variable costing vs absorption costing;
Short term investment decision: Relevant & Differential cost analysis; Long-term investment decision:
Capital budgeting; Working capital management; Linear programming for management decision.
Reference Books:
Objective:
This course gives a practical training of interfacing the peripheral devices with the 8086 microprocessor. The
course objective is to introduce the basic concepts of microprocessor and real time applications of
microprocessor as well as microcontroller. Design of various types of digital and analog interfaces will be
studied. The accompanying lab is designed to provide practical hands-on experience with microprocessor
software applications and interfacing techniques.
Outcome:
1. Understanding of the Intel 8086/8088 architecture;
2. Knowledge of the 8086/8088 instruction set and ability to utilize it in programming;
3. Ability to interface various devices to the microprocessor;
4. Gain knowledge of various advanced processor architectures such as 80X86, Pentium and Multicore
Processors.
Contents:
Introduction to 8-bit, 16-bit, and 32-bit microprocessors: architecture, addressing modes, instruction set,
interrupts, multi-tasking and virtual memory; Memory interface; Bus interface; Arithmetic co-processor;
Microcontrollers; Integrating microprocessor with interfacing chips; Programmable peripheral interfacing
chip with interface to A/D and D/A converters; Keyboard/display interface; Programmable timer;
Programmable interrupt controller, DMA controller; Introduction to embedded systems: overview of the
design flow, Embedded systems specifications and modeling; Embedded hardware platforms and peripherals;
Interfacing to the external world through sensors and actuators.
Reference Books:
1) Md. Rafiquzzaman, Microprocessor and Microcomputer Based System Design, Published by
CRC Press, 2nd Edition.
2) Douglas Hall, Microprocessors and Interfacing Programming and Hardware, Published by
McGraw Hill, 3rd Edition.
3) Robert L. Hummel, PC Magazine Programmer’s Technical Reference: The Processor and
Coprocessor, Published by Ziff-Davis Press, Illustrated Edition.
36
CSE 2302 Microprocessor and Interfacing Sessional 1.00
Laboratory works based on CSE 2301. Experiments will be performed using Microprocessor and
Microcontroller.
Objective:
The objective is to introduce students to the mathematical foundations of computation including automata
theory; the theory of formal languages and grammars; the notations of algorithm, decidability, complexity and
compatibility. Also this course will develop students’ ability to understand and conduct mathematical proofs
for computation and algorithms.
Outcome:
1. analyze and design finite automata, pushdown automata, Turing machines, formal languages,
and grammars;
2. demonstrate the understanding of key notions, such as algorithm, computability, decidability,
and complexity through problem solving;
3. prove the basic results of the Theory of Computation;
4. State and explain the relevance of the Church-Turing thesis.
Contents:
Regular languages: regular expressions, non-regular languages; Finite automata: deterministic finite
automata, nondeterministic finite automata, equivalence and conversion of deterministic and nondeterministic
finite automata, pushdown automata; Context free languages: Context free grammars, ambiguity, Chomsky
normal form, pumping lemma; Turing machines: basic machines, configuration, computing with Turing
machines, combining Turing machines, Church-Turing thesis, Hilbert’s problems; Decidability: Decidable
Languages, Undecidability, halting problem, Reducibility; Complexity: Time complexity, class P, class NP,
NP- completeness, space complexity, Savitch’s theorem.
Reference Books:
1) Michael Sipser, Introduction to Theory of Computation, Published by Thomson, 2nd Edition.
2) John C. Martin, Introduction to Languages and Theory of Computation, Published by
McGraw-Hill, 3rd Edition.
Objective:
This course covers the theory and application of complex variables and Fourier Transformation. Complex
variable begins with the exploration of the algebraic, geometric and topological structures of the complex
number field. The concepts of analyticity, Cauchy-Riemann relations and harmonic functions are then
37
introduced. The notion of the Riemann sheet is presented to help student visualize multi-valued complex
functions. Complex integration and complex power series are presented. Fourier transformation includes the
Fourier series, and the discrete Fourier transform; those are necessary for analysis signal processing and
transmission for storing, Internet and networking.
Outcome:
1. Explain the fundamental concepts of partial differential equations and their role in modern
mathematics and applied contexts;
2. Demonstrate accurate and efficient use of Fourier series, complex analysis and integral transform
techniques;
3. Demonstrate capacity for mathematical reasoning through analyzing, proving and explaining
concepts from partial differential equations and complex analysis;
4. Apply problem-solving using Fourier series, complex analysis and integral transform techniques
applied to diverse situations in physics, engineering and other mathematical contexts;
5. Explain the use and applications of partial differential equations and/or complex analysis to some
topic related to undergraduate study, employment or other experience.
Contents:
Functions of a complex variable; Limits and continuity of functions of complex variable; Complex
differentiation and Cauchy- Riemann Equations; Mapping by elementary functions; Line integral of a
complex function; Cauchy’s Integral Theorem; Cauchy’s Integral Formula; Liouville’s Theorem; Taylor’s
Theorem and Laurent’s theorem; Singular points; Residue; Cauchy’s Residue Theorem; Contour integration;
Mapping.
Fourier series; Fourier sine and cosine series, half range Fourier series, Fourier integral, complex form of the
Fourier series, Parseval’s formula finding Fourier series of various functions; Fourier transformation;
Reference Books:
1. E. Brigham, Fast Fourier Transformation and Its Applications, published by Prentice Hall.
2. Leon Ehrenpreis, Fourier analysis in Several Complex Variables, published by Dover Publications
Inc.
3. Francis J. Flanigan, Complex Variables, published by Dover Publications Inc., 1983.
4. Richard A. Silverman, Introductory Complex Analysis, published by Dover Publications Inc., 1984.
Objective:
The objective of this course is to familiarize the students with the fundamental concepts of database system
both in terms of use and implementation/design. Students will be able to construct simple and advanced
database queries using Structured Query Langugage (SQL). They will understand and successfully apply
logical database design principles including ER diagrams and database normalization.
Outcome:
1. Understand and evaluate the role of database management systems in information technology
applications within organizations;
2. Recognize and use contemporary logical design methods and tools for databases;
38
3. Derive a physical design for a database from its logical design;
4. Implement a database solution to an information technology problem;
5. Understand the SQL data definition and SQL query languages.
Contents:
Concepts of database systems; Data Models: Entity-Relationship model, Relational model; Query Languages:
Relational algebra, SQL; Constraints and triggers; Functional dependencies and normalization; File
organization and data storage; Indexing: primary and secondary indexes, B+ trees, hash tables; Query
optimization; Transaction management; Recovery; Concurrency control; Access control and security;
Semi-structured database: XML, XPath, XQuery; Object oriented and object relational databases; timestamp
management; serializability; deadlock handling.
Reference Books:
1) Abraham Silberschartz, Henry F. Korth and S Sudershan, Database System Concepts, Published
by McGraw-Hill, 5th Edition.
2) Ivan Bayross, SQL, PL/SQL- The Programming Language of Oracle, Published by BPB
Publications, 3rd Edition.
3) Scott Urman, Ron Hardman and Michael McLaughlin, Oracle Database 10g PL/SQL
Programming, Published by Tata McGraw-Hill.
Laboratory works based on CSE 2305 using MS-SQL Server, MySQL and Oracle.
Objective:
System Analysis and Design refers to the process of examining a business situation with the intent of
improving it through better procedures and methods. System analysis and design relates to shaping
organizations, improving performance and achieving objectives for profitability and growth. The emphasis is
on systems in action, the relationships among subsystems and their contribution to meeting a common goal.
Looking at a system and determining how adequately it functions, the changes to be made and the quality of
the output are parts of system analysis.
Outcome:
1. Gather data to analyze and specify the requirements of a system;
2. Design system components and environments;
3. Build general and detailed models that assist programmers in implementing a system;
4. Design a database for storing data and a user interface for data input and output, as well as controls to
protect the system and its data.
Contents:
39
System analysis fundamentals: systems, roles, and development methodologies; Understanding and modeling
organizational system; Project management; Information requirements analysis: Interactive methods;
Information gathering: Unobtrusive methods; agile modeling and prototyping; The analysis process: Using
data flow diagrams; Analyzing systems using data dictionaries; Process specifications and structured
decisions; Object oriented systems analysis and design using UML; The essentials of design: Designing
effective output, Designing effective input; Designing databases; Human-computer interaction; Quality
assurance and implementation: Designing accurate data entry procedures; Quality assurance and
implementation.
Reference Books:
1) Elias M. Awad, Systems Analysis and Design, Published by Galgotia Publications Pvt Ltd, 2nd
Edition.
2) I. T. Hawryszkiewycz, Introduction to Systems Analysis and Design, Published by Prentice Hallof
India, 3rd Edition.
Laboratory works based on CSE 3101 and design of a real life full-phase customized system.
Objective:
Compiler is an introductory course on the basic concepts of language translation and principles of compiler
design. This course is intended to introduce students to the theory and tools that can be used to perform a
grammar-oriented translation of a high-level programming language into an executable code. The techniques
and tools can also be employed in wider area of application that requires a grammar-oriented analysis and
transformation.
Outcome:
1. Specify and analyze the lexical, syntactic and semantic structures of advanced language features;
2. Separate the lexical, syntactic and semantic analysis into meaningful phases for a compiler to
undertake language translation;
3. Write a scanner, parser, and semantic analyzer without the aid of automatic generators;
4. Turn fully processed source code for a novel language into machine code for a novel computer;
5. Describe techniques for intermediate code and machine code optimization.
Contents:
Basic issues, compiler structure, front end, back end; Lexical analysis: Tokens, patterns, and lexemes, input
buffering, transition diagrams, lexical-analyzer generator; Syntax analysis: Elimination of left recursion, left
factoring, FIRST and FOLLOW, LL(1) grammars, non-recursive predictive parsing, parser generators;
Syntax-directed translation: Syntax- directed definitions, inherited and synthesized attributes, dependency
graphs, syntax-directed translation schemes; Semantic analysis: Type expressions, type equivalence,
40
type-checking; Run-time environments: Storage organization, static versus dynamic storage allocation,
activation trees, activation records; Intermediate code generation: Directed acyclic graphs for expressions,
three-address code, quadruples, triples, static single-assignment form; Code generation; Code optimization:
Basic blocks and flow graphs, next-use information, optimization of basic blocks.
Reference Books:
1) Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman, Compilers- Principles, Techniques and Tools,
Published by Addison Waesley Longman Inc, 2nd Edition.
Objective:
This course discusses the evolution of early networks and the Internet. This also demonstrates the ability to
use effectively a range of common networked applications including e-mail, telnet, FTP, and web browsers,
online web courses, and instant messaging. Emerging technologies in the net-centric computing area and
assess their current capabilities, limitations, and near-term potential are also addressed in this course.
Outcome:
1. Understand the fundamental concepts of data communications and networking;
2. Identify different components and their respective roles in a computer communication
system;
3. Apply the knowledge, concepts and terms related to data communication and networking;
4. Solve problems in networking by referring to problems solving steps through relevant
information by choosing suitable techniques.
Contents:
Introduction to signals; Review of Fourier Transform; Frequency Response of Linear Systems; Analog
Modulation: AM, DSB-SC, SSB- SC, VSB, FM, PM; Introduction to digital data communication; Sampling
theorem; Quantization; Pulse modulation: PAM, PDM, PPM, PCM, delta modulation, differential PCM;
Intersymbol interference; Pulse shaping; Line coding; Digital modulation: ASK, FSK, BPSK, QPSK, Offset
QPSK, 4-shifted QPSK, MSK, GMSK, QAM; Multiple access techniques: TDM, FDM; Random processes;
Additive White Gaussian Noise (AWGN); Error rate due to noise; Introduction to information theory;
Concept of channel coding and capacity.
Reference Books:
1) Behrouz A. Forouzan, Data Communications and Networking, 4th Edition.
2) William Stallings, Data and Computer Communications, Published by Pearson, 8th Edition.
41
CSE 3107 Information System Management 3.00
Objective:
The main objective of this course is to provide students with an overall understanding of the main concepts
of information systems, and to highlight the importance of information systems in modern organizations
and societies.
Outcome:
1. Explain complex software within the context of business user needs through training presentations
and written documentation;
2. Distinguish relationships between programming languages and information systems;
3. Analyze existing systems and design technology solutions appropriate to the goals of an organization;
4. Explain the various roles information systems have toward advancing strategic goals and the
operational success of an organization.
Contents:
Information systems management: importance of information systems (IS) management; IS management's
leadership role; strategic uses of IT; IS planning; managing essential technologies: distributed systems;
managing telecommunications; managing information resources; and managing operations; managing system
development: technologies for developing systems and management issues in system development; systems
for supporting knowledge work: supporting decision making; collaboration, and knowledge works;
acquisition of hardware, software, networks, and services: request for proposal, acquisition methods (buy,
rent, or lease), software acquisition, and analysis of alternatives; people and technology: the challenges ahead.
Reference Books:
1. B. C. McNurlin and R. H. Jr. Sprague, Information Systems Management in Practice, Published by
Prentice-Hall, 7th Edition.
2. Keri E. Pearlson and Carol S. Saunders, Managing and Using Information Systems: A Strategic
Approach, published by Wiley, 5th Edition.
Objective:
To achieve skills in network programming through development of distributed applications using the socket
interface to TCP and UDP. Understanding the application layer protocol HTTP (used by the World Wide
Web) and web-based programming and the layered design of computer networks and the key concepts at the
application layer through the link layer are also considered in this course.
Outcome:
1. Describe the basis and structure of an abstract layered protocol model;
2. Describe, analyze and compare a number of datalink, network, and transport layer protocols;
3. Design and implement datalink or network layer protocols within a simulated networking
environment;
42
4. Describe and analyze various related technical, administrative and social aspects of specific computer
network protocols from standards documents and other primary materials found through research;
5. Identify and apply basic theorems and formulae for the information-theoretic basis of communication
and the performance of physical, datalink and network protocols.
Contents:
Introduction to Computer Networks; Protocol hierarchies; Data link control: Link layer and services; Error
Detection and Correction; Multiple access protocol: Standards IEEE 802.*; Hubs, Bridges, and Switches, Fast
Ethernet; Routing architecture and algorithms; IPV4, IPV6, ARP, RARP; Introduction to transport layer:
UDP,TCP; Principles of Reliable data transfer, Principles of congestion control, TCP, Congestion control;
Application layer services: Web, HTTP, FTP, SMTP, DNS architecture; Network security: Cryptography,
DES, public key algorithm; Authentication; Digital signatures.
Reference Books:
1) James Kurose and Keith Ross, Computer Networking: A Top-Down Approach, Published by
Addison-Wesley, 6th Edition.
2) Andrew S. Tanenbaum and David J. Wetheral, Computer Networks, Published by Prentice Hall,
5th Edition.
CSE 3202 Computer Network Sessional 1.00
Objective:
Describe the functions of the major components of an operating system. Compare and contrast alternative
possible implementations for some of these components and analyze the performance of components
Understanding the system call interface and the key concepts in the design of an operating system kernel.
Outcome:
1. Describe how computing resources (such as CPU and memory) are managed by the operating system;
describe the basic principles used in the design of modern operating systems;
2. Summarize the full range of considerations in the design of file systems, summaries techniques for
achieving synchronization in an operation system;
3. Explain the objective and functions of modern operating systems, explain memory hierarchy and
cost-performance trade-offs, explain the operation, implementation and performance of modern
operating systems, and the relative merits and suitability of each for complex user applications;
4. Compare and contrast the common algorithms used for both pre-emptive and non-pre-emptive
scheduling of tasks in operating systems, such a priority, performance comparison, and fair-share
schemes. Contrast kernel and user mode in an operating system.
Contents:
43
Operating system: its role in computer systems; multitasking, multiuser, multiprocessing OS; Operating
system structures; Process: process concept and scheduling, inter-process communication, communication in
client- server systems; CPU scheduling: scheduling criteria and algorithms, thread scheduling,
multiple-processor scheduling; Process synchronization: critical-section problem, semaphores, monitors;
Deadlock: resource allocation and deadlock, deadlock detection, prevention and recovery; Memory
management: swapping, paging, segmentation, virtual memory; Input/ Output: hardware, software, disk,
terminals, clocks; File Systems: files, directories, security, protection; Case study of some operating systems.
Reference Books:
1) A. Silberschart, Peter B. Galvin and Greg Gagne, Operating System Concepts, Published by
Willey, 6th Edition.
2) Andrew S. Tanenbaum, Modern Operating Systems, Published by Pearson, 3rd Edition.
Laboratory works based on CSE 3203 in Linux environment and using Linux scripts. Introduction to the
UNIX Operating System; The Directory Structure; Unix Communications; Utilities and Filters; I/O
redirection; controlling child processes; C-shell programming; Bourne shell programming; The emacs editor;
Stream Editing; System Administration.
Reference Books:
1) Graham Glass and King Ables, UNIX for Programmers and Users, Published by Pearson, 3rd
Edition.
Objective:
The course concentrates on probability theory, statistical methods and the introductory mathematics to
facilitate the analysis of algorithms and advanced computer programming. The objective of this course is to
introduce students to a collection of mathematical tools, which will help to deal with the randomness or
stochasticity of many technological operations, controlled manipulation of mathematical formulas and a set of
techniques for solving problems.
Outcome:
1. Define and explain basic concepts in descriptive statistics and probability theory
2. Solve some standard problems that include random variables
3. Construct a confidence interval to estimate a population mean
4. Define and explain basic concepts in the theory Markov processes, M/M/m, M/M/m/K and
M/M/m/K/C queuing systems
5. Derive and apply main formulas for some properties (such as stationary probabilities, average waiting
and system time, expected number of customers in the queue, etc.) of M/M/m, M/M/m/K and
M/M/m/K/C queuing systems.
Contents:
44
Recurrent problems; Manipulation of sums; Integer functions; Number theory; Binomial coefficient; Special
numbers; Generating functions; Combinatorial game theory; Introduction to probability theory, expectation;
Random variables; Conditional Probability and Conditional Expectation; Stochastic process; Markov chains:
discrete parameter, continuous parameter, birth-death process; Queuing models: birth-death model,
Markovian model, open and closed queuing network; Application of queuing models.
Reference Books:
1) Sheldon M. Ross, Introduction to Probability Models, Published by Elsevier, 9th Edition.
2) Ronald L. Graham, Donald E. Knuth and Oren Patashnik, Concrete Mathematics, Published by
Addison-Wesley, 2nd Edition.
Objective:
Main objectives of this course are understanding security concepts, Ethics in Network Security, understanding
security threats, and the security services and mechanisms to counter them, comprehending and apply
relevant cryptographic techniques, comprehending security services and mechanisms in the network protocol
stack, comprehending and apply authentication services and mechanisms, comprehending and apply relevant
protocol like SSL, SSH, comprehending and apply email security services and mechanisms, comprehending
and apply web security services and mechanisms, comprehending computer and network access control.
Outcome:
1. The importance of taking a multi-disciplinary approach to cyber security;
2. The cyber threat landscape, both in terms of recent emergent issues and those issues which recur over
time;
3. The roles ad influences of governments, commercial and other organizations, citizens and criminals
in cyber security affairs;
4. General principles and strategies that can be applied to systems to make them more robust to attack;
5. Key factors in cyber security from different disciplinary views including computer science,
management, law, criminology and social sciences;
6. Issues surrounding privacy, anonymity and pervasive passive monitoring
Contents:
Remote access technologies and vulnerabilities; accessibility; Fundamentals on security and cryptography;
security standards: data encryption standard (DES), RSA, digital signature algorithm (DSA), SHA, SSL,
secure sockets layer(SSL), CBC, IPSec, AES and SET; distributed denial of service (DDOS) attacks; security
for communication protocols; security for operating systems and mobile programs; security for electronic
commerce, passwords and offline attacks; network security applications: authentication, e-mail, IP and web;
system security: intruders, malicious software and firewalls; PKI smart cards, secure multipurpose internet
mail extensions; viruses and spy ware; security models; wireless security, sandboxing, router security
strategies and network security assessment.
Reference Books:
1) William Stallings, Network Security Essentials Applications and Standards, published by Prentice
Hall, 5th Edition.
2) Eric Cole, Network Security Bible, published by Wiley.
45
CSE 3301 Programming for Mobile Devices 3.00
This course has been developed to help the student make that step into building commercial mobile Apps a
reality. This course will focus on building mobile web apps, which will work across multiple platforms
including Android, iOS, and/or others. This course has a technical focus and develops an in-depth expertise of
core technical disciplines such as designing, developing and testing software solutions for mobile platforms.
After completing this course, the student will understand what it takes to build professional Apps for mobile
devices while gaining experience and knowledge in using platforms and tools such as Objective-C Interface
Builder for Apple, Java and Eclipse for Android combined with SDK and 3rd party libraries such as
PhoneGap and Jquery Mobile. The student will be provided with practical and relevant hands-on tutorials
combined with modern approaches to building commercial mobile apps, including invaluable insights into the
mobile app development industry. They will also be given the opportunity to utilize and develop these skills
through appropriate practical work and be able to apply these skills and knowledge to their own development
projects in the future.
On completion of this course, the students will gain practical knowledge in hardware interfaces for mobile
devices, UML for mobile applications design, XML for Mobile Computing, building mobile apps using
HTML5, implementing JQuery mobile, working with Phonegap to develop mobile apps, building iOS
applications using Objective-C, iOS SDK, Android app development using Eclipse and Android SDK.
Laboratory works based on CSE 3301. Students will develop mobile applications in groups.
Objective:
This course intends to develop the basic concepts of computer graphics including 2D and 3D graphics.
Moreover, the goal is to teach the students about different algorithms, modeling, illumination and application
in rendering different scenario.
Outcome:
1. Know and be able to describe the general software architecture of programs that use 3D computer
graphics;
2. Know and be able to discuss hardware system architecture for computer graphics. This includes, but
is not limited to: graphics pipeline, frame buffers, and graphic accelerators/co-processors;
3. Know and be able to use a current 3D graphics API (e.g., OpenGL or DirectX);
4. Know and be able to select among models for lighting/shading: Color, ambient light; distant and light
with sources; Phong reflection model; and shading (flat, smooth, Gourand, Phong);
5. Know and be able to use and select among current models for surfaces (e.g., geometric; polygonal;
hierarchical; mesh; curves, splines, and NURBS; particle.
46
Contents:
Basics of computer graphics and its applications; Raster graphics: images and colors; 3D rasterization
pipeline; 3D modeling: parametric curves and surfaces using B-spline and Bezier curves and surfaces,
polygonal meshes, subdivision surfaces, BSP trees, voxels, sweeps, fractals; Scene graphs; Transformations:
modeling, viewing, projection, and viewport transformations; 3D rendering; Visible surface detection and
hidden surface removal methods: back-face detection, depth buffer method, depth-sorting method, BSP trees
method, ray casting methods; Direct illumination; Global illumination: shadows, ray tracing, and radiosity;
Shading and textures; Scan conversion and clipping; Computer animation: kinematics, motion capture, and
dynamics-passive and active; Application development using OpenGL.
Reference Books:
1) Roy A. Plastock and Gordon Kalley, Schaum’s Outline of Theory and Problems of Computer
Graphics, published by McGraw-Hill, 2nd Edition.
2) Foley and VanDam, Computer Graphics Principles and Practice, Published by Pearson, 2nd
Edition.
Laboratory works based on CSE 3303 using OpenGL and C/C++/Java programming language.
Reference Books:
1) Dave Shreiner, Mason Woo, Jackie Neider and Tom Davis, OpenGL Programming Guide,
Published by Addison-Wesley, 2nd Edition.
Objective:
Understand the software life cycle. Be able to elicit requirements from clients and specify those requirements.
Be able to perform detail software design activities. Have practical experience using UML.
Outcome:
1. Manage object-oriented and classical software construction projects including planning, scheduling,
and risk assessment/management;
2. Author software requirement documents with the appropriate content;
3. Author formal specifications for software systems;
4. Demonstrate proficiency in rapid software development techniques;
5. Identify specific components of a software design that can be targeted for reuse;
6. Demonstrate proficiency in software development cost estimation.
Contents:
47
Concepts of software engineering: software engineering paradigms, different phases of software system
development, different types of information, qualities of information; Project management concepts: software
process and project metrics, software project planning, risk analysis and management, project scheduling and
tracking, software cost analysis, COCOMO model; Analysis concepts and principles: requirement analysis,
analysis modeling, data modeling; Design concepts and principles: architectural design, user interface design,
object oriented software development and design, iterative development and the unified process, sequential
waterfall life cycles, use case model for requirement writing, elaboration using system sequence diagram,
domain model, visualizing concept classes; UML diagrams: Interaction and Collaboration Diagram for
designing Software, class diagram; GoF design patterns: adapter, factory, singleton, strategy, composite,
facade, and observer; Content management systems: concepts, planning and developing dynamic web content
sites; Software testing: white box and black box testing, basis path testing, testing for specialized
environment; Software testing strategies: unit testing, integration testing, validation testing, system testing;
Art of debugging; Analysis of system maintenance and upgrading: software repair, downtime, error and
faults, specification and correction, maintenance cost models, documentation; Software quality assurance:
quality factors. Software quality measures, cost impact of software defects, concepts of software reliability,
availability and safety, function based metrics and bang metrics, metrics for analysis and design model,
metrics for source code, testing and maintenance.
Reference Books:
1) Roger S. Pressman, Software Engineering: A Practitioner’s Approach, Published by McGraw
Hill, 6th Edition.
2) Ian Sommerville, Software Engineering, Published by Pearson, 8th Edition.
3) David Gustafson, Schaum’s Outline of Software Engineering, Published by McGraw Hill, 2nd
Edition.
Laboratory works based on requirement discovery and analysis, software design, report writing on software
design and other features of CSE 3305.
A student must complete the required credit hour thesis and/or research project. The student can
apply for registering his/her thesis after completion of minimum 108 credit hours. The duration of
performing thesis is 12 months. No more than two students can work together in a thesis work under
the supervision of a supervisor. No one outside the thesis group can be involved into the research
work otherwise permitted by the supervisor. Any work performed for any reason not included within
the academic curriculum cannot be allowed or submitted as their thesis work.
Objective:
To provide with understanding of the role of Artificial Intelligence, Expert Systems and Decision Models in
real life scenario. Develop abilities to apply, build and modify decision models to solve real problems.
Explore the issues involved in the design and development of Artificial Intelligence Based Decision Support
Systems and discuss the role these systems play in the business environment. Gain an in-Depth Knowledge of
a particular type of Artificial Intelligence Technique, namely Genetic Algorithms. Gain the knowledge to
build a prototype Artificial Intelligence Based Decision Support System.
Outcome:
1. Identify problems that are amenable to solution by AI methods, and which AI methods may be suited
to solving a given problem;
2. Formalize a given problem in the language/framework of different AI methods (e.g., as a search
problem, as a constraint satisfaction problem, as a planning problem, etc);
3. Implement basic AI algorithms (e.g., standard search or constraint propagation algorithms);
4. Design and perform an empirical evaluation of different algorithms on a problem formalization, and
state the conclusions that the evaluation supports.
Contents:
Introduction to old and new AI techniques; Search techniques in AI; Constraint satisfaction problems; Game
playing; Knowledge representation and reasoning; Propositional and first order logic, inference in first order
logic; Planning; Probabilistic reasoning; Learning in symbolic and non- symbolic representation; Expert
systems and knowledge engineering; Natural language processing; Computer vision and image
understanding.
Reference Books:
1) Start J Rusell and Peter Norvig, Artificial Intelligence: A Modern Approach, Published by
Prentice Hall, 2nd Edition.
2) Elaine Rich and Kevin Knight, Artificial Intelligence, Published by McGraw Hill, 2nd Edition.
The course covers construction and design of dynamic web pages. The emphasis lies on standardized HTML
and CSS to create structure and appearance. The course also covers basic JavaScript to create a dynamic
behavior on web sites, basic version control, the basics of JQuery and Ajax. Other parts that are covered are
availability, responsive design and validation of web pages.
49
CSE 4202 Technical Writing 1.00
Objective:
To give students an overview on basic business and research articles. The more emphasize will be given on
technical report writing and communication skills.
Outcome:
1. Understand and know how to follow the stages of the writing process (prewriting/writing/rewriting)
and apply them to technical and workplace writing tasks;
2. Be able to produce a set of documents related to technology and writing in the workplace and will
have improved their ability to write clearly and accurately;
3. Understand the basic components of definitions, descriptions, process explanations, and other
common forms of technical writing;
4. Be familiar with basic technical writing concepts and terms, such as audience analysis, jargon,
format, visuals, and presentation;
5. Be able to read, understand, and interpret material on technology;
6. Have an appreciation for some of the ideas, issues, and problems involved in writing about
technology and in workplace writing.
Contents:
Purposes and types of writing; mechanics of writing; basic grammar, effective paragraph and essay writing;
writing personal letters, official and business letters (including sales letter, claim and adjustment letter,
recommendation letter, etc); report writing (progress report, study report, etc).
Reference Books:
1) S. D. Sharma, A Textbook of Scientific and Technical Communication Writing for Engineers and
Professionals, published by Sarup & Sons.
2) Meenakshi Raman and Sangeeta Sharma, Technical Communication: Principles and Practice,
published by OUP India, 2nd Edition.
Objective:
This course is intended to contribute to the ethical development of the professional. Issues pertaining to legal
responsibilities, professional ethical standards and general professional conduct in contemporary society are
considered. This course is intended to acquaint the participant with the content of the Code of Ethics of the
AAMFT, the process of ethical decisional making and, hence, to contribute to the overall ethical development
of the professional. Issues pertaining to legal responsibilities and liabilities, professional ethical standards and
general professional conduct in contemporary society will be considered.
Outcome:
50
1. Be able to distinguish among morals, values, ethics, and the law and to explore how they each impacts
professional practice;
2. Have an increased personal understanding of issues related to ethics and the law with professional
environment;
3. Be able to examine one’s own ethical decision-making processes and develop guidelines for enhancing
one’s ability to generate ethical behaviors and solutions to conflicts arising in the service.
Contents:
Relationship between business and society; Ethics and Capitalism; Identifying stakeholders and issues
Stakeholder Relations and Analysis; Ethical reasoning; Regulating Business Ownership and Governance of
Corporation; Ethics in the Workplace and Marketplace; ethics of other professions; Ethics of several major
professions: Business Ethics, Media Ethics, Police Ethics, Medical Ethics, Legal Ethics, and Research
Ethics; Nature of a profession; Professional codes of ethics; Confidentiality; Whistle-blowing; Responsibility
of business to the environment; Uses and abuses of human research, and animal ethics in research.
Reference Books:
1) John Rowan & Samuel Zinaich. Ethics for the Professions. Jnr. Wadsworth. 2003.
2) Professionalism and Ethics – Custom. McGraw-Hill.
The purpose of Industrial Training is to expose students to real work of environment experience and at the
same time, to gain the knowledge through hands on observation and job execution. From the industrial
training, the students will also develop skills in work ethics, communication, management and others.
Moreover, this practical training program allows students to relate theoretical knowledge with its application
in the manufacturing/development industry.
Outcome:
1. Demonstrate a fundamental comprehension of business opportunity evaluation, from the perspective
of a prospective investor;
2. Identify the most recognized sources of potential funding and financing for business start-ups and/or
expansion;
3. Demonstrate extemporaneous speaking skills developed through in-class discussion of text materials,
case study analyses, and current entrepreneurship-related issues.
Contents:
Concept of entrepreneurship, need of entrepreneurship, origin and development of entrepreneurship; govt.
agencies promoting entrepreneurship; entrepreneur development program, self-employment programs, the
entrepreneurial development perspective; creating entrepreneurial venture; entrepreneurship development and
government; project management; why do entrepreneurs fail – elaboration on solutions for the problems;
infrastructure and logistics; business support; procedures; marketing; IT industry; legal and regulatory
framework; productive sectors; decision making and the political economy of information technology;
national information and communication infrastructure policies and plans; the wireless revolution and
universal access; emergence of VoIP; legal regime that foster development of IT business; the role of the
private sector in general and the business sector in particular in closing the digital divide; telecommunications
development strategy; cyber cafe; digital business ecosystems; the law and digital business ecosystems;
Internet telephony – the regulatory issues; developments and challenges in the protection of intellectual
property rights.
Reference Books:
1) Donald F. Kuratko, Entrepreneurship: Theory, Process and Practice, published by Cengage Learning.
2) Fang Zhao, Information Technology Entrepreneurship and Innovation, published by Information
Science Reference.
Objective:
This course provides the students the fundamental knowledge on e-commerce and e-business. E-commerce is
the system that allows selling and buying something via electronic means. E-business consists of the
exchange of data to facilitate the financing and payment aspects of business transactions. This is an effective
and efficient way of communicating within an organization and one of the most effective and useful ways of
conducting business.
Outcome:
1. Recognize the impact of Information and Communication technologies, especially of the Internet in
business operations
2. Recognize the fundamental principles of e‐Commerce and e-Governance
3. Use tools and services of the internet in the development of a virtual e‐commerce site.
Contents:
52
Vision and mission of e-Government; status affecting e-Government development; Principles of
e-Government strategy; current issues and trends in e-government; ways the Internet can improve
government's responsiveness; identifying career requirements for e-government services; web site
management; implications of public private partnerships;e-Government policy frameworks; development of
portal architecture;key e-government practices; citizen centric web design; e-government legal/social drivers;
e-Government policy issues; the management of strategy and projects; data security; quality assurance;
political challenges and ethical challenges; security issues and the need for a certification authority; delivery
channels and service delivery; capacity building and business process re-engineering; e-Government service
branding and communications strategy; e-Government financing; comparative case study of e-Government
implementation and programme structures; unicode and ICT in local languages; issues in transliteration and
natural language translation; records management; service oriented architecture; IT workforce; concepts in
bridging the digital divide; working with donors; models of public-private partnerships (PPP); application
scenarios for G2G, G2B and G2C; emergence of new e-sectors such as e-Health, e-Water & e-Tourism; ICT
for democracy and development; transparency and right to information; proprietary vs. open source software;
e-literacy and illiteracy; Categories of e-Business (b2b, b2c, b2a etc); electronic markets; electronic data
interchange; internet commerce; e-Business planning; business and operational aspects of e-Business; data
warehousing, data mining and intelligent agents; electronic payment; cryptography techniques for payment
systems; systems based on credit cards; electronic checks; electronic cash payment systems; micro payments.
Reference Books:
1) Dave Chaffey, E-Business and E-Commerce Management: Strategy, Implementation and Practice,
published by Prentice Hall, 5th Edition.
2) Efraim Turban, David King and Judy Lang, Introduction to Electronic Commerce, published by
Prentice Hall, 3rd Edition.
Objective:
The main objective of this course is to educate the prospective IT professionals regarding laws, regulations
and security. The laws and regulations aim to ensure transparency in online transactions. The seller needs to
provide the consumer with necessary information such as terms and conditions and fine as well as give them
the right to cancel their order within a specified time. A security wake-up call for companies conducting
business over the Internet will be the wave of the future, provided businesses can allay consumer
fears about security. This course addresses the essential elements of safe electronic commerce and
electronic businesses over the Internet.
Outcome:
1. Students identify and analyze statutory, regulatory, constitutional, and organizational laws that affect
the information technology professional;
2. Students locate and apply case law and common law to current legal dilemmas in the technology
field;
3. Students demonstrate leadership and teamwork.
Contents:
The legal and social environment of E-commerce; uniform commercial code; Validity and enforceability of
electronic agreements; evidentiary problems; privacy, consumer rights; copyright and trademark laws; laws
53
which affect online buying and purchasing; law enforcement; evidence collection and preservation; customer
security; digital signatures and certificates; digital signature laws; secure socket layers, PCI, SET, firewalls
and Kerberos; secure transactions; computer monitoring; corporate e-mail privacy, computer crimes security
for Internet trading, security tools; non repudiation services.
Reference Books:
1) Paul Todd, E-Commerce Law, published by Routledge-Cavendish.
2) Jane P. Mallor, Business Law: The Ethical, Global and E-Commerce Environment, published by
Irwin/McGraw Hill, 13th Edition.
3) Anup K. Ghosh, E-Commerce Security: Weak Links, Best Defenses, published by Wiley.
Objective:
This course enables students understanding credible resources verified through methodological software
engineering processes. The students are to be able to test techniques, measures, and processes.
Outcome:
1. Apply modern software testing processes in relation to software development and project
management;
2. Create test strategies and plans, design test cases, prioritize and execute them;
3. Manage incidents and risks within a project;
4. To gain expertise in designing, implementation and development of computer based systems and IT
processes.
Contents:
Testing in the lifecycle; testing objectives; the fundamental test process; testing and risk; test policy, test
strategy, test plans; entry and exit criteria; estimating techniques; test monitoring; incident management
process; fundamentals of test analysis; test environment requirements; selection of techniques; coverage
measures; test cases; levels of testing - unit testing, integration testing, system testing, acceptance testing,
alpha testing and beta testing, static vs. dynamic testing, manual vs. automatic testing, testers workbench;
different types of testing - installation testing, usability testing, regression testing, performance testing, load
testing, stress testing, security testing; static and dynamic testing; black box and white box testing; structural
testing; reliability assessment; reliability assessment; testing real time system; testing documentation; test
reports; test estimation; test monitoring and control; test technique, test type and test coverage selection; test
tool selection and implementation; foundations of software project management; organization structure and
staffing; motivation, authority and influence; conflict management; proposal preparation; a large engineering
software system management; client management; managing software project teams; project planning and
scheduling; risk management; configuration management; pricing estimation and cost control; quality
assurance and accreditation; factors affecting software quality; software quality assurance plans; business
context and legal issues for software projects; software measurement: testing, upgrading and maintenance;
network systems; and international project management.
Reference Books:
1) SagarNaik and PiyuTripathy, Software Testing and Quality Assurance: Theory and Practice,
published by Wiley- Spektrum.
2) Ron Patton, Software Testing, published by Sams Publishing.
54
CSE 4409 Software Project Management 3.00
Objective:
This course enables students to learn the discipline of planning, organizing, motivating, and controlling
resources to achieve specific goals from beginning and ending. The project management is to bring about
beneficial change or added value repetitive, permanent, or semi-permanent functional activities to produce
products or services, which requires the development of distinct technical skills and management strategies.
Outcome:
1. Problem Solving and Critical Thinking (PS&CT);
2. Communication and Interpersonal Skills (C&IS);
3. Ethical and Professional Responsibilities (E&PR).
Contents:
Foundations of software project management; organization structure and staffing; motivation, authority and
influence; conflict management; proposal preparation; a large engineering software system management;
client management; managing software project teams; project planning and scheduling; risk management;
configuration management; pricing estimation and cost control; quality assurance and accreditation; factors
affecting software quality; software quality assurance plans; business context and legal issues for software
projects; software measurement: testing, upgrading and maintenance; network systems; and international
project management.
Reference Books:
1) Murali K. Chemuturi and Thomas M. Cagley Jr., Mastering Software Project Management: Best
Practices, Tools and Techniques, published by J. Ross Publishing.
2) Andrew Stellman and Jennifer Greene, Applied Software Project Management, published by O’Reilly
Media.
Objective:
The objective of this course is to learn the theorems and properties of graphs and to model and solve real life
problems using graph theory.
Outcome:
1. Write precise and accurate mathematical definitions of objects in graph theory;
2. Use mathematical definitions to identify and construct examples and to distinguish examples from
non-examples;
3. Validate and critically assess a mathematical proof;
4. Use a combination of theoretical knowledge and independent mathematical thinking in creative
investigation of questions in graph theory.
Contents:
Graphs and simple graphs, digraphs, subgraphs, vertex-degrees, walks, paths and cycles; Trees, spanning
trees in graphs, distance in graphs; Complementary graphs, cut-vertices, bridges and blocks, k-connected
55
graphs; Euler tours, Hamiltonian cycles, Chinese Postman Problem, Travelling Salesman Problem; Chromatic
number, Chromatic polynomials, Chromatic index, Vizing's theorem, planar graphs, perfect graphs.
Reference Books:
1) NarsinghDeo, Graph Thoery with Applications to Engineering and Computer Science, Published
by Prentice-Hall of India Pvt Ltd.
2) Douglas B. West, Introduction to Graph Theory, Published by Pearson, 2nd Edition
Objective:
The objectives of this course is to create understanding of the fundamental concepts of fault-tolerance, learn
basic techniques for achieving fault-tolerance in electronic, communication and software systems, to develop
skills in modeling and evaluating fault-tolerant architectures in terms of reliability, availability and safety to
gain knowledge in sources of faults and means for their prevention and forecasting to understand merits and
limitations of fault-tolerant design
Outcome:
1. Enumerate the need and necessity to consider fault-tolerant design in digital systems.
2. Explain vividly, the various techniques for fault modeling and tests generation.
3. Determine the various forms of redundancy for enhancing reliability of digital systems.
4. Evaluate reliability of systems with permanent and temporary faults.
Contents:
This course addresses design, modeling, analysis, and integration of hardware and software to achieve
dependable computing systems employing on-line fault-tolerance. It covers the concepts and terminologies of
Fault-Tolerant System Design including: Reliability, Dependability, Maintainability, Redundancy, Error
Detection, Damage Confinement, Error Recovery, Fault Treatment, Redundancy Management, Voting,
Information Redundancy, Random Variables, cdf, pdf, Expectation, Bathtub Curve, MTTF, Reliability of
Series/Parallel Systems, Stand-by Redundancy, M-of-N System, Reliability Block Diagrams, Fault Trees,
Markov Process, Petri Nets, General Stochastic Petri Nets, Recovery Strategies, Roll-back Recovery,
Agreement and Consensus, Byzantine Clock Synchronization, RAID, Fail-Stop Processes, Systems
Diagnosis, Case studies. I always change the material slightly to account for interesting changes in the field.
Reference Books:
1) I. Koren and C. Mani Krishna, Fault-tolerant Systems, 1st edition, 2007, Morgan Kaufmann.
2) D. P. Siewiorek and R. S. Swarz, Reliable Computer Systems - Design and Evaluation, 3rd
edition, 1998, A.K. Peters, Limited.
3) D. K. Pradhan, ed., Fault Tolerant Computer System Design, 1st edition, 1996, Prentice-Hall.
56
Objective:
Students undertaking this course develop strong practical skills which are to be enhanced through the study of
the critical elements of multimedia and communication theory, research and project development and
professional practice. The teaching and coursework aims to heighten experiential learning, team and group
work, understanding of the relevant communication and multimedia theories and applications, as well as
critical approaches to research and design and project management.
Outcome:
1. Learn concepts of Multimedia Systems, Text, Audio Text and Audio tools, MIDI Image and Video
Image , synchronization accuracy specification factors;
2. Be able to differentiate among various storage models and Access Techniques of Multimedia devices;
3. Gain knowledge of Image segmentation and video segmentation;
4. Learn about Document Architecture, Content Management and the application of multimedia.
Contents:
Overview of multimedia systems; multimedia storage; data compression techniques for audio and video;
synchronization; multimedia networking and protocols; QOS principles; multimedia coding and streaming;
mobile multimedia communications; operating system support for multimedia; hypermedia system; standards
for multimedia; multimedia database and multimedia applications, required hardware and communication
supports for multimedia applications; application-specific multimedia signal processing and communications.
Reference Books:
1) Suzanne Weixel, Multimedia Basics, published by Cengage Learning.
2) Richard E. Mayer, Multimedia Learning, published by Cambridge University Press.
Objective:
Computational methods for analyzing biological systems. Dynamic programming, Markov models, Neural
Networks, and Bayesian analysis are used to predict secondary structure, tertiary structure, and active sites for
drug docking given molecular DNA sequence data.
Outcome:
1. Demonstrate an advanced understanding of biological sciences by articulating the methods of
science, explaining why current biological knowledge is both contestable and testable through further
inquiry, and explaining the role and relevance of biotechnology in society;
2. Demonstrate cognitive skills in mastery of advanced theoretical knowledge in biotechnology and
apply this knowledge to solve complex problems in existing and new areas.
Contents:
57
Definition of learning systems; Goals and applications of machine learning; Aspects of developing a learning
system: training data, concept representation, function approximation; Algorithmic models of learning;
Learning classifiers, functions, relations, grammars, probabilistic models, value functions, behaviors and
programs from experience; Bayesian, maximum a posteriori, and minimum description length frameworks;
Parameter estimation, sufficient statistics, decision trees, neural networks, support vector machines, Bayesian
networks, bag of words classifiers, N-gram models; Markov and Hidden
Reference Books:
1. Cristianini and Hahn, Introduction to Computational Genomics.
Objective:
Learn about some of the most widely used and successful machine learning techniques. Be able to formulate
machine learning problems corresponding to different applications. Understand a range of machine learning
algorithms along with their strengths and weaknesses. Understand the basic theory underlying machine
learning. Be able to apply machine learning algorithms to solve problems of moderate complexity. Be able to
understand knowledge acquisition, pattern recognition, program synthesis, text and language processing,
internet-based information systems, human-computer interaction.
Outcome:
1. Have a good understanding of the fundamental issues and challenges of machine learning: data,
model selection, model complexity, etc.;
2. Have an understanding of the strengths and weaknesses of many popular machine learning
approaches;
3. Appreciate the underlying mathematical relationships within and across Machine Learning
algorithms and the paradigms of supervised and un-supervised learning;
4. Be able to design and implement various machine learning algorithms in a range of real-world
applications.
Contents:
Definition of learning systems; Goals and applications of machine learning; Aspects of developing a learning
system: training data, concept representation, function approximation; Algorithmic models of learning;
Learning classifiers, functions, relations, grammars, probabilistic models, value functions, behaviors and
programs from experience; Bayesian, maximum a posteriori, and minimum description length frameworks;
Parameter estimation, sufficient statistics, decision trees, neural networks, support vector machines, Bayesian
networks, bag of words classifiers, N-gram models; Markov and Hidden Markov models, probabilistic
relational models, association rules, nearest neighbor classifiers, locally weighted regression, ensemble
classifiers; Computational learning theory, mistake bound analysis, sample complexity analysis, VC
dimension, Occam learning, accuracy and confidence boosting; Dimensionality reduction, feature selection
and visualization; Clustering, mixture models, k-means clustering, hierarchical clustering, distributional
clustering; Reinforcement learning; Learning from heterogeneous, distributed, data and knowledge; Selected
applications in data mining, automated knowledge acquisition, pattern recognition, program synthesis, text
and language processing, internet-based information systems, human-computer interaction, semantic web,
and bioinformatics and computational biology.
58
Reference Books:
1) Kevin P. Murphy, Machine Learning: A Probabilistic Perspective, published by The MIT Press.
2) Tom M. Mitchell, Machine Learning, published by McGraw-Hill.
CSE 4421 Robotics 3.00
Objective:
How to design robots for specific activities and scenarios, how to use Robolab programming software. Gears,
pulleys, torque, friction, timing, sensors, and program loops. To design, develop and complete robotic
activities and challenges.
Outcome:
1. Be familiar with various robot sensors and their perception principles that enable a robot to analyze
their environment, reason and take appropriate actions toward the given goal.
2. Understand, analyze and solve problems in spatial coordinate representation and spatial
transformation, robot locomotion design, kinematics, motion control, localization and mapping,
navigation and path planning.
3. Be able to design and implement a robotic project on a physical mobile robot platform, with tasks
involving project specification, algorithm design, software programming, simulation and
modeling, control and obstacle avoidance in a complex and interactive environment.
Contents:
Introduction, Actuators and Drives, Control Components, I/O Interface, and PWM Amplifiers, Control
Software, Control Software – 2,Sensor, De-mining Robot: Implement Basic Sensor-based Controls; Plan
Strategy for De-mining Task, Kinematics, Differential Motion, Statics, Energy Method, Hybrid Position-force
Control, Compliance, End-effecter Design, Non-holonomic Systems, Legged Robots, Multi-fingered Hands,
Dynamics, Computed Torque Control, Sensors, computer Vision, Navigation, Tele-robotics and Virtual
Reality.
Reference Books:
1) Fu, Gonzalez and Lee , Robotics: Control, Sensing, Vision and Intelligence
2) D. P. Siewiorek and R. S. Swarz, Robotics, Vision and Control: Fundamental Algorithms in
MATLAB
Objective:
Students can understand various basic concepts related to cloud computing technologies, architecture and
concept of different cloud models: IaaS, PaaS, SaaS. Big data analysis tools and techniques. Understand the
underlying principle of cloud virtualization, cloud storage, data management and data visualization.
Outcome:
1. Articulate the main concepts, key technologies, strengths, and limitations of cloud computing and the
possible applications for state-of-the-art cloud computing;
59
2. Identify the architecture and infrastructure of cloud computing, including SaaS, PaaS, IaaS, public
cloud, private cloud, hybrid cloud, etc;
3. Identify problems, and explain, analyze, and evaluate various cloud computing solutions;
4. Provide the appropriate cloud computing solutions and recommendations according to the
applications used.
Contents:
The course presents a top-down view of cloud computing, from applications and administration to
programming and infrastructure. Its main focus is on parallel programming techniques for cloud computing
and large scale distributed systems which form the cloud infrastructure. The topics include: overview of cloud
computing, cloud systems, parallel processing in the cloud, distributed storage systems, virtualization,
security in the cloud, and multicore operating systems. Students will study state-of-the-art solutions for cloud
computing developed by Google, Amazon, Microsoft, Yahoo, VMWare, etc. Students will also apply what
they learn in one programming assignment and one project executed over Amazon Web Services.
Reference Books:
1) Morgan Kaufmann, Distributed and Cloud Computing, 1st edition, 2011.
2) Thomas Erl, Ricardo Puttini and Zaigham Mahmood, Cloud Computing: Concepts, Technology and
Architecture, Published by Prentice Hall, 1st edition.
Option -II
Objective:
This course is designed to provide students with a comprehensive treatment of the important issues in design,
implementation and applications of digital signal processing concepts and algorithms.
Outcome:
1. Explain the basic concepts of signals, signal processing and digital signals, and characterize signals
and systems in discrete time, including use of the z-transform;
2. Use the Fourier transform and convolution to filter signals; explain the properties of the discrete-time
Fourier transform; apply the discrete-time Fourier transform and the fast Fourier transform;
3. Design finite impulse response (FIR) filters to satisfy a desired frequency response; explain the role
of the window function and describe its influence on FIR filters; design infinite impulse response
(IIR) filters on the basis of an analogue design.
Contents:
This course provides an introduction to digital signal processing for both undergraduate and for graduate
students. In this course, a detailed examination of basic digital signal processing operations including
sampling/reconstruction of continuous time signals, Fourier and Z-transforms will be given. The Fourier and
Z-transforms will be used to analyze the stability of systems, and to find the system transfer function. The
discrete Fourier transform (DFT) and fast Fourier transform (FFT) will be studied. Finally, we will examine
time and frequency domain techniques for designing and applying infinite impulse response (IIR) and finite
60
impulse response (FIR) digital filters. Two-dimensional signals and introductory image processing operations
will also be discussed.
Reference Books:
1) A. V. Oppenheim and R. W. Schafer, Discrete Time Signal Processing, Prentice Hall
Objective:
Data mining is a discipline within knowledge discovery that seeks to facilitate the exploration and analysis of
large quantities of data, by automatic or semiautomatic means. This subject provides a practical and technical
introduction to knowledge discovery and data mining. Topics to be covered include problems of data analysis
in databases, discovering patterns in the data, and knowledge interpretation, extraction and visualization.
Along with various types of machine learning techniques and statistical techniques:
Outcome:
1. Understand the common algorithms and techniques for information retrieval (document indexing and
retrieval, query processing, etc);
2. The quantitative evaluation methods for the IR systems and data mining techniques;
3. The popular probabilistic retrieval methods and ranking principles;
4. The techniques and algorithms existing in practical retrieval and data mining systems such as those in
web search engines and recommender systems;
5. The challenges and existing techniques for the emerging topics of Map Reduce, portfolio retrieval
and online advertising.
Contents:
Introduction to data mining; data warehousing and OLAP technology for data mining; data preprocessing;
data mining primitives, languages and systems; descriptive data mining: characterization and comparison;
association analysis; classification and prediction; cluster analysis; mining complex types of data;
applications and trends in data mining; Models, Methodologies, and Processes; The KDD Process; Generic
Tasks; Broad Themes (Search, Induction, Querying, Approximation, and Compression); Application Areas;
The Good, Bad, and Ugly of Data Mining Practice: Data Dredging, Data Fishing, and Data Scrubbing;
Attribute-Value Learning Techniques; Decision Trees; Decision Lists; Classification and Regression Trees;
Association Rules; Correlations; Rule-Based Mining; Sequential versus Simultaneous Paradigms;
Propositional Representations; Customized Data Structures for Speeding up Data Mining Algorithms;
Relational Mining Techniques: Inductive Logic Programming; Commercial Software such as PROGOL,
Aleph, Golem, FOIL, Tertius, and WARMR; Main Approaches to ILP; Rule Induction, Beam Search,
Logical Decision Trees, Clausal Discovery, Model Selection; Inverse Resolution, Relative Least General
Generalization. Propositionalization Techniques; Recursive Rule Generation. Operators for Efficient Search
of Relational Spaces; Learning from Interpretations; Comparative Merits of Attribute-Value and Relational
Mining Techniques; Domain Theories and Incorporating Prior Background Knowledge; Probabilistic
61
Techniques; Bayesian Networks; Conditional Independence and its Modeling; Inference and Representational
Complexity; Gradient Ascent Training; EM Algorithms; Combining Relational and Probabilistic Techniques
(PRMs); Incremental Learning; Approximations and Tweaks; Techniques from Numerical Analysis and
Statistics; Matrix-theoretic Approaches to Clustering (inc. K-means); Singular Value Decomposition (SVD)
and Principal Component Analysis (PCA); Latent Semantic Indexing (LSI); Semi-Discrete Decompositions;
Non-Negative Matrix Factorizations; Independent Component Analysis (ICA); Latent Variables; Factor
Analysis; Mixed Models; Modeling for Data Mining and Methodology; Spatial Aggregation (SA);
Closing-the-Loop; Sampling Strategies; Feature Extraction; Identifying Relevant Features; Model
Assessment; Bayesian Model Inference and Averaging; Applications: Data Mining Applications in
Bio-informatics, Personalization, Information Retrieval, Web Modeling, Filtering, and Text Processing.
Reference Books:
1) Krzysztof J. Cios, WitoldPedrycz, Roman W. Swiniarski and Lukasz A. Kurgan, Data Mining: A
Knowledge Discovery Approach, published by Springer.
2) Alex A. Freitas, Data and Web Mining with Evolutionary Algorithms, published by Springer.
3) Daniel T. Larose, Discovering Knowledge in Data: An Introduction to Data Mining, published by
Wiley-Interscience.
Objective:
The objective of this course is to enable students to be able to work with wireless environment as well as to
construct and to manage wireless LANs in Windows and Linux environments. Studying this course the
students is to be able to understand the different types of personal, local, wide and metropolitan wireless
networks including Bluetooth, 802.11 LANs, cellular and WiMAX networks.
Outcome:
1. Identify the basic concept of wireless networks;
2. Analyze traffic theories, mobile radio propagation, channel coding, and cellular concepts;
3. Compare and contrast multiple division techniques, mobile communication systems, and existing
wireless networks;
4. Classify network protocols, ad hoc and sensor networks, wireless MANs, LANs and PANs.
Contents:
Introduction to wireless networks; wireless transmission; frequencies; regulations; antennas; wireless signal
propagation; modulation; spread spectrum; cellular system; media access; different types of wireless
communication networks; different generations; mobile communication systems: GSM, HSCSD, GPRS, and
EDGE; wireless telecommunication systems; TETRA; CDMA2000; satellite communication system;
broadcast systems; digital radio; localization systems; wireless LANs; Wi-Fi and WiMAX technologies;
Bluetooth; network protocols; mobile IP; ad-hoc networking; wireless sensor networks; transport protocols;
62
reliable transmission; flow control; support for mobility, wireless WWW; WAP and i-mode; wireless security;
mobile programming using J2ME.
Reference Books:
1) William Stallings, Wireless Communications and Networks, published by Prentice Hall.
2) Ron Price, Fundamentals of Wireless Networking, published by McGraw-Hill/Irwin.
3) Theodore S. Rappaport, Wireless Communications: Principles and Practice, published by Prentice
Hall.
Objective:
Understand the role of software architecture in the development of an enterprise application system. Examine
and compare various architecture view types and styles. Develop the ability to read and understand the
models that are used to document software architecture. Understand the nature of and the advantages and
disadvantages for various architectural choices. Examine and compare centralized vs distributed architectures.
Explore various aspects of client-server architectures including web architectures.
Outcome:
1. Software Architectural perspective and how it differs from lower-level design;
2. Ability to develop and apply a Software Architectural Development Fishbone Diagram;
3. Understand and apply various Software Size and Complexity Estimation Techniques with respect to
requirements;
4. Perform software sizing analysis based on architectural components and requirements analysis.
Contents:
Requirements Engineering in the engineering life cycle; eliciting requirements; modeling and analysis;
communicating the requirements; agreeing requirements; evolving requirements; method engineering;
problem frames; viewpoints-Oriented requirements engineering; procedure and processes; project and risk
management; responsibilities and roles; identification of requirements; specification of requirements;
requirements analysis; tracking of requirements; requirements documentation; documentation of requirements
using natural language; model-based documentation of requirements; checking and reconciling requirements;
requirements Management; requirements engineering in agile methods; fluctuating and conflicting
requirements; communication and coordination breakdown; tools; introduction to design process; design
process and concepts; inception phase; elaboration phase; construction phase; transition phase; software
architecture: control hierarchy; structural partitioning; information hiding: Effective modular design -
functional independence; cohesion, coupling; design specification outline; architectural design; real time
systems; SCM; layered behavioral model of software development process; relations between RE and
software design.
Reference Books:
63
1) I. Gorton, Essential Software Architecture, published by Springer, 2nd Edition.
2) L. Bass, P. Clements and R. Kazman, Software Architecture in Practice, published by
Addison-Wesley.
3) R. Taylor, N. Medvidovic, E. Dashofy, Software Architecture: Foundations, Theory and Practice,
published by Wiley.
Objective:
This course will introduce principles and foundations of distributed databases, including architecture, design
issues, integrity control, and query processing and optimization, transactions, and concurrency control.
Outcome:
1. Explain the techniques used for data fragmentation, replication, and allocation during the distributed
database design process;
2. Evaluate simple strategies for executing a distributed query to select the strategy that minimizes the
amount of data transfer;
3. Explain how the two-phase commit protocol is used to deal with committing a transaction that
accesses databases stored on multiple nodes;
4. Describe distributed concurrency control based on the distinguished copy techniques and the voting
methods.
Contents:
Concepts of distributed database; levels of distribution transparency; distributed database design; translation
of global queries to fragment queries; optimization of access strategies; management of distributed
transaction; concurrency control; distributed database administration; homogeneous and heterogeneous
distributed database; parallel database: basic concepts and design issues; multimedia database system: basic
concepts and design issues; database wire-housing and data-mining concepts and algorithm.
Reference Books:
1) Saeed K. Rahimi and Frank S. Haug, Distributed Database Management Systems: A Practical
Approach, published by Wiley-IEEE Computer Society Pr.
2) Stefano Ceri and Giuseppe Pelagatti, Distributed Databases: Principles and Systems, published by
McGraw-Hill.
64
Laboratory works based on CSE 4459.
Objective:
Introduce the student to analytical tools and methods which are currently used in digital image processing as
applied to image information for human viewing. Then apply these tools in the laboratory in image
restoration, enhancement and compression.
Outcomes:
1. Explain how digital images are represented and manipulated in a computer, including reading and
writing from storage, and displaying;
2. Write a program which implements fundamental image processing algorithms;
3. Be conversant with the mathematical description of image processing techniques and know how to go
from the equations to code.
Contents:
Digital image fundamentals: representation, sampling and quantization, image acquisition, basic relationships
between pixels, imaging geometry; Image transforms: discrete Fourier transform, discrete cosine transform,
Walsh and Hadamard transforms, Hotelling transform; Image enhancement: in spatial domain and in
frequency domain, image smoothing and sharpening; Image restoration: degradation models, inverse filter,
Wiener filter; Color and pseudo-color image processing; Image segmentation: detection of discontinuities,
thresholding, region-oriented segmentation, the use of motion analysis in segmentation.
Reference Books:
1) R. C. Gonzalez and E. E. Woods, Digital Image Processing, Prentice Hall,
2) A. Rosenfeld and A. C. Kak, Digital Picture Processing, Academic Press.
Objective:
The objective of this course is to explain the benefits of simulation and model in a range of important
application areas, demonstrate the ability to apply the techniques of modeling and simulation to a range of
problem areas and evaluate a simulation, highlighting the benefits and the drawbacks.
Outcome:
1. Ability to model deterministic systems and differentiate between nonlinear and linear models;
2. Ability to numerically simulate linear and non-linear ordinary differential equations and deterministic
systems;
65
3. Ability to comprehend and apply advanced theory-based understanding of engineering fundamentals
and specialist bodies of knowledge in the selected discipline area to predict the effect of engineering
activities.
4. Ability to plan and execute a substantial research-based assessment tasks, with creativity and
initiative in new situations in professional practice and with a high level of personal autonomy and
accountability.
Contents:
Simulation methods; model building, random number generator; statistical analysis of results; validation and
verification techniques; Digital simulation of continuous systems; Simulation and analytical methods for
analysis of computer systems and practical problems in business and practice; Introduction to simulation
packages.
Reference Books:
1) Averill M. Law and W. David Kelton, Simulation Modeling and Analysis, published by McGraw-Hill
College.
2) Barry L. Nelson and Mathematics, Stochastic Modeling: Analysis and Simulation, published by
Dover Publications.
Objective:
Able to know the basic principles of pattern recognition theory and the main application domains. Understand
the fundamental pattern recognition methods and algorithms. Apply well –known algorithms to pilot
problems. Select the most efficient algorithm, based on problem requirements. Design the methodology for
pattern recognition problems of medium complexity.
Outcome:
1. Identify areas where Pattern Recognition and Machine Learning can offer a solution.
2. Describe the strength and limitations of some techniques used in computational Machine Learning for
classification, regression and density estimation problems.
3. Describe genetic algorithms, validation methods and sampling technique.
Contents:
Pattern Recognition: Introduction, Importance; Statistical and Neural Pattern Recognition: Bayesian
classifier, Bayes decision theory, discriminant functions and decision surfaces, Bayesian classifier for normal
66
distributions; Linear classifiers: Discriminant functions and decision hyper planes, perceptron algorithm, least
squares methods; Nonlinear classifiers: Two and three layer perceptrons, back propagation algorithm,
Template matching: Optimal path searching techniques, dynamic programming methods, correction methods;
Context dependent classification: Observable and hidden Markov models, Viterbi algorithm; Syntactic
Pattern Recognition: Grammar types, string generation as pattern description, cocke-youngers-kashmi
phasing, tree grammar, graph isomorphism, Match graph, Cliques.
Reference Books:
1) William Gibson, Pattern Recognition, published by Berkley.
2) SergiosTheodoridis and KonstantinosKoutroumbas, Pattern Recognition, published by Academic
Press.
Objective:
The principle objective of this course is to prepare the students with the knowledge of advanced data
communication theories along with different modularization technique and different coding scheme for data
transmission.
Outcome:
1. Comprehensive, theory based understanding of the underpinning natural and physical sciences and
the engineering fundamentals applicable to the engineering discipline.
2. Application of established engineering methods to complex engineering problem solving.
3. Describe the basic theory and operation of analogue communication systems, especially AM and FM
modulation.
4. Describe the fundamentals of digital communication systems, especially baseband signaling, digital
modulation techniques (e.g. FSK, PSK, QAM), inter-symbol interference and error rates.
Contents:
Remote access technologies and vulnerabilities; accessibility; Communication networks; optical
communication; statistical communication theory; satellite communication; wireless and mobile
communication; communication switching systems; random processes; continuous-wave modulation;
continuous-wave; pulse modulation; baseband pulse transmission; signal-space analysis; need for modulation,
amplitude modulation, AM demodulator, SSB modulation, vestigial sideband modulation, AM transmitter and
receiver, noise and bandwidth in AM, carrier communication, basic principles of pulsed and CW radar;
frequency modulation, FM demodulator, phase modulation, FM transmitter and receiver, noise and bandwidth
in FM, ground wave, sky wave and space wave propagation, basic principles of BW and color TV; sampling
theorem, PAM, PWM, PPM, pulse code modulation, noise in PCM, delta modulation, adaptive delta
modulation, DPCM, M’ary system, FDM and TDM; sampling theorem, PAM, PWM, PPM, pulse code
67
modulation, noise in PCM, delta modulation, adaptive delta modulation, DPCM, M’ary system, FDM and
TDM; digital modulation, ASK, FSK, PSK, DPSK, basic principles of optical communication, satellite
comm., mobile comm.; entropy, mutual information, channel capacity, Shannon theorem, Shannon-Hartley
theorem, Shannon-Fano code, Huffman code, parity check code, Hamming’s single error correction code.
Reference Books:
1) John M. Wozencraft and Irwin Mark Jacobs, Principles of Communication Engineering, published by
Waveland Pr Inc.
2) John G. Proakis and MasoudSalehi, Communication Systems Engineering, published by Prentice
Hall.
Objective:
The principle objective of this course is to convergence of video/voice/data, Quality of Service provisioning,
access technologies (wireless, optical, power-line networks) , mobile networking, novel high-bandwidth
applications, P2P networks and sensor networks are examples of areas of active research and growth. This
course attempts to provide an understanding of the broad landscape of existing and emerging networking and
inter-networking technologies.
Outcomes:
1. Be able to describe the advanced functions performed by the Internet Protocol (IP) and supporting
protocols (eg. ICMP, UDP);
2. Be able to describe IP addressing and are able to design an internetwork with assigned addresses and
NAT ;
3. Describe the inner workings of interior routing protocols (eg. RIP and OSPF);
4. Describe IP switching and the operation of MPLS.
Contents:
This course covers the fundamentals of Internet Engineering, including network and MAC addressing, hubs,
switches, routing, IPv4, IPv6, DNS, SNMP, DHCP, and firewalls. This course is a hands-on" lab-oriented
course where the lectures prepare the students for in depth labs using simulated equipment that ISPs use. Upon
completion of the class, students will be able to design and implement simple IP-based networks using both
IPv4 and IPv6, as well as static or dynamic routing. Students will be able to establish basic network
infrastructure such as DHCP, security, and network monitoring. Students will be able to perform
trouble-shooting and fault isolation procedures.
Reference Books:
1) Eve Andersson, Philip Greenspun, and Andrew Grumet, Software Engineering for Internet
Applications, MIT Press.
2) Daniel Minoli, Internet and Intranet Engineering, McGraw-Hill.
Objective:
Students will develop a clear understanding of the motivation for deep learning, and design intelligent
systems that learn from complex and/or large-scale datasets.
Outcome:
1. Describe the fundamental advancements made in deep learning in the past 5 years and explain why
they have led to a small revolution in the field of machine learning and perception in multiple
modalities;
2. Describe how these techniques relate to previous methods that were state of the art, for example
typical computer vision pipelines;
3. Categorize, compare, and contrast various deep learning algorithms and explain which are better
suited for particular types of real-world data or problems than others;
4. Design and carry out a project within their area of interest, apply the learned techniques to new types
of data within this area, and analyze the performance of the algorithms within it.
Contents:
The course will cover connectionist architectures commonly associated with deep learning, e.g., basic neural
networks, convolutional neural networks and recurrent neural networks. Methods to train and optimize the
architectures and methods to perform effective inference with them, will be the main focus. Students will be
encouraged to use open source software libraries such as Tensorflow.
Reference Books:
1) I. Goodfellow, Y. Bengio and A. Courville, Deep Learning, MIT Press, 2016.
69
Objective:
The principle objective of this course is to design interactive products or systems to support people in their
everyday and working lives.
Outcome:
1. Explain the capabilities of both humans and computers from the viewpoint of human information
processing;
2. Describe typical human–computer interaction (HCI) models, styles, and various historic HCI
paradigms;
3. Apply an interactive design process and universal design principles to designing HCI systems;
4. Analyze and identify user models, user support, socio-organizational issues, and stakeholder
requirements of HCI systems;
5. Discuss tasks and dialogs of relevant HCI systems based on task analysis and dialog design;
6. Analyze and discuss HCI issues in groupware, ubiquitous computing, virtual reality, multimedia, and
Word Wide Web-related environments.
Contents:
User interface development: iterative design, rapid prototyping, low-fidelity interactive prototyping,
comparative evaluation of multiple interfaces, evaluation of user interface, heuristic evaluation; UI design
models: system model, interface model, user model; Usability: consistency, simplicity, learnability, efficiency,
safety, ergonomics, aesthetics; Accessibility: kinds of impairments, assistive technology, universal design,
accessibility APIs; Internationalization and Localization: translation, text direction, sort order, formatting,
color conventions, icons; User research methods: experiments, experiment design techniques, field study,
survey; Multimodal signal processing: recognize human emotions through combination of spoken language,
gestures, facial expressions; Case studies.
Reference Books:
1) Alan Dix, Janet Finlay and Gregory D. Abowd, Russell Beale, Human Computer Interaction,
published by Prentice Hall
2) International Design Foundation, Encyclopedia of Human Computer Interaction.
Objective:
The objective of this course is to advance the state of the art in theory and applications of information
switching and networking to bring the students into interest in various aspects of communications switching
and routing such as theory and architecture, tale-traffic theory, mobility and call control, signaling protocol,
70
intelligent networks and service features, switching software architecture, management, economics and
applications of switching and routing systems.
Outcome:
1. Understand and describe the devices and services used to support communications in data networks
and the Internet;
2. Understand and describe the role of protocol layers in data networks;
3. Understand and describe the importance of addressing and naming schemes at various layers of data
networks in IPv4 and IPv6 environments;
4. Design, calculate, and apply subnet masks and addresses to fulfill given requirements in IPv4 and
IPv6 networks;
5. Explain fundamental Ethernet concepts such as media, services, and operations;
6. Build a simple Ethernet network using routers and switches.
Contents:
Introduction of network and network model; interconnection at different layers; relays; Ethernet; different
types of repeaters, hubs, bridges and switches; broadcast and collision domains; campus network; connecting
the switch blocks; VLANs; layer 2 switch and spanning tree protocol; using spanning tree with VLANs;
inter-VLAN routing; multi-layer switching; multicast; traffic isolation; interior routing protocols: RIP, OSPF,
IGRP and EIGRP; autonomous systems; exterior routing protocols: EGP, BGP and IDRP; layer 3 switching;
MPLS; queuing techniques; over provisioning; traffic shaping; and congestion control.
Reference Books:
1) Wendell Odom, Rus Healy and Denise Donohue, CCIE Routing and Switching Certification Guide,
published by Cisco Press, 4th Edition.
2) Douglas E. Comer, Internetworking with TCP/IP, published by Addison-Wesley, 6th Edition.
71