0% found this document useful (0 votes)
7 views

Module 9

Module 9 covers process specification and automation, detailing the creation and goals of process specifications, decision analysis techniques, and the relationship between process specifications and data flow diagrams. It also discusses structured decision-making methods, including decision tables and trees, and provides guidance on process automation using Appsheet. The module concludes with exercises for practical application of the concepts learned.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Module 9

Module 9 covers process specification and automation, detailing the creation and goals of process specifications, decision analysis techniques, and the relationship between process specifications and data flow diagrams. It also discusses structured decision-making methods, including decision tables and trees, and provides guidance on process automation using Appsheet. The module concludes with exercises for practical application of the concepts learned.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

MODULE 9: PROCESS SPECIFICATION Dr.

Tuan Truong
AND AUTOMATION
CONTENT
Process specification
Decision analysis techniques
Process automation
PROCESS SPECIFICATION
PROCESS SPECIFICATIONS
Sometimes called minispecs
Created for primitive processes as well as for some higher-level processes on a data flow diagram
Created for class methods in object-oriented design and for the steps in a use case
Goals of Producing Process Specifications
• Reduce process ambiguity
• Obtain a precise description of what is accomplished
• Validate the system design
Not Created for
• Processes that represent physical input and/or output
• Processes that represent simple data validation
• Processes that use prewritten code
HOW PROCESS SPECIFICATIONS RELATE TO THE
DATA FLOW DIAGRAM
PROCESS SPECIFICATION FORMAT INFORMATION (1 OF 2)

The process number

• Must match the process ID on the data flow diagram


• Allows the analyst to work on or review any process, and to locate the data flow diagram containing the process easily

The process name

• The same as displays within the process symbol on the D F D

Description of what the process accomplishes

• Determine if an item is available for sale. If it is not available, create a backordered item record. Determine the quantity available

A list of input data flow

• Uses the names found on the data flow diagram


• Data names used in the formula or logic should match the data dictionary, for consistency and good communication

Output data flows

• Uses data flow diagram and data dictionary names


PROCESS SPECIFICATION FORMAT INFORMATION (2 OF 2)
Type of process

• Batch
• Online
Require screen design or web pages
• Manual
Should have well-defined procedures for employees performing the process tasks

Uses prewritten code

• Include the name of the subprogram or function containing the code

Process logic description

• This should state policy and business rules, not computer language pseudo-code
• Business rules are the procedures that allow a corporation to run its business

Logic method reference

• If there is not enough room for a complete structured English description include a reference to the structured English description, decision table, or tree
depicting the logic

List any unresolved issues

• Incomplete portions of logic


• These issues form the basis of the questions used for follow-up interviews with users or business experts you have added to your project team
AN EXAMPLE OF A
COMPLETED
PROCESS
SPECIFICATION
FORM
LOGIC OF DECISIONS
•Documenting and analyzing logic:
 Structured English
 Decision tables
 Decision trees
•Logic and structured decisions are distinguishable from
semistructured decisions
•Structured decision analysis methods promote completeness,
accuracy, and communication
STRUCTURED Structured English Type Example
ENGLISH TYPES Sequential Structure
Action #1
Action #2
A block of instructions in which no branching occurs
• Express all logic in terms of
Action #3

sequential structures, decision Decision Structure


IF Condition A is True
structures, case structures, or THEN implement Action A
Only IF a condition is true, complete the following
iterations ELSE implement Action B
statements; otherwise, jump to the ELSE
ENDIF
• Use and capitalize accepted Case Structure IF Case #1 Implement Action #1
keywords such as IF, THEN, ELSE, A special type of decision structure in which the ELSE IF Case #2
DO, and PERFORM cases are mutually exclusive (if one occurs, the Implement Action #2
others cannot) ELSE IF Case #3
• Indent blocks of statements to Implement Action #3
show their hierarchy (nesting) ELSE IF Case #4
clearly Implement Action #4
ELSE print error
• Underline words or phrases that ENDIF
have been defined in a data DO WHILE there are customers.
dictionary Iteration
Action #1
Blocks of statements that are repeated until done
ENDDO
• Clarify the logical statements
DATA DICTIONARY AND
PROCESS SPECIFICATION
• The data dictionary is a starting point
for creating structured English:
 Sequence—a simple sequence of
statements MOVE, ADD, and SUBTRACT
 Selection—[] entries become IF …
THEN...ELSE statements
 Iteration { } entries become DO WHILE,
DO UNTIL, or PERFORM UNTIL
DECISION TABLES
• A table of rows and columns, separated into four
quadrants:
 Conditions
 Condition alternatives
 Actions to be taken
 Rules for executing the actions
STANDARD FORMAT USED FOR PRESENTING A DECISION TABLE

Conditions and Actions Rules


Conditions Condition Alternatives
Actions Action Entries
CUSTOMER CHECKOUT DECISION TABLE
CONSTRUCTING A DECISION TABLE FOR DECIDING WHICH CATALOG TO SEND TO
CUSTOMERS WHO ORDER ONLY FROM SELECTED CATALOGS
DEVELOPING DECISION
TABLES
• Determine conditions that affect the decision
• Determine possible actions that can be taken
• Determine condition alternatives for each condition
• Calculate the maximum number of columns in the decision table
• Fill in the condition alternatives
• Complete table by inserting an X where rules suggest actions
• Combine rules where it is apparent
• Check for impossible situations
• Rearrange to make more understandable
DEVELOPING DECISION TABLES STEP 1
• Determine the number of conditions that may affect the decision
• Combine rows that overlap, such as conditions that are mutually
exclusive
• The number of conditions becomes the number of rows in the top
half of the decision table
DEVELOPING DECISION TABLES STEP 2
• Determine the number of possible actions that can be taken
• That number becomes the number of rows in the lower half of
the decision table
DEVELOPING DECISION TABLES STEP 3
• Determine the number of condition alternatives for each
condition
• In the simplest form of decision table, there would be two
alternatives (Y or N) for each condition
• An extended entry table may have many alternatives for each
condition
• Make sure that all possible values for the condition are included
DEVELOPING DECISION TABLES STEP 4
• Calculate the maximum number of columns in the decision table
by multiplying the number of alternatives for each condition
• If there were four conditions and two alternatives (Y or N) for
each of the conditions, there would be 16 possibilities
DEVELOPING DECISION TABLES STEP 5
• Fill in the condition alternatives
• Start with the first condition and divide the number of columns
by the number of alternatives for that condition
• If there are 16 columns and two alternatives (Y or N), then 16
divided by 2 is 8
• Choose one of the alternatives, say Y, and write it in the first
eight columns
• Finish by writing N in the remaining eight columns
CHECKING FOR COMPLETENESS
AND ACCURACY
• Four main problems:
 Incompleteness
 Impossible situations
 Contradictions
 Redundancy
COMBINING RULES TO SIMPLIFY THE DECISION TABLE
CHECKING THE DECISION TABLE FOR IMPOSSIBLE SITUATIONS
CHECKING FOR CONTRADICTIONS AND REDUNDANCY
DECISION TABLE ADVANTAGES
• Help the analysis ensure completeness
• Easy to check for possible errors
 Impossible situations
 Contradictions
 Redundancy
DECISION TREES
•Decision trees are used when complex branching
occurs in a structured decision process
•Trees are also useful when it is essential to keep a
string of decisions in a particular sequence
Drawing decision trees
•Identify all conditions and actions and their order
and timing (if they are critical)
•Begin building the tree from left to right, making
sure you list all possible alternatives before
moving to the right
A DECISION TREE TO SHOW THE NONCASH PURCHASE
APPROVAL ACTIONS FOR A DEPARTMENT STORE
DECISION TREE ADVANTAGES

THE ORDER OF CHECKING CONDITIONS AND ACTIONS OF COMPARED TO DECISION TABLES,


CONDITIONS AND EXECUTING DECISION TREES ARE FOUND ON DECISION TREES ARE MORE READILY
ACTIONS IS IMMEDIATELY NOTICEABLE SOME BRANCHES BUT NOT ON UNDERSTOOD BY OTHERS IN THE
OTHERS ORGANIZATION
Use structured English when there are many repetitious
Use actions or when communication to end users is important

SELECTING A
STRUCTURED Use decision tables when a complex combination of

DECISION Use conditions, actions, and rules are found or you require a
method that effectively avoids impossible situations,
redundancies, and contradictions

ANALYSIS
TECHNIQUE Use decision trees when the sequence of conditions and
Use actions is critical or when not every condition is relevant
to every action (the branches are different)
MINI PROJECT 2 – STAGE 4
Draw a complete process specification of the process
Complete its decision table & decision tree
PROCESS AUTOMATION
PREPARING DATA
Design your process data in excel or googlesheet in two ways:
Create a local data using excel
Use cloud service: googlesheet
CONNECT PROCESS DATA TO APPSHEET
Two ways to connect process data to
appsheet:
Directly in googlesheet
Create an apps and connect data
USING DATA IN THE APPS
In Data > Columns, you’ll see a list
of each column you have in your
table listed in a field. By either
clicking on the pencil to the left of
each field, you can adjust settings
for how the app will interact with
your data. Here’s two examples of
the settings you can adjust here:
Type lets you specify what type of
data is in that column. For
example, if you have an “Email”
column in your data, you need to
make sure that column type is set
to Email.
Show lets you select whether or
not this data will be displayed in
your app (some data you may
want to keep hidden)
DESIGN YOUR APPS
Left-side menu editor
CREATE BOT FOR AUTOMATION
Three components of a bot:
An event is something that
happens that triggers your
bot to run.
A task is the action you
want to happen when your
event occurs, such as “Send
an email” You can have
multiple tasks for one
event.
A process allows you to
combine your tasks into
steps and customize how
you want them to occur
with conditional logic. create bots such as sending an email, SMS, or notification,
updating data in other tables, or creating and saving reports.
DEPLOY AND SHARING APPS
Go to the Users tab, and
in the Users section type
the email addresses for
the people you want to
share your app with.
Go
to Manage>Deploy>De
ployment Check and
click “Run Deployment
Check.”
APPSHEET FUNCTION LIST
Function List

Building automation

Limitation

Scalable to large
dataset
EXERCISE 9.1
Create an apps using Appsheet with your miniproject database (in exercise 8.3)

You might also like