Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 1 The Systems Development Environment

Similar presentations


Presentation on theme: "Chapter 1 The Systems Development Environment"— Presentation transcript:

1 Chapter 1 The Systems Development Environment
Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 1 The Systems Development Environment

2 Learning Objectives Define information systems analysis and design.
Describe the different types of information systems. Describe the information Systems Development Life Cycle (SDLC). Explain Rapid Application Development (RAD), prototyping, Joint Application Development (JAD), and Computer Aided Software Engineering (CASE). Describe agile methodologies and eXtreme programming. Explain Object Oriented Analysis and Design and the Rational Unified Process (RUP).

3 Introduction Information Systems Analysis and Design Goal:
Complex organizational process whereby computer-based information systems are developed and maintained Goal: To develop Applications Software Stakeholders: Users Systems Analysts

4 Introduction Various software engineering processes have been developed to assist in analysis and design; these include: Methodologies Comprehensive, multi-step approaches to systems development Techniques Processes that are followed to ensure that work is well thought-out, complete and comprehensible to others on the project team Tools Computer programs to assist in application of techniques to the analysis and design process

5 A Modern Approach to Systems Analysis and Design
1950s: focus on efficient automation of existing processes 1960s: advent of 3GL, faster and more reliable computers 1970s: system development becomes more like an engineering discipline 1980s: major breakthrough with 4GL, CASE tools, object oriented methods 1990s: focus on system integration, GUI applications, client/server platforms, Internet The new century: Web application development, wireless PDAs, component-based applications

6 Types of Information Systems you might work on
Transaction Processing Systems (TPS) Automate handling of data about business activities (transactions) Process orientation Management Information Systems (MIS) Converts raw data from transaction processing system into meaningful form Data orientation Decision Support Systems (DSS) Designed to help decision makers Provides interactive environment for decision making Involves data warehouses, executive information systems (EIS) Database, model base, user dialogue Each of these systems could be implemented in either a traditional client/server or net-enabled environment

7 Types of Information Systems and Systems Development Methods
Each of these systems could be implemented in either a traditional client/server or net-enabled environment

8 What’s important in application development?
Three key components of an IS application are… The Data The way Data Flows The Processing Logic to manipulate data and produce information for decision making

9 Systems Development Life Cycle (SDLC)
Traditional methodology for developing, maintaining, and replacing information systems Phases in SDLC include… Planning Analysis Design Implementation Maintenance

10 Standard and Evolutionary Views of SDLC

11 SDLC Planning Phase Identify, analyze, prioritize, and arrange IS needs

12 SDLC Analysis Phase Study and structure system requirements

13 SDLC Design Phase Logical design: functional features described independently of computer platform Convert recommended solution to system specifications Physical design: logical specifications transformed to technology-specific details

14 SDLC Implementation Phase
Code, test, install, and support the information system

15 SDLC Maintenance Phase
Systematically repair and improve the information system

16

17 The Heart of the Systems Development Process
Current practice combines analysis, design, and implementation into a single iterative and parallel process of activities

18 Traditional Waterfall SDLC
One phase begins when another completes, little backtracking and looping

19 What are the problems with the Waterfall Approach
System requirements “locked in” after being determined (can't change) Limited user involvement (only in requirements phase) Too much focus on milestone deadlines of SDLC phases to the detriment of sound development practices

20 Alternatives to Traditional Waterfall SDLC
Prototyping CASE tools Joint Application Design (JAD) Rapid Application Development (RAD) Agile Methodologies eXtreme Programming

21 Prototyping Iterative development process:
Requirements quickly converted to a working system System is continually revised Close collaboration between users and analysts

22 CASE Tools Computer-Aided Software Engineering
Software tools providing automated support for systems development Project dictionary/workbook: system description and specifications Diagramming tools Example products: Oracle Designer, Rational Rose

23 Joint Application Design (JAD)
Structured process involving users, analysts, and managers Several-day intensive workgroup sessions Purpose: to specify or review system requirements

24 Rapid Application Development (RAD)
Methodology to decrease design and implementation time Involves: prototyping, JAD, CASE tools, and code generators

25 Agile Methodologies Motivated by recognition of software development as fluid, unpredictable, and dynamic Three key principles Adaptive rather than predictive Emphasize people rather than roles Self-adaptive processes

26 eXtreme Programming Short, incremental development cycles
Automated tests Two-person programming teams Coding and testing operate together Advantages: Communication between developers High level of productivity High-quality code

27 Object-Oriented Analysis and Design
Based on objects rather than data or processes Object: a structure encapsulating attributes and behaviors of a real-world entity Object class: a logical grouping of objects sharing the same attributes and behaviors Inheritance: hierarchical arrangement of classes enable subclasses to inherit properties of superclasses

28 Organizational Responsibilities in Systems Development
Skills required to be a Successful Systems Analyst Analytical Understanding of organizations Problem solving skills System thinking Ability to see organizations and information systems as systems Technical Understanding of potential and limitations of technology Management Ability to manage projects, resources, risk and change Interpersonal Effective written and oral communication skills

29 Organizational Responsibilities in Systems Development
Programmers Convert specifications into instructions that the computer understands Write documentation and testing programs Business Managers Have power to fund projects and allocate resources Set general requirements and constraints for projects Project Manager Supervises the team of IS professionals and users who are designing the IS Database Administrator Involved in design, development and maintenance of databases Network and telecommunications experts Develop systems involving data and/or voice communications Human Factors Specialists Involved in training users and writing documentation Internal Auditors Ensure that required controls are built into the system

30 Establishing Objectives for Systems Development
Systems development objectives should be supportive of, and aligned with, organizational goals. There are four kinds of objectives that should be considered: Performance objectives. Cost objectives. Control objectives. Complexity objectives.

31 In conclusion, consider the following Systems Development Laws:
Brook’s Law: Adding manpower to a late software project makes it later! (Frederick P Brooks Jr.) Hofstadter's Law: It always takes longer than you think, even when you take Hofstadter's Law into account. (Douglas Hofstadter)

32 Rational Unified Process (RUP) involves an iterative, incremental approach to systems development

33 Summary In this chapter you learned how to:
Define information systems analysis and design. Describe the different types of information systems. Describe the information Systems Development Life Cycle (SDLC). Explain Rapid Application Development (RAD), prototyping, Joint Application Development (JAD), and Computer Aided Software Engineering (CASE). Describe agile methodologies and eXtreme programming. Explain Object Oriented Analysis and Design and the Rational Unified Process (RUP).


Download ppt "Chapter 1 The Systems Development Environment"

Similar presentations


Ads by Google