Systems Analysis and Design approaches Structured analysis –Looks at processes -> then Data Event list – event table Context diagram – DFD – ERD (define the data to satisfy the required information flows) Information Engineering –Looks at Data -> then process ERD – Data Dictionary – DFD (how data is captured,stored, used, and maintained) Object Oriented –Looks at Objects(data and processes[methods])
Relative Cost to Fix Error (P)roblem 1 (A)nalsis1-3 (D)esign2-4 (I)mplementation5-25 (T)esting/Operations25-100
Event List Customer makes payment Customer picks up order Employee makes pizza Customer makes an order Owner orders inventory Customer requests delivery Time to order supplies Time to pay Employees Time to pay State and Fed taxes Time to fix car Employee sends pay time card
Event Table from event list Event System Source System Receiver Data Input of Input Output of Output Store Customer order Customer clerk Order places order Receipt sent Receipt Customer Order to customer Time to pay Paycheck Employee Employee employee Employee timecard Employee Owner Employee sends timecard
Decomposition Numbering of events in the Event Table and using a spread sheet will aid in the repetitive process Customer makes payment Customer picks up order Employee makes pizza 1. Customer makes an order 2.1. Owner orders inventory Customer requests delivery 2.1 Time to order supplies 3. Time to pay Employees 3.3. Time to pay State and Fed employee taxes X Time to fix car 3.1 Employee sends pay time card
Make a Context diagram of the System Def: a model that defines the scope and boundary for the system and project – subject to constant change Contains a system domain Contains entities that are generators or receivers of events These entities come from “Source of Input” and “Receiver of Output” from the Event Table
Context Diagram from Event Table Bambino Pizza Customer --order food Food and Receipt- Product Suppliers Purchase order shipment invoice Employee timesheet- --W2 --paycheck Add Other entities- BANK, Owners
Create a Data Flow Diagram (DFD) DFD-0 –Contains Data Flows ( “System Inputs” and “System Outputs” from the Event Table) [Processes the Event] –Contains the major (general) event functions (transitions) that are in the System domain as illustrated in the context diagram. –Contains the Data stores from the Event Table –May contain Entities from the Context Diagram
Data Flow Diagram 0 - level 0 from Event Table Customer Process Order 1. -order order Receipt- Manage inventory 2 P.O. Vendor Goods and shipping list- Pay employees 3. Note: could say Process inventory 2., Process employees 3. Need to add 4., 5., 6., … -purchase order
Data Flow Diagram 3 - level 1 from DFD 0 and event table Employee Process timeCard 3.1 -timeCard employee Pay check- Process state and Fed Qtr taxes 3.3 Tax tables IRS 941-A -- Produce pay check 3.2 Need to add 3.4, 3.5, … Note: 3.1 is probably a primitive, but 3.3 will most likely be decomposed into 3.3.1, 3.3.2, … -W2 Do payroll Reports 3.4 -tax laws
Decomposition Diagram from DFD Pay Employees 3. Time CardsWrite Checks IRS Tax Pay reports State Fed
Data dictionary From the data stores, data flow inputs, and data flow outputs as shown on the DFD’s we can build the data dictionary. 1.Order = {order-item-code+order-quantity+…. 2. Receipt = {order-item-code+… 3. Purchase_Order = (PO_number+item_code + quanity + … 4. Shipping_List = {PO_number + item_code + … 5. Pay_check = [Employee_ID =Employee_name+rate + hours.., 6. Time_card = 7. W2_form = A_form = Input requirements are 1, 3, 4, 6 Output requirements are 2, 5, 7, 8 You need to also define the data stores