CIS 320-Test 2 Chapter 4
What are the different roles played during a walkthrough? What are their purposes?
* Presenter - person primarily responsible for the specific representation being reviewed. Present to walkthrough team * Recorder or scribe - member of analysis team that records all important aspects of the walkthrough. Records discovered errors. * Maintenance Oracle - Raises issues regarding maintenance of the representation * Also needs to be a person who calls, sets up, and runs the meetings
What is an object node?
- Activities and actions typically modify or transform objects. -Object nodes model these objects in an activity diagram. - Object node are portrayed as rectangles and is labeled by its class name - Object nodes represent the flow of information from one activity to another activity. - Object node is used to represent an object that is connected to a set of Object Flows
Describe how to create use case diagrams.
1. Place and draw identified use cases on the diagram. -There is no specific sequence to place different use cases in the use case diagram but the arrangement should minimize the size and maximize the understanding of the model. —The inclusion, extension and generalization of use cases are also added to the model. 2. Place & draw the actors on the diagram near the use cases with which they are associated. 3. Draw subject boundary. This forms the border of the subject, separating use cases (subjects function) from actors(roles of external users). 4. Add Associations. The last step is to draw lines to connect the actors to the use cases with which they interact.
How are the different functional models related and does this affect the verification and validation of the models?
1. When comparing activity diagram and use case description, there should be at least one event recorded in the normal flow of events, sub flows, or alternative/exceptional flows of the use case description for each activity included on the activity diagram, and each event should be associated with an activity or action. 2. All object portrayed as an object node in the activity diagram must be mentioned in an event in the normal flow of events, sub flows, or alternative/exceptional flow of the use case description. 3. Sequential order of events in the use case description should occur in the same sequential order of activities contained in an activity diagram. 4. When comparing a use case description to a use case diagram, there must be one and only one use case, vice-versa. 5. All actors in the use case description must be in the use case diagram. Each actor must have an association link that connects it to the use case and mist be listed with he Association relationships in the use case description. 6. Stakeholders should also be included in the use case description as actors in the use case diagram. 7. All other relationships listed in a use-case description (include, extend, and generalization) must be portrayed on a use-case diagram. Yes, the relation of the different models affects verification and validation of the models. If the above criteria are not met, the walkthrough will uncover numerous errors. The diagrams will not reflect the same use case information.
What is the difference between a control flow and an object flow?
A control flow shows: a) Model the paths of execution through a business process b) It is represented by a solid line with an arrowhead on it showing the direction of the flow c) These can be attached only to actions or activities. An object flow shows: a) Model the flow of objects through a business process. b) They are depicted as a dashed line with an arrow on it showing the direction of the flow c) An individual object flow must be attached to an action or activity on one end and an object node on the other end.
What is a walkthrough? How does it relate to verification and validation?
A walkthrough is essentially a peer review of a product. In the case of the functional models, a walkthrough is a review of the different models and diagrams created during functional modeling. The purpose of a walkthrough is to thoroughly test the fidelity of the functional model to the functional requirements and to ensure the models are consistent. Walkthrough uncovers errors or faults but does not correct them, just identifies them. It relates to verification and validation in that it uses a team with specific roles to uncover errors in the business process. Through walkthrough, the errors are caught and then more validations are performed. The walkthrough is performed again to check the consistency and completeness and repeated until the functional model is verified for its perfection.
What is the purpose of an activity diagram?
Activity diagrams are used to model the behavior in a business process independent of objects. Activity diagrams can be viewed as sophisticated data flow diagrams that are used in conjunction with structured analysis. Activity diagrams include notation that addresses the modeling of parallel, concurrent activities and complex decision processes. Activity diagrams can be used to model everything from a high-level business workflow that involves many different use cases, to the details of an individual use case, all the way down to the specific details of an individual method. In a nutshell, activity diagrams can be used to model any type of process.
What is CRUD? Why is this useful?
CRUD stands for Create, Read, Update, and Delete. Create: Implies the mean of developing or designing the system after performing through analysis and setting design strategies. Read: Read is the process of testing the system with test data to catch the bugs, if any. Update: Is the process of debugging the system to make it perfect, correct and consistent. Delete: is the process of deleting unnecessary functions or data from the system to free the memory. Four step cycling system is important and useful to get a bug free and consistent system.
How does an essential use case differ from a real use case?
The essential use case uses only the minimal essential issues necessary to understand required functionality. In contrast, the real use case goes farther and describes a specific set of steps. The primary difference is that essential use cases are implementation independent, whereas real use cases are detailed descriptions of how to use the system once it is implemented. Real use tend to be used in only design, implementation, and testing.
What is the purpose of a fork node?
The fork node is used to split the behavior of the business process into multiple parallel or concurrent flows. Unlike the decision node, the paths are not mutually exclusive, in other words both the paths are executed concurrently.
What is the viewpoint of a use case, and why is it important?
The viewpoint of the use case is providing better understanding about the functionality of the system at a very high level to the analyst. This is important as a use case includes the description of the main functions of the system in simpler ways. Ultimately, the business needs are outside the system residing with stakeholders such as customers and employees. It is important to insure that these stakeholders' needs are addressed by the system. Creating the use cases from their perspective is a way to emphasize this business-technology complementarily.
Why do we strive to have about three to nine major use cases in a business process?
We strive to have 3 to 9 to help maintain a reasonable level of complexity of the system. Use cases must not be very complex as well as simple/small. If there are more than 8 it could suggest that the use cases are very small or that the system-boundary is to big. If there are more than 9 uses cases then they should be grouped together (logical group of use cases) to make diagrams easier to read. If use cases are very complex, they are tough to understand. If they are to small, then they increase the steps increasing and size of them system.
Why is iteration important in creating use cases?
- Creating use cases is a typical task for an analyst because it needs the information about all the business processes as well as the actors who interact with the system. - Iteration is the final step in the creation of the use case. - Iteration of all the step involved in the creation of use cases is important as the users often change their mind about the need of the use case and what is to be included. - The analyst should continue these steps until he or she and the user feels that enough use cases have been identified to begin identifying candidate classes for the structural model. - As candidate classes are identified it is likely that more uses cases will uncovered.
How do you create use cases?
1. Review the requirements definition. - helps the analyst to identify to get a complete overview of the underlying business process being modeled. 2. Identify subject;s boundaries. - helps identify scope of the system, although it will most likely change. 3. Identify primary actors and goals. - comes from a list of stakeholders and users. Use CRUDE to identify the task each actor must perform. 4. Identify business processes and major use cases. 5. Review current of use cases. - May need to spilt or merge.
Which of the following could be an actor found on a use case diagram? Why? Ms.Mary Smith Supplier Customer Internet customer Mr. John Seals Data entry clerk Database administrator
Actor is an element of the use case diagram, which assumes and describes the role which would be played by a user during the interaction with the system. It may represent any other system also to which the current system would communicate. It accesses the use case(s). It does not imply and specific name of the person or thing but the role played by the group of persons or things. Following could be the actors found on a use case diagram because these words imply the roles not any specific names: 1. Supplier 2. Customer 3. Data entry clerk 4. Database administer Internet Customer could be associated with the actor customer.
How does a detail use case differ from an overview use case?
An overview use case provides a high level overview of the requirements. It shows the basic information and is created early in the process of understanding the system requirements. In contrast, the detail level use case documents all the information needed for the use case.
Why is business process modeling important?
Business process models describe the different activities that when combined together support a business process. Business processes typically cut across functional departments (e.g., the creation of a new product will involve many different activities that will combine the efforts of many employees in many departments). Furthermore, from an object-oriented perspective, they cut across multiple objects. Business processes is a very constructive activity that can be used to make sense out of the gathered requirements. They are very powerful tools for communicating the analyst's current understanding of the requirements with the user.
What are some heuristics for creating a use case diagram?
Encourages information hiding. The only parts drawn are on the diagram are the system boundary, the use cases themselves, the actors, and various associations between components. Every time the use cases change, it could effect the diagram. No order is implied by the diagram, so they can be placed in whatever fashion is needed to make the diagram easy to read and to minimize the number of lines crossing. It is usually necessary to redraw the diagram several times to make the diagram easy to read. There should be no more than three to nine use cases on the model to keep it simple yet informative. Place the actors next to use-cases to minimize crossing lines as well.
Every association must be connected to at least one _______ and one _________. Why?
Every association must be connected to at least one use case and one actor or every association must be connected to at least one actor and one use case. -Association depicts what use cases would be interacted by which actors. -A line is used to establish a connection between a use case and an actor -This connection is known as association between a use case and an actor. - There may be various actors that interact with more than one use case or an actor with various use cases. - Both forms of associative relationships between use cases and actors are known as many-to- many relationships. - Both are true because there could possible be multiplicity issue between them. For example: - A doctor can interact with "Patient Record" as well as "Medicine Record" use cases in a hospital. - The use case "Patient Record" could be interacted by a doctor as well as management.
What are the major elements of an overview use case?
The major elements are its name, ID number, primary actor, type, and a brief description, and the relationship among the actors, actors and use cases, and use cases.
What are the major elements of a detail use case?
The major elements are its name, ID number, primary actor, type, and a brief description, and the relationship among the actors, actors and use cases, and use cases. Stakeholders and interests; trigger and trigger type; relationships; normal flow of events; listing of sub-flows and alternate/exceptional flows.
What is the difference between an activity and an action?
The only difference between an action and an activity is that an activity can be decomposed further into a set of activities and/or actions, whereas an action represents a simple non-decomposable piece of the overall behavior being modeled.
How is use case diagramming related to functional modeling?
The purpose of use-case models is to provide a description of the problem domain. The use case descriptions and diagrams provide a formal definition of the external behavior or functionality of the business processes. These provide a logical view of the system. In the design phase a physical view of the internals of the new system are modeled.
What are the different types of control nodes?
There are seven different types of control nodes in an activity diagram: a) Initial: This node portrays the beginning of a set of actions or activities. b) Final-activity: This node is used to "stop the process" being modeled. Ended immediately, regardless of whether they are completed. c) Final-flow: Similar to the final-activity node, except that it stops a specific path of execution through the business process, but allows the other concurrent or parallel paths to continue. d) Decision: This node is used to represent the actual test condition that is used to determine which of the paths exiting the decision node is to be traversed. e) Merge: This node is used to bring back together multiple mutually exclusive paths that have been split based on an earlier decision f) Fork: A fork node is used to split the behavior of the business process into multiple parallel or concurrent flows. g) Join: The join node brings back together the separate parallel or concurrent flows in the business process into a single flow.
Explain the following terms. Use layman's language as though you were describing them to a user: (a) actor; (b) use case; (c) subject boundary; (d) relationship.
a) Actor: The actor is someone (or occasionally some thing) outside the system that provides information or things (inputs) that the system needs, receives some or all of the things or information (outputs) that the system creates, or the actor can both supply and receive things or information from the system. b) Use case: A use case is a description of what the system does from the perspective of the user. Since systems can often do many things, the use case often includes a central activity of the system but also shows the many variations that can occur under different circumstances or when varied users interact with it in different ways. c) System boundary: The system boundary is the dividing point between those items that are included in the system and those that are not. In terms of information technology, the boundary separates the parts of a job that are done by the application from those that are done by actors. In terms of the entire information system that includes both the humans and applications working together to solve business problems, the boundary can be fuzzier. For the efficient development of new systems, however, the boundary shows what the programmers must include and what they should not include in the framework of the project. d) Relationship: Use cases are not independent and stand alone items in most examples. Pairs (or more) of use cases can be related and can be associated -- for example there can be communication between an actor and a use case. Use cases can be extended such that a normal flow of events can be extended to another use case showing an alternate or exceptional flow. An include relationship shows that one or more use case is a part of another more encompassing use case. Finally, a generalization relationship shows that a use case is a specialized example of a more general case
What are some guidelines for designing a set of use cases? Give two examples of the extend associations on a use case diagram. Give two examples for the include association.
a) Write each step in the SVDPI form (Subject-Verb-Direct Object- Preposition- Indirect Object) b) Make sure it is clear who the initiator and receiver of the step is c) Write the step from the perspective of the independent observer d) Write each step at about the same level of abstraction e) Ensure the use case has a sensible set of steps f) Apply the KISS principle liberally (Keep it simple stupid) g) Repeat all instructions after the set of steps to be repeated Examples of Extend associations on use case diagram: 1. In a hotel management use diagram, there is a use case named manage room_records. Another use case update room_record will extend the use case manage room_records. 2. In a hospital system, there is a use case Manage Patient_appointment. Another use case Make Payment will extend the use case Manage Patient_Appointment. Examples of the Include associations on a use case diagram: 1. In a hotel management use diagram, there is a use case named manage room_records. Another use case Set room_charges will include the use case manage room_records. 2. In a hospital system, there is a use case Manage Patient_appointment. Another use case Enter New_Patient will include the use case Manage Patient_Appointment.