Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

The Open University

Modelling object-oriented software – an introduction

The Open University via OpenLearn

Overview

This course aims to teach students how to model object-oriented software by developing conceptual models, identifying classes and attributes, understanding associations, modeling events, defining invariants, and creating conceptual models. The course covers topics such as generalization relationships, abstract classes, multiplicity, and derived attributes. The teaching method involves theoretical explanations, practical examples, and class diagram creation. This course is intended for individuals interested in learning about object-oriented software modeling and design.

Syllabus

  • Introduction
  • Learning outcomes
  • 1 Introduction
  • 1 Introduction
  • 1.1 Conceptualising the system domain as classes
  • 1.2 The aims of this course
  • 1.3 Studying this course
  • 2 Developing the conceptual model
  • 2 Developing the conceptual model
  • 2.1 Main activities in developing a conceptual model
  • 2.2 The role of the conceptual model
  • 2.3 The conceptual model in the context of the wider system
  • 3 Classes
  • 3 Classes
  • 3.1 Terminology and notation
  • 3.2 Identifying classes and attributes
  • 3.2.1 Textual analysis
  • 3.2.2 System domain
  • 3.2.3 Use cases
  • 3.2.4 Guidelines for rejection of candidate classes
  • 3.2.5 Notation for classes
  • 3.2.6 Kinds of class
  • 3.2.7 Identifying attributes for the classes in the DVD Library System
  • 3.3 Identifying classes and attributes for the Hospital System
  • 3.3.1 Identifying the classes for the Hospital System
  • 3.3.2 Identifying additional classes from the use cases
  • 3.3.3 Identifying attributes for the classes in the Hospital System
  • 3.4 Generalisation relationships
  • 3.5 Abstract classes
  • 3.6 Class or attribute?
  • 4 Associations
  • 4 Associations
  • 4.1 What is an association?
  • 4.2 Identifying associations
  • 4.2.1 System domain
  • 4.2.2 Use cases
  • 4.2.3 Associations and generalisation relationships
  • 4.3 Multiplicity
  • 4.3.1 Multiplicities for the Hospital System
  • 5 Modelling events
  • 5 Modelling events
  • 5.1 Criteria for modelling events
  • 5.2 Summary of criteria
  • 6 Invariants
  • 6 Invariants
  • 6.1 What is an invariant?
  • 6.2 Remaining invariants for the Hospital System
  • 6.2.1 Uniqueness of attribute values
  • 6.2.2 Constraints on the values of particular attributes
  • 6.2.3 Numbers of links between objects
  • 6.2.4 Relationships between attribute values
  • 6.2.5 Relationships between attribute values and links
  • 6.2.6 Relationships between links
  • 7 Derived attributes and associations
  • 7 Derived attributes and associations
  • 7.1 Using invariants to derive attributes
  • 7.2 Using invariants to derive associations
  • 8 Conceptual models
  • 8 Conceptual models
  • 8.1 Conceptual model for the Hospital System
  • Class diagram
  • 8.2.2 Class descriptions
  • 8.2.3 Invariants
  • 9 Conclusion
  • 9 Conclusion
  • Keep on learning
  • References
  • Acknowledgements

Reviews

Start your review of Modelling object-oriented software – an introduction

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.