CS 3050 Object-Oriented Analysis and Design. Objectives What is “Object-Oriented?” Object-Oriented Approach Vs. Structured Approach How Has the Object-Oriented.

Slides:



Advertisements
Similar presentations
An Introduction to Programming General Concepts. What is a program? A program is an algorithm expressed in a programming language. programming language.
Advertisements

Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition
BITS Pilani Avinash Gautam Department of Computer Science and Information Systems.
IMS1805 Systems Analysis Topic 3: Doing Analysis (continued from previous weeks)
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
Object Oriented System Development with VB .NET
OBJECT ORIENTED ANALYSIS & DESIGN Vassilka Kirova Department of Computer & Information Science NJIT.
1 CMSC 132: Object-Oriented Programming II Software Development IV Department of Computer Science University of Maryland, College Park.
Visual Basic Introduction IDS 306 from Shelly, Cashman & Repede Microsoft Visual Basic 5: Complete Concepts and Techniques.
Chapter 2: Developing a Program Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
Approaches to System Development Chapter 3. Methodologies, Models, Tools and Techniques A system development methodology –provides guidelines to follow.
1 CS101 Introduction to Computing Lecture 19 Programming Languages.
Introduction To System Analysis and design
OBJECT ORIENTED DESIGN Mohammad Amin Kuhail M.Sc. (York, UK)  Introduction to Object Oriented Design & Analysis  University of Palestine  Faculty of.
INFO415 Approaches to System Development: Part 2
“Object-orientation” – what is it all about? Gill Harrison, Innovation North.
BCS 2143 Introduction to Object Oriented and Software Development.
CHAPTER ONE Problem Solving and the Object- Oriented Paradigm.
1 SYS366 Lecture 1: Introduction to Systems. 2 What is Software Development? Software Development implies developing some software – but it does not involve.
Two Approaches to System Development
CS101 Introduction to Computing Lecture Programming Languages.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Introduction To System Analysis and Design
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Methodologies of the SDLC Traditional Approach to SDLC Object-Oriented Approach to SDLC CASE Tools.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
Systems Analysis and Design in a Changing World, 6th Edition
Dale Roberts Object Oriented Programming using Java - Introduction Dale Roberts, Lecturer Computer Science, IUPUI Department.
Learners Support Publications Object Oriented Programming.
OBJECT-ORIENTED SOFTWARE DEVELOPMENT PROCESS BTS430 Systems Analysis and Design using UML.
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (1/2)
Java Fundamentals Usman Ependi UBD
Basic Concepts of Object Orientation Object-Oriented Analysis CIM2566 Bavy LI.
PC204 Lecture 5 Programming Methodologies Copyright 2000 by Conrad Huang and the Regents of the University of California. All rights reserved.
Business Applications with Object-Oriented Paradigm (Modeling Concepts) Professor Chen School of Business Gonzaga University Spokane, WA
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
Systems Analysis and Design in a Changing World, 6th Edition
MANAGING COMPLEXITY Lecture OO01 Introduction to Object-oriented Analysis and Design Abstract Data Types.
Basic Characteristics of Object-Oriented Systems
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (1/2)
ITEC 4010: Systems Analysis and Design II. Lecture 3 System Development Part II Review Professor Peter Khaiter.
1 THE OBJECT-ORIENTED TECHNOLOGY: An Executive Summary 서울대학교 컴퓨터공학부 Internet Database Lab 교수 김형주 Spring 2007.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
CPS120 Introduction to Computer Science High Level Language: Paradigms.
Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their.
Object Oriented Systems Design
Programming paradigms
Object Oriented Programming
Sachin Malhotra Saurabh Choudhary
Object-Oriented Analysis and Design
Programming in Java Sachin Malhotra, Chairperson, PGDM-IT, IMS Ghaziabad Saurabh Chaudhary, Dean, Academics, IMS Ghaziabad.
CS101 Introduction to Computing Lecture 19 Programming Languages
An Introduction to Programming
OBJECT ORIENTED PROGRAMMING overview
Ada – 1983 History’s largest design effort
Introduction To System Analysis and Design PART 2
Object Oriented Analysis and Design
Object-Oriented Programming
Overview of Programming Paradigms
Basic OOP Concepts and Terms
An Introduction to Programming
CS 2704 Object Oriented Software Design and Construction
Presentation transcript:

CS 3050 Object-Oriented Analysis and Design

Objectives What is “Object-Oriented?” Object-Oriented Approach Vs. Structured Approach How Has the Object-Oriented Approach Evolved? What are the Benefits of the Object- Oriented Approach?

What is “Object-Oriented?” A computer system is viewed as a collection of objects. These objects have certain features, or attributes. They can also exhibit certain behaviors Similar things can be grouped and classified

What is “Object-Oriented?” Things or objects also interact such as People or other objects can interact with one another In building an information system, identify the objects that are needed We need only to know what the objects do and use them. Called this the building block approach

Object-Oriented Paradigm Capitalize on Object Oriented Programming (OOP) Models Real World Development Time Reduced Code Reuse Easier Class is a Representation of a System Data Behavior Encapsulation provides Modularity

Other Design Methodologies Functional Decomposition Data Decomposition Relational DB Artificial Intelligence/Expert Systems

Procedural vs. OOP Algorithmic Main Building Block: Procedure Functional Decomposition Difficult to Maintain Object-Oriented Main Building Block: Class Object is an instance of a Class Objects has identity, state, and behavior

Procedural vs. OOP

Object-Oriented Approach Vs. Structured Approach Structured Traditional approach: (See Fig 1.2) Computer systems is viewed as a collection of computer programs Procedural approach is usually complex. Three logic structures characterize structured programming : - sequence of set of instructions - choice on set of instructions - repetition of a set of instructions.

Structured methods and rules for more complex problems Structured systems analysis - hierarchy of procedures using - process model : Data Flow Diagrams - Data model: ER Diagrams Structured systems design – organizing smaller programs (Modular) & using a structure chart as a guideline for modular programming -hierarchy of smaller programs Object-Oriented Approach Vs. Structured Approach

Data Flow Diagrams

Entity-Relationship Modeling

Object Oriented Approach: New methods, rules and concepts are defined ( See Fig 1.1 ) Object-Oriented Analysis : - Defines all of the types of objects that are part of the user’s work environment Object-Oriented Design: -Defines additional types of objects, the user interface and operating environment and ways in which they interact Object-Oriented Approach Vs. Structured Approach

Object Oriented Programming: -programs written that define all objects to include their attributes and behaviors Structured & Object Oriented approaches are different in many ways BUT are also similar - the concept of identifying business events & defining users’ requirements - data modeling concepts & techniques - GUI & Internet Websites Object-Oriented Approach Vs. Structured Approach

How has the Object-Oriented Approach Evolved? SIMULA was first OO programming language in mid- sixties Smalltalk developed by Xerox in the seventies was instrumental in popularizing GUI interface C++ & Pascal with OO features arose in the eighties Object Oriented COBOL in the nineties More recently - pure object Oriented Java, J++ and VB Current OO methods use UML (Unified Modeling Language) to define constructs and models.

What are the Benefits of OO OO approach addresses THREE pervasive problems with traditional systems development Quality Productivity Flexibility Small, small-contained manageable objects reduces the complexity of the system development Reuse can greatly increase productivity Adding and changing objects can be done without interfering with the rest of the system