Useful Links
Computer Science
Programming
UML and Object-Oriented Design
1. Foundations of Object-Oriented Thinking
2. Introduction to UML (Unified Modeling Language)
3. Structural UML Diagrams
4. Behavioral UML Diagrams
5. Object-Oriented Design Principles
6. Design Patterns in UML
7. Object-Oriented Analysis and Design Process
8. UML Tools and Methodologies
9. Advanced UML Concepts
Object-Oriented Analysis and Design Process
Requirements Analysis
Stakeholder Identification
Requirements Gathering Techniques
Interviews
Workshops
Observation
Document Analysis
Functional Requirements
Use Case Identification
Actor Identification
System Boundary Definition
Non-Functional Requirements
Performance Requirements
Security Requirements
Usability Requirements
Reliability Requirements
Use Case Documentation
Use Case Templates
Main Success Scenarios
Alternative Flows
Exception Handling
Preconditions and Postconditions
Domain Modeling
Conceptual Model Development
Class Identification Techniques
Noun Extraction
Domain Vocabulary Analysis
Responsibility Assignment
Initial Class Diagram Creation
Candidate Classes
Class Relationships
Attribute Identification
Domain Rules and Constraints
Model Validation
Walkthrough Scenarios
Stakeholder Review
System Architecture Design
Architectural Patterns
Layered Architecture
Model-View-Controller
Client-Server Architecture
Service-Oriented Architecture
System Decomposition
Subsystem Identification
Interface Definition
Dependency Management
Package Organization
Package Structure
Package Dependencies
Namespace Design
Component Architecture
Component Identification
Component Interfaces
Component Dependencies
Detailed Design
Responsibility Assignment
Class Responsibilities
Method Allocation
Collaboration Design
Interaction Design
Scenario Modeling
Sequence Diagram Development
Communication Patterns
Class Design Refinement
Method Signatures
Attribute Specifications
Visibility Decisions
Design Pattern Application
Pattern Selection
Pattern Integration
Pattern Customization
State Modeling
Stateful Object Identification
State Machine Design
State Transition Logic
Error Handling Design
Exception Hierarchies
Error Recovery Strategies
Design Validation and Verification
Design Reviews
Peer Reviews
Walkthrough Sessions
Inspection Processes
Design Testing
Design Simulation
Prototype Development
Model Validation
Traceability Management
Requirements Traceability
Design Decision Documentation
Implementation Considerations
Code Generation from Models
Model-to-Code Transformation
Code Templates
Automated Generation Tools
Forward Engineering
Model-Driven Development
Code Synchronization
Reverse Engineering
Code-to-Model Extraction
Legacy System Analysis
Round-Trip Engineering
Model-Code Synchronization
Change Management
Version Control Integration
Previous
6. Design Patterns in UML
Go to top
Next
8. UML Tools and Methodologies