MIS442: Business Applications with ObjectOriented Paradigm OOProgramming Aspects - PowerPoint PPT Presentation

1 / 36
About This Presentation
Title:

MIS442: Business Applications with ObjectOriented Paradigm OOProgramming Aspects

Description:

A paradigm is a way of viewing things and thinking about things. In the last two decades (mid 1970's to the present) popular paradigms have been used: ... – PowerPoint PPT presentation

Number of Views:105
Avg rating:3.0/5.0
Slides: 37
Provided by: jason3
Category:

less

Transcript and Presenter's Notes

Title: MIS442: Business Applications with ObjectOriented Paradigm OOProgramming Aspects


1
MIS442 Business Applications with
Object-Oriented Paradigm (OO-Programming Aspects)
  • Professor Chen
  • School of Business
  • Gonzaga University
  • Spokane, WA 99258
  • chen_at_gonzaga.edu

2
What is a PARADIGM?
  • A paradigm is a way of viewing things and
    thinking about things.
  • In the last two decades (mid 1970s to the
    present) popular paradigms have been used
  • Process ---gt Data ---gt
    O-O
  • Modeling Modeling
    Modeling
  • (DFD) (E/R) (UML,
    OMT)

3
What is the Methodology?
  • Methodology is a series of steps with techniques
    and notations associated with each step.
  • Concepts
  • Techniques
  • Notations
  • Steps

4
OBJECT-ORIENTED METHODOLOGY
  • The technique of object-oriented (OO) methodology
    really has emerged only in the last five to six
    years (early 1990s).
  • The O-O methods organize both information and the
    processing that amanipulates the information,
    according to the real-world objects that the
    information describes.

5
I. OBJECT-ORIENTED CONCEPTS
6
What is an OBJECT ?
7

8
An OBJECT is ...
  • Object Data structure Behavior
  • (attributes) (operations)
  • where Behavior is in a single entity.

9
(No Transcript)
10
Why O-O? (Advantages / Objectives)
  • Understanding problems
  • Communicating with application experts
  • Modeling enterprises
  • Preparing documentation
  • Designing programs and databases

11
Definition of O-O vs. Conventional Programming
  • O-O organizing software as a collection of
    discrete objects that incorporate both data
    structure and behavior.
  • Conventional programming data structure and
    behavior are only loosely connected.

12
II. What is OBJECT-ORIENTED Programming
Language (OOP)?
  • OOP Objects Inheritance Polymorphism

13
II. What is OBJECT-ORIENTED PROGRAMMING (OOP)?
  • OOP Objects Inheritance Polymorphism

14
Object-Based vs. Object-Oriented Languages
  • An object-based language is one in which data and
    operations can be incorporated (encapsulated) in
    such a way that data values can be isolated and
    accessed through the specified class functions.
  • An object-oriented language provides inheritance
    and polymorphism in addition to the features in
    an object-based language.

15
PROGRAMMING IN THE LARGE
  • In order to deal with large-scale programming, we
    must have some way of attacking a problem in a
    systematic way and managing its complexity ...

16
Systems/Software (Development) Life Cycle
(SLC/SDLC)
  • A method that provides information systems
    professionals with step-by-step procedures to
    develop their projects/systems.
  • SOFTWARE ENGINEERING ...

17
Phases of Systems/Software (Development) Life
Cycle (SLC/SDLC)
  • Conceptualization
  • (Requirements) Analysis
  • Design
  • Implementation
  • Testing and Verification
  • Operation, Follow-up, and Maintenance

18
1. Conceptualization
  • Prepare a complete and unambiguous problem
    statement.
  • Users and analysts sign the requirements document.

19
2. (Requirements) Analysis
  • Understand the problem develop a system behavior
    model and determine problem input, output, and
    other relevant data elements.
  • Name each identified data element and develop a
    model of the essential characteristics
    (attributes and operations) for each element.

20
3. Design
  • Using the system and data models developed during
    requirements analysis, perform a top-down design
    of the system.
  • For each system component, identify key data
    elements and subordinate functions using
    structure charts.

21
4. Implementation
  • Write algorithms and pseudocode descriptions of
    individual functions.
  • Code the solution.
  • Debug the code.

22
5. Testing and Verification
  • Test the code, verifying that it is correct. Each
    data modeling component should be tested
    separately, before all components are tested as
    an integrated whole.
  • Involve users and special testing teams in all
    system tests.

23
6. Operation, Follow-up, and Maintenance
  • Run the completed system.
  • Evaluate its performance.
  • Remove new bugs as they are detected.
  • Make required changes to keep the system up to
    date.
  • Verify that changes are correct and that they do
    not adversely affect the systems operation.

24
(No Transcript)
25
Software Engineering Goals That Drive Object Use
  • Why should we base our programming around
    objects?
  • Advantages follow ...

26
1. Ease of Design and Code Reuse
  • Once the code works properly, the use of objects
    increases your ability to reuse a design or code
    you created for one application within a second
    application.
  • ...
  • REUSABILITY

27
2. Increased Reliability
  • Once proper testing has been previously performed
    on object libraries, the use of existing
    (working) code will improve your programs
    reliability.

28
3. Ease of Understanding
  • By allowing designers and programmers to focus on
    smaller pieces of a system and providing a
    framework within which designers can identify
    objects, the operations performed on the objects,
    and the information objects must store, object
    use helps programmers focus on and understand key
    system components.

29
4. Increased Abstraction
  • Abstraction lets designers and programmers look
    at the big picture--- temporarily ignore
    underlying details so they can work with system
    elements that are more easily understood. For
    example, by focusing only on the word processor
    objects earlier in this chapter, the
    implementation of a word processor became much
    less intimidating.

30
5. Increased Encapsulation
  • Encapsulation groups all of the pieces of an
    object into one neat package. For example, the
    file class previously defined in this chapter
    combines the functions and data fields a program
    needs to work with a file.

31
5. Increased Encapsulation (Conti.)
  • The programmer who is working with the file class
    does not need to know each piece of the class,
    only that they need to use the class within their
    program. The class, in turn, will bring with it
    all the necessary pieces.

32
6. Increased Information Hiding
  • Information hiding is the ability for your
    program to treat a function, procedure, or even
    an object, as a black box, using the item to
    perform a specific operation without having to
    know what goes on inside. In Chapter 1, for
    example, your programs used I/O stream objects
    for input and output without having to understand
    how the streams work.

33
OBJECT ORIENTATIONS CONTRIBUTIONS . . .
34
OBJECT ORIENTATIONS CONTRIBUTIONS
35
NEXT ...
36
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com