System Modelling with UML Diagrams

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

What is the primary purpose of system modeling?

  • To create visually appealing diagrams for stakeholders.
  • To replace the need for traditional documentation.
  • To write the actual code for a software system.
  • To develop abstract models of a system from different perspectives. (correct)

System modeling strictly focuses on generating a complete system implementation.

False (B)

What does UML stand for, and what is its role in software development?

  • Unified Modeling Language; a standard language for specifying, visualizing, and documenting software systems. (correct)
  • User Management Language; used for managing user accounts.
  • Universal Machine Language; used for hardware design.
  • Underlying Machine Logic; used for optimizing system performance.

Which of the following is NOT a primary benefit of system modeling?

<p>Automatic code generation for all system components. (A)</p> Signup and view all the answers

What is the role of 'Analysis Models' in the broader context of software development?

<p>They serve as a link between understanding the problem and designing a solution. (D)</p> Signup and view all the answers

Match the UML diagram types with their descriptions:

<p>Activity Diagram = Shows the flow of activities in a process. Use Case Diagram = Illustrates interactions between a system and its environment. Sequence Diagram = Shows interactions between actors and system components over time. Class Diagram = Represents the object classes in the system and their associations. State Diagram = Describes how the system reacts to internal and external events.</p> Signup and view all the answers

When using graphical models to facilitate discussion about a proposed system, what level of correctness and completeness is required?

<p>Incomplete and even incorrect models are acceptable as their role is to support discussion. (A)</p> Signup and view all the answers

What is the primary purpose of Interaction Models in system modeling?

<p>They are used to represent user interactions with the system. (D)</p> Signup and view all the answers

Which two diagram types are commonly used together for interaction modeling?

<p>Use case diagrams and sequence diagrams. (B)</p> Signup and view all the answers

Use case diagrams are designed to show the order in which use cases are executed.

<p>False (B)</p> Signup and view all the answers

A use case name should typically start with a(n) ________.

<p>verb</p> Signup and view all the answers

In a use case diagram, which of the following might represent an actor?

<p>A user of the system. (A)</p> Signup and view all the answers

Besides simple textual descriptions, name two other methods to provide further details for a use case.

<p>structured description in a table, sequence diagram</p> Signup and view all the answers

In the context of use case diagrams, what are the three types of actors?

<p>Users, other systems, and time. (A)</p> Signup and view all the answers

In UML, what type of relationship specifically shows the interaction between a use case and an actor?

<p>Association. (C)</p> Signup and view all the answers

Every use case must always be initiated directly by an actor.

<p>False (B)</p> Signup and view all the answers

What does an 'include' relationship signify in use case diagrams?

<p>Mandatory incorporation of one use case's functionality into another. (D)</p> Signup and view all the answers

Which of the following describes an 'extend' relationship in use case diagrams?

<p>A use case optionally makes use of the functionality of another use case. (C)</p> Signup and view all the answers

What type of use case cannot be started directly by an actor and provides functionality to other use cases?

<p>abstract use case</p> Signup and view all the answers

What does a generalization relationship represent between actors?

<p>The inheritance of characteristics from a general actor to more specific actors. (D)</p> Signup and view all the answers

When documenting an existing system using graphical models, what characteristics should the models have?

<p>They should be an accurate representation of the current system. (C)</p> Signup and view all the answers

An actor in a use case diagram is always a human user directly interacting with the software.

<p>False (B)</p> Signup and view all the answers

What is a key guideline for determining if a functional requirement is adequately addressed in use case modeling?

<p>It should be in at least one use case. (B)</p> Signup and view all the answers

When a system itself processes a use case without a direct user interaction, what is the recommended approach?

<p>Include the use case within another use case initiated by a user. (A)</p> Signup and view all the answers

The 'extend' relationship is appropriate for representing all optional paths or alternative user interactions within a system.

<p>False (B)</p> Signup and view all the answers

What is the primary purpose of an Activity Diagram in UML?

<p>To define business process models and illustrate the flow of functionality in a use case. (D)</p> Signup and view all the answers

Which element is used in an activity diagram to represent a choice or decision point with multiple possible outcomes?

<p>A diamond. (C)</p> Signup and view all the answers

What does a solid bar indicate in an activity diagram?

<p>Activity coordination or synchronization. (B)</p> Signup and view all the answers

Match the component of the Activity Diagram with its definition:

<p>Filled circle = The start of a process Rectangles with round corners = Activities representing subprocesses that must be carried out. Diamond = Used to represent some choice is made. Solid bar = Used to indicate activity coordination.</p> Signup and view all the answers

What is the purpose of guards in an activity diagram?

<p>They specify conditions for when a flow is taken. (A)</p> Signup and view all the answers

What is a UML swimlane diagram?

<p>A variation on the activity diagram used to represent workflow. (B)</p> Signup and view all the answers

Name two things that Activity diagrams define.

<p>where the workflow starts, where it ends</p> Signup and view all the answers

Name one of the methods to show more detail for details that are involved in a use case.

<p>a sequence diagram</p> Signup and view all the answers

Use case actors are only physical users.

<p>False (B)</p> Signup and view all the answers

What is the association relationship in system modelling?

<p>A relationship between use-case and an actor. (D)</p> Signup and view all the answers

What does it mean to have an abstract use case?

<p>A use case that provides some additional functionality that can be used by other use cases. (D)</p> Signup and view all the answers

The usage of models in respect of complete and accurate criteria should not be correct when facilitating the discussion about a proposed system.

<p>True (A)</p> Signup and view all the answers

Example: if a student needs a grade report from student affairs department, he will ask the employee to prepare his request. Who is the actor?

<p>the employee (D)</p> Signup and view all the answers

If you have 3 use cases, 'Add course', 'delete course' and 'update course', what is the better naming solution?

<p>Create one use case called Manage Course Data (C)</p> Signup and view all the answers

Flashcards

System Modeling

Developing abstract models of a system, each showing a different view.

Unified Modeling Language (UML)

A standard language for specifying, modeling, visualizing, constructing, and documenting software systems.

Types of UML diagrams

Activity, Use Case, Sequence, Class and State diagrams.

Activity diagrams

Diagrams showing the flow of activities in a process.

Signup and view all the flashcards

Use case diagrams

Diagrams showing interactions between a system and its environment.

Signup and view all the flashcards

Sequence diagrams

Diagrams showing interactions between actors and the system.

Signup and view all the flashcards

Class diagrams

Diagrams showing object classes and relationships.

Signup and view all the flashcards

State diagrams

Diagrams showing how a system reacts to internal and external events.

Signup and view all the flashcards

Use case diagrams

A simple overview of an interaction.

Signup and view all the flashcards

Types of use case actors

Users, other systems, and time.

Signup and view all the flashcards

Activity diagram

Illustrates the flow of functionality in a use case.

Signup and view all the flashcards

Activity Diagram Definition

Starts the process, ends the process, activities, and order of activities.

Signup and view all the flashcards

UML Activity Diagram

Is a diagram used to determine business process models

Signup and view all the flashcards

Actor

The actor is the one who directly uses the software

Signup and view all the flashcards

Each Use Case

Must be started by an actor

Signup and view all the flashcards

Study Notes

  • System modelling develops abstract models, each showing a different viewpoint of the system.
  • A complete or partial system implementation can come from the system model.
  • Unified Modelling Language (UML) is a standard language to specify, model, visualize, construct, and document software systems.

System Modelling Benefits

  • Facilitates communication among users, developers, analysts, testers, managers involved in the project
  • Helps explore potential designs.
  • Validates the architectural design of the software.
  • Remains independent of particular programming languages and development processes

UML Diagram Types

  • Activity diagrams illustrate activity flow in a process or data processing.
  • Use case diagrams show interactions between a system and its environment.
  • Sequence diagrams detail interactions between actors, the system, and system components.
  • Class diagrams display object classes within the system and their associations.
  • State diagrams illustrate how the system reacts to internal and external events.

Use of Graphical Models

  • Use as a discussion starter for proposed systems, where incomplete models work.
  • Use to document existing systems, requiring accurate models which might be incomplete.
  • Use as a detailed system description to generate a system implementation, models must be correct and complete.

Interaction Models

  • Utilizes use case and sequence diagrams for interaction modelling.
  • Use case models and sequence diagrams present interaction at varying detail levels and can be used together.
  • Sequence diagrams document involved interactions in a high-level use case.

Use Case Modelling

  • Use cases originally supported requirements elicitation from stakeholders interacting with the system.
  • Each use case represents a discrete task involving interaction with an external system.
  • Focus on automated processes.
  • Use Case diagrams does not convey the execution order of use cases.
  • Use case names should begin with a verb.

Use Cases

  • Diagrams offer a simple interaction overview, requiring further details to understand the involvement.
  • This involves a textual description, structured table description, or sequence diagram can provide further detail.

Use Case Actor

  • A use case includes 2 actors: an operator transferring data and the patient record system.
  • The operator transfers data and the patient record system.

Use cases for actor ‘Medical Receptionist’

  • The medical receptionist registers the patients, views their information and transfers the data.
  • The medical receptionist is able to contact the patients in case of emergencies.

Use Case Actors

  • Three types of actors are: users, other systems, and time triggers.
  • Users are physical people or users who directly use the system.
  • Other systems interact with the system being built.
  • Time triggers define when the passing of a certain amount of time evokes an event out of control.

Relationships in Use Cases

  • Association: Establishes the relation between a use case and an actor.
  • Include: Allows one use case to utilize functionality of another.
  • Extend: Grants a use case the option to extend functionality provided by another one.
  • Generalization: Specifies an allowed relation between actors.

Association Relationship

  • Connects use case and actor only.
  • Each use case should be started by an actor, except abstract use cases.

Include Relationship

  • A use case utilizes functionality from another use case in 2 scenarios: if multiple use cases have an identical functionality or if one has a large functionality amount.
  • Use case includes one functionality provided from others
  • While the “Make Reservation" use case is running, "Check Credit" must run.

Extend Relationship

  • A use case conditionally expands another's functionality
  • During a "Change Reservation" use case, "Check Credit" runs only if reservation amount changes. Otherwise, it does not need to run.
  • Arrow from the optionally run use case ("Check Credit") targets the being extended use case ("Change Reservation").

Abstract Use Cases

  • Abstract use case is never started directly by the actor.
  • Abstract use case contains functionalities for other use cases.
  • Abstract use cases involve include/extend relationships.

Generalization

  • Consolidates individual entities into general classes, learning characteristics of these general classes.
  • Generalization is indicated by an arrow pointing to the general class.
  • High-level class attributes/operations correlate with lower-level classes.
  • Lower-level classes are subclasses inheriting superclass attributes/operations, adding specific attributes and operations.

For example

  • You may have two types of students.
  • If the type A students will initiate some use cases that type B students will not, its probably worth including the actor generalizations.
  • If both types of students use the same use cases, its probably not necessary to show an actor generalization.

Check List

  • Check if each functional requirement is present in at least one use case, or it will not be implemented.
  • You should determine how can each end user interacts with the system.
  • Check what information each end user is providing for the system.
  • Check what information each end user will be receiving from the system.
  • Ensure that you have considered maintenance issues: system startup and shutdown.
  • All the external systems for the system should be identified to work with them.
  • Specify what information each external system provides and receives from the system.

Diagrams

  • The actor is who uses the SW directly.
  • Example: if a student needs the grade report with the student affairs department, the employee is the actor.

Functionalities

  • Every use case should be a main functionality.
  • Its wrong to list “select seat”, “enter User name” as use cases
  • Its wrong to create a use case with a vague name like “enter data in database”, “choose”
  • Its better to Don’t create "Add course delete course and update course as 3 use cases" and generate only the use case “manage course data”

Relationships

  • You cant have a system actor When the system performs a use case by itself.
  • Its better to include the use case with the new one.
  • Example: When you create a new account, the system checks for user name availability, the actor is the user.

Diagrams "extend" relationship

  • "extend" relationship is not used to represent options.

Activity Diagram

  • UML activity diagrams may be used to define business process models.
  • Activity diagrams illustrate the flow of functionality and the flow of events.
  • Activity diagrams may also define the processing of data
  • Activity diagrams define the starts and the end.

Symbols

  • The start of a process is indicated by a filled circle
  • The end by a filled circle inside another circle.
  • Rectangles with round corners represent activities.
  • Arrows represent flow of work
  • A diamond is used to represent some choice is made, it can have three choices.
  • A solid bar is used to indicate activity.
  • Arrows may be annotated with guards.

Workflow Analysis

  • Applies in interfaces with many users and roles, beyond object elaboration/task analysis.
  • Helps understand work processes involving multiple people and roles.
  • Works for companies automating prescription drugs prescribing/delivering processes.
  • Effective representation involves UML swimlane diagrams, variation of activity diagrams.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

System Modeling and UML Diagrams
40 questions
System Modeling Quiz
48 questions

System Modeling Quiz

IndividualizedJade9119 avatar
IndividualizedJade9119
Use Quizgecko on...
Browser
Browser