Upload
david-morales
View
176
Download
0
Embed Size (px)
Citation preview
Mailing program changes
› Requirement: Customers will Remain on the
mailing list if any below conditions are true
Requested a catalog
Ordered from SWL in the last two years
Signed guest-register on the Web site
› Requirement: Customers will be given a special discount certificate if they have
registered on the Web site
This table contains all the possible rules
Redundant or improperly grouped
Can be significantly reduced
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Requests catalog Y N Y Y Y N Y Y Y N N N Y N N N
Placed order in past two years Y N Y Y N Y Y N N Y Y N N Y N N
Signed guest register on website Y N Y N Y Y N Y N Y N Y N N Y N
Registered on website Y N N Y Y Y N N Y N Y Y N N N Y
Remain on mailing list X X X X X X X X X X X X X X
Remove from mailing list X X
Receive discount certificate X X X X X X X X
Reduced rules by approx. 75%
Still contains all possible results
All 4 conditions are not related and
further reduces the size of the table
1 2 3 4 5
Requests catalog Y - - N -
Placed order in past two years - Y - N -
Signed guest register on website - - Y N -
Registered on website - - - - Y
Remain on mailing list X X X
Remove from mailing list X
Receive discount certificate X
Graphical representation of Decision
Table
› The first tree represents the conditions:
Request catalog
Placed order in past two years
Signed guest-register on website
› The only output we are concerned with is if
the customer data remains on the mailing list
or is removed
Customer requests catalog
Placed order in two
years
Signed guest
resister
Remove from
mailing list
Remain on mailing list
N
N
N
Y
Y
Y
Remain on mailing list
Remain on mailing list
This condition has no effect on the
previous conditions
› It is represented as a separate decision
because the out comes of either on have no effect on the other
YCustomer Registered on Website
Do nothing
Give discount
certificate
N
A third way to represent this kind of data
› First step is to identify what your input and
out put terms are
Input data flows:
› CUSTOMER
› CATALOG REQUEST
› ORDER LAST TWO
› SIGNED WEB-REGISTER
› REGISTERED
Output data flows
› REMAIN ON LIST
› REMOVE FROM LIST
› DISCOUNT CERTIFICATE
› DO NOTHING
After these are defined it is simple to
write out the structured English
expression
For each customer,
If CATLOG REQUEST = Y
Output REMAIN ON LIST
Else
If ORDER LAST TWO = Y
Output REMAIN ON LIST
Else
If SIGNED WEB-REGISTER = Y
Output REMAIN ON LIST
Else
Output REMOVE FROM LIST
If REGISTERED = Y
Output DISCOUNT CERTIFICATE
Else
Output DO NOTHING
Sequential tasks
1. Draw a context diagram
2. Draw a Diagram 0 DFD
3. Draw lower level diagrams
4. Work on functional primitives
Tasks 2-4 can be worked on simultaneously,
but must have at least one lower numbered
task to build off of
Concurrent tasks Can be completed at anytime because they
are not dependant on other tasks
1. Identify Processes
Receives input and produces output
2. Identify Data Flows
Input and output
3. Identify Data Stores
Data that needs to be saved
Concurrent tasks (cont)
4. Identify Entities
Things outside the system that provide input
or receive output
5. Create and Maintain a Data Dictionary
Central storehouse of information about a
system’s data
6. Revision and Editing
Checking for errors and inefficiancies
Some concurrent task must be
completed before a sequential task may
be completed
› (i.e.) any of the identification tasks, but these
task will occur throughout the entire process