Information Systems System Analysis 421

Download Report

Transcript Information Systems System Analysis 421

Information Systems
System Analysis 421
Class Eight
Class Exercise
– A.
BadMouth Press works with several
different authors who write the books it
publishes. Some authors have written only
one book, while others have written many;
also, some books are co-author by multiple
authors. BadMouth also works with multiple
printers; each book, though, is printed by
only one printer. An editor at BadMouth
Press works with several authors at a time,
editing and producing their book projects; it
is the editor's job to turn over the final
camera-ready copy to the printer when the
manuscript has been copy edited and
typeset.
Class Exercise
1. Identify the entities
Editor
Editor ID (PK)
Editor Name
Editor Addr e
Author
Author ID (PK)
Writes
Author Name
Author Addr
Book
Book ID (PK)
Book Desc
Printer
Printer ID (PK)
Printer Name
Class Exercise
1. Review Relationships
Books written by many authors
Books only have one printer
Editors work for multiple authors
Author
Author ID (PK)
Author Name
Author Addr
Writes
Author/Book
Auth-book (PK)
Author ID(FK)
Book ID (FK)
Written
Book
Book ID (PK)
Book Desc
Printer ID(FK)
Has editing
Prints
Printed By
Editor
Editor ID (PK) Editor Name
Editor Addr
Edits
Editor/Author
Edit-auth (PK)
Editor ID(FK)
Author ID (FK)
Printer
Printer ID (PK)
Printer Name
Class Exercise
A. SkyHigh Airlines has three major
resources: airplanes, pilots, and crew
members. Pilots and crew members
have respective home bases, which
they return at the end of an assigned
flight. A flight must have at least one
pilot and one or more crew members
attached to an airplane. Each airplane
has a maintenance base.
Class Exercise
1. Identify the entities
Crew
Crew ID (PK) Crew
Name
Crew Addr
Home Base
Home Base ID (PK)
Home Base Place
Airplane
Airplane ID (PK)
Airplane type
Main Base
Main Base ID (PK)
Main Base place
Pilot
Pilot ID (PK)
Pilot Name
Flight
Flight ID (PK)
Flight date
Class Exercise
2. When there is a 1-1 relationship no association table is necessary
Resides
Home Base
HmeBaseID (PK)
Home Base Place
Pilot
Pilot ID (PK)
Pilot Name
Home Base (FK)
Flight
Flight ID (PK)
Flight date
Planned
Flys
Resides
Main Base
Main Base ID (PK)
Main Base place
Resides
Crew
Crew ID (PK) Crew
Name
Crew Addr
Home Base(FK)
Flys
Flight
Flight info(PK)
Flight Id (FK)
Crew ID (FK)
Pilot ID(FK)
Airplane ID (FK)
Schedule
d
Airplane
Airplane ID (PK)
Airplane type
Main Base(FK)
Learning Objectives
 Use Structured English as a tool for representing steps
in logical processes in data flow diagrams
 Use decision tables and decision trees to represent the
logic of choice in conditional statements
 Select among Structured English, decision tables, and
decision trees for representing processing logic
 Logic modeling and Internet applications
9.8
Logic Modeling
• Data flow diagrams do not show the logic
inside the processes
• Logic modeling involves representing internal
structure and functionality of processes
depicted on a DFD
• Logic modeling can also be used to show
when processes on a DFD occur
9.9
Logic Modeling
• Deliverables and Outcomes
– Structured English
– Decision Tables
– Decision Trees
– State-transition diagrams
– Sequence diagrams
– Activity diagrams
9.10
Modeling Logic with
Structured English
• Modified form of English used to specify the
logic of information processes
• Uses a subset of English
– Action verbs
– Noun phrases
– No adjectives or adverbs
• No specific standards
9.11
Modeling Logic with
Structured English
• Similar to programming language
– If conditions
– Case statements
• Figure 9-3 shows Structured English
representation for Hoosier Burger
9.12
Modeling Logic with
Decision Tables
• A matrix representation of the logic of a
decision
• Specifies the possible conditions and the
resulting actions
• Best used for complicated decision logic
9.13
Modeling Logic with
Decision Tables
• Consists of three parts
– Condition stubs
• Lists condition relevant to decision
– Action stubs
• Actions that result from a given set of conditions
– Rules
• Specify which actions are to be followed for a given
set of conditions
9.14
Modeling Logic with
Decision Tables
• Indifferent Condition
– Condition whose value does not affect which action is
taken for two or more rules
• Standard procedure for creating decision tables
– Name the condition and values each condition can
assume
– Name all possible actions that can occur
– List all rules
– Define the actions for each rule
– Simplify the table
9.15
Figure 9-4
Complete decision table for payroll system example
9.16
Modeling Logic with Decision
Trees
• A graphical representation of a decision
situation
• Decision situation points are connected
together by arcs and terminate in ovals
• Two main components
– Decision points represented by nodes
– Actions represented by ovals
9.17
Modeling Logic with Decision
Trees
• Read from left to right
• Each node corresponds to a numbered choice
on a legend
• All possible actions are listed on the far right
9.18
Figure 9-9
Decision tree representation of the decision logic in the decision
tables in Figures 9-4 and 9-5, with only two choices per decision
point
9.19
Deciding Among Structured English,
Decision Tables and Decision Trees
9.20
Criteria
Structured
English
Decision
Tables
Decision
Trees
Determining
Conditions and
Actions
Second Best
Third Best
Best
Transforming
Conditions and
Actions into
Sequence
Best
Third Best
Best
Checking
Consistency and
Completeness
Third Best
Best
Best
Structure English
• Modified English
• No formal dictionary
• Just nouns and verbs (no adjectives or
adverbs)
• Used for describing processing logic
• Common referred to as psuedocode but is kept
simple so end users can follow
Logic Models
• Structured English
– relies on action verbs and nouns
• Decision tables
• Decision trees
Structure English
• Build it from the DFD describing each of the
DFD processes
• Only need to do for your lowest level DFDs
• Describes how the process changes the inputs
to outputs
• Verify that Structured English uses the same
inputs and outputs as your DFD
Structure English
• We have salaried and hourly employee
– Salary employees get paid overtime after 50 hours
– Hourly employees are paid straight pay
• If they work over 40 hours they get time and a half
• If they work second shift they get a differential
• If they work third shift they get hazard pay
• If they work Sunday but did not work 40 hours for
the week they get double time
• If they work Sunday and did work 40 hours they get
overtime
• If they were on vacation that counts as working
• If they drive a blue car and have green eyes they get
no pay
Structure English
Payroll info
Salary
status
2.4
Produce
Absent
Report
Hours
worked
2.2
Determine
Number
Hrs work
and pay rate
Hours
worked
Salary
status
2.1
Determine
Employee
Salary/Hourly
Employee
Salary
status
Paycheck amount
2.3
Calculate
Pay
Amount
Structure English
• Process 2.1
– read payroll information
– until employee found
– get salary status
• Process 2.2
–
–
–
–
read payroll information
until employee found
get hours worked
get pay rate
• Process 2.3
– if salary status is salaried,
then pay at pay rate
– else case
• worked <40 hours
– do pay = rate * hours
– do absence report routine
• worked 40 hours
– do pay = rate * hours
• worked >40 hours
– do pay = (rate * 40)
+ ((hours - 40) * rate * 1.5)
• Process 2.4
– collect absence reasons
– produce report
– send report
Decision Tables
• A matrix representation of the logic of a decision.
• Three constructs:
– Condition Stubs: the part of the table that lists
conditions relevant to the decision or policy
– Action Stubs: the part of the table that lists the action
results for a given set of conditions
– Rules: the part of the decision table that summarizes the
set of actions to be followed
• Advantage of decision tables
– Easier to understand
– Cover all conditions
– Easier to translate into computer code
– More clearly thought out
Decision Tables
• A graphical technique that depicts decisions or
choices.
• Steps in decision tables
– Identify the condition and values
– Determine the maximum number of rules
– Identify the possible actions
– Enter all possible rules
– Define the action for each rule
– Verify the policy
– Simplify the decision tree
Figure 9-4
Complete decision table for payroll system example
9.29
Summary
• Several methods of logic modeling
– Structured English
• Primarily communication technique for analysts and
users
– Decision Tables
• Conditions are listed in condition stubs
• Possible actions are listed in action stubs
• Rules link conditions with actions
9.30
Summary
• Decision Tables
– Lists all possible rules
• Decision Trees
– Conditions are portrayed by decision points
– Values are represented by paths between decision
points and ovals that contain actions
9.31
Summary
• Comparison of Structured English, Decision
Tables and Decision Trees
– Most studies show that decision trees are best for
many criteria
– There is no best technique
– Analyst must be proficient in all three
9.32