UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.

Slides:



Advertisements
Similar presentations
Logical and Physical Design of an Information System
Advertisements

Johnb DFDs and Design John Bell The DeMarco notation.
Alternative Approach to Systems Analysis Structured analysis
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
Chapter 7 Structuring System Process Requirements
Accounting Information Systems 9th Edition
Documenting Information Systems
MIS 325 PSCJ. 2  Business processes can be quite complex  Process model: any abstract representation of a process  Process-modeling tools provide a.
©2003 Prentice Hall Business Publishing, Accounting Information Systems, 9/e, Romney/Steinbart 6-1 Systems Development and Documentation Techniques.
Chapter 4 Enterprise Modeling.
Software Engineering: Analysis and Design - CSE3308
PROCESS MODELING Transform Description. A model is a representation of reality. Just as a picture is worth a thousand words, most models are pictorial.
Use Case Modeling. Kendall & Kendall© 2005 Pearson Prentice Hall18-2 Commonly Used UML Diagrams The most commonly used UML diagrams are: – Use case diagram,
Systems Analysis I Data Flow Diagrams
Copyright © 2015 Pearson Education, Inc. Systems Documentation Techniques Chapter
SABAL SHRESTHA SHERIF HALAWA SHAMA KHADPEKAR JIANWEI LAI SI TRAN GROUP A Tri-Airport Shuttle System.
Lecture Note 8 Using Data Flow Diagrams
Chapter 7 Structuring System Process Requirements
System Analysis Overview Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach.
Chapter 5: Modeling Systems Requirements: Events and Things
Modeling Systems Requirements: Events and Things.
1 Structured Analysis Techniques. 2 Data Flow Diagrams.
Modeling the system the data flow diagram the context diagram level decomposition the cornucopia case portfolio project Systems Analysis and Design for.
Data flow diagrams.
Systems Analysis and Design in a Changing World, Fifth Edition
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
Phase 2: Systems Analysis
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Activity/Workflow Diagrams Chapter 7 Appendix B. © 2011 Pearson Education, Inc. Publishing as Prentice Hall Process Modeling: Activity/Workflow Diagrams.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
CORE 1: PROJECT MANAGEMENT Designing. This stage is where the actual solution is designed and built. This includes describing information processes and.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
Advanced Accounting Information Systems Day 7 Database Modeling.
UML’s StateChart FSM, EFSM in UML Concurrent states Tool support.
Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
section II Analysis Systems Analysis and Design
© 2005 by Prentice Hall Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
From requirements to specification Specification is a refinement of requirements Can be included together as Software Requirements Specifications (SRS)
Systems Development and Documentation Techniques BAB 3 PERTEMUAN SIA-UMBY.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
5 Chapter 5: Modeling Systems Requirements: Events and Things Systems Analysis and Design in a Changing World.
Structured Analysis Methods and Tools
Systems Documentation Techniques
Business System Development
Information Systems in Organizations 2
DATA REQIREMENT ANALYSIS
Chapter 6 The Traditional Approach to Requirements.
Software Specification Tools
Introduction to Transaction Processing
Object-Oriented Static Modeling of the Banking System - I
Information Systems in Organizations 2
System Process Modeling
DATA FLOW DIAGRAM PART 2.
OO Domain Modeling With UML Class Diagrams and CRC Cards
Systems Development and Documentation Techniques
Information Systems in Organizations 2
The Fulfillment Process
Information Systems in Organizations 2
DATA FLOW DIAGRAM.
Information Systems in Organizations 2
Information Systems in Organizations 2
Information Systems in Organizations 2
Systems Analysis – ITEC 3155 Modeling System Requirements – Part 2
Information Systems in Organizations 2
Chapter 7: Data Flow Diagram Structuring System Process Requirements
Chapter 11 Describing Process Specifications and Structured Decisions
Information Systems in Organizations 2
Chapter 14. Activity Modeling for Transformational Systems
Information Systems in Organizations 2
Presentation transcript:

UML’s StateChart FSM, EFSM in UML Concurrent states Tool support

Example Consider the following requirements describing the life cycle of a bank account entity. A bank account is first created by a bank manager. The customer owning the account has to activate the account within one month. Otherwise, this account will be automatically cancelled. Once activated, the customer can use the account to perform bank transactions. The account becomes blocked for security reasons or if it is dormant for more than six months. In either case, the customer is asked to contact the bank. After being blocked for two weeks, if the customer does not contact the bank, the account will be cancelled. The customer may cancel the account at any time while it is active. States: created, active, blocked and cancelled.

A bank account is first created by a bank manager A bank account is first created by a bank manager. The customer owning the account has to activate the account within one month. Otherwise, this account will be automatically cancelled. Once activated, the customer can use the account to perform bank transactions. The account becomes blocked for security reasons or if it is dormant for more than six months. In either case, the customer is asked to contact the bank. After being blocked for two weeks, if the customer does not contact the bank, the account will be cancelled. The customer may cancel the account at any time while it is active.

Concurrent states in StateCharts Concurrent activities when superstate state ‘created’ is reached

UML’s Activity diagram Describe dynamic behavior – sequential and concurrent flows of activities May involve activities spanning more than one use case Action states, activity states and transitions between them, and swimlanes Includes symbols from Petri Nets and Flowcharts

Example Given the following English description of the flow of activities within a company that receives orders through the internet. “Once the order is received by the Customer Service department, the customer’s credit is checked. If the customer has a bad credit rating, the order is rejected and closed. Otherwise, an invoice is prepared and sent to the Finance department for follow up, and at the same time the order is sent to the Order Fulfillment department. The Finance department processes the payment once received and informs the Customer Service department. Also, the Order Fulfillment department checks if the ordered items are available. If available, the order is delivered to the customer, otherwise it is back ordered. In either case, the Customer Service department is informed.

Once the order is received by the Customer Service department, the customer’s credit is checked. If the customer has a bad credit rating, the order is rejected and closed. Otherwise, an invoice is prepared and sent to the Finance department for follow up, and at the same time the order is sent to the Order Fulfillment department. The Finance department processes the payment once received and informs the Customer Service department. Also, the Order Fulfillment department checks if the ordered items are available. If available, the order is delivered to the customer, otherwise it is back ordered. In either case, the Customer Service department is informed

Process modeling: Data flow diagram (DFD) Process transforming input data and control into output data and control Bubble representing a process Arcs carrying flow of data and control in and out of a process Data store as source and sink of data External entities as source and sink of data

Data flow diagram (DFD)

Consistency of process refinement Process 2. is refined into 4 subprocesses 2.1 to 2.4

Example Consider the following informal requirements. ‘An online book ordering system accepts orders from buyers which could be either human users or software agents. A book order is normally made after the buyer browses a books catalog. The system checks the availability of the ordered items in the store inventory and the status of the buyer in the customer file. If all items are available and the customer has a good record, the buyer is asked to provide credit card payment and shipping information. The payment information is then passed to a payment server to verify their validity. If the payment information is valid, an online bill and payment confirmation is sent to the buyer. Otherwise, the buyer is informed of the rejection of the payment information, and consequently the order. In the meantime, the inventory file, the customer information file and the orders file are updated. In addition, customer information including name and shipping address are used to deliver the ordered items to the buyer”.

Context level diagram An online book ordering system accepts orders from buyers which could be either human users or software agents. A book order is normally made after the buyer browses a books catalog. The system checks the availability of the ordered items in the store inventory and the status of the buyer in the customer file. If all items are available and the customer has a good record, the buyer is asked to provide credit card payment and shipping information. The payment information is then passed to a payment server to verify their validity. If the payment information is valid, an online bill and payment confirmation is sent to the buyer. Otherwise, the buyer is informed of the rejection of the payment information, and consequently the order. In the meantime, the inventory file, the customer information file and the orders file are updated. In addition, customer information including name and shipping address are used to deliver the ordered items to the buyer

First refinement An online book ordering system accepts orders from buyers which could be either human users or software agents. A book order is normally made after the buyer browses a books catalog. The system checks the availability of the ordered items in the store inventory and the status of the buyer in the customer file. If all items are available and the customer has a good record, the buyer is asked to provide credit card payment and shipping information. The payment information is then passed to a payment server to verify their validity. If the payment information is valid, an online bill and payment confirmation is sent to the buyer. Otherwise, the buyer is informed of the rejection of the payment information, and consequently the order. In the meantime, the inventory file, the customer information file and the orders file are updated. In addition, customer information including name and shipping address are used to deliver the ordered items to the buyer

Refinement of validate order process An online book ordering system accepts orders from buyers which could be either human users or software agents. A book order is normally made after the buyer browses a books catalog. The system checks the availability of the ordered items in the store inventory and the status of the buyer in the customer file. If all items are available and the customer has a good record, the buyer is asked to provide credit card payment and shipping information. The payment information is then passed to a payment server to verify their validity. If the payment information is valid, an online bill and payment confirmation is sent to the buyer. Otherwise, the buyer is informed of the rejection of the payment information, and consequently the order. In the meantime, the inventory file, the customer information file and the orders file are updated. In addition, customer information including name and shipping address are used to deliver the ordered items to the buyer

Structured English, Decision Table and Decision Tree To describe a process Typically used for a stateless (no internal states, no memory of previous inputs) process Pseudocode, structured english

Decision table Rows in the table are of two types: condition rows and action rows. A column represents a combination of condition outcomes and the corresponding actions to take. also referred to as a rule. A complete decision table specifies one rule for each combination of the condition outcomes. For example, if we have three independent binary conditions, the number of combinations or rules must be 23 = 8. A decision table contains redundancy, it there exists two columns that are equivalent. A decision table is ambiguous or contradictory if for the same combination of condition outcomes, the specified actions are different.

Data modeling Chen’s entity relationship diagram (ERD) Entities representing objects to be saved in permanent stores Attributes for each entity Relationships linking entities (binary, ternary, .. Relationships) Cardinality of the relationship: 1 to 1, 1 to many, and many to many

Data dictionary Explaining the data items in a DFD or ERD For example in level 0 (first refinement) DFD of Figure 4.21: reply = Msg1 or Msg2 or Msg3 in the data dictionary. Msg1 = ‘Unable to accept your order at this moment’ Msg2 = ‘Unavailable items at this moment’ Msg3 = ‘Thank you for your order – Please proceed with payment’.

Object oriented analysis (OOA) Based on the identification of problem-domain objects, their attributes and operations Identification of relationships among objects Object states and transitions among them Description of the interactions among objects Textual analysis of requirements: nouns and verbs

What can be an problem domain Object? Entities that have more than one attribute Entities that need to be retained in permanent storage for future use External entities that produce information to be used or consumed by the system, or that consume information generated or produced by the system Events or actions that occur during the system’s operations Roles played by people interacting with the system Organizational units and places that are important in the problem domain such as flight crew team or airport Logical items such as flight reports and documents Composite physical items such as an airplane or a personal computer

Three types of solution domain objects Entity objects: to remain in permanent store for future use and reference Interface objects: forms, GUI components that are used but are not saved (transient objects) Control objects: encoding the business procedure or control flow (one per use case?)

Example Let us analyze the following English text providing a partial description of the requirements for a Proposal Evaluation System (PES). “PES allows different types of users to perform their functions. The three types of users are Evaluators, Administrators and Proposal Submitters. Users must first logon successfully to the system to be able to work. Submitters will submit their proposals. An Administrator will perform a basic evaluation of the proposal before assigning it to an Evaluator. The basic evaluation checks whether the Submitter has already submitted another pending proposal. If so the submission fails the check. In addition, the Submitter cannot have more than two accepted proposals to pass the basic check. If the proposal does not pass the basic check, the Submitter is informed and the refusal is logged in history.

Example An Administrator sends an email to the Evaluator once she/he is assigned to a proposal. The Evaluator will evaluate the proposal and will send his/her evaluation to the Administrator either by email or by filling a form on the internet. The Administrator will inform the Submitter of the result of the evaluation. At this point the proposal evaluation process is considered done”.

Composition relationship (includes, made of) Object relationships: inheritance (generalization/specialization, is_a) Composition relationship (includes, made of)

Associations and roles