390 likes | 550 Views
System functionality methods. Use case description. “Use case description” describe the interaction of the actor with the system in text format. Use case description should have the following sections parts): Use case name Entry condition Scenario Exit condition. Cont….
E N D
System functionality methods . By Musa.D
Use case description • “Use case description” describe the interaction of the actor with the system in text format. • Use case description should have the following sections parts): • Use case name • Entry condition • Scenario • Exit condition By Musa.D
Cont… • A scenariodescribes a set of actions that are performed to achieve a goal under some specified conditions. • Who will perform each action in use case scenario? By Musa.D
Cont… • Generally, a step is some action by the actor (e.g., enter information), • some logical step that the system performs to progress towards achieving its goals (e.g., validate information, deliver information), • or an internal state change by the system to satisfy some goals (e.g., log the transaction, update the record.) By Musa.D
Cont… • Do you think that the interaction of actors with the system will be successful always? • Give example to justify your answer? By Musa.D
Cont… • A scenario that describes the interaction without any failure is called main success scenario. • On the other hand different situations can arise while the system and the actor are interacting which may not permit the system to achieve the goal fully. By Musa.D
Cont… • For these situations, a use case has extension scenarioswhich describe the system behavior if some of the steps in the main scenario do not complete successfully. By Musa.D
Use case terms By Musa.D
Cont… • pre-condition: What validity checks or constraints apply on the inputs (or the internal system as a whole) before the UC begins). • Post-condition: changes the UC makes to the internal system state. By Musa.D
Example • Assume a give group want to build “on-line auction system” in which different persons can sell and buy goods. • Assume that there is a separate financial subsystem through which the payments are made and that each buyer and seller has an account in it. By Musa.D
Cont… • Can you guess the main use cases of the system? By Musa.D
Cont… • The main use cases of the system are: • Put an item up for auction • Make a bid • Complete auction of an item Identify main actors for above use cases? By Musa.D
Cont… • The main actor for the “put items up for auction” is seller • The main actor for the “make a bid” is buyer • The main actor for the “complete auction of the item” is auction system By Musa.D
Cont… • Specify the preconditions for the above actors to use the use cases? By Musa.D
Cont… • Seller should login to the system • Buyer should login to the system • The last date for bidding has been reached for the auction system By Musa.D
Cont… • Can you guess the main success scenario and exception scenario? By Musa.D
Cont… By Musa.D
Cont… By Musa.D
Cont… By Musa.D
Cont… • Are there other use cases that are used by the above mentioned use cases? • If yes mention some of them? By Musa.D
Cont… • A use cases can employ other use cases to perform some of its work. • For example, in UC2 actions like "block the necessary funds" or "Debit bidder's account and credit seller's" are actions that need to be performed for the use case to succeed. By Musa.D
Cont… • Do they need to described in the document? • If these use cases are also part of the system being built, then there must be descriptions of these in the requirements document. • If they belong to some other system, then proper specifications about them will have to be obtained. By Musa.D
Cont… • What do you conclude about use cases? By Musa.D
Cont.. • The use cases are self-explanatory. • they are natural and story-like which makes them easy to understand by both an analyst and a layman. • The name of the use case specifies the goal of the primary actor (hence there is no separate line specifying the goal). By Musa.D
Cont… • The primary actor can be a person or a system • It is worth noting that the use case description lists contains some actions that are not necessarily tied to the goals of the primary actor. By Musa.D
Cont… • For example, the last step in UC 2 is to update the bid price of other bidders. This action is clearly not needed by the current bidder for his goal. Then why it is included? By Musa.D
Cont… • The system and other bidders are also stakeholders for this use case, the use case has to ensure that their goals are also satisfied. By Musa.D
For writing use cases apply general technical writing rules • Use simple grammar • clearly specify who is performing the step • keep the overall scenario as simple as possible. • when writing steps, for simplicity, it is better to combine some steps into one logical step, if it makes sense. By Musa.D
Cont… • For example see the following steps • "user enters his name," • "user enter his age," and • "user enters his address“ • can be easily combined into one step "user enters personal information." By Musa.D
Case study Course schedule • Problem Description The computer science department in a university offers many courses every semester, which are taught by many instructors. These courses are scheduled based on some policy directions of the department. By Musa.D
Cont… • Currently the scheduling is done manually, but the department would like to automate it. • As developer what will be your task? By Musa.D
Cont… • The first task should be to understand the problem and then produce a requirements document based on our understanding of the problem. By Musa.D
Cont… • For analysis, we first identify the parties involved. • Who are they? By Musa.D
Cont… • Client: Chairman of the computer science department. • End Users: Department secretary and instructors. By Musa.D
Cont… • After speaking with the instructors, the department chairman, and the secretary, we find that the system operates as follows. • Each instructor specifies, on a sheet of paper, the course he is teaching, expected enrollment, and his preferences for lecture times. By Musa.D
Cont… • These preferences must be valid lecture times, which are specified by the department. These sheets are given to the department secretary, who keeps them in the order they are received. After the deadline expires, the secretary • does the scheduling. By Musa.D
Cont… • Copies of the final schedule are sent to the instructors. • Draw DFD for the current system By Musa.D