440 likes | 627 Views
Chapter 11. System Development & Programming. Overview. Define System Development List the System Development Phases Explain Activities for Each Phase Explain High- & Low-level Languages Detail Steps of Program Development. Information System. Hardware Software Data People
E N D
Chapter 11 System Development & Programming
Overview • Define System Development • List the System Development Phases • Explain Activities for Each Phase • Explain High- & Low-level Languages • Detail Steps of Program Development
Information System • Hardware • Software • Data • People • Procedures • Together Produce Information • Interact to Achieve Common Goal
System Development • Phases
Guidelines • 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
Initiation • 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
Participants • Representatives from Departments • Involved in Building or Using System
Project Management • Project Manager • Plans, Schedules, & Controls Activities • Establishes Scope • Goals, Objectives, & Expectations of Project • List Required Activities • Time Required • Cost Estimate • Order & Dependency
Project Success • Successful • On-time, On-budget, All Features • Challenged • Late, Over Budget, Less Features • Failed • Cancelled or Delivered but Never Used Standish Group 2009
Project Success • Smaller Projects Have Better Success Standish Group
Project Success • Shorter Projects Have Better Success Standish Group
Project Success • Average Percentage Above Estimate Standish Group
Project Success • 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
Planning Phase • Steering Committee • Decision-making Body for Company • Receives Project Requests • Function of Committee: • Review & Approve Project • Prioritize Requests • Allocate Resources • Form Project Development Team
Analysis Phase • Preliminary Investigation • Determine Nature of Problem • Determine Whether it is Worth Pursuing • Feasibility Study • Economic • AKA Cost / Benefit • Operational • Schedule • Technical
Analysis Phase • Detailed Analysis • Study How Current System Works • Determine User’s: • Wants • Needs • Recommend Solution
Analysis Phase • Documentation • Collect & Summarize Data & Information • Reports • Diagrams • Programs • Other Deliverables
Analysis Phase • Data & Information Gathering • Review Documentation • Research • Questionnaire • One-on-one interview • Observation • Joint-application Design (JAD) Session
Analysis Phase • Process Modeling • AKA Structured Analysis & Design • Transform Inputs into Outputs • Entity-relationship Diagrams • Data Flow Diagrams • Project Dictionary
Analysis Phase • Entity-relationship Diagram • Shows Connections Between Entities • Entities • Objects in System that Have Data
Analysis Phase • Data Flow Diagram • Shows Flow of Data in System
Analysis Phase • Project Dictionary • Structured English • Used to Explain Details of Process
Analysis Phase • Project Dictionary • Decision Table / Tree • Logical Conditions & Actions
Analysis Phase • Project Dictionary • Data Dictionary • Stores Details About Each Data Item
Analysis Phase • System Proposal • Assess Each Alternative Solution • Recommend Most Feasible Solution • Steering Committee Has to Approve • ROI • Hard v. Soft
Analysis Phase • 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
Analysis Phase • Outsourcing • Senior Resource Salaries PayScale 2009
Design Phase • 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
Design Phase • 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
Design Phase • 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
Design Phase • 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
Implementation Phase • Build System & Deliver it to Users • Develop Programs • Test & Install • Train Users • Convert to New System
Implementation Phase • 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
Implementation Phase • 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
Implementation Phase • Testing • Phases • Alpha • Performed by Employees • Beta • Performed by Customers • Training • Show Users How to Use New System • Scheduling Conflicts
Implementation Phase • Convert to New System • Transition from Old to New System • Pilot Most Widely Used
Support Phase • Ongoing Support After Implementation • Conduct Post-implementation Review • Perform Maintenance Activities • Identify & Correct Errors • Identify Enhancements • Monitor System Performance • Assess System Security
Computer Program • Set of Instructions • Directs Computer to Perform Tasks • Language • Set of Words, Symbols, & Codes • Communicates Instructions to Computer
Languages • 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
Program Development • Development Options • Make (Create In-house) • More Control • Buy (Acquire from Software Vendor) • Lower Overall Cost • Higher Quality • Faster Implementation • Less Staff Required
Analyze Requirements • Review Requirements • Meet with Systems Analyst & Users • Identify • Input • Processing • Output • Data
Design Solution • Devise Solution Algorithm • Step-by-step Procedure to Solve Problem • Flowchart • Conveys Logic Graphically • Pseudocode • Uses Condensed English to Convey Logic
Implement Design • Write Code • Translate Design into Program • Syntax • Rules that Specify How to Write Instructions • Comments • Program Documentation • Create User Interface
Test Solution • Ensure Program Runs Correctly • Error Types • Syntax • Logic • Run time • Debugging • Locate & Correct Syntax & Logic Errors