You are on page 1of 3

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE

First Semester, 2017-2018


Instruction Division
Course Handout (Part 2)
In addition to the Part-1 (general Handout for all courses appended to the timetable) this portion gives
further specific information regarding the course.

Course Number : CS F213


Course Title : Object Oriented Programming
Instruction Team : TSRK Prasad (I/C)
Course Website : http://prasad.talasila.in/oop

Course description:
Object orientation concepts, theories and principles; fundamental concepts of the object model:
classes, objects, methods and messages, encapsulation and inheritance, interface and
implementation, reuse and extension of classes, inheritance and polymorphism; overloading and
overriding; static and dynamic binding; multi-threaded programming; event handling and exception
handling; process of object oriented requirements specification, analysis and design; notations for
object-oriented analysis and design; case studies and applications using some object oriented
programming languages. Object Oriented Design Patterns: Behavioral, Structural and Creational.

Scope and Objective:


This course provides the students with an understanding in object-oriented programming with
emphasis on developing large-scale projects. These topics will be further explained in lab sessions
using Java as the programming language. More advanced programming concepts such as
concurrency, generics and persistence will also be taught. After successfully completing this course,
students will have good understanding of object oriented analysis and design process, and its'
implementation in Java. After doing this course the student will be able to,
(i) Understand and demonstrate object-oriented concepts in Java programming language.
(ii) Practice object-oriented thinking in software development
(iii) Follow object-oriented analysis and design approach to produce suitable UML diagrams for a
project

The design tasks are to:


Break the programming task into manageable parts.
Define the relationships among the parts.
Incorporate any required or appropriate pre-existing library components.
Keep the design independent of implementation language and hardware details. (We can,
however, use knowledge of high-level architectures and language paradigms.)

Text Books:
T1. Objects First with Java: A Practical Introduction Using BlueJ, David J. Barnes and Michael
Kolling, Pearson Education, 5th Edition, 2012.
T2. Robert C. Martin, UML for Java Programmers, Pearson Education, 2004.
References:
R1. Thinking in Java, Bruce Eckel, Pearson Education, 4th Edition, 2007.
R2. Java 8 Pocket Guide, Robert Liguori and Patricia Liguori, OReilly, 2014.
R3. UML Distilled, Martin Fowler with Kendall Scott, Pearson Education, 3rd Edition, 2007.
R4. Developing Software with UML, Bernd Oestereich, 2nd Edition, Addison Wesley, 2002.
R5. Object-Oriented Analysis and Design with Applications, Grady Booch, Robert A. Maksimchuk,
Michael W. Engle, Bobbi J. Young, and Jim Conallen, Pearson Education, 3rd Edition, 2007.
R6. The Object Primer, Scott W. Ambler, 2nd Edition, 2001.
R7. Java 8 Lambdas, Richard Warburton, O'Reilly / Shroff Publishers & Distributors Pvt Ltd, 2014.

Lecture Schedule:
Topic Ref. Lectures

Objects, Classes and Collections T1: Ch1 to Ch5 9


UML diagrams T2: Ch1 to Ch4, Ch9, Class notes 3
Class design and testing, Enumerated T1: Ch6 to Ch7 5
Types R1: Enumerated Types
Class notes
Abstraction, Encapsulation and T1: Ch8 to Ch10 5
Inheritance
Exceptions T1: Ch12, Class notes 2
Nested classes, Generics and R1: Inner Classes, Generics, 5
Concurrency Concurrency
Software Process, Case Studies, T2: Ch7, T1: Ch13, Class notes 5
Design Patterns
Advanced UML T2: Ch3, Ch4 and Ch9 2
Object-Oriented Design Principles T2: Ch6, Ch8 2
Object Model R5: Ch2 2
Optional Topics: Class notes 3
Servlets, Databases
Total 43

Evaluation Scheme:
Component Mode Date Marks Percentage
Mid-Term Test Open Book As per time table 75 25%
Regular Labs+ Open Book As per time table 45 15%
Online Quiz Closed Book To be announced 30 10%
Lab Exam Closed Book To be announced 45 15%
Comprehensive Exam Closed Book As per time table 105 35%
Course Total 300 100%
Best 5 out of 7 evaluated labs shall be considered for grading.
+
Chamber Consultation Hours: Chamber A-420, TBA

Online Quiz
The online quiz shall be conducted on Photon. The quiz shall cover the reading of the following books.
R1. Robert C Martin, Clean Coder, Pearson Education, 2012.
R2. Martin Campbell-kelly, From Airline Reservations to Sonic the Hedgehog - A History of the
Software Industry, MIT Press, 2003.

Regular Lab Evaluation:


The evaluative labs shall be evaluated using Autlab auto evaluation software. The manual evaluation
code is neither encouraged nor undertaken in the lab.

Lab Exam:
Lab examination shall be conducted an an online coding test of 2 hour duration.

Plagiarism Policy:
Any unattributed copying of content is considered plagiarism. Students copying code snippets and UML
diagrams without attribution clearly fall under plagiarism category. Using unfair means in an evaluation
component also constitutes plagiarism.
In case of confirmed plagiarism, the student receives negative marks in the respective evaluation
component that is equal to the maximum marks of the given evaluation component. In case of two or
more violations, disciplinary committee action may be initiated against the violators.

Make-Up Policy:
Make-up for the tests would be given to students who are unable to take the test due to ill health or any
other unavoidable reasons. Where ever possible, prior permission from instructor-in-charge is
mandatory for granting of make-up. PLEASE NOTE THAT IT IS NOT POSSIBLE TO GRANT
MAKEUP FOR LABORATORY SESSIONS.

Notices:
All the notices of the course, including the course grades, shall be available on the course homepage.

Instructor-in-Charge
CS F213

You might also like