Modern Systems Analysis and Design Chapter 1 The






























- Slides: 30
Modern Systems Analysis and Design Chapter 1 The Systems Development Environment Lecturer: Eman Alsagour
What is systems analysis and design, and why is it important? n Application Software n Computer Software designed to support a specific organizational function or process. Examples include spreadsheets, word processors, and database n Information system n Set of interrelated computer components that collects, processes, stores(usually in a database), and provides as output the information needed to complete business tasks. n An application usually refers to only the computer software involved, whereas an information system may include the software, the database, and even the related manual processes. 2
What is systems analysis and design, and why is it important? n Systems analysis n Those activities that enable a person to understand specify what the new system should accomplish. n Systems design n Those activities that enable a person to define and describe in detail the system that solves the need. 3
Introduction n Information Systems Analysis and Design ¨ Complex organizational process that used to develop and maintain computer-based information systems. ¨ Used by a team of business and systems professionals called Systems Analyst. 4
Introduction (Cont. ) n The main goal of systems analysis and design is to improve organizational systems, typically through applying Application software that can help employees accomplish key business tasks more easily and efficiently. n Systems Analyst Organizational role most responsible for analysis and design of information systems. ¨ The primary role of a systems analyst is to study the problems and needs of an organization in order to determine how people, methods, and information technology can best be combined to bring about improvements in the organization. ¨ n As a systems analyst, you will be at the center of developing this software. 5
Components of a computer-based information system application 6
Introduction (Cont. ) FIGURE 1 -1 An organizational approach to systems analysis and design is driven by methodologies, techniques, and tools 7
Introduction (Cont. ) n n n n Methodologies: a sequence of step-by-step approaches that help develop your final product (information system). Most methodologies incorporate several development techniques, such as direct observations and interviews with users of the current system. Techniques: Are processes that you, as an analyst, will follow to help ensure that your work is well thought-out, complete, and comprehensible to others on your project team. Tools: Are computer programs, such as computer-aided software engineering (CASE) tools, that make it easy to use specific techniques. These three elements work together to form an organizational approach to systems analysis and design. 8
Developing Information Systems n n System Development Methodology is a standard process followed in an organization to conduct all the steps necessary to analyze, design, implement, and maintain information systems. Real life example: Honda car, follows a life cycle: It is created, tested, and introduced to the market. Its sales increase, peak, and decline. Finally, the product is removed from the market and is replaced by something else. 9
Systems Development Life Cycle (SDLC) n The series of steps used to mark the phases of development for an information system. n Phases in SDLC: ¨ ¨ ¨ Planning Analysis Design Implementation Maintenance 10
Standard and Evolutionary Views of SDLC FIGURE 1 -2 The systems development life cycle FIGURE 1 -3 Evolutionary model 11
Systems Development Life Cycle (SDLC) (Cont. ) Planning – an organization’s total information system needs are identified, analyzed, prioritized, and arranged n Analysis – system requirements are studied and structured. n 12
Systems Development Life Cycle (SDLC) (Cont. ) n Design – a description of the recommended solution is converted into logical and then physical system specifications - You must design all aspects of the system from input and output screens to reports, databases, and computer processes. A. Logical design – all functional features of the system chosen for development in analysis are described independently of any computer platform - Theoretically, the system you design could be implemented on any hardware and systems software. 13
Systems Development Life Cycle (SDLC) (Cont. ) B. Physical design – the logical specifications of the system from logical design are transformed into the technology-specific details from which all programming and system construction can be accomplished. - The final product of the design phase is the physical system specifications, presented in a form, such as a diagram or written report, ready to be turned over to programmers and other system builders for construction. 14
Systems Development Life Cycle (SDLC) (Cont. ) Implementation – the information system is coded, tested, installed and supported in the organization n Maintenance – an information system is systematically repaired and improved n 15
16
Traditional Waterfall SDLC One phase begins when another completes, with little backtracking and looping. FIGURE 1 -9 A traditional waterfall SDLC 17
Problems with Waterfall Approach System requirements “locked in” after being determined (can't change) n Limited user involvement (only in requirements phase) n Too much focus on milestone deadlines of SDLC phases to the detriment of sound development practices n 18
Different Approaches to Improving Development n Rapid application development (RAD): ¨Prototyping Computer-aided software engineering (CASE) Tools n Joint application design (JAD) n n Agile n XP Methodologies: 19
Prototyping n Prototyping ¨ Is a form of Rapid Application Development. ¨ Building a scaled-down working version of the ¨ Advantages: n Users are involved in design n Captures requirements in concrete form system Prototyping serves to provide specifications for a real, working system rather than a theoretical one. 20
Computer-Aided Software Engineering (CASE) Tools n n Automated software tools used by systems analysts to develop information systems. Diagramming tools enable graphical representation such as data-flow diagrams and entity-relationship diagrams. Computer displays and report generators help prototype how systems “look and feel”. Example products: Oracle Designer, Rational Rose 21
Computer-Aided Software Engineering (CASE) Tools (Cont. ) n n Analysis tools automatically check for consistency in diagrams, forms, and reports. A central repository provides integrated storage of diagrams, reports, and project management specifications. 22
Computer-Aided Software Engineering (CASE) Tools (Cont. ) n n Documentation generators standardize technical and user documentation. Code generators enable automatic generation of programs and database code directly from design documents, diagrams, forms, and reports. 23
CASE Tools (Cont. ) FIGURE 1 -10 A class diagram from IBM’s Rational Rose (Source: IBM) 24
Joint application design (JAD) n A structured process in which users, managers, and analysts work together for several days in a series of intensive meetings to specify or review system requirements. n By gathering the people directly affected by an IS in one room at the same time to work together to agree on system requirements and design details, time and organizational resources are better managed. 25
Rapid Application Development n n Prototyping, CASE, and JAD are key tools that support rapid application development (RAD). The fundamental principle of any RAD methodology is to delay producing detailed system design documents until after user requirements are clear. RAD involves gaining user acceptance of the interface and developing key system capabilities as quickly as possible. RAD Is Systems development methodology created to radically decrease the time needed to design and implement information systems. 26
Agile Methodologies Motivated by recognition of software development as fluid, unpredictable, and dynamic n Three key principles n ¨ Adaptive rather than predictive ¨ Emphasize people rather than roles ¨ Self-adaptive processes 27
The Agile Methodologies group argues that software development methodologies adapted from engineering generally do not fit with real-world software development. 28
When to use Agile Methodologies n If your project involves: ¨ Unpredictable or dynamic requirements ¨ Responsible and motivated developers ¨ Customers who understand the process and will get involved 29
Summary n 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 prototyping, and Computer Aided Software Engineering (CASE). ü Describe agile methodologies