ScholarQuill logoScholarQuillUniversity Notes
  • Notes
  • Past Papers
  • Blogs
  • Todo
Login
ScholarQuill logoScholarQuillUniversity Notes
Login
NotesPast PapersBlogsTodo
More
SubjectsDiscussionCGPA CalculatorGPA CalculatorStudent PortalCourse Outline
About
About usPrivacy PolicyReportContact
Notes
Past Papers
Blogs
Todo
Analytics
    Current Subject
    🧩
    Object Oriented Analysis and Design
    COMP3150
    Progress0 / 17 topics
    Topics
    1. Principles of Object Technology2. OOP Review3. Principles of Modeling4. OOA&D Overview5. OO Development Process6. Requirements Engineering: Use Cases and Prototyping7. Class Models8. Interaction Diagrams9. Verification and Validation10. Architectural and Detailed Design11. Class Diagrams12. State Machines and Diagrams13. Implementation and Package Diagrams14. Activity Diagrams15. OO Patterns16. Object Diagram, Component Diagram, and Deployment Diagram17. Network Diagram
    COMP3150›OO Development Process
    Object Oriented Analysis and DesignTopic 5 of 17

    OO Development Process

    3 minread
    530words
    Beginnerlevel

    📘 Object-Oriented (OO) Development Process


    🔹 1. Definition

    The Object-Oriented Development Process is a step-by-step method used to develop software by applying object-oriented principles such as classes, objects, inheritance, and encapsulation.

    👉 Simple idea: It describes how a system is built using objects, from understanding requirements to final implementation.


    🔹 2. Overview of the OO Development Process

    Requirements → Analysis → Design → Implementation → Testing → Maintenance
    

    Each phase transforms the system from an idea into a working product.


    🔹 3. Phases of OO Development ⭐


    🔸 3.1 Requirements Gathering

    Goal: Understand what the user needs.

    🔹 Activities:

    • Collect requirements from stakeholders
    • Identify system goals
    • Define scope

    Output:

    • Requirement Specification Document

    Example: Library system → Users want to issue and return books


    🔸 3.2 Object-Oriented Analysis (OOA)

    Goal: Identify key objects and system behavior.

    🔹 Steps:

    1. Identify actors
    2. Identify use cases
    3. Identify classes/objects
    4. Define relationships

    Output:

    • Use Case Diagram
    • Conceptual Class Diagram

    Diagram Description: Actors (stick figures) interacting with system functions (ovals)


    🔸 3.3 Object-Oriented Design (OOD)

    Goal: Convert analysis into detailed system design.

    🔹 Steps:

    1. Define class structure
    2. Add attributes & methods
    3. Design object interactions
    4. Apply design principles

    Output:

    • Class Diagram
    • Sequence Diagram
    • Activity Diagram

    Diagram Description: Classes represented as boxes with attributes and methods


    🔸 3.4 Implementation (Coding)

    Goal: Convert design into actual code.

    🔹 Activities:

    • Write code using OOP languages (Java, C++, Python)
    • Implement classes and methods

    Example:

    class Book {
      String title;
      void issue() {}
    }
    

    🔸 3.5 Testing

    Goal: Ensure the system works correctly.

    🔹 Types:

    • Unit Testing
    • Integration Testing
    • System Testing

    Purpose:

    • Find and fix errors

    🔸 3.6 Maintenance

    Goal: Improve and update system after deployment.

    🔹 Activities:

    • Fix bugs
    • Add new features
    • Optimize performance

    🔹 4. Iterative Nature of OO Development

    👉 Important Concept:

    The OO process is iterative and incremental, not strictly linear.

    • You may revisit earlier phases
    • System improves step by step

    🔹 5. Key Concepts Used in the Process

    • Abstraction → Simplify system
    • Encapsulation → Protect data
    • Inheritance → Reuse code
    • Polymorphism → Flexible behavior

    🔹 6. Example (Library System)


    🔹 Step 1: Requirements

    • Issue book
    • Return book

    🔹 Step 2: Analysis

    • Objects: Book, Member, Librarian

    🔹 Step 3: Design

    Class: Book
    - title
    - author
    + issue()
    + return()
    

    🔹 Step 4: Implementation

    • Write code for Book class

    🔹 Step 5: Testing

    • Check if issue/return works

    🔹 7. Advantages of OO Development Process

    • Better planning and structure
    • High reusability
    • Easy maintenance
    • Scalable systems
    • Real-world mapping

    🔹 8. Important Rules / Guidelines

    • Always start with clear requirements
    • Identify objects carefully
    • Use UML diagrams
    • Maintain low coupling, high cohesion
    • Test continuously

    🔹 9. Likely Exam Questions

    1. Define OO Development Process.
    2. Explain phases of OO development.
    3. What is Object-Oriented Analysis?
    4. Differentiate OOA and OOD.
    5. Explain iterative nature of OO development.
    6. What is the role of testing in OO process?
    7. Describe implementation phase.
    8. Explain maintenance with examples.
    9. Draw OO development lifecycle diagram.
    10. Advantages of OO development process.

    🔹 10. Quick Revision Summary 🧠

    • OO Development = Building software using objects step-by-step

    • Phases:

      • Requirements
      • Analysis
      • Design
      • Implementation
      • Testing
      • Maintenance

    👉 Remember Trick: "RADITM" (R → Requirements, A → Analysis, D → Design, I → Implementation, T → Testing, M → Maintenance)


    Previous topic 4
    OOA&D Overview
    Next topic 6
    Requirements Engineering: Use Cases and Prototyping

    Past Papers

    Open this section to load past papers

    Click on Show Past Papers to see past papers.
    On This Page
      Reading Stats
      Est. reading time3 min
      Word count530
      Code examples0
      DifficultyBeginner