You are on page 1of 14

Object Oriented Programming

Application Architect Program


Concept Note & Problem statement – Case study - Milestone 1

1
Index

S.No Topic Slide No.


1 Introduction to Case study 3
2 Introduction to OOPs Concepts 4-9
3 Basic information about the Case study to be developed 10-11
4 Case Study Deliverables by the Candidate 12-13

2
Object Oriented Programming

Introduction to the Case Overview


This case study gives an insight to the OOPs and explain
its programming paradigm based on the concept of "objects", which
are data structures that contain data, in the form of fields. This also
gives an overview of OOPs concepts.

3
Object Oriented Programming

Object Oriented Programming Overview


• Everything in the world is an object
• In the past, information systems used to be defined primarily by their
functionality: Data and functions were kept separate and are linked
together by means of input and output relations
• Any system is composed of objects (certainly a system is also an object)
• The evolution and development of a system is caused by the
interactions among the objects inside or outside the system

4
Object Oriented Programming

Classes and Objects


Classes:
A class is not an object. (But it’s used to
construct them). A class is a blue print for an
Object
• Classes provide the structure for objects
• Define their prototype
• Classes define:
• Set of attributes
• Also called state
• Represented by variables and
properties
• Behavior
• Represented by methods
• A class defines the methods and types of
data associated with an object
5
Object Oriented Programming

Classes and Objects


Object:
An Object is an instance of a Class like an
entry in your address book
• Creating an object from a class is called
instantiation
• An object is a concrete instance of a
particular class
• Objects have state
• Set of values associated to their
attributes
• Example:
• Class: Account
• Objects: Ivan's account, Peter's
account

6
Object Oriented Programming

The Principles of OOP


Inheritance
A class can extend another class, inheriting all its
data members and methods. The child class can
redefine some of the parent class's members and
methods and/or add its own

Abstraction
Abstraction means ignoring irrelevant features,
properties, or functions and emphasizing the
relevant ones. Relevant to the given project (with an
eye to future reuse in similar projects)
Abstraction = managing complexity

7
Object Oriented
Programming
The Principles of OOP
Encapsulation
Encapsulation means that all data members (fields) of
a class are declared private.

• Some methods may be private, too

The class interacts with other classes (called the


clients of this class) only through the class’s
constructors and public methods. Constructors and
public methods of a class serve as the interface to
class’s clients.

8
Object Oriented
Programming
The Principles of OOP

Polymorphism
Ability to take more than one form
• A class can be used through its parent
class's interface
• A subclass may override the implementation
of an operation it inherits from a superclass
(late binding)

Polymorphism allows abstract operations to be


defined and used
• Abstract operations are defined in the base
class's interface and implemented in the
subclasses

9
Introduction to Automated
Teller Machine

ATM is an electronic
telecommunications device that
enables the customers of
a financial institution to
perform financial transactions,
particularly cash withdrawal,
without the need for a
human cashier, clerk or bank
teller. ATM is enabled by a
software programing which
directly connected to core banking Automated Teller Machine Business
application of respective Bank.
Process Diagram for Understanding

10
Business Process EPC
Diagram for ATM

11
Implementing the ATM
system from its UML design

Prepare a Class diagram with visibility markers

Candidate needs to articulate the ATM functionality. He/she


should also work on, how the ATM would be integrated with
other application considering OOPs in mind.

12
Implementing the ATM
system from its UML design

Prepare a Class diagram with navigability arrows

Candidate needs to articulate the ATM functionality.


He/she should also work on, how the ATM would be
integrated with other application considering OOPs
in mind.

13
Disclaimer:
This case study don’t represent the actual system architecture or
system components. This is only for training purpose. It doesn’t
represent any client’s application & its confidential data.
Information are captured by our external SME from public
sources. This document is confidential to our client (HCL) Internal
Use only and not meant for commercial activities.

14

You might also like