26
PROCESS MODELING Transform Description

PROCESS MODELING Transform Description. A model is a representation of reality. Just as a picture is worth a thousand words, most models are pictorial

  • View
    224

  • Download
    1

Embed Size (px)

Citation preview

PROCESS MODELINGTransform Description

A model is a representation of reality. Just as a picture is worth a thousand words, most models are pictorial representations of reality.

Logical models show what a system is or does. They are implementation independent; that is, they depict the system independent of any technical implementation.

Physical models show not only what a system is or does, but also how the system is (to be) physically and technically implemented. They are implementation dependent because they reflect technology choices.

Process Modeling and DFDsProcess modeling is a technique for organizing and documenting the structure and flow of data through a system’s processes, and/or the logic, policies, and procedures to be implemented by a system’s processes.

A data flow diagram (DFD) is a tool (and type of process model) that depicts the flow of data through a system and the work or processing performed by that system.

Differences Between DFDs and Flowcharts

• Processes on DFDs can operate in parallel (at-the-same-time)– Processes on flowcharts execute one at a time

• DFDs show the flow of data through a system– Flowcharts show the flow of control (sequence and

transfer of control)

• Processes on one DFD can have dramatically different timing– Processes on flowcharts are part of a single

program with consistent timing

Process Concepts

A process or Transform is work performed on, or in response to, incoming data flows or conditions.

A System is a Process

TheSystem

is aProcess

input output

input

input output

output

Feedack andControl Loop

The System's Environment(constantly changing)

Decomposition of transforms in DFD

Decomposition is the act of breaking a system into its component subsystems, processes, and subprocesses. Each level of abstraction reveals more or less detail.

Types of Logical Processes• A function is set of related and ongoing

activities of a business.

•An event (or transaction) is a logical unit of work that must be completed as a whole (as part of a function).

• An elementary process (or primitive process) is a discrete, detailed activity or task required to respond to an event. Usually, several such tasks must be completed to respond to an event.

Structured EnglishStructured English is a language and syntax, based on the relative strengths of structured programming and natural English, for specifying the underlying logic of elementary processes on DFDs.

1. For each CUSTOMER NUMBER in the data store CUSTOMERS: a. For each LOAN in the data store LOANS that matches the above CUSTOMER NUMBER: 1) Keep a running total of NUMBER OF LOANS for the CUSTOMER NUMBER. 2) Keep a running total of thw ORIGINAL LOAN PRINCIPALfor the CUSTOMER NUMBER. 3) Keep a running total of CURRENT LOAN BALANCE for the CUSTOMER NUMBER. 4) Keep a running total of AMOUNTS PAST DUE for the CUSTOMER NUMBER. b. If the TOTAL AMOUNTS PAST DUE for the CUSTOMER NUMBER is greater than $100.00 then: 1) Write the CUSTOMER NUMBER and all their data attributes as described in the data flow LOANS AT RISK. Else 1) Exclude the CUSTOMER NUMBER and data from the data flow LOANS AT RISK.

Structured English Constructs (Part 1)

Structured English Constructs (Part 2)

Structured English Constructs additions

Policies and Decision TablesA policy is a set of rules that governs some process of the business.

A decision table is a tabular form of presentation that specifies a set of conditions and their corresponding actions (as required to implement a policy).

A Simple Decision Table

•A data flow represents an input of data to a process, or the output of data from a process.

–A data flow may also be used to represent the creation, reading, deletion, or updating of data in a file or database (called a data store).

–A composite data flow is a data flow that consists of other data flows.

•A control flow represents a condition or nondata event that triggers a process.

–Used sparingly on DFDs.

Composite and Elementary Data Flows –from diagram 0 to 1 to 2 …

Data Flows to and from Data Stores

Data flows can be defined by data structures.

A data structure is a specific arrangement of data attributes that defines the organization of data contained in a data flow.

A data attribute is the smallest piece of data that has meaning to the end-users of a business.

DATA STRUCTURE

ORDER=

ORDER NUMBER +

ORDER DATE+

[ PERSONAL CUSTOMER NUMBER,

CORPORATE ACCOUNT NUMBER]+

SHIPPING ADDRESS=ADDRESS+

(BILLING ADDRESS=ADDRESS)+

1 {PRODUCT NUMBER+

PRODUCT DESCRIPTION+

QUANTITY ORDERED+

PRODUCT PRICE+

PRODUCT PRICE SOURCE+

EXTENDED PRICE } N+

SUM OF EXTENDED PRICES+

PREPAID AMOUNT+

(CREDIT CARD NUMBER+EXPIRATION DATE)

(QUOTE NUMBER)

ADDRESS=

(POST OFFICE BOX NUMBER)+

STREET ADDRESS+

CITY+

[STATE, MUNICIPALITY]+

(COUNTRY)+

POSTAL CODE

ENGLISH ENTERPRETATION

An instance of ORDER consists of:

ORDER NUMBER and

ORDER DATE and

Either PERSONAL CUSTOMER NUMBER

or CORPORATE ACCOUNT NUMBER

and SHIPPING ADDRESS (which is equivalent to ADDRESS)

and optionally: BILLING ADDRESS (which is equivalent to ADDRESS)

and one or more instances of:

PRODUCT NUMBER and

PRODUCT DESCRIPTION and

QUANTITY ORDERED and

PRODUCT PRICE and

PRODUCT PRICE SOURCE and

EXTENDED PRICE

and SUM OF EXTENDED PRICES and

PREPAID AMOUNT and

optionally: both CREDIT CARD NUMBER and EXPIRATION DATE

An instance of ADDRESS consists of:

optionally: POST OFFICE BOX NUMBER and

STREET ADDRESS and

CITY and

Either STATE or MUNICIPALITY

and optionally: COUNTRY

and POSTAL CODE

Data Flow defined as data structure

Data attributes should be defined by data types and domains.

A data type defines what class of data can be stored in an attribute (e.g., character, integers, real numbers, dates, pictures, etc.).

A domain defines what values or range of values an attribute can legitimately take on.

•A data store is an inventory of data.

–Frequently implemented as a file or database.

–A data store is “data at rest” compared to a data flow that is “data in motion.”

–Almost always one of the following:

•Persons (or groups of persons)

•Places

•Objects

•Events (about which data is captured)

•Concepts (about which data is important)

–Data stores depicted on a DFD store all instances of data entities (depicted on an ERD)

1. Draw a context DFD to establish initial project scope.

2. Draw a functional decomposition diagram to partition the system into subsystems.

3. Create an event-response or use-case list for the system to define events for which the system must have a response.

4. Draw an event DFD (or event handler) for each event.

5. Merge event DFDs into a system diagram (or, for larger systems, subsystem diagrams).

6. Draw detailed, primitive DFDs for the more complex event handlers.

7. Document data flows and processes in the data dictionary.

THE ABOVE METHODOLOGY, BASED ON EVENT PARTITIONING, IS MORE COMMONLY PRACTICED.

Modern Structured Analysis

•Events define processes needed to respond to those events.

–External events are those initiated by external agents. They result in an input transaction or data flow.

–Temporal events are those that are triggered by the passage of time. They simply “happen” and are indicated by a control flow.

–State events are those based on a system’s change from one state to another.

•Use cases are based upon object-oriented concepts that are essentially the same as events.

–Use case analysis is the process of identifying and modeling business events and how the system responds to them.

–An actor is anything that needs to interact with the system (essentially, a synonym for external agent).