liveBook · Manning

Unified Modeling Language

As explained in Software Testing with Generative AI

A standardized modeling language for specifying, visualizing, and documenting the structure and behavior of software systems.

Unified Modeling Language (UML) provides formal ways to model software systems from multiple perspectives. In testing, these models expose architectural and user-flow risks that a single model may miss. section 5.3.2

Use different UML diagram families to focus risk analysis:

  • Structural diagrams, such as component diagrams, decompose architecture and focus risk generation on specific system parts. section 5.3.2
  • Behavioral diagrams, such as sequence and use case diagrams, capture user flows and support user-focused risk prompts. section 5.3.2

Booking-list risk prompt

Represent a booking-list feature as a component diagram, then prompt: “Generate as many risks as possible for a BookingRequest class that sends a request to an Auth API to confirm whether BookingService can complete its request.” A sequence or use case diagram can instead model a logged-in user requesting bookings before authorization expires. section 5.3.2

Figure 5.6 A component diagram of the booking list functionality

Inspect the booking-list component diagram to connect architectural elements with targeted risk prompts. section 5.3.2

Figure 5.7 A user flow diagram of the booking list functionality

Inspect the booking-list user-flow diagram to derive risks from authentication, authorization, and booking retrieval behavior. section 5.3.2

How Software Testing with Generative AI covers it

How deep it goes
Applies structural and behavioral diagram types to architecture and user flows, without detailing UML notation or construction.
Examples
Uses a booking-list component diagram, BookingRequest-to-Auth API interaction, and authenticated booking-list user flow.
What you can do after
Apply UML diagrams to generate broader, perspective-specific software testing risks with LLM assistance.
How it connects
Connects component diagrams, sequence diagrams, use case diagrams, data flow diagrams, software testing, and risk analysis.

Also explained in

Compare how 2 books explain Unified Modeling Language →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Software Testing with Generative AI. The section links point to the parts of the book it draws on.