Reading notes on UML Distilled

Today I finished this book. It's a good book about a brief introduction on UML, recommended to anyone who what to learn about UML in a quickly fashion.  UML itself is never really (not like going to be) a real programming language. It serves mainly as a way of communication in the development process.

  • Diagrams
    • Sequence Diagram;
      • A remarque on OO thoughts
      • Creating and deleting participants;
      • Weakpoints: loop/condition etc;
      • Synchronised call and Asynchronized calls( two different kinds of arrow)
      • When to use
        • Express behaviors of multiple objects in one use case;
        • Should use state machine is one object in multiple use cases;
        • CRC(Class-Reponsibility-Collaboration) cards;

  • Class Diagrams;
    • Essential:
      • Properties: two ways of expression
        • Attributes
        • Association
        • Multiplicity
        • Bidirectional Association
        • Operations Notifce the difference between Method and Operations, when there is polymorphism
          • Query
          • Modifier(avoid return value?);
        • Generalization(inheritance)
        • Dependency: should be minimized in your model, and normally in uml, we only mark these dependency in the case of transient relationship
        • Constrain rules:
    • Advanced Class Diagram;
      • Classification and Generalization : Two very different ways of relationship expressed by "IS" (is instance of/ is subtype of)
      • Multiple Classification and Dynamic Classification
        • Notice the difference between Multiple Classification and Multiple inheritance;
          • Generalization set;
      • Association Class:

  • Object Diagrams;
  • Package Diagrams;
  • Deployment Diagrams;
  • State Machine Diagrams;
    • The syntax for begnning status and end status;
    • Syntax for transition:  --->  "trigger"["guard"]/"movement"
    • Internal Activitiies;
    • Activity state: ongoning activity "do/"
    • Super state: just to simplify the uml diagrams;
    • Concurrent state diagramme;
  • Activity Diagram;
    • Useful for parallel situation;
    • Fock --> join;
    • Decision --> merge;
    • Partitions in  activity diagram;

  • Communication Diagrams
  • Component Diagrams;
  • Timing Diagrams;
  • Interaction Overview Diagrams;
  • Usecase:
    • Each usecase contains an actor, includes a main success scenario and several extension(fail/success) Also: you could add pre-condition/guarantie/tirgger;
    • Use case level: sea leavel/fish level/kite level;
    • From usecase, feature is born;
    •  


  • Introduction;
    • Usage
      • Sketching;
      • Blueprint (reverse and forward engineering)
      • Programming langauge;
        • Module Driven Architecture and Executable UML
    • Meta-model
    • Classification of UML diagram types
  • Development Process;
  • Use Case;
  • Etc…..

Comments

Popular posts from this blog

周末发现的两样东西,和心理有关的。

QStringList related performance