Software Life-Cycle Models

Similar documents
UML. By Somenath Mukhopadhyay.

OBJECT-ORIENTED DESIGN

ICONIX Process: Use Case Driven Object Modeling. Copyright 2007 ICONIX Software Engineering, Inc. 1

UML Views of a System

Main Login Screen Enter user name and password. New users can call or customer service using the information provided. If you have forgotten

easypurchase Magellan User Reference Guide

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

How to create and order individual pages. 1. Once you open the My Memories Suite software, choose the Design icon.

CMPSC 487W Software Engineering and Design Group Assignment #4 Fall 2018

WEB SITE GUIDE. PLACE AN ORDER - Drop Ship Account INDEPENDENCE MEDICAL

WEBSITE TRAINING GUIDE MY OFFICE PRODUCTS. Office Supplies & Business Print

Lecture 8: Use Case -Driven Design. Where UML fits in

Chapter : Analysis Modeling

EducoSoft. Student Registration

Standard User Site Registration Account Options Customer Hot List Creation & Utilization.

SEEM4570 System Design and Implementation Lecture 11 UML

How to place an order on CSI s online store

Design. Eric McCreath

Electronic Ordering Instructions with Credit Card Option. For Hilton Hotels Punch Out

Guidebook ONLINE ORDERING MADE EASY!

SEEM4570 System Design and Implementation. Lecture 10 UML

Introduction to UML. Danang Wahyu utomo

VALO ecommerce User Guide. VALO Commerce

Getting Started with Guy Brown Office Direct. Help and tips for getting the most out of your purchasing experience with Guy Brown Office Direct

TIS HELP VCCS TECHNICAL INFORMATION SHOP (TIS) INSTRUCTION FOR INDEPENDENT OPERATORS

Elizabethtown College OFFICE SUPPLIER CONTRACT July

Object-Oriented Design and Modeling Using the UML

1: Specifying Requirements with Use Case Diagrams

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system)

Lecture 34 SDLC Phases and UML Diagrams

HOW TO PURCHASE A TEAS TRANSCRIPT

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

Getting Started with Galloup StoreFront

Getting a Quick Start with RUP

Registering for Courses Online How To Guide

Online Ordering Instructions

ORDERING FROM TEMPLATES Click on the My Accounts tab at the top of the screen, and then select Templates.

VALO Commerce. Beam Suntory User Guide

User Manual Online Book Store. Phase-III. Vamsi Krishna Mummaneni

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Analysis and Design Using UML (OO-226)

ACTIVE NET ACCOUNT CREATION

PTP Registration: Credit Card

Unified Modeling Language (UML) and Modeling

AVAYA LEARNING CENTER END USER GUIDE. Avaya Learning Virtual Campus License Registration Guidelines

Interaction Modelling: Use Cases

FedEx Office Print Online Corporate

06. Analysis Modeling

New Web Portal User Guide. Table of Contents. First Time Login.. 2. Login and Reset Password.. 5. Pay Assessments and Utilities..

Vision Document 2.0 Online Book Store Phase-II. Vamsi Krishna Mummaneni

Step-By-Step Guide. ecommerce

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

Imagine Customer Support:

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

Amazon Business End User FAQ Library

BUSINESS NETWORK PORTAL V.2.0.2

Table of Contents. Buyer Functions Buyer Responsibilities: Create and submit orders for approval and manage personal profile and preferences.

Modeling with UML. (1) Use Case Diagram. (2) Class Diagram. (3) Interaction Diagram. (4) State Diagram

Model Based Testing in Web Applications

Unit Wise Questions. Unit-1 Concepts

Higher Reach Online Registration

Welcome to the USF Computer Store Web Store. Or navigate directly to:

Please follow these steps prior to accessing the Amazon Business Punchout. Step 1: Verify if your Marketplace is Linked to an Amazon Account

UML DIAGRAM FOR PLATFORM ASSIGNMENT RAILWAY E-BOOK

VALLIAMMAI ENGINEERING COLLEGE

Class Diagrams in Analysis

Requirements Engineering

Applicant Coupling. Users: Main Residency Match Applicants Fellowship Match Applicants

UNIT 1-UMAL DIAGRAMS. Q.No. Question Competence Level. 1 What is Object Oriented analysis & Design? Remembering BTL1

De Vry University Houston Campus

*ANSWERS * **********************************

CMPSC 487W Software Engineering and Design Group Assignment #3 Fall 2017

CEU Catalog Guide. When you access the CEU catalog it defaults to ALL available CEUs.

Storefront Ordering System Demonstration Guide. Powered by

B2B Portal User Guide

Applicant Coupling. Users: Main Residency Match Applicants Fellowship Match Applicants

MD Helicopters, Inc. On-line Publications Ordering Applications Guide

WAXIE Quick Reference Guide. shop.waxie.com

Magento 2 Vendor Split Cart Addon - User Guide

Brolly Sheets Wholesale Login

Vision Document. Online E-commerce Music CD Store Version 2.0

SBI Mingle Mobile App User Manual

MMP QUICK REFERENCE Table of Content

Help Guide Service Readiness Management

Progress Report. Object-Oriented Software Development: Requirements elicitation (ch. 4) and analysis (ch. 5) Object-oriented software development

How to order uniforms through Corporate Recognition

Forest Service Unit Coordinator Website User Guide Index

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD

Welcome to Shopfront. Your distributor will supply your user name, password, and the website address for your login page.

Introduction. Logging In.

EMPLOYEE STORE ORDERING INSTRUCTIONS

HOKIEMART PUNCHOUT CATALOG

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

Step 1: Register as a New User

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch

Ans 1-j)True, these diagrams show a set of classes, interfaces and collaborations and their relationships.

Contents GENERAL OVERVIEW 3. User Profile and Permissions... 3 Regional Manager... 3 Manager... 3 User... 4 Security... 4

2. Introduction to UML & Discussion of Related S.E.

Transcription:

Software Life-Cycle Models CMPSC 487 Lecture 03 Topics: UML Class Diagram Rosenburg Chap 2. Domain Modeling A. UML: Unified Modeling Language UML is a general-purpose, developmental, modeling language in the field of software engineering, which is intended to provide a standard way to visualize the design of a system. a) UML Diagrams UML has 2 categories, and 14 different diagrams: 7 structure diagrams: class, component, composite structure, deployment, object, package, profile diagrams 7 behavior diagrams: activity, communication, interaction overview, sequence, state, timing, use case diagrams Class diagram (static diagram) It is a fundamental building block of OOAD (Object-oriented analysis and design). The most used UML diagram type Shows relationship between object types (classes) in a system. Use case diagram (behavior diagram) Most known type of UML behavior diagram. This is a good starting point to discuss projects It shows: 1. Graphic overview of actors in system 2. Functions needed by actors 3. Interactions between functions

Sequence diagram (behavior) Capture behavior of single scenario (each use case) It shows: 1. Interactions between objects (arrows) 2. order of interactions Communication diagram (behavior) Called collaboration diagram in UML 1. Has same information to sequence diagram Show messages passed between objects Activity diagram (behavior) Similar to flow chart, but activity diagram supports parallel behavior Has strength in expressing concurrency and signal passing State diagram (behavior) Oldest diagram type in UML Has states including initial/final states, and transition between states Show the internal stat change by external signal b) Advice when drawing UML diagrams 1. Don t spend too much time to make it pretty 2. Keep diagrams as simple as possible. If diagram become cluttered, split it. 3. Use your notation if you need Don t strictly follow UML notation.

c) Class diagram It is one of the structure diagram, which depict the elements of a specification that are irrespective of time. It shows collaboration of static model element and their relationship It is used to explore domain concept, analyze requirement, and depict detailed design of OO software. Representation of class diagram

Attributes Represents structural feature of a class. Fields in a class Operation Action that a class can do Method on a class

Association Bidirectional Association

Note and comments Constraints Aggregation Composition Generalization

Association class It allows adding attributes, operations, and other features to associations. It add extra constraints, in that there is only one instance of the association class between any two participating objects.

B. ICONIX Process overview ICONIX Process is a minimalist, streamlined approach that focuses on that area that lies in between use cases and code. It has 11 steps: 1. Domain modeling 2. Use case modeling 3. Requirement review 4. Robustness analysis 5. Technical architecture 6. Preliminary design review 7. Sequence diagram a. Abstract level b. Involving technical architecture 8. Critical design review 9. Coding & unit testing 10. Integration & scenario testing 11. Code review & model updating Phase 1. Requirement Phase 1. Domain modeling 2. Use case modeling 3. Requirement review

Phase 2. Analysis & preliminary design phase 4. Robustness analysis 6. Preliminary design review 5. Technical architecture Phase 3. Detailed design phase 7. Sequence diagram 8. Critical design review

Illustration of ICONIX process and steps

C. Domain modeling a) Background Project Glossary: A used in project. It helps to ensure consistent usage of terms, when describing problem space. Domain Model: Example) Domain model s aim is

Domain Object Requirement Requirement has 3 categories 1. High level requirement (=business requirement) Management and board of directors can understand. It has information that IT group need for developing SW. 2. Functional requirement It is very detailed and outlines what needs to be delivered. It describe what system should do. 3. Non-functional requirement Include performance, scalability, capability, maintainability, etc. Describe global constraint on a SW system.

b) Overall step to build domain model 1. Starts with high-level requirements. 2. Scan the requirement, and extract nouns and noun phrases. 3. Refine these nouns (to create initial domain model) 4. First trial of building domain model 5. Second attempt a the domain model 6. Build generalization relationship

c) Example: The high-level requirements for the Internet Bookstore: 1. The bookstore will be web based initially, but it must have a sufficiently flexible architecture that alternative front-ends may be developed. 2. The bookstore must be able to sell books, with orders accepted over the Internet. 3. The user must be able to add books into an online shopping cart, prior to checkout. a. Similarly, the user must be able to remove items from the shopping cart. 4. The user must be able to maintain wish lists of books that he or she wants to purchase later. 5. User must be able to pay by credit card or purchase order. 6. The bookstore must be embeddable into associate partners websites using mini-catalogs, which are derived from an overall master catalog stored in a central database. a. The mini-catalogs must be defined in XML, as they will be transferred between this and external systems. b. The shipping fulfillment system shall be carried out via Amazon Web Services. 7. The user must be able to create a customer account, so that the system remembers the user s details (name, address, credit card details) at login. a. System maintain a list of accounts in its central database. b. When a user logs in, his or her password must always be matched against the passwords in the master account list. 8. The user must be able to search for books by various search methods title, author, keyword, or category and then view the books details. 9. It must be possible for user to post reviews of favorite books; the review comments should appear on the book details screen. Review should include a customer rating (1 5). a. Book reviews must be moderated that is, checked and OK d by staff before they re published on the website. 10. It must be possible for staff to post editorial reviews of books. These should also appear on the book details screen. 11. The bookstore shall allow third-party sellers (e.g., secondhand bookstores) to add their own individual book catalogs. These are added into the overall master book catalog. 12. The bookstore must be scalable: a. The bookstore must be capable of maintaining user accounts for up to 100,000 customers in its first six months, and then a further 1,000,000 after that. Step 1. Starts with high level requirement Step 2. Scan the requirement & Extract nouns and noun phrases

Step 3. Refine nouns (and noun phases) to create the initial domain model Bookstore Book Order Internet Shopping Cart Checkout Item Wish List Credit Card Purchase Order Associate Partner Mini-Catalog Master Catalog Database Shipping Fulfillment System Customer Account List of Accounts Password Master Account List Search Method Title Author Keyword Category Book Details Review Comment Customer Rating Book List Book Review Customer Editorial Review Seller Book Catalog Master Book Catalog Search Results User Account

Step 4. First trial of building domain model. Customer Order Wish List Book Review Customer Account Purchase Order Book List Editorial Review Master Account List Credit Card Book Author Search Result Database Checkout Step 5. Second attempt at the domain model. Step 6. Build generalization (is-a) relationship.

d) 10 Domain Modeling Guidelines 10. Focus on real world objects 9. Use generalization (is-a) and aggregation (has-a) relationships 8. Limit your initial domain modeling efforts to a couple of hours 7. Organize your class around key abstraction in the problem domain 4. Use domain model as a project glossary

3. Do your domain model before writing your use cases 2. Don t expect your final class diagrams to precisely match your domain model 1. Don t put screens and other GUI-specific classes on your domain model 6. Don t mistake your domain model for a data model

5. Don t confuse an object with a database table Bad Cases 1) Bad Cases 2) Bad Cases 3)

Bad Cases 4)