Chapter 11 System Development & Programming Professor Michael J. Losacco CIS 1110 – Using Computers Overview Chapter 11 Define System Development List the System Development Phases Explain Activities for Each Phase Explain High- & Low-level Languages Detail Steps of Program Development 2/44 Information System Chapter 11 Hardware Software Data People Procedures Together Produce Information Interact to Achieve Common Goal 3/44 System Development Chapter 11 Phases 4/44 Guidelines Chapter 11 Arrange Tasks Into Phases Groups of Activities Involve Users Anyone for Whom System is Being Built Develop Clearly Defined Standards Sets of Rules & Procedures Company Expects Employees to Follow 5/44 Initiation Chapter 11 Correct Problem in Existing System Improve Existing System Outside Group May Mandate Change Competition Can Lead to Change Request for System Services AKA Project Request Request for New / Modified System 6/44 Participants Chapter 11 Representatives from Departments Involved in Building or Using System 7/44 Project Management Chapter 11 Project Manager Plans, Schedules, & Controls Activities Establishes Scope Goals, Objectives, & Expectations of Project List Required Activities Time Required Cost Estimate Order & Dependency 8/44 Project Success Chapter 11 Successful On-time, On-budget, All Features Challenged Late, Over Budget, Less Features Failed Cancelled or Delivered but Never Used Standish Group 2009 9/44 Project Success 11 Smaller Projects Have Better Success <$750K $750K-3M Budget Chapter $3-6M $6-10M $10M+ 0% 10% 20% 30% 40% 50% 60% Success Standish Group 10/44 Project Success 11 Shorter Projects Have Better Success 60% 50% 40% Success Chapter 30% 20% 10% 0% 6 9 12 18 24 Months Standish Group 11/44 Project Success Chapter Average Percentage Above Estimate 11 200% Overage 150% 100% 50% 0% 1994 1996 1998 2000 2002 2004 Year Time Cost Standish Group 12/44 Project Success Chapter 11 Notable Project Failures FAA Air Traffic Control $1.5B – 1994 IRS Modernization $3.4B – 1997 DoD Business Modernization $19B – 2004 200 Inventory / 450 Personnel Systems Children’s Hospital of Pittsburgh Dramatically Higher Death Rates – 2002 13/44 Planning Phase Chapter 11 Steering Committee Decision-making Body for Company Receives Project Requests Function of Committee: Review & Approve Project Prioritize Requests Allocate Resources Form Project Development Team 14/44 Analysis Phase Chapter 11 Preliminary Investigation Determine Nature of Problem Determine Whether it is Worth Pursuing Feasibility Study Economic AKA Cost / Benefit Operational Schedule Technical 15/44 Analysis Phase Chapter 11 Detailed Analysis Study How Current System Works Determine User’s: Wants Needs Recommend Solution 16/44 Analysis Phase Chapter 11 Documentation Collect & Summarize Data & Information Reports Diagrams Programs Other Deliverables 17/44 Analysis Phase Chapter 11 Data & Information Gathering Review Documentation Research Questionnaire One-on-one interview Observation Joint-application Design (JAD) Session 18/44 Analysis Phase Chapter 11 Process Modeling AKA Structured Analysis & Design Transform Inputs into Outputs Entity-relationship Diagrams Data Flow Diagrams Project Dictionary 19/44 Analysis Phase Chapter 11 Entity-relationship Diagram Shows Connections Between Entities Entities Objects in System that Have Data 20/44 Analysis Phase Chapter 11 Data Flow Diagram Shows Flow of Data in System 21/44 Analysis Phase Chapter 11 Project Dictionary Structured English Used to Explain Details of Process 22/44 Analysis Phase Chapter 11 Project Dictionary Decision Table / Tree Logical Conditions & Actions 23/44 Analysis Phase Chapter 11 Project Dictionary Data Dictionary Stores Details About Each Data Item 24/44 Analysis Phase Chapter 11 System Proposal Assess Each Alternative Solution Recommend Most Feasible Solution Steering Committee Has to Approve ROI Hard v. Soft 25/44 Analysis Phase Chapter 11 Possible Solutions Packaged Prewritten Software Available for Purchase Horizontal Meets Needs of Many Companies Vertical Designed for Specific Industry Custom Write Own Software Outsourcing Hire Outside Company to Perform Work 26/44 Analysis Phase Chapter 11 Outsourcing Senior Resource Salaries PayScale 2009 27/44 Design Phase Chapter 11 Develop All Details of System Write Technical Specifications Details Functionality & Scope of Project Request for Information (RFI) Request for Quotation (RFQ) Vendor Quotes Price For Listed Hardware Request for Proposal (RFP) Vendor Quotes Price For Software Based on Specification 28/44 Design Phase Chapter 11 Acquire Hardware & Software Solicit / Test / Evaluate Vendor Proposals References from Vendor Talk to Current Users Demonstrations Trial Version Benchmark Test Measures Performance Prototype (Proof of Concept) Working Model of Proposed System 29/44 Design Phase Chapter 11 Acquire Hardware & Software Turnkey Solution Complete System Provided by VAR Value-added Reseller Purchases Products from Manufacturer Resells Them, Offering Additional Services Must Meet Certain Requirements 30/44 Design Phase Chapter 11 Inspection Step-by-step Review of Deliverables By Project Team & Users Uses Final Review of Specification Before Submitted to Programming Team Identify & Correct Any Errors 31/44 Implementation Phase Chapter 11 Build System & Deliver it to Users Develop Programs Test & Install Train Users Convert to New System 32/44 Implementation Phase Chapter 11 Develop Programs Programmers Write Code to Specification Follow Program Development Life Cycle Analyze the Requirements Design the Solution Validate the Design Implement the Design Test the Solution Document the Solution 33/44 Implementation Phase Chapter 11 Testing Unit Each Individual Program Works System All Programs in Application Work Together Integration Application Works With Other Applications Acceptance Verifies New System Works with Actual Data 34/44 Implementation Phase Chapter 11 Testing Phases Alpha Performed by Employees Beta Performed by Customers Training Show Users How to Use New System Scheduling Conflicts 35/44 Implementation Phase Chapter 11 Convert to New System Transition from Old to New System Pilot Most Widely Used 36/44 Support Phase Chapter 11 Ongoing Support After Implementation Conduct Post-implementation Review Perform Maintenance Activities Identify & Correct Errors Identify Enhancements Monitor System Performance Assess System Security 37/44 Computer Program Chapter 11 Set of Instructions Directs Computer to Perform Tasks Language Set of Words, Symbols, & Codes Communicates Instructions to Computer 38/44 Languages Chapter 11 Categories Low-level Languages Machine Dependant Typically Determined by Processor Machine & Assembly Faster Execution, More Code Required High-level Languages Machine Independent Third, & Fourth Generation Slower Execution, Less Code Required 39/44 Program Development Chapter 11 Development Options Make (Create In-house) More Control Buy (Acquire from Software Vendor) Lower Overall Cost Higher Quality Faster Implementation Less Staff Required 40/44 Analyze Requirements Chapter 11 Review Requirements Meet with Systems Analyst & Users Identify Input Processing Output Data 41/44 Design Solution Chapter 11 Devise Solution Algorithm Step-by-step Procedure to Solve Problem Flowchart Conveys Logic Graphically Pseudocode Uses Condensed English to Convey Logic 42/44 Implement Design Chapter 11 Write Code Translate Design into Program Syntax Rules that Specify How to Write Instructions Comments Program Documentation Create User Interface 43/44 Test Solution Chapter 11 Ensure Program Runs Correctly Error Types Syntax Logic Run time Debugging Locate & Correct Syntax & Logic Errors 44/44