ch12

Views:
 
Category: Entertainment
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

Chapter 12:

Chapter 12 APPROACHES TO SYSTEMS-BUILDING

Approaches to Systems-Building, Challenges :

Approaches to Systems-Building, Challenges Controlling information systems development outside the information system department. Enforcing a standard methodology

The life cycle methodology for system development (Figure 12-1):

The life cycle methodology for system development (Figure 12-1)

The Traditional System Lifecycle:

The Traditional System Lifecycle Systems Lifecycle: A traditional methodology for developing an information system that partitions the system development process into formal stages that must be completed sequentially with a very formal division of labor between end users and information system specialists. Project Definition: A stage in the systems lifecycle that determines whether the organization has a problem and whether the problem can be solved by launching a system project. Systems Study: A stage in the systems lifecycle that analyzes the problems of existing systems, defines the objectives to be attained by a solution, and evaluates various solution alternatives.

The Traditional System Lifecycle:

The Traditional System Lifecycle Design: A stage in the systems lifecycle that produces the logical and physical design specifications for the system solution. Programming: A stage in the systems lifecycle that translates the design specifications produced during the design stage into software program code. Installation: A stage in the systems lifecycle consisting of testing training, and conversion; the final steps required to put a system into operation. Post-implementation: The final stage of the systems lifecycle in which the system is used and evaluated while in production and is modified to make improvements or meet new requirements.

Limitations of SDLC:

Limitations of SDLC Costly and time consuming Inflexible and discourage change Ill-suited to decision oriented applications

Alternative System-Building Approaches:

Alternative System-Building Approaches Prototyping: The process of building an experimental system quickly and inexpensively for demonstration and evaluation Application software packages: A set of prewritten, precoded application software programs that are commercially available for sale or lease End-user development: The development of information systems by end users with little or no formal assistance from technical specialists. Outsourcing: The practice of contracting computer center operations, telecommunication networks, or applications development to external vendors

Slide 8:

Prototype: The preliminary working version of an information system for demonstration and evaluation purposes Prototyping: The process of building an experimental system quickly and inexpensively for demonstration and evaluation End-user interface: The part of information system through which the end user interacts with the system Advantages of prototyping Uncertainty about requirements or design solutions Valuable for designing end user interface Technical features can be tested User involvement Disadvantages of prototyping Not for all applications Rapid prototyping may gloss over essential steps in system development Prototype may be used as is instead of redeveloping it

The Prototyping Process :

The Prototyping Process

Application Software Packages:

Application Software Packages A set of prewritten, precoded application software programs that are commercially available for sale or lease Fast, less costly, easy to install and test disadvantages Low level of sophistication Customization: Modifications to most organizational needs may be costly, in general it is exponential Initial price may be deceptive

Selecting Software Packages:

Selecting Software Packages Request for Proposal: A detailed list of questions submitted to vendors of software to determine how well the vendor’s product can meet the organization’s specific requirements Installation effort Maintenance Documentation Vendor quality Cost Functionality Flexibility User friendliness Hardware / software requirements Database characteristics

End User Development (Fig. 12-5):

End User Development (Fig. 12-5)

End User Development:

End User Development End-user development: The development of information systems by end users with little or no formal assistance from technical specialists. Information center: A special facility to provide training and support for end user development 4GL tools: enhanced productivity, can not replace conventional tools, non procedural, may not be appropriate for detailed logic. Advantages Improved required determination User involvement & satisfaction Reduced application backlog Disadvantages Insufficient reviews Lack of proper quality assurance Uncontrolled data Proliferation of private IS applications

Slide 14:

Outsourcing: Contracting computer center operations, telecommunications, networks or application development to external vendors. Solution Center: Facility operated by a commercial information technology vendor which provides clients with repeatable or reusable processes, models, and architectures for solving common information system problems Advantages of Outsourcing Economies of scale Service quality Predictability Flexibility Making fixed costs variable Freeing up human resources for other projects Freeing up financial capitals Disadvantages of Outs. Loss of control Vulnerability of strategic information Dependency

When to Use Outsourcing:

When to Use Outsourcing Limited competitive advantage from IS Uninterrupted service is not important Technical know-how for future innovation is not essential Existing IS is inferior, limited or ineffective

Rewards and penalties of outsourcing:

Rewards and penalties of outsourcing

System Building Methodologies & Tools:

System Building Methodologies & Tools Development Methodology: A collection of methods, one or more for every activity within every phase of a development project Structured methodologies Flowcharting Object oriented software development Computer-aided software engineering Software reengineering Decision tables and Decision trees Pseudocode

Slide 18:

Structured methodologies have been used to document, analyze, and design information systems since the 1970s and remain an important methodological approach Structured analysis: A method for defining system inputs, processes, and outputs and for partitioning systems into subsystems or modules that show a logical graphic model of information flow. Structured Design: Software design discipline, encompassing a set of design rules and techniques for designing a system from the top down in a hierarchical fashion. Data Flow Diagram (DFD): A primary tool in structured analysis that graphically illustrates the system’s components processes and the flow of data between them.

Data Flow Diagram (DFD):

Data Flow Diagram (DFD) External entity Process Data store Dataflow

Level 0 Data Flow Diagram:

Level 0 Data Flow Diagram

Data Flow Diagram for mail-in university registration system:

Data Flow Diagram for mail-in university registration system

Level 2:

Level 2 Process Logic to Prepare Invoice Compute total credit Compute total fee Add student fee

High Level Structure (Hierarchy) Chart:

High Level Structure (Hierarchy) Chart Structured Chart: Systems documentation showing each level of design, the relationship among the levels, and the overall place in the design structure; can document one program, one system, or part o one program.

Structured Programming:

Structured Programming Structured programming: A discipline for organizing and coding programs that simplifies the control paths so that the programs can be easily understood and modified. Uses the basic control structures and modules that have only one entry point and one exit point. Module: A logical unit of a program that performs one or several functions. Sequence construct: The sequential single steps or actions in the logic of a program that do not depend on the existence of any condition. Selection construct: The logic pattern in programming where a stated condition determines which of two or more actions can be taken. System flowchart: A graphic design tool that depicts the physical media and sequence of processing steps used in an entire information system

System Flow Chart for a Payroll System (Figure 12-10):

System Flow Chart for a Payroll System (Figure 12-10)

Basic Control Constructs (Figure 12-8):

Basic Control Constructs (Figure 12-8)

Object Oriented Software Development:

Object Oriented Software Development An approach to software development that deemphasizes procedures and shifts the focus from modeling business processes and data to combining data and procedures to create objects Reusable components Ease of maintainability

Slide 28:

Joint application design: Programmers, IS professionals, and users participate for interactive design of systems.

Slide 29:

Rapid application development (RAD): Process for developing systems in a very short time period by using prototyping, fourth-generation tools, and close teamwork among users and systems specialists. Software reengineering: A methodology that addresses the problem of aging software by savaging and upgrading it so that the users can avoid a long and expensive replacement project. Reverse engineering: The process of converting existing programs, files, and database descriptions into corresponding design-level components that can then be used to create new applications. Forward engineering: The final step in reengineering when the revised specifications are used to generate new, structured program code for a structured and maintainable system.

Decision Table for monthly money market account statements:

Decision Table for monthly money market account statements HEADER RULES Send Monthly Statement 1 2 3 CONDITION STUB 1. Balance >=$500 Y N N CONDITION ENTRIES 2. Account activity during past month - Y N 3. Send monthly statement only X X ACTION STATEMENTS 4. Send monthly statement with warning X ACTION ENTRIES

Decision Table for monthly money market account statements:

1 2 3 1 Balance 0-500 >500 0-500 2 Account action Y Y N 3 Send statement X X 4 Statement+warning X Decision Table for monthly money market account statements

Decision Tree for monthly market account statements:

Decision Tree for monthly market account statements

Pseudo Code:

Pseudo Code for each account do : if balance >= 500 then stat else if there is account activity send stat else send statment + warning