Visual Basic: An Object Oriented Approach 2 – Designing Software Systems.

Slides:



Advertisements
Similar presentations
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Advertisements

Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Ch 12: Object-Oriented Analysis
Visual Basic: An Object Oriented Approach 6: Object Modelling.
Object-Oriented Analysis and Design
OOAD Placement Training 1 Prepared by G.Naveen Sundar, Karunya University.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
UML – Class Diagrams.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Requirements Analysis 2 What objects collaborate to achieve the goal of a use case?
Object-oriented Programming Concepts
© Copyright Eliyahu Brutman Programming Techniques Course.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Modelling classes Drawing a Class Diagram. Class diagram First pick the classes –Choose relevant nouns, which have attributes and operations. Find the.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
Use Case Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
Unified Modeling Language
Unified Modeling Language(UML) BY
The chapter will address the following questions:
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
Object Oriented Software Development
Introduction to Object Oriented Design. Topics Designing Your Own Classes Attributes and Behaviors Class Diagrams.
BCS 2143 Introduction to Object Oriented and Software Development.
1 A Student Guide to Object- Orientated Systems Chapter 4 Objects and Classes: the basic concepts.
OBJECT AND CLASES: THE BASIC CONCEPTS Pertemuan 8 Matakuliah: Konsep object-oriented Tahun: 2009.
An Object-Oriented Approach to Programming Logic and Design
Introduction to Sequence Diagrams
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
Chapter 6 Object-Oriented Java Script JavaScript, Third Edition.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Object Oriented Programming Concepts. Object Oriented Programming Type of programming whereby the programmer defines the data types of a data structure.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 13 Introduction to Classes.
Systems Analysis and Design in a Changing World, 3rd Edition
NI ©UNITEN 2000/01 1 Faculty of Applied Engineering and Urban Planning Software Engineering Department Class Diagram Faculty of Information system Technology.
Object-Oriented Design Simple Program Design Third Edition A Step-by-Step Approach 11.
Structural Modeling Chapter 7. Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes in.
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
Design Model Lecture p6 T120B pavasario sem.
Learners Support Publications Object Oriented Programming.
Domain Classes – Part 1.  Analyze Requirements as per Use Case Model  Domain Model (Conceptual Class Diagram)  Interaction (Sequence) Diagrams  System.
Chapter 4 Basic Object-Oriented Concepts. Chapter 4 Objectives Class vs. Object Attributes of a class Object relationships Class Methods (Operations)
Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.
CLASS DIAGRAMS A classy approach to objects. The Basic Class Diagram  Class Name  Attributes (- indicates private each would have properties or accessor/mutator.
Chapter 7 Classes and Methods III: Static Methods and Variables Lecture Slides to Accompany An Introduction to Computer Science Using Java (2nd Edition)
McGraw-Hill/Irwin© 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 17 Object-Oriented Design and Modeling Using the UML.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
Inf 43: Introduction to Software Engineering May 7, 2016.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Object-oriented and Structured System Models
ATM OO Design and Implementation Case Study
Physical Data Model – step-by-step instructions and template
Unified Modeling Language
Object Oriented Concepts -I
Object Oriented Design Model
Patterns.
Copyright 2007 Oxford Consulting, Ltd
Object Oriented Analysis and Design
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Object Oriented System Design Class Diagrams
Programming For Big Data
Presentation transcript:

Visual Basic: An Object Oriented Approach 2 – Designing Software Systems

Class and Object A Class is a template for an Object Develop a class – get many objects A Class defines how an object is encapsulated Some parts of an object are not accessible by a user of the object (Private) Other parts define the object’s interface with its user (Public) In general, object data is private, and the operations that are provided to work with it are public The attributes or properties of an object reflect its internal data, and are public operations for accessing it

Class/Object Diagrams We can depict a class by describing its interface We can depict an object by stating its class and showing its property values

Object Relationships There are a number of ways that objects can interact in a program Inheritance – a Class relationship Composition – a Class relationship Aggregation – a Class relationship Collaboration (message passing) – an Object relationship Class relationships are defined for the whole class Object relationships occur between specific objects, or instances of a class

Inheritance One class of objects can be created as a specialist version of another class e.g. a scientific calculator is a specialist type of calculator There are generally considered to be two types of inheritance Code inheritance – an existing class is reused as the basis for a new class Interface inheritance – a new class conforms to the same interface as an existing class Visual Basic only implements the latter The next version of Visual Basic will implement Code Inheritance Calculator Scientific Calculator

Composition An object can be made up of several other objects e.g. an message has a recipient address, a subject and a body A powerful tool for creating complex classes Top-down decomposition/bottom-up composition bodyrecipient address subject message

Aggregation An object can contain multiples of other objects e.g. a spreadsheet has a number of cells Aggregation is another form of composition Only difference is that multiplicity is provided for On the diagram, can use * for many objects, a specific number, or allowable range (e.g ) cell spreadsheet *

Collaboration (message passing) An object can invoke the services of another e.g. a document can send data to a printer A ‘message’ is how one object gets another to do something for it Message can include information to be passed to the serving object Message format also allows for information to be returned from the serving object :a document :System Printer :print (“Hello World”)

Classes Candidates for a class Are things that are named in the system description at the requirements stage Can not normally be defined as a simple value (e.g. colour, length, number of wheels) These are attributes, also known as Properties Will normally have certain behaviours, operations or actions associated with them Can support interactions with other things Are able to alter their state in response to messages

Designing Classes and Interactions Start by defining how a user will interact with a class or set of classes A Use-Case diagram shows this Indicates user and interactions with the system (possibly one class) as a whole

Define a class From the use-case diagram Identify class(es) required Decide on Properties of class Decide on Methods of class

Properties and Methods A Property of a class is some attribute that each object in the class has its own copy of can take on a number of possible values can be complex - a Property can be an object can be defined in such a way that it can be retrieved, or… changed, or… both…… in response to a message A Method is an operation that any object of class can perform can require extra information to do its job can return a result to the object that invoked it is able to alter the internal data of an object of the class

Messages A Message is a request to invoke a Method or access a Property of an object normally will come from another object can be in response to an event that has occurred – e.g. the user has clicked a mouse button A message describes the entire interaction the object that sent it the object that is to receive it information passed along with it (e.g. a new Property value) any result that it has (e.g. the result of a calculation performed by the receiving object)

Object Interactions The ATMMachine object sends these messages: Deposit – must include the amount to be deposited Withdraw – must include the amount to be withdrawn Balance – will return a result – the account balance The AnAccount object (a member of the Account class), is the recipient of the messages

Summary A Class is a template for one or more objects an object is an instance of class Classes and Objects relate to other classes or Objects in various ways Classes define (and Objects have) Properties Methods An interaction between objects is done by one object passing a message to another