430 likes | 606 Views
Chapter 8 Information Systems Development and Acquisition www.pearsoned.ca/jessup. Robert Riordan, Carleton University. Developing Systems. Systems Analysis and Design
E N D
Chapter 8 Information Systems Development and Acquisition www.pearsoned.ca/jessup Robert Riordan, Carleton University
Developing Systems Systems Analysis and Design A traditional term used to describe the process of designing, building, and maintaining information systems performed by analysts and programmers Software Engineering A newer term given to acknowledge the movement of systems building from art to discipline by professionals using common methods, techniques, and tools for constructing information systems Problem Decomposition Systems building is a process of decomposing large complex problems to discover and design solutions to support the organization
The Systems Development Life Cycle The System Development Life Cycle (SDLC) is a structured method complete with techniques developed to manage the life cycle of an information system
System Identification, Selection, and Planning System Identification A process used to identify opportunities for developing systems projects to solve problems. This process varies greatly from organization to organization Selection The process of applying evaluation criteria to possible projects to select those that are critical to enabling the organization’s mission, goals, and objectives Systems Planning Developing formal plans for creating the information systems project selected. Some organizations call their periodic process of identification, selection, and planning “Information Systems Planning (ISP)”
System Identification, Selection, and Planning Criteria for evaluating and selecting a systems project
Systems Analysis • Collecting System Requirements (Traditional) • A combination of methods are used: • Interviews – discussions with stakeholders (i.e. users) • Questionnaires – surveys to assess use and attitudes • Observations – watch process and systems use • Document Analysis – reviewing current documents • Collecting System Requirements (Alternative) • A combination of traditional methods are used: • Critical Success Factors (CSFs) –a process of interviewing, recoding, analyzing and merging factors defined as critical by personnel at all levels of an organization • Joint Application Design(JAD) -a method that brings together users and analysts in a room to define requirements. This method greatly reduces design time
Systems Analysis - Joint Application Design • JAD is a special type of a group meeting in which all (most) users meet with an analyst at the same time • Users jointly define and agree upon system requirements or design dramatically reducing the design time
System Analysis – Modeling Organizational Data The Entity Relationship Diagram (ERD) A tool used to identify the relationships between entities to assist in developing applications and databases
System Design - Designing Forms and Reports Forms - a business document with predefined data and places to fill in information that is used for system input Reports – a system output that contains only predefined data usually in a tabular format (see below)
System Design - Designing Interfaces and Dialogues User Interface Example – Gov’t of Alberta
System Design – Designing Processing Logic Processing Logic The processing and logic operations of an information system are the steps and procedures that transform raw data inputs into new or modified information • Processing Logic Example • Describes the steps for calculating a GPA • Obtain the prior grade point average, credits hours earned, and list of prior courses • Obtain the list of each current course, final grade, and course credit hours • Combine the prior and current credit hours into aggregate sums • Calculate the new grade point average
System Implementation – Programming and Testing Software Programming – creating the instructions from the programming logic design using a variety of programming languages often assisted by language editors Software Testing – a series of tests designed to identify errors and validate logic in parallel with programming. There are multiple types of testing (see below)
System Implementation – System Conversion Conversion Approaches – the process of taking information from an old system to populate a new system. This is accomplished through manual and/or automated methods
System Implementation – System Documentation System Documentation The collection of materials produced with an information system to support the ongoing operation and development • Documentation Types • User and reference guides – step-by-step instructions for using the system features and functions • User training and tutorials – manuals and exercises designed to educate users and build competence in system use. These training manuals and tutorials can be supported by a database that utilizes realistic data • Installation procedures and trouble-shooting suggestions – manuals and procedures designed to support technical personnel in installing and problem solving during system operation
System Implementation – System Training Training Approaches – the processes used to educate users in new business processes and system features and functions with the goal of building competence to ensure operational success (see possible methods below)
System Maintenance - Maintenance Types System Maintenance The process by which a system is kept in working order and minor enhancements are completed. Some types of system maintenance are shown below:
Alternative Development Methods - Prototyping • Prototyping • A systems development method that uses a “trial-and-error” approach for discovering how a system should operate. Steps include: • Collecting requirements • Develop/refine prototype • Review prototype with users • (Repeat the previous steps until correct design is created) • Implement and use system
Alternative Development Methods – RAD Rapid Application Development (RAD) A rapid four-step iterative systems development method utilizing: prototyping, computer-based development tools, special management practices, and close user involvement • RAD Phases • The following phases are iterated until the requirements and design are completed and approved • Requirements planning • User design • Construction • Move to the new system
Alternative Development Methods – Object-Oriented Object-Oriented Analysis and Design (OOAD) Similar to SDLA approaches except that it relies on the tight coupling between data and methods and between the conceptual design of a system and its actual implementation. • OOAD Characteristics • The roles of analyst and programmer are combined while thinking about data and the operations to define the relevant objects • The design and implementation of these objects happen quickly and simultaneously • It uses a more integrative prototyping process than does the SDLC
Needs for Alternatives to Internal Systems Building Often it is not feasible to consider building an information system internally. Below are four situations that discourage the idea of internal development: Limited IS Staff Limited IS Skill Sets IS Staff is Overworked Problem IS Performance The IS organization does not have the capability to build the system itself The IS organization does not have personnel with the correct skill sets to build the system Current IS organization staff demands and priorities make it impossible to build a system The IS organization does not have the appropriate performance level to build a system
Alternatives to Internal Development External Acquisition The purchasing of an existing system (hardware, software, databases, network) from an outside vendor such as IBM, EDS, or Accenture Outsourcing Turning over some or all responsibility for an organization’s information systems development and operations to an outside firm End-user Development Capitalizing on the sophistication of current users, this technique allows the system users to develop their system functions using a variety of tools
External Acquisition – Steps to Proceed • Steps in External Acquisition • System identification, selection, and planning (same as internal method) • Systems analysis (same as internal method) • Development of a Request for Proposal (RFP) – a report that is used to tell vendors what the requirements are and how they might be able to meet those requirements (hardware, software, training, etc.) • Proposal evaluation – may include viewing system demonstrations, evaluating the performance of those systems, and examining criteria important to the organization and judging how the proposed systems respond to those criteria • Vendor selection – using a scoring system devised to evaluate the competing proposal and then selecting the proposal that best fits the organization’s needs
Outsourcing – Why Consider? • A firm might outsource some (or all) of its information system service for many reasons: • Cost and quality concerns – current cost and quality of information systems is unacceptable • Problems in IS performance – IS is having trouble meeting acceptable service standards • Supplier pressures – aggressive sales tactics • Simplifying, downsizing, and reengineering – having a need to focus on core processes • Financial factors – turning over IS systems can strengthen a balance sheet • Organizational culture – political or organizational problems that are difficult for IS to overcome • Internal irritants – tension between the IS staff and users
Outsourcing – Types of Arrangements OutsourcingArrangements Not all outsourcing arrangements are the same. They can vary based on the need of the firm and the supplier. • Arrangement Types • Basic – A “cash and carry” relationship in which products and services are purchased on the basis of price and convenience • Preferred – Relationships with a few suppliers where the buyer and supplier set preferences and prices based on mutual benefit (e.g. volume pricing) • Strategic – A relationship where the firm and a vendor are each concerned with, and perhaps have a direct stake in, the success of the other
Outsourcing – Relationship Management • Managing the IS Relationship • Ongoing management of the outsourcing alliance is the single most important aspect of the outsourcing project’s success. The following are recommendations for best management: • A strong CEO and CIO should continually manage the legal and professional relationship with the outsourcer • Clear, realistic performance measurements of the systems and of the outsourcing arrangement (e.g. tangible and intangible costs and benefits) • The interface between the customer and outsourcer should have multiple levels (i.e. links to deal with policy and relationship issues)
End-User Development – Tools • Tools • Many tools can be used by end users for business applications including some of the following: • Personal Computer Tools – tools common to PCs (e.g. spreadsheets) that allow the creation of macros or automated routines by users • Query languages/report generators – tools that utilize SQL to extract information from databases and generate reports in user-specified formats • Graphics generators – tools thatcan extract relevant information from databases and create graphs, charts, etc. • Decision Support and Modeling Tools – tools that support complex decision making utilizing multidimensional models • Application Generators – tools that allow users to specify what is to be done and the application decides how it is to be done and generates the program code
End-User Development – Benefits • End-User Development Benefits • Embracing end-user development can help address some common issues with IS development, including: • Cost of labour – IS managers can substitute hardware and the systems for users to develop systems for IS staff • Long development time – allowing users to develop, shortens development lead times • Slow modification – users can react to their own needs • Work overload – leveraging the talent of the end-user staff, in effect, increases the size of the IS staff
End-User Development – Pitfalls • Pitfalls • End-user development is not a panacea. Common issues arise as its use becomes more prevalent, including: • Lack of Standards – if usersdo not adopt standards used by IS professionals (documentation, error checking, testing procedures), the IS staff can experience problems when supporting users, or troubleshooting data integrity and security problems when enterprise systems are involved • Lack of continuity – as users leave the organization or department, new employees may not understand existing programs and lose productivity learning or developing new applications or “reinventing the wheel” • Appropriate Use of Time – there is debate whether it is appropriate for skilled users and managers to be spending time on systems development