March 200391.3913 R McFadyen1 Activity Diagrams Used to present the procedural steps of an algorithm An algorithm comprises any of the following structures:

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design: Activity Diagrams
Advertisements

Canning Foods Presentation by Andrew Meador 8:20 Appalachian History.
Activity Diagrams in UML. Definition Activity diagrams represent the dynamics of the system. They are flow charts that are used to show the workflow of.
UNIT 2. Introduction to Computer Programming
ALGORITHMS THIRD YEAR BANHA UNIVERSITY FACULTY OF COMPUTERS AND INFORMATIC Lecture two Dr. Hamdy M. Mousa.
Extending the Requirements Model - techniques for detailing use cases
7M701 1 Activity Diagram. 7M701 2 Example 7M701 3 Activity Diagram: what is it? Describes activities and flows of data or decisions between activities.
Design analysis implementation testing maintenance Waterfall Development Process Linear one phase is completed before the next begins in practice, must.
March R McFadyen1 Activity Diagrams Used to present the procedural steps of an algorithm An algorithm comprises any of the following structures:
1 CSE1301 Computer Programming: Lecture 15 Flowcharts and Debugging.
Flowcharts Remember that a solution to a problem is called an algorithm. Algorithms are often a series of steps required to solve the problem. A flowchart.
March R McFadyen1 Activity Diagrams start end branch merge fork join guard transition swimlanes activity Used to present procedural steps (algorithm)
Activity Diagrams. What is Activity Diagrams?  Activity diagrams are a technique to describe procedural logic, business process, and work flow.  An.
Computer Programming 1 Repetition. Computer Programming 2 Objectives Repetition structures Study while and do loops Examine for loops A practical example.
1 CSE1301 Computer Programming: Lecture 15 Flowcharts, Testing and Debugging.
Requirements Analysis Activity Diagrams b511.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis.
COMP1007 Intro to Requirements Analysis © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Introduction to Requirements Analysis Lecture.
Lecture Note 8 Using Data Flow Diagrams
Introduction to Algorithm – part one Jennifer Elmer Form 3 Computing.
Control Structures II. Why is Repetition Needed? There are many situations in which the same statements need to be executed several times. Example: Formulas.
Financial Information Management Managing Financial Information Critical Thinking Business Process Modeling WINIT Control Structures Homework.
An ordered sequence of unambiguous and well-defined instructions that performs some task and halts in finite time Let's examine the four parts of this.
Activity/Workflow Diagrams Chapter 7 Appendix B. © 2011 Pearson Education, Inc. Publishing as Prentice Hall Process Modeling: Activity/Workflow Diagrams.
Lecture 4 Introduction to Programming. if ( grade ==‘A’ ) cout
Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and Elizabeth Drake Chapter 2: Flowcharts.
Interaction Models (2): Sequence Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh 1.
Activity diagrams. Introduction ● Activity diagrams are a behavioural model that represent the dynamics of the system. ● An activity diagram is essentially.
PROBLEM SOLVING WITH LOOPS Chapter 7. Concept of Repetition Structure Logic It is a computer task, that is used for Repeating a series of instructions.
Object Oriented Programming Lecture 4: Flow Control Mustafa Emre İlal
Control Structures II: Repetition.  Learn about repetition (looping) control structures  Explore how to construct and use count-controlled, sentinel-controlled,
1-Dec-15 Additional control structures. 2 The if-else statement The if-else statement chooses which of two statements to execute The if-else statement.
Chapter 7 Appendix B Object-Oriented Analysis and Design: Activity Diagrams Modern Systems Analysis and Design Seventh Edition Jeffrey A. Hoffer Joey F.
CONTROL STATEMENTS LOOPS. WHY IS REPETITION NEEDED?  There are many situations in which the same statements need to be executed several times.  Example:
Accounting Information Systems: A Business Process Approach Chapter Three: Documenting Accounting Systems.
Application development with Java Lecture 6 Rina Zviel-Girshin.
CONTROL STRUCTURE Chapter 3. CONTROL STRUCTURES ONE-WAY SELECTION Syntax: if (expression) statement Expression referred to as decision maker. Statement.
R McFadyen Activity Diagrams Activity diagrams are used to present the procedural steps of an algorithm An algorithm comprises any of the following.
Activity Diagramming by Andrzej Rosolski Stanisław Gliniewicz.
Java Programming: From Problem Analysis to Program Design, 3e Chapter 5 Control Structures II: Repetition.
Interaction Models (2): Activity Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh.
1 CSE1301 Computer Programming: Lecture 16 Flow Diagrams and Debugging.
CC213 Programming Applications Week #2 2 Control Structures Control structures –control the flow of execution in a program or function. Three basic control.
Flow Charts And Pseudo Codes Grade 12. An algorithm is a complete step-by- step procedure for solving a problem or accomplishing a task.
Loops ( while and for ) CSE 1310 – Introduction to Computers and Programming Alexandra Stefan 1.
UCT Department of Computer Science Computer Science 1015F Iteration
Nutrition Workshop: Recipes
Program design Program Design Process has 2 phases:
Activity Diagrams.
CS1010 Programming Methodology
Chilli con Carne 50g Quorn mince 1/2 onion
Three bean chilli 20g Canaille beans 20g baked beans 1/2 onion
Chapter 5: Control Structures II
C++ Programming: CS150 For.
Chapter 5: Control Structures II
Activity and State Transition Diagram
Pickled Red Onions 1 large red onion ¾ cup white wine vinegar
Introduction To Flowcharting
Repetition-Counter control Loop
Repetition-Sentinel,Flag Loop/Do_While
Activity Diagrams.
Loops CS140: Introduction to Computing 1 Savitch Chapter 4 Flow of Control: Loops 9/18/13 9/23/13.
Control Structure Senior Lecturer
Use Case Modeling - techniques for detailing use cases
Process Modeling: Activity/Swimlane Diagrams
Introduction to Programming
Object-Oriented Analysis and Design: Activity Diagrams
Chapter 2- Visual Basic Schneider
Accounting Information Systems: A Business Process Approach
Chili con Carne Peel and chop onion and pepper
Object-Oriented Analysis and Design: Activity Diagrams
Presentation transcript:

March R McFadyen1 Activity Diagrams Used to present the procedural steps of an algorithm An algorithm comprises any of the following structures: sequence decision Repetition An algorithm may also involve parallelism (are there some activities that can be done concurrently?)

March R McFadyen2 Activity Diagrams start end branch merge fork join guard transition swimlanes activity Symbols

March R McFadyen3 Activity Diagrams - sequential Activity 1Activity 2Activity 3 Activities 1, 2, 3 follow one another in sequence. Activity 3 cannot start until Activity 2 is done, etc.

March R McFadyen4 Example: instructions to make Zucchini Relish Combine vegetables with pickling salt and leave overnight Drain and rinse Combine remaining Ingredients with vegetables Boil 20 minutes Put in sterilized jars

March R McFadyen5 Activity Diagrams – conditional path / 2-way switch Activity 1 Activity 2 [condition 1] [condition 2] One of two paths is chosen Same symbol for decision as for merge

March R McFadyen6 Example: instructions to make Zucchini Relish Combine vegetables with pickling salt and leave overnight Drain and rinse Combine remaining Ingredients with vegetables Boil 20 minutes Put in sterilized jars Go and purchase ingredients [ Missing some ingredients ] [ have all ingredients ]

March R McFadyen7 if ( count > 0 ) average = sum / count; System.out.println (average); example [ count > 0 ] [ count <= 0 ] Average  sum/count Print average

March R McFadyen8 if ( count > 0 ) average = sum / count; else average = 0.0; System.out.println (average); example [ count > 0 ] [ count <= 0 ] Average  sum/count Average  0 Print average

March R McFadyen9 if ( x > 0 ) if (y > 0) { z = sqrt (x) + sqrt (y); System.out.println(“z = “ + z); } else System.out.println( “*** can’t compute z”); example [ x > 0 ] [ x <= 0 ] [ y > 0 ] [ y <= 0 ] Z  sqrt (x) + sqrt (y) Print Z Print cannot compute Z

March R McFadyen10 example [ pH < 3 ] [ pH < 7 ] [ pH = 7 ] [ pH < 12 ] if (pH < 3) System.out.println( "Solution is very acidic.”); else if (pH < 7) System.out.println( "Solution is acidic.”); else if (pH == 7) System.out.println(”Solution is neutral."); else if (pH < 12) System.out.println( "Solution is alkaline.”); else System.out.println( "Solution is very alkaline.”); [ pH >= 3 ] [ pH >= 7 ] [ pH <> 7 ] [ pH >= 12 ] Print “alkaline” Print “neutral” Print “acidic” Print “very acidic” Print “very alkaline”

March R McFadyen11 Activity Diagrams – multiway switch Activity 1 Activity n One of two paths is chosen Same symbol for decision as for merge Activity 2 [condition2] [condition1] [condition n]

March R McFadyen12 Example – multiway switch switch (watts) { case 40: price = 0.50; break; case 60: price = 0.69; break; case 75: price = 0.85; break; case 100: case 150: price = 1; break; default: price = 0; System.out.print (“No bulb ” +watts + “watts in stock”); } // end switch

March R McFadyen13 Example – multiway switch Price  0.50 [watts= 40 ] Price  0.69 Price  0.85 Price  1.00 Price  0.00 [watts= 60 ] [watts= 100 or 150 ] [ watts 40, 60, 100, 150 ] [watts= 75 ] Print No bulb message

March R McFadyen14 Activity Diagrams – iteration / looping Processing before test [ exit condition ] Processing after test [ continue condition ]

March R McFadyen15 Activity Diagrams – iteration / looping Processing before test [ exit condition ] Processing after test [ continue condition ] Its not the way you draw it … it’s the way control flows that’s important

March R McFadyen16 example int next; // the next number int sum = 0;// the sum so far int count = 0;// initialize loop counter while (count < MAX) {// test loop counter readInt(next); // get next number sum = sum + next;// add next number to sum count = count + 1; // increment loop counter } // end loop

March R McFadyen17 example Increment count [ Count < Max ] Read next integer Add integer to sum Sum  0 Count  0

March R McFadyen18 example count = count + 1; [ Count < Max ] readInt(next);sum = sum + next; Sum  0 Count  0 If we wish, we could put the exact code into the activities

March R McFadyen19 Activity Diagrams – parallelism/concurrency Activity 1 Activity 2 Activity 3 Both paths are performed in parallel. Activity 1 and 2 begin when Activity 0 is finished. Activity 0 Activity 4 Activity 4 begins when Activity 1 and 3 have both completed

March R McFadyen20 Example: instructions to make Zucchini Relish Combine vegetables with pickling salt and leave overnight Drain and rinse Combine remaining Ingredients with vegetables Boil 20 minutesPut in sterilized jars Chop onionsChop ZucchiniChop green peppersChop red peppers

March R McFadyen21 Zucchini Relish 12 cups chopped Zucchini 4 large onions, chopped 2 red peppers, chopped 2 green peppers, chopped 1/3 cup pickling salt 3 cups white vinegar 4 cups white sugar 3 tbsp. Cornstarch 2 tsp. Celery seed 2 tsp. Mustard seed 2 tsp. Turmeric

March R McFadyen22 Updating a Star Schema Churn Star Schema from The Official Guide to Informix/Red Brick Data Warehousing Rate_plan Period Customer Churn_reason Carrier Telephone Churn credit_limit outstanding_balance current_bill A Star Schema is a specialized ERD used in Data Warehousing. To update the database, we: (1) update each Dimension, and then (2) update the Fact table

March R McFadyen23 Updating a Star Schema Update Customer Update Churn Update Rate plan Update Churn Reason Update Telephone Update Carrier Update Period

March R McFadyen24 Updating a Star Schema Update Customer Update Churn Update Rate plan Update Churn Reason Update Telephone Update Carrier Update Period The dimensions can be updated independently of one another. Those activities can be carried on concurrently

March R McFadyen25 Activity Diagrams Activity 1 Activity 2 Activity 3 Swimlanes When we assign activities to particular organizational units, then we can partition the flow into swimlanes, one swimlane per unit. Activity 0 Activity 4 Org 1Org 2Org 3Org 4

March R McFadyen26 Activity Diagrams Workflow for an Order Request product Customer SalesWarehouse A customer requests a product. The order is handled by Sales, and then the Warehouse picks the materials and ships the order. Then, the customer will receive the order and Sales will send out the bill. When the customer receives the bill, it is paid, and the order is closed by Sales. Process Order Pick & Ship Receive Order Send Bill Pay Bill Order Closed Receive Bill