Вы находитесь на странице: 1из 12

Assignment 4: context DFD

Delivery Notice and Invoice

InfSci 2510 Customer Order Negotiation

Customer Order
Information System Analysis and Design
Manufacturing
Company
Lecture 6 Supplier Purchase Order
10/6/2002
Raw Materials Products

Assignment 4 - Diagram 0 Assignment 4 - Diagram 0


Order Product Inventory Info Order Product Inventory Info
Negotiation 1 Customer 2 Negotiation 1 Customer 2
Customer Order Customer Order Inventory
Sales Planning D3 product inventory Sales Planning Update D3 product inventory
Customer Customer
Order Order
Notice to
Production Schedule Production Order Production Schedule Production Order shipment
from
4 Product 4 products
Product
Purchase D2 production schedule Inventory Purchase D2 production schedule inventory Inventory
Supplier Order Purchasing Update Supplier Order Purchasing Update

3 3
Completion Completion
MFG Notice MFG Notice
Floor
5 Delivery Floor
5 Delivery
Notice & Notice &
Packing & Invoice Packing & Invoice
Raw Materials Raw Materials Shipment Raw Materials Raw Materials Shipment
Customer Customer
Supply Inventory Supply Inventory
Information Update Information Update

D1 raw mat inventory D1 raw mat inventory

Assignment 4 - Diagram 0 Assignment 4 - Diagram 0


Order Product Inventory Info Order Product Inventory Info
Negotiation 1 Customer 2 Negotiation 1 Customer 2
Customer Order Inventory Customer Order Inventory
Sales Planning Update D3 product inventory Sales Planning Update D3 product inventory
Customer Customer
Order Order
Notice to Notice to
Production Schedule Production Order shipment Production Schedule Production Order shipment
from from
4 products
Product 4 products
Product
Purchase D2 production schedule inventory Inventory Purchase D2 production schedule inventory Inventory
Supplier Order Purchasing Update Supplier Order Purchasing Update

Raw Materials 3 3
Arrival Notice Completion Completion
Raw Materials
MFG Notice MFG Notice
6 Supply
Floor
5 Delivery Raw Materials
Floor
5 Delivery
Information Notice & Notice &
Receiving Packing & Invoice Products Packing & Invoice
Raw Materials Shipment Raw Materials Raw Materials Shipment
Customer Customer
Inventory Supply Inventory
Update Information Update Products
Packaged
Raw Materials
Inventory Update
D1 raw mat inventory D1 raw mat inventory

1
Assignment 4 - Diagram 1: Sales Assignment 4 - Diagram 2: Planning
Product Inventory Info
1.1 Customer 2.1
Order Inventory
Order Negotiation Negotiate Check
with Price Quote Update D3 product inventory
with Product
Customer Inventory TO: Package & Shipment
Notice to shipment from products inventory

Notice of deal Customer


with Customer Order
Customer

Customer Order 1.2 2.2 2.3


Information Production Order
Enter Prepare Update
Customer Production with latest start date Production
Order Order Schedule
Production Order
Customer Order Production Schedule
addition or update

D2 production schedule
TO: Planning

Assignment 4 - Diagram 3: Manufacturing Assignment 4 - Diagram 4: Purchasing


D2 production schedule D2 production schedule D4 suppliers directory
Raw Materials
3.2 Need Information Supplier Lookup Supplier Info Update

Production Order 3.1 Complete Completion Notice


Job Completion
TO: 4.1 4.2
Production
Start
Job Raw Materials Search for
Raw Production Package & Check for
Purchase Need Supplier
Materials Job Shipment Raw
Materials
Product
3.3 Raw Inventory Raw Materials Purchase Info for
Materials Update Supply Information Raw Materials
Receiving Usage (Supplier selected)
Raw Materials Raw Update D1 raw mat inventory
Materials D3 product inventory
4.3
Raw Materials
Arrival Update Make Purchase Order Supplier
Purchase
D1 raw mat inventory

Assignment 4 - Diagram 5: Shipment Topics


5.1
• Data Flow Analysis in ISAD
Production Job
Completion Notice
Pick up
Shipment Notice
• Process Specification
FROM: Mfg Floor from Mfg
Floor • Structured Decisions
5.3
Package
Delivery Notice and Invoice – Structured English
Customer
and Ship
Products Packaged – Decision Table
Notice to ship from 5.2
Products Inventory
Pick up
– Decision Tree
FROM: Planning from
Inventory
Shipment Notice
• Horizontal Balancing
• Semi-Structured Decisions
• Decision Support Systems

2
Entity-Relationship Modeling Data Flow Analysis
Analyze and Design of processes in the business
Analyze and Design of information structure
• Primarily an analysis technique, focusing on the
• Primarily an analysis technique, focused on business processes and the information flow between
the information structure which supports the these processes.
way business is done in the application • Build a model – to understand how business is done
domain. Also extends into a design technique. in the application domain. (logical DFD)
• Fundamentally, we have covered the basic • Also extends into a design tool: to reason about how
steps of the database design process. the business processes may be re-organized.
• Physical DFD: a tool to organize the software system
(cf. Chapter 17 – K and K)
to be implemented, to automate the business.

Information System Analysis & Design The Data Dictionary


…related to the Data Flow Diagrams

2 key techniques for Information System Data Flow Diagram Data Dictionary
Analysis and Design:
Data Flow Data Data
Description Structure Element
• Entity-Relationship Model – analysis and Form
design of information structure in a system. Data Flow xxx
xxx xxx
• Data Flow Diagram – analysis and design
of the information flow (actually more of the Data Store Data Data
Description Structure Element
business processes) in a system. Form
Data Store
xxx
xxx xxx

Data Flow Description


The Data Dictionary ID:
Name:
Description:

The Data Dictionary should consist of the


definitions of each of the following: Source: Destination:

ü Data Flows Form:


File Screen Report Form Internal
ü Data Stores Data Structure or Format: Volume / unit Time:

ü Data Structures
Comment:
ü Data Elements

3
Describe the Data Structure Data Element Description
Customer Order = ID:
Customer Number + Customer Name + Name:
Aliases:
Address + Telephone + Description:
Catalog Number + { Available Order Items } +
Merchandise Total + ( Tax ) +
Element Characteristics
Shipping and Handling + Order Total +
Length Alphabetic
Method of Payment + Input Format Alphanumeric
( Credit Card Type + Credit Card Number + Expiration Date ) Output Format Date
Default Value Numeric
Continuous or Discrete Base or Derived
Customer Name =
First Name + (Middle Initial) + Last Name Validation Criteria
Continuous (range) Discrete (list of values)
... Upper Limit Value: Meaning:
Method of Payment = Lower Limit Value: Meaning:
[ Check | Charge | Money Order ]
Comment:

Credit Card Type =


[ Master Card | Visa | American Express | World Trend ]

The Data Dictionary


Data Store Description
ID: • The data dictionary is not an end in itself.
Name:
Aliases: • Helpful in understanding an existing system, guiding interview
Description: strategies and questions.
• To maintain consistency in the DFDs:
Data Store Characteristics
File Type: Manual Computerized
– Base elements are never created in a process: if it is in an output flow, it
File Format: Text File Spread Sheet Database Table must be in an input flow also.
Record Size:
Number of Records (max): (average):
– A derived element must be produced by some process into which it is not
Rate of Growth: input.
Indexes:
– Elements on data flows in or out at a data store must also be contained in
Relevant Data Structures: the data store.
• To maintain consistency in the software system:
Comment: – screen design and report and form generation
– data formats for programming interfaces
• It is important to maintain the data dictionary up-to-date; it is
never completed until the whole project is completed!

Topics
Reading
• Data Flow Analysis in ISAD
• Process Specification Textbook
• Structured Decisions • Kendall and Kendall
– Structured English Chapter 11
– Decision Table “Process Specification and Structured Decisions”
– Decision Tree Chapter 12
• Horizontal Balancing “Semi-Structured Decision Support Systems”
• Semi-Structured Decisions
• Decision Support Systems

4
Process Specification Process Specification
Given the DFD… Structured Approach to ISAD (TQM in action)
How to specify each of the processes in the system?
• Top-Down Design
TQM - Total Quality Management …maintaining the big picture so that design work of each
component will not lose sight of the system goal.
The primary elements of TQM are meaningful only
• Modular Development
when occurring in an organizational context that
supports a comprehensive quality effort. …breaking down the programming task into logical,
manageable modules, with strong emphasis on the interface
-Dean and Evans (1994) between modules.
• Bottom-Up Integration
• Early commitment to quality …beginning with the bottom level, integrate modules after
• Organizational support (from the top, and the team…) unit testing and move up the functional hierarchy, so that
system integration works from the bottom up.
• Disciplined structured approach

Process Specification Process Specification


Top-Down vs Bottom-Up Top-Down vs Bottom-Up

• Bottom-Up: identifying the processes that meet • Top-Down: identifying the overall goal first and
current needs; solving these problems first in our decomposing into sub-goals; specify the smaller
process specification. When these processes are sub-systems to solve sub-goals when the
working, move on to solve higher level problems objective is clear; and then integrate the
by integration… processes into the overall system.
– apparently easier – overall organizational objectives maintained
– duplication of effort in low level components throughout the analysis and design effort; compatible
with our DFD analysis and design approach.
– multiple versions of data with consistency problems
– modular development and bottom-up integration can
– overall organizational objectives not considered until then afford parallel effort on different parts.
integration (often too late and too costly).

Process Specification
Process Specification
• Process Number.
The goals are… • Process Name.
• Reduce complexity of the process – reveals • A brief description of what it accomplishes.
vague areas for further clarification • List of input data flows.
• Validate the system design. • List of output data flows.
• Generate precise description – such as • Type of process: manual, on-line, or batch.
specification for programmers, or manuals • Process Logic: policy and business rules…
for operation.
• Unresolved issues… (for further investigation)

5
Number:
Process Specification
Type of Process
Name:
Description:
G Manual…
Input Data Flows:
Process Logic description should enable a person to perform
the required tasks.
Output Data Flows:

G On-Line…
Type of Process: Manual On-Line Batch
Process Logic:
Include also screen designs and how to operate the user
interfaces involved.
G Batch…
How often does this process run? What (or who) initiates
its execution? What if anything goes wrong? How to verify
Unresolved issues: the results? (usually there is a log).

Process Logic Description Process Logic Description


Homeowner’s insurance, of course, depends on the type of
In a rate document for insurance agents from the Insurance Company… policy and the location of the home, but once that is determined
Homeowner’s insurance, of course, depends on the type of there are other factors that increase or decrease the premium to
policy and the location of the home, but once that is determined the homeowner. One factor is the construction. A brick home
there are other factors that increase or decrease the premium to will save the homeowner 10% in the annual premium, and if
the homeowner. One factor is the construction. A brick home there is a burglar alarm, 5% will be deducted from the premium
will save the homeowner 10% in the annual premium, and if beyond that. There are choices that homeowners make that will
there is a burglar alarm, 5% will be deducted from the premium increase the premium, too. If the homeowner wishes to be paid
beyond that. There are choices that homeowners make that will the replacement, rather than depreciated value, add 10% to the
increase the premium, too. If the homeowner wishes to be paid base. The homeowner may choose to carry a $100 deductible
the replacement, rather than depreciated value, add 10% to the
base. The homeowner may choose to carry a $100 deductible instead of a $250 deductible, which will increase the premium
instead of a $250 deductible, which will increase the premium by 15%.
by 15%.
Conditions in blue italics; Actions in red underlined.

Process Logic Specification


Process Logic Description Condition Corresponding Action
Rule Conditions Sequence
Alternatives Actions
• Definition of business terms Brick
Deduct 10% of base*
from sub-total
Do this first
1 Construction
• Business conditions and actions other None None

Deduct 5% of Do this after


• Data integrity constraints 2 Burglar Alarm
Yes adjusted sub-total Rule #4
No None None
• Mathematical and functional derivations Add 10% of base* Do this after
Replacement
• Logical inferences 3
Replacement
Value Option
from sub-total
None
Rule #1
None
Depreciated
• Processing sequences $100 Option
Add 15% of sub-total Do this after
to sub-total Rule #3
• Relationship among facts about the business 4 Deductible
$250 Standard None None

*Note: base – refers to the original premium based on amount the house is insured for as well as the
location of the home.

6
Topics
Structured Decisions
• Data Flow Analysis in ISAD
• Process Specification • Structured decision means that both the
• Structured Decisions information required and the decision
– Structured English criteria are deterministic.
– Decision Table • Therefore, it is possible to completely
– Decision Tree specify what information is needed and how
• Horizontal Balancing to make the decisions.
• Semi-Structured Decisions • Furthermore, the decisions are to be carried
out with all the necessary information.
• Decision Support Systems

Topics
Process Logic for Structured Decisions
• Data Flow Analysis in ISAD
There are 3 recommended formats: • Process Specification
• Structured English • Structured Decisions
– Structured English
• Decision Table
– Decision Table
• Decision Tree – Decision Tree
• Horizontal Balancing
• Semi-Structured Decisions
• Decision Support Systems

Structured English: an example Structured English


Calculate base premium.
1. Express all logic in terms of sequential structures,
IF construction is brick decision structures, case structures, or iterations.
THEN deduct 10% of base to total
ENDIF 2. Use capitalized key words such as IF, THEN, ELSE,
IF replacement value option is chosen DO, DO WHILE, DO UNTIL, and PERFORM.
THEN add 10% of base to sub-total 3. Indent blocks of statements to show the hierarchical
ENDIF
nesting clearly.
IF owner chooses $100 deductible
THEN add 15% of sub-total 4. Underline special words/phrases which are defined in
ENDIF the data dictionary – to indicate special meaning.
IF home has burglar alarm
5. Clarify logical conditions (such as precedence
THEN deduct 5% of adjusted sub-total
ENDIF
between AND and OR) and the use of pronouns, etc.

7
Structured English Using the Data Dictionary…
Structured English Type Example
Sequential Structure Action #1 In structured English process logic specification,
A block of instructions where no
branching occurs
Action #2 we can refer to data structures and data items defined in the
Action #3
data dictionary, using key action words such as MOVE,
Decision Structure IF condition A is true
Only IF a condition is true, complete THEN take Action #1 COPY, ADD, SUBTRACT…
the following statements; otherwise,
jump to the ELSE
ELSE take Action #2 Examples:
ENDIF
Case Structure IF condition A THEN take Action #1 • MOVE total TO customer order.
A special type of decision structure ELSE IF condition B THEN take Action #2
where the cases are mutually exclusive. ELSE IF condition C THEN take Action #3 • COPY customer id TO order log.

ELSE note error situation • ADD sales line item TO current sales record.
ENDIF
Iteration DO WHILE condition • SUBTRACT discount amount FROM sales total
Block of statements that are repeated
until done.
take Action ON sales record.
END DO

Topics Decision Table


Note the four quadrants and how the logic moves clockwise
• Data Flow Analysis in ISAD beginning from upper left …
• Process Specification
Conditions Alternatives
• Structured Decisions
Condition 1
– Structured English Condition 2
combinations listed in
columns
– Decision Table Condition 3 …
– Decision Tree
• Horizontal Balancing Actions
Action 1
• Semi-Structured Decisions Action 2 Actions to take
• Decision Support Systems Action 3 …

Decision Table Example


The store’s policy about customer check-out process… Developing Decision Table
Conditions Alternatives 1. Determine the relevant conditions.
Under $50 Y Y N N
Pay by check with ID Y N Y N 2. Determine the alternatives for each
Use credit card N Y N Y condition and the valid combinations.
3. Layout all the valid combinations (one per
Actions Actions to take
X - - - column in the quadrant for Alternatives).
Ring up sale
Verify credit card record - X - - 4. Determine the number of possible actions.
Call supervisor for approval - - X -
5. Fill out the quadrant for “Actions to take”.
Call bank for credit authorization - - - X

8
Topics
Decision Table: more…
• Data Flow Analysis in ISAD
• How big is a decision table? • Process Specification
Combinatorial explosion may occur in the
quadrant for “Alternatives”…
• Structured Decisions
– Structured English
• Use of “don’t-cares” may reduce the table.
– Decision Table
(by a little bit)
– Decision Tree
• Decision table helps to sort out irrelevant
conditions: they don’t matter. • Horizontal Balancing
• Decision table helps to identify contradictions: • Semi-Structured Decisions
when same set of condition alternatives lead to • Decision Support Systems
different actions to take.

Decision Tree Decision Tree Example


Action 2 Ring up sale
4 by Check
Condition 3 3
2
Action 1 Credit Card
2 3 Under $50
Verify Credit Card Record
Condition 1 4
Action 3
Condition 4 5
1
1
≥ $50 by Check 6 Call supervisor for approval
Condition 2 Action 4 5
IF … condition Credit Card
6
7 Call bank for credit authorization
THEN … action

Choosing the right form…


Developing Decision Tree
• Use structured English when
– there are many repeated actions, OR
1. Identify the conditions. – communication to end users is important.
2. Identify the condition alternatives. • Use decision table when
3. Identify the actions to take (if any). – complex combinations of conditions, actions need detailed
analysis, OR
4. Identify additional conditions … back to 1. – we need to effectively avoid impossible situations,
redundancies, and contradictions.
5. … until all situations are covered.
• Use decision tree when
The key is in finding the “appropriate” sequence of – The sequence of conditions and actions is important, OR
conditions to check one after another. – Not every condition and/or action is relevant (they only
appear in some of the branches).

9
Topics Horizontal Balancing
• Data Flow Analysis in ISAD Using process specification to verify our analysis
• Process Specification in the Data Flow Diagrams:
• Structured Decisions • All output data flow elements must be obtained
– Structured English
from the input elements and process logic.
– Decision Table
– Decision Tree • Base elements on an output data flow must be
• Horizontal Balancing present also in the input flow.
• Semi-Structured Decisions • Derived elements on an output data flow must
• Decision Support Systems be either present on an input data flow or
created using the process logic.

Horizontal Balancing
Assignment 5
We also use the process specification to verify
the Data Dictionary use in our analysis: • Due next Monday, before mid-term.
• The data flow diagram and data dictionary need • Groups up to 4 people.
to be updated and remain consistent. • One child DFD (Diagram 2).
• Unresolved issues are to be resolved by further • Process Specification for Process 2, and
analysis and/or follow-up interview. each of the processes in Diagram 2.

Topics
Semi-Structured Decisions
• Data Flow Analysis in ISAD
• Process Specification • Structured: routine and require little human
judgment when the variables are programmed; can
• Structured Decisions be systematically automated.
– Structured English
• Unstructured: depend primarily on intuition;
– Decision Table currently resistant to automation.
– Decision Tree
• Semi-Structured: partially programmable but still
• Horizontal Balancing require human judgment, preferably with the help
• Semi-Structured Decisions of appropriate computerized tools.
• Decision Support Systems But is there still a structure (albeit deep) anyway?

10
Semi-Structured Decisions Semi-Structured Decisions
Unstructured
Three dimension of decision structure…
• Problem complexity
• Number of decision criteria
Skill level
• Skill level of decision making Number of decision
of making
decision
criteria

Structured
Problem complexity

Semi-Structured Decisions Phases of Problem Solving


• Analytical Approach: rely on information • Intelligence: awareness of the problem or
available and systematically acquired: probability
models, simulation techniques, optimization. opportunity; an active awareness of the changes
Decision Support? Use mathematical models to in the environment that call for action.
compare alternatives for their pros and cons… • Design: formulation of a problem, and
• Heuristic Approach: depend on a few simplistic generation of possible alternative solutions.
guidelines (rules of thumb), which are often
experience-based. • Choice: choosing a solution and taking action
Decision Support? Use of historical information to to implement the solution.
compare applying the rules of thumb with other
The Shape of Automation for Men and Management
alternatives.
H. Simon, 1965.

MIS versus DSS


Decision Support System
Reports Decisions
Input data
MIS
• Intelligence Phase:
– high-light potential problems
Problem or Opportunity Decisions
– information through various models and views
• Design Phase:
Opportunities, – identification of alternatives
Questions Alternatives,
Choices… – comparison to past practices
– what-if scenarios
Input data DSS
Figure 12.1 – Kendall and Kendall, p.388.

11
Decision Support System Multi-Criteria Decision Support
• Choice Phase: • Weighted score
– choose a solution to the problem identified in • Ranking attributes
the intelligent phase (or action to take to
• Ranking by conjunctive constraints
capture the opportunity).
• Goal programming
• Analytic hierarchical processing

12