1

I am studying modelling and UML through a presentation based on Craig Larman's book "Applying UML and Patterns". It describes seven consecutive design steps, from the requirement analysis to the class diagram:

  1. Software Requirements Specification,
  2. Use Case Diagrams,
  3. Conceptual Model,
  4. System Sequence Diagrams,
  5. Contracts,
  6. Collaboration Diagrams,
  7. Design Class Diagrams.

I am trying to find these steps in a modern UML tool - Papyrus. In Papyrus I found the following diagrams:

  • Activity diagram,
  • Class Diagram,
  • Class tree table,
  • Communication diagram,
  • Composite structure diagram,
  • Deployment diagram,
  • Generic table,
  • Generic tree table,
  • Interaction overview diagram,
  • Package diagram,
  • Relationship generic matrix,
  • Sequence diagram,
  • State machine diagram,
  • Timing diagram,
  • Use case diagram,
  • View table.

Of the seven steps, I found three: Use Case Diagrams, Sequence Diagrams and Class Diagrams. I did not find Conceptual Model, Contracts, and Collaboration Diagrams.

Do these diagrams - Conceptual Model, Contracts, and Collaboration Diagrams - appear in Papyrus in a different name?

Alternatively, do these diagrams not appear at all in Papyrus since they are not used today?

2
  • 1
    I just like to draw rectangles and stuff and put arrows in between em with snippets of code on the side. I've never been good at this diagram stuff. Do you guys use those a lot?
    – user204677
    Dec 10, 2017 at 13:45
  • 2
    I would recommend you read the book itself. Then you'll get the most complete and comprehensive answer. However @Bart van Ingen Schenau's answer is giving you the basics.
    – Ister
    Dec 10, 2017 at 15:20

1 Answer 1

5

I am trying to find these steps in a modern UML tool

This is where your thinking took a wrong turn. Those 7 design steps do not have a 1-to-1 correspondence to UML diagrams. Some steps don't use UML at all and in other steps typically multiple types of UML diagrams are used. Also, some diagrams are used in different steps with different levels of detail.

The diagrams/techniques most typically used in the different design steps are

  1. Software Requirements Specification: No UML diagrams, but rather just text and sometimes tables.
  2. Use Case Diagrams: Primarily textual use-case descriptions, supplemented with UML Use-case diagrams
  3. Conceptual Model: Any diagram that shows static structure: Class diagram, Package diagram, Composite structure diagram
  4. System Sequence Diagrams: Any diagram that shows interactions at a high level: Sequence diagram, Activity diagram, Communication diagram, State machine diagram
  5. Contracts: No UML diagrams. Mostly tables and text.
  6. Collaboration Diagrams: Any diagram that shows interactions between components: Sequence diagram, Activity diagram, Communication diagram
  7. Design Class Diagrams: Any diagram

One of the most important lessons when building a model and expressing that with UML diagrams is

  1. The model gives a limited representation of the real world. It should only contain those aspects that are relevant to the system you are building
  2. Each UML diagram gives a limited view on a part of the model. Each diagram type shows different aspects of the model and you can/should have multiple instances of each diagram type that zoom in on different parts of the model (or zoom out to give an overview without all the gory details).
  3. Don't be afraid to leave things out of a diagram if they don't give relevant information to the audience of that particular diagram.
2
  • How can a Package Diagram represent a conceptual model? It does not even allow to add attributes... Dec 10, 2017 at 11:26
  • 1
    @ErelSegal-Halevi: A package diagram does not represent a conceptual model, but it can be part of a conceptual model. A conceptual model will typically take several diagrams, where each diagram shows some aspects of the model. Dec 10, 2017 at 11:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.