This repository contains a curated collection of object-oriented system analysis and design projects. The projects focus on converting software requirements into structured models, class responsibilities, behavioral workflows, and implementation-ready Java prototypes.
The repository emphasizes requirements analysis, use case modeling, CRC-style responsibility modeling, UML-inspired class modeling, sequence-level workflow analysis, state-based system behavior, and Java-based software simulation. Each project is organized as a clean technical implementation package with source code, concise documentation, and selected design artifacts where appropriate.
Object-oriented system analysis and design connects software requirements with implementable system structures. The projects in this repository demonstrate how domain requirements can be transformed into object models, responsibility assignments, interaction workflows, and executable Java prototypes.
Core technical themes include:
- Requirements analysis and functional decomposition
- Use case modeling for user-system interaction
- CRC-style class responsibility modeling
- UML-inspired class and relationship modeling
- Sequence-style workflow analysis
- State-based behavior modeling
- Java object-oriented implementation
- Domain model simulation and technical documentation
Core skills: Java, Object-Oriented Programming, System Analysis, System Design, OOAD, Requirements Analysis, Use Case Modeling, CRC Cards, Class Modeling, UML, Sequence Diagrams, State Machine Diagrams, Software Simulation, Technical Documentation
| No. | Project | Topic | Purpose | Main Concepts | Skills / Tags |
|---|---|---|---|---|---|
| 01 | AI Visual Inspection System Simulation | Object-oriented inspection workflow simulation | Model an AI-assisted defect inspection system and implement the analysis as Java classes | Use cases, CRC responsibilities, class collaboration, inspection workflow, reporting workflow | Java, OOP, OOAD, UML, System Design, Simulation |
| 02 | Workout Membership Booking System | Membership, booking, and access-control system design | Model a membership-based workout system with booking, ticket validation, payment, entry logging, body measurement, and discount workflows | Use case analysis, CRC cards, class diagram, sequence workflows, state machine modeling, Java prototype | Java, OOP, OOAD, Use Cases, CRC Cards, Class Modeling, Sequence Diagrams, State Machines |
| Skill / Concept | 01 AI Visual Inspection | 02 Workout Membership Booking |
|---|---|---|
| Requirements analysis | ✓ | ✓ |
| Use case modeling | ✓ | ✓ |
| CRC-style responsibility modeling | ✓ | ✓ |
| Object-oriented analysis | ✓ | ✓ |
| Object-oriented design | ✓ | ✓ |
| UML-inspired class modeling | ✓ | ✓ |
| Class collaboration modeling | ✓ | ✓ |
| Sequence / interaction workflow modeling | ✓ | |
| State-based behavior modeling | ✓ | |
| Java class implementation | ✓ | ✓ |
| Domain model simulation | ✓ | ✓ |
| Technical documentation | ✓ | ✓ |
This project models an AI-assisted visual inspection system using object-oriented analysis and Java implementation. It focuses on representing inspection-related components such as cameras, inspection records, AI model settings, alerts, dashboards, reports, users, and maintenance interfaces as collaborating domain objects.
Key demonstrated skills:
- Translating system requirements into candidate classes
- Assigning class responsibilities and collaborators
- Modeling inspection and reporting workflows
- Implementing a small Java simulation from analysis models
- Documenting system behavior in a clean technical format
This project models a membership-based workout and facility-access system using object-oriented analysis and Java implementation. It covers membership tickets, payment processing, personal training session booking, paid group class booking, QR-based entry and exit, body measurement recording, trainer schedule access, and restaurant discount transactions.
Key demonstrated skills:
- Modeling multiple user roles and system workflows
- Designing use cases for booking, payment, access control, and measurement recording
- Building CRC cards for class responsibility analysis
- Creating class relationships using inheritance, association, and collaboration
- Analyzing booking, payment, validation, and access workflows
- Modeling system state changes for membership, payment, gate access, and booking lifecycle
- Implementing the core domain model in Java
object-oriented-system-analysis/
├── README.md
├── .gitignore
├── 01-ai-visual-inspection-system/
│ ├── README.md
│ ├── src/
│ └── results/
└── 02-workout-membership-booking-system/
├── README.md
├── src/
└── results/
Some project folders may omit directories that are not required for the specific implementation.
Each project folder includes its own README.md with project-specific instructions. Java projects can typically be compiled and executed from the project folder using commands similar to:
javac -d build src/*.java
java -cp build Main