UML Concepts and Methodologies Quiz
44 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Which organization adopted UML as a standard in 1997?

  • ANSI
  • IEEE
  • OMG (correct)
  • ISO
  • The user's view in UML is considered an object model?

    False (B)

    Name three methodologies from which UML borrowed concepts.

    Object Management Technology, Booch’s methodology, Object-Oriented Software Engineering

    The user's view is a ___________ view of the system.

    <p>black-box</p> Signup and view all the answers

    Match the following UML views with their descriptions:

    <p>User's view = Functionalities available to users Structural view = System's organization and components Behavioral view = Dynamic interactions of the system Implementation view = Technical aspects of the system Environmental view = System's surroundings and dependencies</p> Signup and view all the answers

    How many different types of diagrams can UML construct to capture different views of a system?

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

    In a level 1 DFD, which branch is typically identified as the 'afferent' branch?

    <p>The input validation branch (A)</p> Signup and view all the answers

    The environmental view in UML focuses on the internal components of the system.

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

    Transaction analysis is most useful when designing transform-centered programs.

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

    What is the primary purpose of a model within software development?

    <p>To capture aspects important for some application while abstracting the rest.</p> Signup and view all the answers

    What is the central view that all other views in UML are expected to conform to?

    <p>User's view</p> Signup and view all the answers

    A transaction-driven system is characterized by different paths through the DFD depending on the input data item, in contrast to a system characterized by similar processing steps for each data item.

    <p>transform-centred</p> Signup and view all the answers

    Match the following terms with their description:

    <p>Afferent Branch = Input validation Efferent Branch = Output Central Transform = Data processing Transaction = A meaningful piece of work</p> Signup and view all the answers

    What is the main purpose of UML?

    <p>To create graphical models (D)</p> Signup and view all the answers

    Each transaction must have an input data.

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

    When mapping bubbles to a module in a structure chart during transaction analysis, what criteria determines if they belong to the same module?

    <p>The bubbles are all traversed during the same transaction.</p> Signup and view all the answers

    What is the primary purpose of the 'extends' relationship in use cases?

    <p>To capture alternate paths or scenarios (C)</p> Signup and view all the answers

    Simple use cases should be decomposed into a hierarchy of sub-ordinate use cases.

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

    What is the highest level of the use case model called and what is its focus?

    <p>The highest level is called the context diagram. Its focus is on the application context and emphasizes the system's limits.</p> Signup and view all the answers

    The functionality provided by the ______ use cases is a combination of the functionality of their ______ use cases.

    Signup and view all the answers

    Which model captures the time-dependent behavior of a system?

    <p>Behavioral model (C)</p> Signup and view all the answers

    A structural model of the system changes with time.

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

    What do use cases represent?

    <p>The different ways in which a system can be used by the users.</p> Signup and view all the answers

    The mainline sequence represents the most _______ sequence of interaction.

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

    Which of the following describes the purpose of a use case?

    <p>To define a piece of coherent behaviour without revealing the internal structure of the system (A)</p> Signup and view all the answers

    Match the system view with its description:

    <p>Structural view = Defines the types of objects and their relations Behavioural view = Captures object interactions Implementation view = Captures the components of the system and their dependencies Environmental view = Models component implementation on different hardware</p> Signup and view all the answers

    What is another name for the structural model?

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

    According to the content, what question can you ask to find all the use cases of a system?

    <p>What the users can do using the system?</p> Signup and view all the answers

    The ______ relationship is used to capture alternate paths or scenarios in use cases.

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

    What information is required from a customer to register in the supermarket prize scheme?

    <p>Residence address, telephone number, and driving license number (A)</p> Signup and view all the answers

    A customer can use their Customer Number (CN) to keep track of their total purchases throughout the year.

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

    What is awarded to customers whose purchases exceed Rs.10,000?

    <p>A 22 caret gold coin</p> Signup and view all the answers

    The system resets the entries against the CN on the ______ of every year.

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

    Match each use case with its functionality:

    <p>register-customer = Customer becomes registered register-sales = Purchase transaction is recorded select-winners = Identify prize winners reset-entries = Clear yearly purchase data</p> Signup and view all the answers

    What happens if a customer attempts to register but their information is already in the system?

    <p>The system displays a message indicating they have already registered (C)</p> Signup and view all the answers

    The use case model includes only the functional requirements of the system.

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

    What is the unique identifier assigned to each registered customer?

    <p>Customer Number (CN)</p> Signup and view all the answers

    What is one possible use of identifying different types of users (actors)?

    <p>To implement a login system for security (C)</p> Signup and view all the answers

    Factoring of use cases is necessary only when complex use cases need to be simplified.

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

    What is the purpose of use case generalization?

    <p>To inherit behavior from a similar parent use case.</p> Signup and view all the answers

    The extends relationship allows you to show ________ system behavior.

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

    What is one benefit of factoring use cases?

    <p>To make interaction diagrams easier to manage (B)</p> Signup and view all the answers

    Name one mechanism UML offers for factoring use cases.

    <p>Generalization, extends.</p> Signup and view all the answers

    The extension points are points within the use case where ________ may occur.

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

    Flashcards

    UML (Unified Modeling Language)

    A set of principles and notations for modeling software systems.

    User's View

    A view that focuses on the functionalities offered to users, without revealing internal details.

    Structural View

    A view that describes the structure of the system, including classes, objects, and their relationships.

    Behavioral View

    A view that focuses on how the system behaves over time, such as interactions between objects.

    Signup and view all the flashcards

    Implementation View

    A view that focuses on the implementation details of the system, such as programming languages and data structures.

    Signup and view all the flashcards

    Environmental View

    A view that shows how the system interacts with its environment, including external systems and data.

    Signup and view all the flashcards

    OMG (Object Management Group)

    An organization that promotes the use of UML as a standard.

    Signup and view all the flashcards

    User-Centric Development

    A design model that takes a user-centric view of the application.

    Signup and view all the flashcards

    DFD (Data Flow Diagram)

    A graphical representation of a system's functions and data flow, showing how data is transformed and moved through the system.

    Signup and view all the flashcards

    Level 1 DFD

    The first level of a DFD, showing the main functions of the system.

    Signup and view all the flashcards

    Afferent Branch

    The part of a DFD that receives input data from the outside world.

    Signup and view all the flashcards

    Efferent Branch

    The part of a DFD that sends output data to the outside world.

    Signup and view all the flashcards

    Central Transform

    The central part of a DFD that performs the main transformations on the data.

    Signup and view all the flashcards

    Transaction Analysis

    A method for analyzing a system by identifying and grouping related functions that process similar input data.

    Signup and view all the flashcards

    Structure Chart

    A graphical representation of a system's structure, showing the relationships between modules and their hierarchy.

    Signup and view all the flashcards

    Model (in Software Development)

    A simplified representation of a real-world entity, capturing important aspects relevant to a specific application.

    Signup and view all the flashcards

    Use Case Hierarchy

    A way to organize use cases in a hierarchical structure, where high-level use cases are broken down into smaller, more detailed sub-use cases.

    Signup and view all the flashcards

    Superordinate Use Case

    A use case that encompasses a broader scope and can be decomposed into more specific use cases.

    Signup and view all the flashcards

    Subordinate Use Case

    A use case that is a refinement of a more general use case, focusing on a specific aspect or scenario.

    Signup and view all the flashcards

    Context Diagram

    The topmost level of the use case hierarchy, focusing on the overall context of the system and its interactions with external actors.

    Signup and view all the flashcards

    Subsystem-Level Use Case

    A use case level specifying the functionalities provided by specific subsystems within the system.

    Signup and view all the flashcards

    Use Case

    A description of how a user interacts with a system to achieve a specific goal. It represents a high-level functional requirement.

    Signup and view all the flashcards

    Use Case Model

    A set of use cases that collectively describe the functions and capabilities of a system.

    Signup and view all the flashcards

    Mainline Sequence

    The most common sequence of interactions within a use case, representing normal system behavior.

    Signup and view all the flashcards

    Variations

    Variations or alternative paths in a use case, representing different scenarios or exceptions.

    Signup and view all the flashcards

    Actor

    A real-world entity that interacts with the system, such as a customer or a cashier.

    Signup and view all the flashcards

    Use Case Diagram

    A graphical representation of actors and use cases, showing how they interact within the system.

    Signup and view all the flashcards

    Use Case Description

    A detailed, step-by-step description of how a use case is executed, outlining actions and responses between the actor and the system.

    Signup and view all the flashcards

    Customer Number (CN)

    A unique identification number assigned to a customer to track their purchase history.

    Signup and view all the flashcards

    Register-Sales Use Case

    The act of recording a customer's purchase information against their unique customer number.

    Signup and view all the flashcards

    Select-Winners Use Case

    The process of selecting the winners of a prize scheme based on their total annual purchase value.

    Signup and view all the flashcards

    Resetting Customer Purchase Value

    The process of resetting each customer's purchase value to zero at the start of a new year, after prizes are awarded.

    Signup and view all the flashcards

    Factoring Use Cases

    Breaking down a complex use case into smaller, simpler ones to make it easier to understand and implement.

    Signup and view all the flashcards

    Extends Relationship

    A relationship between two use cases where the second use case extends the functionality of the first one under specific conditions.

    Signup and view all the flashcards

    Generalization Relationship

    A relationship between two use cases where the second use case inherits all the features of the first one and adds additional functionality.

    Signup and view all the flashcards

    Extension Point

    A point in a use case where an extension can be added, allowing optional behavior to be triggered based on specific conditions.

    Signup and view all the flashcards

    Interaction Diagram

    A way to represent the behavior of a system, showing how different elements (actors, objects) interact to achieve a goal.

    Signup and view all the flashcards

    Common Behaviour

    Common behavior shared across multiple use cases, which can be factored out to avoid duplication.

    Signup and view all the flashcards

    Study Notes

    Structured Design

    • Structured design aims to transform structured analysis results (like a DFD) into a structure chart.
    • It provides two strategies for transforming a DFD into a structure chart: transform analysis and transaction analysis.
    • Typically, one starts with a level 1 DFD, transforms it into a module representation, and then proceeds to lower-level DFDs.
    • At each level, determine whether transform or transaction analysis applies.

    Structure Chart

    • A structure chart represents software architecture (modules, dependencies, parameter passing).
    • It easily implements using programming languages.
    • Focuses on module structure and interactions, not the procedural aspects.
    • Basic building blocks include rectangular boxes (modules), module invocation arrows (control flow), data flow arrows (data passing), library modules (with double edges), selection (diamond symbol), repetition (loop around control flow).

    Structure Chart vs. Flow Chart

    • Identifying software modules from a flow chart is often difficult.
    • Data interchange among modules isn't represented in a flow chart.
    • Sequential ordering of tasks in a flow chart is not emphasized in a structure chart.

    Example: RMS Software

    • The RMS software example involves accepting input numbers, validating numbers, calculating the root mean square, and displaying results.
    • Level 1 DFD identifies 'validate-input' as the afferent branch and 'write output' as the efferent branch, with 'compute-rms' as the central transform.
    • Applying transform analysis steps produces the structure chart.

    Transaction Analysis

    • Useful for transaction-driven systems.
    • Input data defines the number of transactions, which involves different processing steps for various input data items.
    • Tracks data from input to output for each transaction.
    • Transactions are mapped to modules in the structure chart with a tag indicating their type.
    • Divides the system into transaction modules and a transaction-centre module.
    • The example provided is a supermarket prize scheme.

    Object Modelling Using UML

    • A model captures aspects of an application, omitting irrelevant details (abstracting). Models can be graphical, textual, mathematical, or code-based.
    • UML is a graphical modelling tool used to visualize, specify, construct, and document software systems. It has a set of notations and semantics.
    • Important uses of models during software development include analysis, specification, code generation, design, visualization, and testing.
    • UML models can be used for documentation and to develop results. The models need to match the purpose for which they are constructed.

    Origin of UML

    • UML emerged from several object-oriented design techniques and notations.
    • A large number of object-oriented notations were used, leading to standardization efforts.
    • Various methodologies (like Rumbaugh, Booch, Jacobson, Odell, Shaler & Mellor) provided principles for UML's creation.

    UML Diagrams

    • UML diagrams provide multiple perspectives of a system.
    • UML constructs nine diagram types to display five system views: user's view, structural view, behavioral view, implementation view, and environmental view.

    User's View

    • Defines the functionality made available to the system's users.
    • Focuses on external user-centric functionalities without showing internal details like implementation, structure, or behavior.

    Structural View

    • Defines the kinds of classes and objects important for understanding the system's structure and relationships.
    • Also called the static model because structure does not change when implementation is altered.

    Behavioral View

    • How objects interact to realize the system's behavior.
    • Captures the dynamic, time-dependent behavior of the system.

    Implementation View

    • Components/parts, and their dependencies in the system.

    Environmental View

    • How different components are implemented on different hardware components.

    Use Case Diagrams

    • Use cases represent how users interact with a system.
    • A use case diagrams shows the different ways a user can interact with a system ("What users can do utilizing a system").
    • Shows use cases as ellipses, enclosed within a rectangle that represents the system.
    • Actors are represented by stick figures (roles played by users).
    • Lines connecting actors to use cases illustrate relationships. Use cases describe user interaction with system.

    Use Case Model

    • Purpose of use cases is to define behavior of a system without disclosing internal structure of system.
    • Mainline sequence (normal interaction) is described.
    • Alternative scenarios (variations) to mainline are identified.

    Text Description

    • Each use case ellipse should have a text description.
    • Details of how the user interacts with the system and all aspects of the use case.
    • Mainline sequence, variations, system responses, and exceptional conditions are necessary.
    • Should be informal, but structured, including descriptions of alternative scenarios, contact persons (people involved), actors, conditions before/after the use case runs (pre/post conditions), and references.

    Non-functional Requirements

    • Important constraints on design and implementation (e.g., platform, environment, response time).
    • Includes domain-related error situations (e.g., invalid input fields, access rights).
    • Sample dialogues or screen shots illustrating use cases.

    Example: Supermarket Prize Scheme

    • A detailed example of how to model a supermarket prize scheme using use cases.
    • Describes specific use cases (like "register-customer").
    • Explains Scenarios (like "Scenario 1: Mainline sequence").
    • Displays the text description of use cases like "register-customer."

    Factoring of Use Cases

    • Complex use cases can be broken down into smaller, component use cases for clarity and maintainability.
    • Grouping of actions that are performed by users is done in use cases.

    Generalization

    • Similar to subclassing/inheritance in programming.
    • One use case inherits actions from a parent use case while adding a unique behavior.

    Extends

    • Represents optional system behaviors.
    • Use cases are modified when certain conditions are met.

    Organization of Use Cases

    • Use cases are organized hierarchically (top-level use cases and subordinate use cases) to better understand the overall system structure.
    • Shows system limits and subsystems' offered services.
    • Displays the lowest level hierarchy use cases.

    Example: Tic-Tac-Toe Game

    • Explains how to represent use cases with a simple example utilizing use case diagram representing the actions/interactions between the user and system.

    Studying That Suits You

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

    Quiz Team

    Related Documents

    Structured Design Concepts PDF

    Description

    Test your knowledge on UML (Unified Modeling Language) and its methodologies with this quiz. You'll explore various aspects like user views, types of diagrams, and the foundational concepts borrowed from other methodologies. Challenge yourself to understand how UML is applied in software development.

    More Like This

    UML Unified Concept Quiz
    4 questions

    UML Unified Concept Quiz

    FascinatingAmber8368 avatar
    FascinatingAmber8368
    Bridge Pattern UML Diagram Concepts
    12 questions
    Software Architecture and UML Concepts
    13 questions
    Object-Oriented Concepts & UML Diagrams
    5 questions
    Use Quizgecko on...
    Browser
    Browser