320 likes | 427 Views
Information Systems System Analysis 421 Class Eight. Class Exercise.
E N D
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) Author Name Author Addr Book Book ID (PK) Book Desc Printer Printer ID (PK) Printer Name Writes
Class Exercise 1. Review Relationships Books written by many authors Books only have one printer Editors work for multiple authors Author/Book Auth-book (PK) Author ID(FK) Book ID (FK) Author Author ID (PK) Author Name Author Addr Book Book ID (PK) Book Desc Printer ID(FK) Written Writes Has editing Prints Printed By Editor Editor ID (PK) Editor Name Editor Addr Editor/Author Edit-auth (PK) Editor ID(FK) Author ID (FK) Printer Printer ID (PK) Printer Name Edits
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 Home Base Home Base ID (PK) Home Base Place Main Base Main Base ID (PK) Main Base place Flight Flight ID (PK) Flight date Crew Crew ID (PK) Crew Name Crew Addr Pilot Pilot ID (PK) Pilot Name Airplane Airplane ID (PK) Airplane type
Class Exercise 2. When there is a 1-1 relationship no association table is necessary Resides Pilot Pilot ID (PK) Pilot Name Home Base (FK) Flight Flight ID (PK) Flight date Main Base Main Base ID (PK) Main Base place Home Base HmeBaseID (PK) Home Base Place Planned Flys Resides Resides Flight Flight info(PK) Flight Id (FK) Crew ID (FK) Pilot ID(FK) Airplane ID (FK) Crew Crew ID (PK) Crew Name Crew Addr Home Base(FK) Flys Airplane Airplane ID (PK) Airplane type Main Base(FK) Scheduled
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 withDecision 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-4Complete 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-9Decision 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 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 9.20
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 2.4 2.2 Produce Absent Report Determine Number Hrs work and pay rate Payroll info 2.1 2.3 Determine Employee Salary/Hourly Calculate Pay Amount Salary status Hours worked Hours worked Employee Salary status Salary status Paycheck amount
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 Structure English
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-4Complete 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