Solution
Solution
Exercises Chapter 4
Chapter 4 -- Exercises
            A. Investigate the Web site for Rational Software (www.rational.com) and its
            repository of information about UML. Write a paragraph news brief on the current
            Rational software is based on the theory and structure of UML, however UML is simply
            a tool to document system design. Rational goes another step and allows the user to
            design software with additional business designs and components, as well as facilitates
            communication and organization of the project. These additional functions create an
            effective tool for enterprise level application.
                    The Unified Modeling Language™ (UML™) is the industry-standard language
            for specifying, visualizing, constructing, and documenting the artifacts of software
            systems. It simplifies the complex process of software design, making a "blueprint" for
          construction.
          UML for databaseFor database professionals
                               design allows          UMLand
                                             the business   canapplication
                                                                be used forteams
                                                                            database
                                                                                 whodesign. Using the
                                                                                     are already
          using the UML for their designs to share a common language and to communicate with
          the database team.
                   The Unified Modeling Language (UML) is a widely used standard in the software
          industry for modeling software. It helps practitioners visualize, communicate, and
          implement their designs. UML 2.0 is the first major revision to the standard since its
          inception in 1997. The new specification is designed to support a number of model-
          driven development paradigms, including Model-Driven Architecture (MDA) as defined
          by the Object Management Group (OMG). The UML is an integral component of IBM's
          ongoing commitment to supporting open standards in the software industry.
                   Latest news according the Rational website, although very technical for someone
          new to UML.
                   On November 18, 2003, IBM initiated a new open source project within
          Eclipse.org, focusing on implementing a metamodel and a set of APIs for UML 2.0. This
          project, which is an Eclipse Tools sub-project, is an EMF-based implementation of the
          UML 2.0 metamodel for the Eclipse platform.
                   The objectives of this project are to provide a useable implementation of the
          metamodel to support the development of modeling tools, a common XMI schema to
          facilitate interchange of semantic models, test cases as a means of validating the
          specification, and validation rules as a means of defining and enforcing levels of
          compliance.
            B. Investigate the Object Management Group. Write a brief memo describing what
            it is, its purpose, and its influence on UML and the object approach to systems
            development. (H i n t: A good resource is www.omg.org.)
            OMG’s MDA (Model Driven Architecture) aims to build industry standards for design
            architecture that will utilize existing architecture, and allow effective future expansion.
            MDA is based on the concept of modeling with UML. At the heart of MDA is an
Page 1
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                      1/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            Mellor,In   anothers,
                      and  MDA theapproach,
                                     design promulgated    by OMG
                                            is itself a product      and
                                                                that is   based onasthe
                                                                        expressed       work
                                                                                      a set of of Shlaer and
                                                                                               formal
            mapping rules. Examples of such rules are "Turn an application class into a class in the
            implementation with a container for its instances" and "Turn each transition on a
            statechart diagram into a tuple in a linked list defining the transition and the procedure to
            call to execute actions". These rules are the design, and once they are executed against an
            application model that captures a problem, the result is (more or less) running code.
                     In MDA the application model is generalized as a platform-independent model1,
            or PIM, usually visualized using standard UML, and the framework for formal
            transformation rules is currently being standardized as the QVT (Query, Views, and
            Transforms) specification. The result of the transformation can either be another,
          platform-specific,
          database schemas,model      (PSM),
                               deployment     or components
                                            scripts,            of or
                                                     test scripts, theindeed
                                                                       target executable
                                                                              application,code.
                                                                                           such In
                                                                                                as the latter
          case, the PIM must be behaviorally complete, defining business logic in terms of abstract
          actions.
                   With its rich palette and middleware independence, UML forms the foundation of
          OMG's Model Driven Architecture (MDA). In fact, a UML model can be either platform-
          independent or platform-specific, as we choose, and the MDA development process uses
          both of these forms: Every MDA standard or application is based, normatively, on a
          Platform-Independent Model  (PIM), which represents its business functionality and
          behavior very precisely but does not include technical aspects. From the PIM, MDA-
          enabled development tools follow OMG-standardized mappings to produce one or more
          Platform-Specific Models (PSMs), also in UML, one for each target platform that the
          developer chooses. (This conversion step is highly automated, but not magic: Before the
          tool produces a PSM, the developer must annotate the base PIM to produce a more
          specific but still platform-independent PIM that includes details of desired semantics, and
          guides choices that the tool will have to make. Because of the similarities among
          middleware platforms of a given genre - component-based, or messaging-based, for
          example - this guidance can be included in a PIM without rendering it platform-specific.
          Still, developers will have to fine-tune the produced PSMs to some extent, more in early
          days of MDA but less and less as tools and algorithms advance.)
            C. Draw a use-case diagram and a set of activity diagrams for the process of buying
            glasses from the viewpoint of the patient. The first step is to see an eye doctor who
            will give you a prescription. Once you have a prescription, you go to a optical
            dispensary, where you select your frames and place the order for your glasses. Once
            the glasses have been made, you return to the store for a fitting and pay for the
            glasses.
Page 2
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                         2/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Page 3
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                             3/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            D. Create a set of detail use-case descriptions for the process of buying glasses in
            Exercise C.
                1.       The system boundary statement should include all steps involved in
                         determining the need through final payment for eyeglasses. Excluded would
                         be any diagnosis or prescription from the doctor for other eye related
                         problems; excluded would be all issues pertaining to driving, flying, walking,
                         or taking a taxi to the store; excluded would be any calls to see if the glasses
                         are ready or visits prior to the glasses being ready; purchase of other
                         equipment such as an eyeglass case; and issues of checks bouncing or credit
                         cards being overcharged. Individual students may see differently what exactly
                         is included and what is excluded. The key, though, is identifying some items
                         that are not to be included in the system. It will be interesting to see how
                         many in the class believe that the going to the doctor, going to the store, and
                         returning to the store are inside versus outside the boundary of the system.
                         This would represent a good in class discussion opportunity focusing on why
                         you might include or exclude these.
                2.      The primary actors include the purchaser, the doctor, the eyeglass store
                        employees. The instructor will have to judge any others that the student might
                        identify (e.g. the subcontractor who receives the prescription and grinds the
                        lenses) and consider whether these actors are inside or outside of the boundary
                        of the system.
                3.       Each of the main steps should generate one or more goals. The prescription
                         should be accurate; the frames should be compatible with the lenses, should
                         be affordable and within the appropriate style range as viewed by the
                         customer; the fitting should assure that all elements of the glasses are
                         appropriate; the payment should conclude the transaction such that the store
                         receives appropriate funds and the customer receives the glasses and a receipt.
Page 4
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                     4/33
7/18/2019                                                   Unified Modelling Language
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                 5/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            F. Create a set of detail use-case descriptions for the dentist office system in Exercise
            E.
                1.      It may be challenging to delineate the boundary. Note that managing the
                        dental office staff or advertising for new customers should clearly be outside
                        this system.
                2.      The problem identifies this as a dental office system. However, the actions
                        are better described as a scheduling or medical records system. Actors should
                        include the prospective patient, the patient (a subset of prospective patients),
                        office staff, and, perhaps, the dentist.
                3.      Each step should trigger one or more goals. The new appointment must not
                        conflict with earlier scheduled appointments (other metrics will vary by
Page 6
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                     6/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
                             Note that the rest of the contingencies and conditions should be viewed as
                             expansions of these basic activities. Also note that the steps are not
                             presented in typical logical sequence in the problem –  gathering patient
                             information is presented first, but will be conducted after the new
                             appointment is scheduled.
            G. Draw a use-case diagram and a set of activity diagrams for an online university
            registration system. The system should enable the staff of each academic
            department to examine the courses offered by their department, add and remove
            courses, and change the information about them (e.g., the maximum number of
            students permitted). It should permit students to examine currently available
            courses, add and drop courses to and from their schedules, and examine the courses
            for which they are enrolled. Department staff should be able to print a variety of
            reports about the courses and the students enrolled in them. The system should
            ensure that no student takes too many courses and that students who have any
Page 7
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                     7/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Page 8
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                             8/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            H. Create a set of detail use-case descriptions for the online university registration
            system in Exercise G.
          Note also that the functionality available to department staff is listed in two separate
          sections –  items 1-3 then later items 4-5.
Department Staff
                    Assuming a database with a table for courses, the first three activities should
                    involve selecting courses by department of the information requestor. The first
                    Assuming a database with tables for courses, students, and enrollments, these
                    reports should be designed to appropriately merge tables and allow for user
                    specification of additional selection criteria for students/courses or for full output
                    of all details.
                            Students may answer this question in terms of step-by-step what the
                    department user must do in order to achieve these tasks without reference to the
                    database functionality embedded in the application.
                            Instructors may want to select this exercise if the preponderance of
                    students have already taken a database course. Alternatively, this will be a
                    challenging exercise for students who have not taken a database course, but can
                    be a good precursor to membership in such a course.
Students
Page 9
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                        9/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
                    those that are already fully enrolled; those that are for different student levels such
                    as for seniors only; etc.)
                        
                          ensure that no student takes too many courses
                         ensure that students may not register if they have unpaid fees
                    This should enable students to add or delete records from the “enrollment” table.
                    Data regarding their identifier, the identifier of the course, and any other
                    “enrollment” data should be added to the record. It should also add one student to
                    the “courses offered” table’s enrollment counter.
                            This task will also require utilization of application business logic for
                    integrity constraints. Too many course restrictions will require determining the
                    proper upper limit of courses or units the student is allowed to take (as this will
                    vary based on different business rules –  GPA, probation, major, etc.) then
                    This task will involve providing a listing of the course information from the
                    course table that matches those listed for the student in the “enrollment” table.
            I.
            A Draw   a use-case
               Real Estate       diagramsells
                           Inc. (AREI)    andhouses.
                                              a set ofPeople
                                                       activitywho
                                                                diagrams
                                                                   want tofor the
                                                                            sell   following
                                                                                 their housessystem.
                                                                                              sign a
            contract with AREI and provide information on their house. This information is
            kept in a database by AREI and a subset of this information is sent to the citywide
            multiple listing service used by all real estate agents. AREI works with two types of
            potential buyers. Some buyers have an interest in one specific house. In this case,
            AREI prints information from its database, which the real estate agent uses to help
            show the house to the buyer (a process beyond the scope of the system to be
            modeled).Other buyers seek AREI’s advice in finding a house that meets their
            needs. In this case, the buyer completes a buyer information form that is entered
            into a buyer data base, and AREI real estate agents use its information to search
            AREI’s  dataofbase
            The results        and
                           these    the multiple
                                 searches        listingand
                                          are printed    service
                                                            usedfor houses
                                                                 to help thethat
                                                                             realmeet their needs.
                                                                                  estate agent show
            houses to the buyer.
Page 10
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                       10/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Page 11
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                             11/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
J. Create a set of detail use-case descriptions for the real estate system in Exercise J.
Sellers
1. Sign contract
                      Possible expansion steps include: present contract, discuss key items, negotiate
                      any specifics such as percentage commission, finalize contract contents, seller
                      signs contract, AREI employee signs contract, perhaps a witness also signs, dates
                      are included, the contract is filed (how would this differ if on-line?)
                      Students may list some of the specific details regarding the house. Will the
                      information be written on paper then entered later by data entry specialists, or
                      entered directly onto a computer screen?
AREI
Page 12
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                       12/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
                    The
                    will subset is assumed
                         be included  in the to be constant
                                             extraction     amongIshouses,
                                                        program.           therefore
                                                                    the data printed the
                                                                                     andselection
                                                                                         sent on orlogic
                                                                                                     is it
                    sent by email or other electronic means?
                    Use house identifier to locate all data in database pertaining to a particular house,
                    print the data, and share with buyer/buyer agent.
            4.      Service general buyer process -- note this sequence is complex enough to possibly
                    warrant a separate lower level use case.
                            Students may make the other assumption, that printing results directly
                            following the extraction. There would be advantages to reviewing the
                            displayed results to delete those not appropriate and, potentially, to
                            redefine the search values before printing the hard copy.
Page 13
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                        13/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Buyer
            Second,  all in
            in an event  objects portrayed
                            the normal flowasofan objectsubflows,
                                                events,  node in anoractivity diagram must flows
                                                                      alternate/exceptional be mentioned
                                                                                                 of the
            use-case description.
            Third, sequential order of the events in a use-case description should occur in the same
            sequential order of the activities contained in an activity diagram.
            Fourth, when comparing a use-case description to a use-case diagram, there must be one
            and only one use-case description for each use case, and vice versa.
            Fifth, all actors listed in a use case description must be portrayed on the use-case
            diagram. Furthermore, each one must have an association link that connects it to the use
            case and must be listed with the association relationships in the use-case description. In
            some organizations, we should also include the stakeholders listed in the use-case
            description as actors in the use-case diagram.
            Sixth, all other relationships listed in a use-case description (include, extend, and
            generalization) must be portrayed on a use-case diagram.
            Finally, there are many diagram-specific requirements that must be enforced. For
            example, in an activity diagram a decision node can be connected to activity or action
            nodes only with a control flow, and for every decision node there should be a matching
            merge node. Every type of node and flow has different restrictions.
            L. Draw a use-case diagram and create a set of activity diagrams for the following
            system. A Video Store (AVS) runs a series of fairly standard video stores. Before a
            video can be put on the shelf, it must be cataloged and entered into the video
            database. Every customer must have a valid AVS customer card in order to rent a
Page 14
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                         14/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            video. Customers rent videos for three days at a time. Every time a customer rents a
            video, the system must ensure that they do not have any overdue videos. If so, the
            overdue videos must be returned and an overdue fee paid before customer can rent
            more videos. Likewise, if the customer has returned overdue videos, but has not
            paid the overdue fee, the fee must be paid before new videos can be rented. Every
            morning,  thedays
            two or more    storeoverdue,
                                 managertheprints a report
                                             manager       that
                                                       calls thelists overdue
                                                                 customer  to videos.
                                                                              remindIf  a video
                                                                                      them      is
                                                                                            to return
            the video. If a video is returned in damaged condition, the manager removes it from
            the video database and may sometimes charge the customer.
Page 15
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                  15/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
M. Create a set of detail use-case descriptions for the video system in Exercise L.
                  Catalogue video
                  Enter video into database
                  Put video on shelf
Customer
                  Obtain an account
                  Rent a video
                
                   Check for overdue videos
                      o  Receive overdue video
            Store manager
                  Print overdue video list (daily)
                
o Print list
Page 16
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                16/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            In order to verify and validate the functional model, a set of rules have been defined to
            ensure the consistency among the activity diagram (described in L), the use-case
            description (described in M), and the use-case diagram (defined in L).
            flows of the
            diagram,  anduse-case description
                          each event should befor each activity
                                                associated withoranaction that
                                                                    activity orisaction.
                                                                                  included on an activity
            Second, all objects portrayed as an object node in an activity diagram must be mentioned
            in an event in the normal flow of events, subflows, or alternate/exceptional flows of the
            use-case description.
            Third, sequential order of the events in a use-case description should occur in the same
            sequential order of the activities contained in an activity diagram.
Fourth, when comparing a use-case description to a use-case diagram, there must be one
            and only one use-case description for each use case, and vice versa.
            Fifth, all actors listed in a use case description must be portrayed on the use-case
            diagram. Furthermore, each one must have an association link that connects it to the use
            case and must be listed with the association relationships in the use-case description. In
            some organizations, we should also include the stakeholders listed in the use-case
            description as actors in the use-case diagram.
            Sixth, all other relationships listed in a use-case description (include, extend, and
            generalization) must be portrayed on a use-case diagram.
            Finally, there
            example,   in anare many diagram
                             activity diagram-specific
                                             a decisionrequirements
                                                         node can bethat must betoenforced.
                                                                     connected               For
                                                                                   activity or action
            nodes only with a control flow, and for every decision node there should be a matching
            merge node. Every type of node and flow has different restrictions.
Page 17
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                         17/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            O. Draw a use-case diagram and a set of activity diagrams for a health club
            membership system. When members join the health club, they pay a fee for a
            certain length of time. Most memberships are for one year, but memberships as
            short as two months are available. Throughout the year, the health club offers a
            variety of discounts on their regular membership prices (e.g., two memberships for
            new  member.
            into the       The system
                     club. The manager   wants
                                       will then the system
                                                 identify thetoheavy
                                                                trackusers,
                                                                      each time a membera comes
                                                                            and generate  report so
            the manager can ask them to renew their memberships early, perhaps offering them
            a reduced rate for early renewal. Likewise, the system should identify members who
            have not visited the club in more than a month, so the manager can call them and
            attempt to re-interest them in the club.
Page 18
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                18/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Page 19
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                             19/33
7/18/2019                                                   Unified Modelling Language
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                 20/33
7/18/2019                                                   Unified Modelling Language
 Exercises                                                                   Chapter 4
Page 21
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                  21/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Members
                  Join club
                       o  Pay fee that varies by membership length (should have look-up table or
Club staff
Manager
                
                   Askoheavy users for early renewal
                          Determine heavy users from report
                      o  Adjust renewal price for heavy users
            Club staff/member (not clear in case who enters this data) –  maybe one or both; may
            happen through automated source data entry, e.g. use of a smart card.
          Club staff/manager (not clear in case who handles this task) –  could be one or the other or
          both.
Page 22
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                  22/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            The second level activities provide the beginnings of detailed use cases where activities
            in the case can be grouped into a higher level use case. For the other higher level
            activities, students should provide more details based on their understanding of this sort
            of business. Providing more detailed steps will vary with the student’s understanding of
          businessThis
                    operations  andincludes
                        mini-case    the amount
                                            someofactivities
                                                   detail they
                                                             thatexpress.
                                                                   are not clearly attributed to any
          particular actor. The students will probably sort this out in one or another manner. The
          instructor should decide if only one of the directions to go is correct (and be prepared to
          explain this to the students) or check to see which answers students come up with and ask
          them for explanations. Clearly this is a case where in practice the analyst will return to
          the users to ask for their preferences.
            In order to verify and validate the functional model, a set of rules have been defined to
            ensure the consistency among the activity diagram (described in O), the use-case
            description (described in P), and the use-case diagram (defined in O).
            Second, all objects portrayed as an object node in an activity diagram must be mentioned
            in an event in the normal flow of events, subflows, or alternate/exceptional flows of the
            use-case description.
            Third, sequential order of the events in a use-case description should occur in the same
            sequential order of the activities contained in an activity diagram.
            Fourth, when comparing a use-case description to a use-case diagram, there must be one
            and only one use-case description for each use case, and vice versa.
            Fifth, all actors listed in a use case description must be portrayed on the use-case
            diagram. Furthermore, each one must have an association link that connects it to the use
            case and must be listed with the association relationships in the use-case description. In
            some organizations, we should also include the stakeholders listed in the use-case
            description as actors in the use-case diagram.
            Sixth, all other relationships listed in a use-case description (include, extend, and
            generalization) must be portrayed on a use-case diagram.
Page 23
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                         23/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            Finally, there are many diagram-specific requirements that must be enforced. For
            example, in an activity diagram a decision node can be connected to activity or action
            nodes only with a control flow, and for every decision node there should be a matching
            merge node. Every type of node and flow has different restrictions.
            R. Draw a use-case diagram and set of activity diagrams for the following system.
            Picnics R Us (PRU) is a small catering firm with five employees. During a typical
            summer weekend, PRU caters fifteen picnics with twenty to fifty people each. The
            business has grown rapidly over the past year and the owner wants to install a new
            computer system for managing the ordering and buying process. PUR has a set of
            ten standard menus. When potential customers call, the receptionist describes the
            menus to them. If the customer decides to book a picnic, the receptionist records the
            customer information (e.g., name, address, phone number, etc.) and the information
            about the picnic (e.g., place, date, time, which one of the standard menus, total
            price) on return
            sign and   a contract.   Thewith
                               it along  customer is then
                                             a deposit     faxed
                                                       (often    a copy
                                                              a credit   of the
                                                                       card     contract
                                                                             or by check)and must
                                                                                          before the
            picnic is officially booked. The remaining money is collected when the picnic is
            delivered. Sometimes, the customer wants something special (e.g., birthday cake). In
            this case, the receptionist takes the information and gives it to the owner who
            determines the cost; the receptionist then calls the customer back with the price
            information. Sometimes the customer accepts the price, other times, the customer
            requests some changes that have to go back to the owner for a new cost estimate.
            Each week, the owner looks through the picnics scheduled for that weekend and
            orders the supplies (e.g., plates) and food (e.g., bread, chicken) needed to make
            them. The owner would like to use the system for marketing as well. It should be
            able to track how customers learned about PUR,and identify repeat customers, so
            that PUR can mail special offers to them. The owner also wants to track the picnics
            on which PUR sent a contract, but the customer never signed the contract and
            actually booked a picnic.
Page 24
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                 24/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Page 25
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                             25/33
7/18/2019                                                   Unified Modelling Language
 Exercises                                                                   Chapter 4
Page 26
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                  26/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
PRU
                    Take orders
                    Buy supplies
                    Cater picnic (size: 20-50)
                    Collect payment (minus deposit)
                    Perform marketing tasks
                  Customer
                      o  Calls in order
                  Receptionist
                      o  Describes menus (10 standard ones)
                  Owner
                     o  Receives special product information
Page 27
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                        27/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
                  Owner
                       
                     o
                         Reads weekly orders
                     o  Purchases materials
                               Purchases supplies
                                 
                               Purchases food
                                 
                  Owner
                     o  Track customers learning about PRU
                     o 
                            Identify customers who received but did not sign and return contracts
            In order to verify and validate the functional model, a set of rules have been defined to
            ensure the consistency among the activity diagram (described in R), the use-case
            description (described in S), and the use-case diagram (defined in R).
            First, when
            least one   comparing
                      event recordedaninactivity diagram
                                         the normal  flowtoofaevents,
                                                               use-case description,
                                                                      subflows,      there should be at
                                                                                or alternate/exceptional
            flows of the use-case description for each activity or action that is included on an activity
            diagram, and each event should be associated with an activity or action.
            Second, all objects portrayed as an object node in an activity diagram must be mentioned
            in an event in the normal flow of events, subflows, or alternate/exceptional flows of the
            use-case description.
            Third, sequential order of the events in a use-case description should occur in the same
            sequential order of the activities contained in an activity diagram.
            Fourth, when comparing a use-case description to a use-case diagram, there must be one
            and only one use-case description for each use case, and vice versa.
            Fifth, all actors listed in a use case description must be portrayed on the use-case
            diagram. Furthermore, each one must have an association link that connects it to the use
            case and must be listed with the association relationships in the use-case description. In
Page 28
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                      28/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            some organizations, we should also include the stakeholders listed in the use-case
            description as actors in the use-case diagram.
            Sixth, all other relationships listed in a use-case description (include, extend, and
            generalization) must be portrayed on a use-case diagram.
            U. Draw a use-case diagram and a set of activity diagrams for the following system.
            Of-the-Month Club (OTMC) is an innovative young firm that sells memberships to
            people who have an interest in certain products. People pay membership fees for
            one year and each month receive a product by mail. For example, OTMC has a
            coffee-of-the-month club that sends members one pound of special coffee each
            month. OTMC currently has six memberships (coffee, wine, beer, cigars, flowers,
            and computer games) each of which costs a different amount. Customers usually
            belong to just one, but some belong to two or more. When people join OTMC, the
            telephone operator records the name, mailing address, phone number, e-mail
Page 29
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                         29/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Page 30
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                             30/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
          Note that many details of the case are values (such as the specific clubs) which should be
          captured in database or tables as these may change over time. An interesting question to
          pose to students will be what to do with the parts of the system pertaining to computer
          games if these change from selling them as products on CD to providing access for a
          period of time to a web-site.
OTMC
                  Sell memberships
                  Provide products to members (likely outside scope of the present system)
Page 31
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                   31/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
Customer
                  Joins club
                       o  Provides customer information
                                 (For
                                 (For each
                                       each service)
                                            service) Provides
                                                     Provides multiple membership
                                                              membership          information
                                                                         length desired
                                 (For computer game membership) Selects game type(s)
                                 
                  Pay membership
                       o  Check customer memberships
 Telephone Operator
                                             information
                                            (For each service) Receives membership length desired
                                             information
                                            (For each computer game membership) Receives game
                                             type information
          Note: Items in red are part of the “to- be” system or may be stubs programmed f or future
          expansion. It is a business decision whether to prepare for the business policy changes in
          the new system or to wait for later updates. This presents an interesting discussion to
          have with students regarding how they want to handle future anticipated features which
          may or may not be realized by the organization. My own inclination in this case would
          be to include them in the design, but this is most likely something that business sponsors
          may have to decide.
            In order to verify and validate the functional model, a set of rules have been defined to
            ensure the consistency among the activity diagram (described in U), the use-case
            description (described in V), and the use-case diagram (defined in U).
Page 32
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0                                      32/33
7/18/2019                                                   Unified Modelling Language
Exercises Chapter 4
            Second, all objects portrayed as an object node in an activity diagram must be mentioned
            in an event in the normal flow of events, subflows, or alternate/exceptional flows of the
            use-case description.
            Third, sequential
            sequential        order
                       order of     of the events
                                the activities     in a use-case
                                               contained         description
                                                          in an activity      should occur in the same
                                                                         diagram.
            Fourth, when comparing a use-case description to a use-case diagram, there must be one
            and only one use-case description for each use case, and vice versa.
            Fifth, all actors listed in a use case description must be portrayed on the use-case
            diagram. Furthermore, each one must have an association link that connects it to the use
            case and must be listed with the association relationships in the use-case description. In
            some organizations, we should also include the stakeholders listed in the use-case
            description as actors in the use-case diagram.
            Sixth, all other relationships listed in a use-case description (include, extend, and
            generalization) must be portrayed on a use-case diagram.
http://slidepdf.com/reader/full/unified-modelling-language-56d6286cbc2b0 33/33