450 likes | 695 Views
Prototyping. . . Can we consider prototyping as a tool for problem analysis? If yes what makes it different from modeling (formal) approach?. Cont….
E N D
Prototyping . By Musa.D
. • Can we consider prototyping as a tool for problem analysis? • If yes what makes it different from modeling (formal) approach? By Musa.D
Cont… • In prototyping, a partial system is constructed, which is then used by the client, users, and developers to gain a better understanding of the problem and the needs. • Hence, actual experience with a prototype that implements part of the eventual software system are used to analyze the problem and understand the requirements for the eventual software system. By Musa.D
Cont… • What is the motivation to use the prototype for problem analysis? By Musa.D
Cont… • The rationale behind using prototyping for problem understanding and analysis is that the client and the users often find it difficult to visualize how the eventual software system will work in their environment just by reading a specification document. By Musa.D
Cont… • This is particularly true if the system is a totally new system and many users and clients do not have a good idea of their needs. By Musa.D
Requirements Specification • Once the formal modeling is completed (DFD and Object modeling) can’t we consider its output as an SRS? • Justify you’re answer? By Musa.D
Cont… • The main reason is that modeling generally focuses on the problem structure, not its external behavior. • What are missed in modeling? By Musa.D
Cont… • Things like user interfaces • Performance constraints • design constraints • standards compliance are not included in the model, but must be specified clearly in the SRS because the designer must know about these to properly design the system. By Musa.D
Cont… • Hence the output of the model can’t form a desirable SRS. Requirement analysis activity transition Specification activity What will passes from Requirement analysis activities to Specification activities? By Musa.D
Cont… • The knowledge acquired about the system is passes to specification activity. The basic issues an SRS must address are: • Functionality • Performance • Design constraints imposed on an implementation • External interfaces By Musa.D
Functional requirement • ? By Musa.D
Cont… • Functional requirements capture the intended behavior of the system. This behavior may be expressed as services, tasks or functions the system is required to perform. • Or By Musa.D
Cont… • Statements of services the system should provide, how the system should react to particular inputs and how the system should behave in particular situations. How to represent the functionality of the system? By Musa.D
Cont… • Use cases specify the functionality of a system by specifying the behavior of the system, captured as interactions of the users with the system. what is us e case? By Musa.D
Cont… • A use case is a methodology used in system analysis to identify, clarify, and organize system requirements. • The use case is made up of a set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal. By Musa.D
Cont… • The use case should contain all system activities that have significance to the users. setTime readTime RepaireWatch WatchUser Use case diagram for simple watch By Musa.D watchRepairPerson
Cont… • The major components in the above use case diagram are: • Actor • System(SimpleWatch) • Use case By Musa.D
Cont… • Actor : Actors are parties outside the system that interact with the system An actor may be a class of: • users, • roles users can play, • or other systems. By Musa.D
Cont… • Actors may be primary or seconded • A primary actor is the main actor that initiates a use case (UC) for achieving a goal, and whose goal satisfaction is the main objective of the use case. • A secondary actor is one from which the system needs assistance. By Musa.D
Cont… • What are the use cases of simple watch shown in the above use case diagram? By Musa.D
Exercise one • Draw use case diagram for your mobile. • Assume your mobile provide the following functionalities. • Dial number • Receive call • Set alarm • Generate alarm sound By Musa.D
Exercise Two • Use Case 1: Sales Clerk checks out an item • Customer sets item on counter. • Sales clerk swipes bar code reader across bar code on item • System looks up bar code in database procuring item description and price By Musa.D
Cont… • System emits audible beep. • System announces item description and price over voice output. • System adds price and item type to current invoice. • System adds price to correct tax subtotal By Musa.D
Cont… • inventory clerks also swipe bar codes while counting objects on the shelves. Draw use case diagram for the above description By Musa.D
Cont… By Musa.D
Cont… • Is there any relation ship between above use cases? By Musa.D
Cont… • Yes, there are relationship between the following use cases • Check out & swipe bar code reader and • inventory and swipe bar code reader Such kind of relation ship is called <<use>> relation ship By Musa.D
Cont… redraw the above use case diagram to reflect <<use>> relationship among use cases By Musa.D
Cont… By Musa.D
Cont… Exercise 3 • Modify the above “Sales Clerk checks out an item” use description to include <<use>> relation. By Musa.D
Cont… • Use Case: Sales Clerk checks out an item • Customer sets item on counter. • «uses» Swipe bar code Reader. • System looks up bar code in database procuring item description and price By Musa.D
Cont… • System emits audible beep. • System announces item description and price over voice output. • System adds price and item type to current invoice. By Musa.D
Cont… • The other relationship between use cases is <<extend>> relationship • an extend relationship indicates that an instance of extended use case may include the behavior specified by extending use case. By Musa.D
Cont… • When to use <<extend>> relationship? • A typical application <<extend>> relationship is the specification exceptional behavior. • The extended use case describe set of events taken by the system or actors when an exception behavior is occur By Musa.D
Example • In many stores, sales clerks under the age of 21 are not allowed to check out liquor. • When an underage sales clerk sees a liquor item, the clerk shouts “21” over the P.A. system. By Musa.D
Cont… • Soon a manager walks up and swipes bar code reader on the item. • Draw use case diagram for above description(assume these are new added information on the previous activities) By Musa.D
Cont… By Musa.D Inventory clerk
Cont… • Modify the above “Sales Clerk checks out an item” use case so that <<extend>> relationship will be reflected By Musa.D
Cont… • Use Case 1: Sales Clerk checks out an item 1) Customer sets item on counter. 2) If item is liquor -Call “21” over P.A. system -Wait for manager. -Manager «uses» Swipe UPC Reader By Musa.D
Cont… - Go to step 4 3.«uses» Swipe UPC Reader. 4. System looks up UPC code in database procuring item description and price 5. System emits audible beep. 6. System announces item description and price over voice output 7.System adds price and item type to current invoice. By Musa.D
Cont… • System adds price to correct tax subtotal . By Musa.D
Reading assignment The third relationship among use cases is: • <<include>> By Musa.D
lecture 8 Use case Description.pptx By Musa.D