Prince Sultan College for Women Course Code : IS 225 Course Name : Systems Analysis & Design- I Course Instructor : Omarine Rafie Credit Hours : 4 Text Book : Systems Analysis & Design Author(s) : Jeffery Hoffer, Joseph Valich 5th Edition Reference Book : 1. Systems Analysis & Design By Jeffery Whitten
Chapter 1 The Systems Development Environment 1.1
Learning Objectives • Define information systems analysis and design • Describe three types of information systems: • Transaction Processing Systems (TPS) • Management Information Systems (MIS) • Decision Support Systems (DSS) 1.2
Learning Objectives • Describe the information systems development life cycle (SDLC) • Water fall Model • Discuss Rapid Application Development (RAD) and its constituents parts • Prototyping • JAD • CASE 1.3
Learning Objectives • Describe Object Oriented Analysis and Rational Unified Process (RUP) • Describe the Agile Methodologies and eXtreme Programming 1.4
Information System-Introduction • An Information system ( IS) is a collection of interrelated components (hardware, software, and telecommunications networks) that people build and use to collect, process, store and provide/distribute as output useful information needed to complete a business task in organizations. • Examples: • Payroll System • Sales Management System
Information System-Introduction Why do we design Information Systems? Information systems are built and rebuilt • To provide access to informationanywhere and anytime. • for organizational benefitsby adding values during the process of creating, producing and supporting the organization’s product and services. • to improve employee efficiencyby applying software solutions to key business tasks • Understand what the business requires from the Information System. In other words thorough “Systems Analysis & Design”
What is Systems Analysis & Design? • Systems Analysis means understanding and specifying in detail what the information system should accomplish. • Systems Design means how to accomplish what is needed by the information system, by specifying in details how many components of the information system should be physically implemented.
What is Systems Analysis & Design? • Information Systems Analysis and Design • Complex, challenging and stimulating organizational process used by a team of business and system professionals, to develop and maintain computer-based information systems that helps in performing business functions efficiently. 1.5
What is the outcome of SAD ? • The total Information System includes the hardware, systems software on which the application software runs, documentation and training materials, the specific job roles associated with the overall system and the end users. • An important result of Systems A&D is Application Software, i.e. software designed to support a specific organizational function or process, such as Inventory management, payroll etc.
Who is Systems Analyst? • Systems Analyst performs analysis and design based upon: • Understanding of organization’s objectives, structure and processes. • Studies the problems and needs of an organization • Knowledge of how to exploit information technology for advantage • Determine how people, methods and IT can be best combined to bring about improvements in the organization. 1.8
Types of Information Systems • Transaction Processing Systems • Management Information Systems • Decision Support Systems 1.12
Types of Information Systems • Transaction Processing Systems (OLTPS) • Automate handling of data about business activities (transactions- discrete events) • the routine day to day business processes • Data about each transaction are captured, transaction are verified and accepted or rejected, and validated transaction are stored for later aggregation. • A transaction occurs each time a sale is made, supplies are ordered or interest payment is made 1.13
Types of Information Systems • Transaction Processing Systems (TPS) -contd. • The A&D of a TPS means • Focusing on the firm’s current procedures • The goal of TPS development is to • improve transaction processing by speeding it up using fewer people, • improve efficiency and accuracy, • integrate it with other organizational information systems, • provide information not previously available. 1.14
Types of Information Systems • Examples of TPS • Business to consumer e commerce systems • Point of Sale System • Online Registration System • Online Airline Reservation System • ATM System • Car Rental System • Library Information System • Business to Business e commerce systems
Types of Information Systems • Management Information Systems (MIS) • Converts raw data available through a transaction processing system into meaningful aggregated form (report) that managers need for planning and controlling business. • Examples of MIS MIS used by executives often include external data on the competitive environment – • news about competitors • Stock market reports • Economic forecast • Information from strategic plans.
Types of Information Systems • Decision Support Systems (DSS) • Designed to help organizational decision makers make decisions. • Allows a user to explore the impact of available options or decisions, and this is known as “what if” analysis, because the user asks the system to answer. • Provides interactive surroundings for decision making in which data can be quickly manipulated. • DSS uses both historical data as well as judgment about alternative histories or possible futures. • A DSS can help in exploring data at a high level of aggregation and selectively drill down into specific areas where more detailed understanding of business is required.
Types of Information Systems • The A&D for a DSS concentrates on • Database (data Orientation) • Model base ( mathematical rules defining interrelationships among different data, used to predict future data or to find best solutions to decisions problems. • User dialogue – decision maker should feel easy to use the system. • The A&D for a DSS is to document the mathematical rules with the intention of define the relationships among different data or to find the best solutions to decision problems.
Approaches to Systems Development • Two approaches to system development • Traditional approach • Object oriented approach
The Traditional Approach • Also called Structured System Development • Three techniques are used • Structured Analysis- What the system needs to do (process requirements), what data the system needs to store (data requirements), what inputs and outputs are needed, and how the functions work together as a whole to accomplish tasks before they designed the programs.
The Traditional Approach • Structured Design –As each function performed by the system might be made up of dozens of separate programs, it provides guidelines of deciding what the set of programs should be, what each program should accomplish and how the programs should be organized into a hierarchy. • Structured programming- complex programs are divided into a hierarchy of program modules. One module at the top of the hierarchy controls program execution by calling lower modules as required.
Object Oriented Approach • It views an information system as a collection of interacting objects that work together to accomplish tasks. • Object Oriented Analysis (OOA) defines all of the types of objects that do the work in the system and shows what user interactions called use cases are required to complete tasks. • Object oriented design (OOD) defines all of the additional types of objects necessary to communicate with people and devices in the system, shows how the objects interact to complete tasks and refines the definition of each type of object so it can be implemented with a specific language or environment. • Object Oriented Programming (OOP) consists of writing statements in a programming language to define what each type of object does.
Systems Development Life Cycle • System Development methodology- • Standard set of steps to develop and support IS. • Development of IS follows a life cycle. During the life of an IS, it is first conceived as an idea, then it is designed, built and deployed during a development project and finally it is put into production and used to support the business. • SDLC – common methodology for system development • SDLC is used to describe the life of an information system from conception to retirement.
Systems Development Life Cycle • Life Cycle – a circular process • Life cycle appear to be sequentially ordered set of phases, but it is not. • Some activities in one phase can be completed in parallel with some activities of another phase. • Sometimes life cycle is iterative- phases are repeated until accepted.
Systems Development Life Cycle • Series of steps used to manage the phases of development for an information system • Consists of five phases: • Planning • Analysis • Design • Implementation • Maintenance • Each phase has a specific outcome and deliverable 1.25
Systems Development Life Cycle Planning Ch 16 Ch 4-5 Maintenance Analysis Ch 6-9 Implementation Design Ch 15 Ch 10-14
Systems Development Life Cycle • Planning- Ist Phase • Project Identification and Selection • Project Initiation and Planning
Systems Development Life Cycle • Project Identification and Selection • Examine Information needs. • Identify the project • Prioritization and translation of needs • Development of Schedule for different projects • Selection of a project. • Project Initiation and Planning Two Activities • Formal preliminary investigation of the problem at hand • Determining the scope of the proposed system known as Feasibility Study • Producing a specific plan (Baseline project plan) for the proposed system if it has been approved, specifying the time and resources needed for its execution. • Outcome • Final presentation of the business case 1.28
Systems Development Life Cycle • Analysis - 2nd Phase • To understand and document the business needs and the processing requirements of the new system. • A discovery and understanding process. • Activities • Gather information • Define system requirements • Build prototypes for discovery of requirements • Prioritize requirements • Generate and evaluate alternatives matching the requirements • Review recommendations with management. • Outcome • Once the recommendation is accepted, the analyst makes plans to acquire hardware and software necessary to build or operate the system as proposed 1.29
Systems Development Life Cycle • Design- 3rd phase Used to design the solution system, based on the requirements defined and decisions made during analysis. High level design consisting of developing an architectural structure for the software components, database design, user interfaces and operating environment. Low level design entails developing the detailed algorithms and data structures required for software development. 1.30
Systems Development Life Cycle • The description of recommended alternative solution is converted into Logical design Physical design • Logical design focuses on “what” rather than the “how”. • Logical design process is independent of any specific hardware or software platform – logical design. • Logical design concentrates on the business aspects of the system. • Logical design is oriented towards high level of design
Physical design concentrates on the design of the various parts of the system to perform the physical operations necessary to facilitate data capture, processing and information output. Physical design includes -Hardware selection, determination of software ( custom/off- the-shelf applications) -Design of user interface -Data capture devices -Data input and report formats -The media to be used for input and output -Construction of database structure -Network communication, data security etc Outcome:Physical system specifications in a form ready to be turned over to the programmers or other system builders for construction e.g. programming language, database, hardware platform Systems Development Life Cycle
Systems Development Life Cycle • Implementation-4th phase • Implementation • Coding- programmer write the program for the system • Testing • Operation • Hardware and software installation • User Training • Documentation
Systems Development Life Cycle • Coding • Programs can be written in Java, Visual Basic etc. • Testing • Individual testing of the programs • System or Integration testing
Systems Development Life Cycle • Operation (System conversion) : It is the process abandoning the current system (automated or manual) and installing the new automated information system. • System conversion can be done in at least three ways :1. Direct changeover : Old system is discontinued on one day and the new is used on the next.2. Parallel running : Old and new systems are used at same time.3. Phased changeover : Part of the new system are implemented in phases.
Systems Development Life Cycle • Installation • Application software is installed on existing or new hardware. • The new system becomes a part of the daily activities of the organization. • Training • Users are trained. • Occurs from inception of a project.
Systems Development Life Cycle • Documentation : Many types of documentation must be produced for a software system • System documentation: Software Engineers develop system documentation that details the inner working of the system to ease future maintenance.
Systems Development Life Cycle • User Documentation : It is user–related documentation which contains the following User and reference guides, User training and tutorials Installation procedures and troubleshooting suggestions. Initial user support • In addition to documentation, users may also need training program and on going support to use a new system.
Systems Development Life Cycle • Maintenance- 5th Phase Maintenance means system is changed to reflect changing conditions • Corrective Maintenance :Making changes to an information system to repair flaws in the design, coding or implementation. • Adaptive Maintenance : Making changes to an information system to accommodate changing business needs .
Systems Development Life Cycle • Perfective Maintenance :Making enhancements to improve processing performance or interface usability. • Preventive Maintenance:Making changes to a system to reduce the chance of future system failure.
Methodologies, Models, Tools And Techniques • Systems Analyst have a variety of aids at their disposal to help them complete activities and tasks in the SDLC. • Methodology • Models • Tools • Techniques
Methodologies, Models, Tools And Techniques • Systems Analyst have a variety of aids at their disposal to help them complete activities and tasks in the SDLC. • Methodology : provides guidelines that are used to complete activities within each phase of the SDLC. Or instructions about how to use models, tools and techniques in every phase. • Models: is a graphical representation of an important aspect of the real world. Models represents inputs, outputs, processes, data objects, object interactions, locations, networks, devices etc. • Tools: Software support that helps create models or other components required in the project • Techniques: is a collection of guidelines that help an analyst complete a system development activity or task.
Methodologies, Models, Tools And Techniques • Models: • Flow Chart • Data Flow Diagrams • Entity-Relationship Diagram • Structure Chart • Use Case Diagram • Class Diagram • Sequence Diagrams etc.
Methodologies, Models, Tools And Techniques • Tools: • Word processor • Database management application • Project management application • Computer Aided System Engineering tools etc.
Methodologies, Models, Tools And Techniques • Techniques: • User interviewing techniques • Joint Application Development (JAD) • Data modeling technique • Strategic planning technique • Structure design technique • Software testing technique
The Traditional Waterfall SDLC • This model is known as ‘water fall model’ because, the output of one phase is the input of the next phase. • It is a traditional methodology used to analyze, design, implement and maintain information system. • The flow of the project begins in the planning phase, just like a stream that runs off a cliff.
The Traditional Waterfall SDLC Planning Analysis Design Implementation Maintenance
The Traditional Waterfall SDLC • Strengths: • The water fall cycle is a very good approach to follow when the requirements for the information system are highly structured and straightforward and at the same time they are known in the early phases only. e.g. payroll, or inventory system. • Tackles complexity in an orderly way, works well for well understood projects That is why, waterfall model is mostly used for large systems engineering projects.
The Traditional Waterfall SDLC Drawbacks • This model requires that all the requirements should be specified in advance. It is difficult for end-users to anticipate how they will use new information systems to support their everyday work. If these systems are large and complex, it is probably impossible to make this assessment before the system is built and put into use. In short, the requirements are not clear to the end-users in the beginning.
The Traditional Waterfall SDLC Drawbacks • It was not possible to implement changes in the requirement specifications all the time during system development. The analyst freeze requirements in the early phase, even though those requirements might get changed. With the result it is very expensive to make changes in a system once it was developed. • The role of users are narrowly defined. Limited User involvement throughout the system development.