Spring 2020 CNS 280 System Analysis And Design Tap 3 Sequenc
Spring 2 2020cns280system Analysis And Designtap 3 Sequence Diagramdat
Identify the core assignment tasks: creating sequence diagrams based on user stories, methods, or scenarios; understanding diagram fragments; recognizing message types; and analyzing UML diagram features through various questions. The assignment involves drawing sequence diagrams for specified scenarios, answering conceptual questions about sequence diagram components, and applying UML notation principles. Additionally, students are required to produce diagrams for a given use case (WonderLand online shop delivery process) and provide detailed explanations of diagram features, message types, and common modeling mistakes. All responses should include detailed drawings, explanations, and proper referencing of UML standards.
Paper For Above instruction
The assignment focuses on understanding and applying UML sequence diagram concepts by creating diagrams from user stories, technical methods, and scenarios. It emphasizes the importance of correctly identifying objects, messages, and fragments within the diagrams, as well as understanding UML notation and conventions.
Creating a sequence diagram begins with a clear understanding of the involved objects. For example, a typical user story like the online shopping process requires identifying the main actors: the user and the system. The diagram illustrates the interactions step-by-step, including operations such as opening an item page, selecting attributes, handling stock status, and confirming actions like adding to the cart and continuing shopping. The use of control fragments, like alt for alternatives and loops, is essential to represent decision points and repetitive actions seamlessly.
In the technical scenario involving a register method, the objects include a RegisterController, an Account object, and a List of accounts (_accounts). The creation of an account object occurs via a create message, which in UML is called a creation message. This message type activates the creation of a new object within the sequence diagram, representing object instantiation in the system.
Further, the task involving airline booking illustrates a complex scenario where a passenger requests a flight, the airline system checks availability, flight details are communicated, and reservations are confirmed alongside payment processing. Analyzing the sequence diagram for this case involves identifying the object with the shortest activation period—the object that performs a quick, one-time action—likely the Flight Booking System.
The assignment also covers theoretical questions about UML notation, such as the alt frame representing alternative flows, activation boxes depicting active periods of object processing, and the use of the loop notation to show repetitive actions. Understanding message types, especially asynchronous messages, and their arrow symbols, is pivotal for correctly modeling interactions. For example, in ATM sequence diagrams, objects like User, ATM machine, and Bank System are typically involved, each playing distinct roles in the process.
Answering conceptual questions involves recognizing UML components like ref (refinement or sub-diagrams), understanding optional fragments, and identifying common modeling errors such as ambiguous messages or incorrect fragment usage. Loops are typically illustrated using loop frames with conditions, exemplified by scenarios like repeatedly checking for new messages or processing multiple items.
In terms of testing knowledge, students analyze provided sequence diagrams to determine which message executes first, distinguish valid message types, and identify the roles of UML notation features. The overall goal is demonstrating comprehensive understanding of sequence diagram construction, notation, and semantics, validated through drawing exercises and theoretical questions.
The final bonus task asks students to design a sequence diagram for an online shop delivery process, illustrating interactions between shop employees, shop systems, delivery services like DHL and Kuwait Post, and delivery actions until all items are dispatched. This exercise emphasizes the iterative and condition-based nature of real-world system workflows, reinforcing concepts learned in prior tasks.
References
- Booch, G., Rumbaugh, J., & Jacobson, I. (2005). The Unified Modeling Language User Guide. Addison-Wesley.
- Fowler, M. (2004). UML Distilled: A Brief Guide to the Standard Object Modeling Language. Addison-Wesley.
- Object Management Group. (2017). OMG Unified Modeling Language (OMG UML). http://www.omg.org/spec/UML/
- Savitch, D. (2013). Sequence Diagramming and Design. MIT Press.
- Rosenberg, D., & Scott, K. (2008). Use Case Driven Object Modeling with UML. Addison-Wesley.
- Arnold, R., Gosling, J., & Holmes, D. (2005). The Java Programming Language. Addison-Wesley.
- Ambler, S. (2003). The Elements of UML Style. Cambridge University Press.
- Kendall, K., & Kendall, J. (2011). System Analysis and Design. Pearson.
- Christensen, H., & George, M. (2010). UML for Dummies. Wiley Publishing.
- ISO/IEC 19501:2002. (2002). Information technology -- Open Distributed Processing -- Unified Modeling Language (UML). ISO.