Podcast
Questions and Answers
What is the primary purpose of system modeling?
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.
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?
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?
Which of the following is NOT a primary benefit of system modeling?
What is the role of 'Analysis Models' in the broader context of software development?
What is the role of 'Analysis Models' in the broader context of software development?
Match the UML diagram types with their descriptions:
Match the UML diagram types with their descriptions:
When using graphical models to facilitate discussion about a proposed system, what level of correctness and completeness is required?
When using graphical models to facilitate discussion about a proposed system, what level of correctness and completeness is required?
What is the primary purpose of Interaction Models in system modeling?
What is the primary purpose of Interaction Models in system modeling?
Which two diagram types are commonly used together for interaction modeling?
Which two diagram types are commonly used together for interaction modeling?
Use case diagrams are designed to show the order in which use cases are executed.
Use case diagrams are designed to show the order in which use cases are executed.
A use case name should typically start with a(n) ________.
A use case name should typically start with a(n) ________.
In a use case diagram, which of the following might represent an actor?
In a use case diagram, which of the following might represent an actor?
Besides simple textual descriptions, name two other methods to provide further details for a use case.
Besides simple textual descriptions, name two other methods to provide further details for a use case.
In the context of use case diagrams, what are the three types of actors?
In the context of use case diagrams, what are the three types of actors?
In UML, what type of relationship specifically shows the interaction between a use case and an actor?
In UML, what type of relationship specifically shows the interaction between a use case and an actor?
Every use case must always be initiated directly by an actor.
Every use case must always be initiated directly by an actor.
What does an 'include' relationship signify in use case diagrams?
What does an 'include' relationship signify in use case diagrams?
Which of the following describes an 'extend' relationship in use case diagrams?
Which of the following describes an 'extend' relationship in use case diagrams?
What type of use case cannot be started directly by an actor and provides functionality to other use cases?
What type of use case cannot be started directly by an actor and provides functionality to other use cases?
What does a generalization relationship represent between actors?
What does a generalization relationship represent between actors?
When documenting an existing system using graphical models, what characteristics should the models have?
When documenting an existing system using graphical models, what characteristics should the models have?
An actor in a use case diagram is always a human user directly interacting with the software.
An actor in a use case diagram is always a human user directly interacting with the software.
What is a key guideline for determining if a functional requirement is adequately addressed in use case modeling?
What is a key guideline for determining if a functional requirement is adequately addressed in use case modeling?
When a system itself processes a use case without a direct user interaction, what is the recommended approach?
When a system itself processes a use case without a direct user interaction, what is the recommended approach?
The 'extend' relationship is appropriate for representing all optional paths or alternative user interactions within a system.
The 'extend' relationship is appropriate for representing all optional paths or alternative user interactions within a system.
What is the primary purpose of an Activity Diagram in UML?
What is the primary purpose of an Activity Diagram in UML?
Which element is used in an activity diagram to represent a choice or decision point with multiple possible outcomes?
Which element is used in an activity diagram to represent a choice or decision point with multiple possible outcomes?
What does a solid bar indicate in an activity diagram?
What does a solid bar indicate in an activity diagram?
Match the component of the Activity Diagram with its definition:
Match the component of the Activity Diagram with its definition:
What is the purpose of guards in an activity diagram?
What is the purpose of guards in an activity diagram?
What is a UML swimlane diagram?
What is a UML swimlane diagram?
Name two things that Activity diagrams define.
Name two things that Activity diagrams define.
Name one of the methods to show more detail for details that are involved in a use case.
Name one of the methods to show more detail for details that are involved in a use case.
Use case actors are only physical users.
Use case actors are only physical users.
What is the association relationship in system modelling?
What is the association relationship in system modelling?
What does it mean to have an abstract use case?
What does it mean to have an abstract use case?
The usage of models in respect of complete and accurate criteria should not be correct when facilitating the discussion about a proposed system.
The usage of models in respect of complete and accurate criteria should not be correct when facilitating the discussion about a proposed system.
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?
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?
If you have 3 use cases, 'Add course', 'delete course' and 'update course', what is the better naming solution?
If you have 3 use cases, 'Add course', 'delete course' and 'update course', what is the better naming solution?
Flashcards
System Modeling
System Modeling
Developing abstract models of a system, each showing a different view.
Unified Modeling Language (UML)
Unified Modeling Language (UML)
A standard language for specifying, modeling, visualizing, constructing, and documenting software systems.
Types of UML diagrams
Types of UML diagrams
Activity, Use Case, Sequence, Class and State diagrams.
Activity diagrams
Activity diagrams
Signup and view all the flashcards
Use case diagrams
Use case diagrams
Signup and view all the flashcards
Sequence diagrams
Sequence diagrams
Signup and view all the flashcards
Class diagrams
Class diagrams
Signup and view all the flashcards
State diagrams
State diagrams
Signup and view all the flashcards
Use case diagrams
Use case diagrams
Signup and view all the flashcards
Types of use case actors
Types of use case actors
Signup and view all the flashcards
Activity diagram
Activity diagram
Signup and view all the flashcards
Activity Diagram Definition
Activity Diagram Definition
Signup and view all the flashcards
UML Activity Diagram
UML Activity Diagram
Signup and view all the flashcards
Actor
Actor
Signup and view all the flashcards
Each Use Case
Each Use Case
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.