IS312 Information Systems for Business Lecture 8 Information Systems Development (Ch. 9)
LEARNING OBJECTIVES Systems Development Life Cycle Application Development Methodologies Project Management Systems Acquisition Development Phases in a Structured Process
APPLICATION DEVELOPMENT Application that is built correctly can transform as the organization and its business transforms Application that effectively meets employee needs will help an organization become more productive and enhance decision making Application that does not meet employee needs may have a damaging effect on productivity and can even cause a business to fail
APPLICATION DEVELOPMENT . . . As organizations’ reliance on application software grows, so do the business-related consequences of application software successes and failures including: Increase or decrease revenue Repair or damage to brand reputation Prevent or incur liabilities Increase or decrease productivity
The Need for Structured Systems Development Process The process of defining requirements, designing, building, and maintaining information systems Standardized development methods Best practices to follow Consistent quality Software engineering
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) Systems development life cycle (SDLC) – The overall process for developing information systems from planning and analysis through implementation and maintenance
The Systems Development Life Cycle Planning phase – Establishes a high-level plan of the intended project and determines project goals Analysis phase – Involves analyzing end- user business requirements and refining project goals into defined functions and operations of the intended system (WHAT) Business requirements – Specific business requests the system must meet to be successful CLASSROOM EXERCISE Space Needle Exercise Break your students into groups and give them equal materials from a Tinker Toy set, a Zome set, or a product of your choice. Give them each the following instructions and observe the groups as they build their prototypes. Review the IM for details on the project
The Systems Development Life Cycle . . . Design phase – Establishes descriptions of the desired features and operations of the system including screen layouts, business rules, process diagrams, pseudo code, and other documentation (HOW) Development phase – Involves taking all of the detailed design documents from the design phase and transforming them into the actual system
The Systems Development Life Cycle . . . Testing phase – Involves bringing all the project pieces together into a special testing environment to eliminate errors and bugs, and verify that the system meets all of the business requirements defined in the analysis phase Implementation phase – Involves placing the system into production so users can begin to perform actual business operations with it
The Systems Development Life Cycle . . . Maintenance phase – Involves performing changes, corrections, additions, and upgrades to ensure the system continues to meet its business goals
APPLICATION DEVELOPMENT METHODOLOGIES Waterfall (Structured Process) Agile Rapid application development (RAD) Extreme programming Rational unified process (RUP) SCRUM
Waterfall Methodology Waterfall methodology – A structured sequence of phases in which the output of each phase becomes the input for the next
Agile Methodology Iterative development – Consists of a series of tiny projects Agile methodology – Aims for customer satisfaction through early and continuous delivery of useful application software components developed by an iterative process using the bare minimum requirements
Rapid Application Development (RAD) Methodology Rapid application development methodology– Emphasizes extensive user involvement in the rapid and evolutionary construction of working prototypes of a system to accelerate the systems development process Prototype – A smaller-scale representation or working model of the users’ requirements or a proposed design for an information system The prototype is an essential part of the analysis phase when using a RAD methodology
Extreme Programming Methodology Extreme programming (XP) methodology – Breaks a project into tiny phases, and developers cannot continue on to the next phase until the first phase is complete
Rational Unified Process (RUP) Methodology Rational Unified Process (RUP) – Provides a framework for breaking down the development of software into four gates Gate One: Inception Gate Two: Elaboration Gate Three: Construction Gate Four: Transition
SCRUM Methodology SCRUM – Uses small teams to produce small pieces of deliverable software using sprints, or 30-day intervals, to achieve an appointed goal Under this methodology, each day ends or begins with a stand-up meeting to monitor and control the development effort
DEVELOPING SUCCESSFUL APPLICATION Primary reasons for project failure Unclear or missing business requirements Skipping SDLC phases Failure to manage project scope Scope creep Feature creep Failure to manage project plan Changing technology
Developing Successful Application . . . The later in the SDLC an error is found the more expensive it is to fix!
MANAGING SOFTWARE DEVELOPMENT PROJECTS Analysts predict investment in MIS projects worldwide is over $1 trillion 70 percent will be lost due to failed projects The consequences of failed projects include Damaged brand Lost goodwill Dissolution of partnerships Lost investment opportunities Low morale
Managing Software Development Projects Project – Temporary activities undertaken to create a unique product or service Project management – The application of knowledge, skills, tools, and techniques to project activities to meet project requirements Project manager – An individual who is an expert in project planning and management, defines and develops the project plan, and tracks the plan to ensure the project is completed on time and on budget
Managing Software Development Projects . . . Project deliverable – Any measurable, tangible, verifiable outcome, result, or item that is produced to complete a project or part of a project Project milestone – Represents key dates when a certain group of activities must be performed Project management office (PMO) – An internal department that oversees all organizational projects
PROJECT CONSTRAINTS 23
The Triple Constraint Benjamin Franklin’s timeless advice - by failing to prepare, you prepare to fail - applies to software development projects The Hackett Group analyzed 2,000 companies and discovered Three in 10 major IT projects fail 21 percent of the companies state that they cannot adjust rapidly to market changes One in four validates a business case for IT projects after completion
PROJECT PARTICIPANTS Project stakeholders - Individuals and organizations actively involved in the project or whose interests might be affected as a result of project execution or project completion Owner (What information system can provide) User (What tasks to be done) Designer (What to do to build system, How IT do it) Developer (Build system according to specs) Executive sponsor - The person or group who provides the financial resources for the project
Role of Users in Systems Development Process User Requirement Discovery: What the system should do to assist users User Participation: Develop “system ownership”: the system is theirs User Acceptance: The system does what users need effectively, efficiently User Satisfaction: The success of a system !!!
Project Management Role
CHOOSING STRATEGIC PROJECTS Three common techniques for selecting projects Focus on organizational goals (vision, strategy) Categorize projects (visibility, urgency, benefit) Perform a financial analysis (cost/benefit)
Understanding Project Planning After selecting strategic projects and identifying a project manager the next critical component is the project plan Building a project plan involves two key components Project charter Project plan
Understanding Project Planning . . . Project charter - A document issued by the project initiator or sponsor that formally authorizes the existence of a project and provides the project manager with the authority to apply organizational resources to project activities and includes Project scope statement Project objectives Project constraints Projects assumptions
Understanding Project Planning . . . SMART criteria are useful reminders on how to ensure that the project has created understandable and measurable objectives
Understanding Project Planning . . . Project plan – A formal, approved document that manages and controls project execution A well-defined project plan should be Easy to understand and read Communicated to all key participants Appropriate to the project’s size, complexity, and criticality Prepared by the team, rather than by the individual project manager
MANAGING PROJECTS Managing a project includes Identifying requirements Establishing clear and achievable objectives. Balancing the competing demands of quality, scope, time, and cost Adapting the specifications, plans, and approach to the different concerns and expectations of the various stakeholders
In-Sourcing Vs. Outsourcing Projects In-sourcing (in-house-development) – Uses the professional expertise within an organization to develop and maintain its information technology systems Outsourcing – An arrangement by which one organization provides a service or services for another organization that chooses not to perform them in-house
Outsourcing Projects Factors driving outsourcing growth include Core competencies Financial savings Rapid growth The Internet and globalization
Outsourcing Projects Onshore outsourcing Nearshore outsourcing Offshore outsourcing
Outsourcing Benefits Outsourcing benefits include Increased quality and efficiency of business processes Reduced operating expenses for head count and exposure to risk for large capital investments Access to outsourcing service provider’s expertise, economies of scale, best practices, and advanced technologies Increased flexibility for faster response to market changes and less time to market for new products or services
Outsourcing Challenges Outsourcing challenges include Length of contract Difficulties in getting out of a contract Problems in foreseeing future needs Problems in reforming an internal IT department after the contract is finished Threat to competitive advantage Loss of confidentiality
Project Management Failure Lack of sufficient planning Problems with technology compatibility Lack of commitment by management providing necessary resources Poorly defined project scope Lack of sufficient time to complete the project 39
Planning for and Justifying Applications Organizations must analyze the need for the IT application. Each IT application must be justified in terms of costs and benefits. The application portfolio 40
Information Systems Planning Process 41
SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) Overview ( IS 312, IS 431 , IS 531, IS 630 , IS 655 )
Where Do Systems Development Projects Come From? Problem – an actual undesirable situation that prevents the organization from fully achieving its purpose, goals, and/or objectives. Opportunity – a chance to improve the organization even in the absence of an identified problem. Directive - a new requirement that is imposed by management, government, or some external influence/parties.
System Analysis & Design Approaches in a Nutshell DEVELOPMENT Modeling Prototyping (RAD) IMPLEMENTATION Build (In-house) Buy (COTS) No additional notes.
System Construction Process Identify an IT problem to solve Break the large problem into several smaller, more manageable units Translate each unit (small problem) into computer programs Piece together each program into an overall comprehensive IS that solves the problem
System Construction Process…
Strategies for Acquiring IT Applications Buy the applications (off-the-shelf approach) Lease the applications Software-as-a-Service (Cloud Computing) Use Open-Source Software Outsourcing Developing the applications in-house 47
SYSTEMS DEVELOPMENT PROCESS System Identification, Selection, and Planning System Analysis System Design System Implementation System Maintenance
Systems Development Process Scope Definition Phase What Business Problem Analysis Phase What System Issues (Info / Data, Processes, Communications / Interfaces), What User Needs, What to Do - Conceptual Model What Solution Design Phase How to Do - Physical Model Implementation / MaintenancePhase Do it, use it, keep it good
Systems Development Life Cycle …
Systems Development Life Cycle in Practice
Phase 1: System Identification, Selection, and Planning
Phase 1: System Identification, Selection, and Planning Undertake only those projects critical to mission, goals, and objectives Select a development project from all possible projects that could be performed Different evaluation criteria used to rank potential projects
Phase 1: System Identification, Selection, and Planning . . . Evaluation criteria Strategic alignment Potential benefits Potential costs and resource availability Project size / duration Technical difficulty / risks
Evaluation Criteria
Phase 2: Systems Analysis
Phase 2: System Analysis . . . Requirements collection Interviews Questionnaires Observations Document analysis Critical Success Factors (CSF) Joint Application Design (JAD)
Pros & Cons of CSF
Pros & Cons of JAD
Phase 2: System Analysis . . . Modeling Organizational Data Entity Relationship Diagram (ERD) Modeling Organizational Processes and Logic Data Flow Diagram (DFD) Processing Logic
A Process Model
A Data Model
Phase 3: System Design
Phase 3: System Design . . . Designing interfaces and dialogues Designing forms and reports Designing interfaces and dialogues Designing databases and files Designing processing and logic
Phase 4: System Implementation
Phase 4: System Implementation . . . Software programming Software testing Developmental (check program logic) Alpha testing (simulated data) Beta testing (real data)
System Testing
Phase 4: System Implementation . . . System conversion Parallel Direct / Cut-off Phased Pilot System documentation, training, and support User and reference guides Training and tutorials Installation procedures and troubleshooting guides
System Conversion
Conversion Strategies Direct Conversion Risk Location Conversion Phased Conversion No additional notes Parallel Conversion Cost
User Training
Phase 5: System Maintenance . . . Maintenance process steps: Obtain maintenance request Transform requests into changes Design changes Implement changes
Phase 5: System Maintenance . . .
Phase 5: System Maintenance . . . Maintenance types: Corrective maintenance Adaptive maintenance Perfective maintenance Preventive maintenance
Software Maintenance
Need for Alternatives to In-house Development Limited IS staff IS staff has limited skill set IS staff is overworked Problems with performance of IS staff Reinvent the wheel (Common business functions)
Commercial Off-the-Shelf Software Advantages Fast implementation of new system (many functions are similar across businesses, no need to build them from scratch.) No need for expertise and staff for in-house development Low development costs (but expensive to customize and implement !!!) Vendors are responsible for software improvements and error corrections
Commercial Off-the-Shelf Software . . . Disadvantages Dependent on the vendors Future upgrade/customization is expensive A COTS rarely reflects ideal solution developed in-house Changing current business processes to fit the COTS
System Proposal & Project Management Feasibility Analysis Alternative (Candidate) System Solutions. Cost-benefit Analysis System Proposal Reports Project Management No additional notes.
Feasibility Analysis Feasibility is the measure of how beneficial or practical the development of an information system will be to an organization. Creeping Commitment : feasibility should be measured throughout the life cycle as project scope expands over times. No additional notes.
Feasibility Analysis … Technical feasibility is a measure of the practicality of a specific technical solution and the availability of technical resources and expertise. Operational feasibility is a measure of how well the solution will work in the organization. It is also a measure of how people feel about the system/project. Economic feasibility is a measure of the cost-effectiveness of a project or solution. Schedule feasibility is a measure of how reasonable the project timetable is.
Cost-Benefit Analysis Costs: Development costs are one time costs that will not recur after the project has been completed. Operating costs are costs that tend to recur throughout the lifetime of the system. Such costs can be classified as: Fixed costs — occur at regular intervals but at relatively fixed rates. Variable costs — occur in proportion to some usage factor. Benefits: Tangible benefits are those that can be easily quantified. Intangible benefits are those benefits believed to be difficult or impossible to quantify.
Costs for a Proposed Systems Solution No additional notes.
Economic Feasibility Payback Analysis Payback analysis is to determine if and when an investment will pay for itself. Payback period is the period of time that will lapse before accrued benefits overtake accrued and continuing costs. Net Present Value a dollar today is worth more than a dollar one year from now Discount rate – a percentage that the business earns on investing money in other projects or investments: opportunity cost
Economic Feasibility … Return-on-Investment (ROI) Analysis – a technique that compares the lifetime profitability of alternative solutions. ROI for a solution or project is a percentage rate that measures the relationship between the amount the business gets back from an investment and the amount invested. Lifetime ROI = (estimated lifetime benefits – estimated lifetime costs) / estimated lifetime costs Annual ROI = lifetime ROI / lifetime of the system
Candidate Systems Matrix Characteristics Portion of System Computerized Brief description of that portion of the system that would be computerized in this candidate. Benefits Brief description of the business benefits that would be realized for this candidate. Servers and Workstations A description of the servers and workstations needed to support this candidate. Software Tools Needed Software tools needed to design and build the candidate (e.g., database management system, emulators, operating systems, languages, etc.). Not generally applicable if applications software packages are to be purchased. Candidate 1 COTS package from Software Solutions would be purchased and customized to satisfy required functionality. This solution can be implemented quickly because it’s a purchased solution. Technically architecture dictates Pentium III, MS Windows 2000 class servers and workstations (clients). MS Visual C++ and MS Access for customization of package to provide report writing and integration. Candidate 2 Member Services and warehouse operations in relation to order fulfillment. Fully supports user required business processes for more efficient interaction with member accounts. Same as candidate 1. MS Visual Basic 5.0 System Architect 2001 Internet Explorer Candidate 3 Same as candidate 2. MS Visual Basic 5.0 System Architect 2001 Internet Explorer No additional notes.
Candidate Systems Matrix … Characteristics Application Software A description of the software to be purchased, built, accessed, or some combination of these techniques. Method of Data Processing Generally some combination of: on-line, batch, deferred batch, remote batch, and real-time. Output Devices and Implications A description of output devices that would be used, special output requirements, (e.g., network, preprinted forms, etc.), and output considerations (e.g., timing constratints) Candidate 1 Package solution Client/Server (2) HP4MV department laser printers (2) HP5SI LAN laser printers Candidate 2 Custom solution Same as candidate 1. (2) HP4MV department laser printers. (1) PRINTRONIX bar-code printer (includes software & drivers) Web pages must be designed to VGA resolution. All internal screens will be designed for SVGA resolution. Candidate 3 Same as candidate 2. No additional notes.
Candidate Systems Matrix … Characteristics Input devices and Implications A description of input methods to be used, input devices (e.g., keyboard, mouse, etc.), special input requirements (e.g., new or revised forms from which data would be input), and input considerations (e.g., timing of actual inputs). Storage Devices and Implications Brief description of what data would be stored, what data would be accessed from existing stores, what storage media would be used, how much storage capacity would be needed, and how data would be organized. Candidate 1 Keyboard & mouse. MS SQL Server DBMS with 1000GB arrayed capability. Candidate 2 Apple “Quick Take” digital camera and software (15) PSC Quickscan laser bar-code scanners (1) HP Scanjet 4C Flatbed Scanner Keyboard and mouse Same as candidate 1. Candidate 3 Same as candidate 2. No additional notes.
Feasibility Matrix No additional notes
Scheduling Strategies Forward Scheduling – a project scheduling approach that establishes a project start date and then schedules forward from that date. Reverse Scheduling – a project scheduling strategy that establishes a project deadline and then schedules backward from that date.
PERT Chart Legend Project Initiation Problem Analysis 5-3-2001 N/A Task Task 5-3-2001 N/A Scheduled Scheduled intertask Scheduled Scheduled Start Finish dependency Start Finish Actual Actual Actual Start Finish Actual Start Preliminary Investigation Finish 5-3-2001 5-12-2001 5-3-2001 5-11-2001 Problem Analysis Requirements Analysis Decision Analysis 5-12-2001 6-12-2001 5-28-2001 7-15-2001 6-13-2001 7-30-2001 5-12-2001 6-14-2001 5-30-2001 7-18-2001 6-13-2001 8-3-2001 Design Construction 7-3-2001 9-25-2001 7-19-2001 11-13-2001 7-5-2001 10-9-2001 7-20-2001 In Progress Implementation 9-10-2001 12-14-2001 TBD TBD
Critical Path The critical path is highlighted in red Duration TASK C Fri 2/9/01 2 days 0 days D Tue 2/20/01 7 days I Tue 2/27/01 5 days E Mon 2/19/01 6 days 1 day B Wed 2/7/01 A Mon 2/5/01 3 days H Thu 2/15/01 F Wed 2/14/01 Fri 2/16/01 G Duration Slack Time No additional notes
Gantt Chart Legend Today ID 1 2 3 4 5 6 7 Preliminary investigation Incomplete Task Complete Task Legend ID 1 2 3 4 5 6 7 Preliminary investigation Problem analysis Requirements analysis Decision analysis Design Construction Implementation May Jun Jul Aug Sep Oct Nov Dec 2001 Task Name Today
Measures of Project Success The resulting information system is acceptable to the customer. The system was delivered “on time.” The system was delivered “within budget.” The system development process had a minimal impact on ongoing business operations.
System Proposal No additional notes