System Analysis and Design Introduction to System Analysis and Design - Dr. Mahmoud Abu-Arra - Mr. Ahmad Al-Ghoul Learning Objectives Explain systems development tools, including modeling, prototyping, and CASE tools Discuss and distinguish between system development methodologies Explain systems development methods, RAD, JAD Distinguish between structured analysis and object-oriented methodology Discuss how to use appropriate system development method Avicenna System Analysis and Design Introduction to SAD 2 Introduction There are several tools and techniques to build information systems, to choose the appropriate one to build your system, you must study them first and knows their uses. Methodology is an approach, a method or a technique for developing information systems. The methodology defines a method and a way of developing an information system, guiding planners in the desired working method. Avicenna System Analysis and Design Introduction to SAD 3 Systems Development Tools and Techniques Systems analysts must know how to use a variety of techniques such as modeling, prototyping, and computer-aided systems engineering tools to plan, design, and implement information systems. Systems analysts work with these tools in a team environment, where input from users, managers, and IT staff contributes to the system design. Avicenna System Analysis and Design Introduction to SAD 4 Systems Development Tools and Techniques Modeling Modeling produces a graphical representation of a concept or process that system developers can analyze, test, and modify. Modeling Used to describe and simplify an information system: Business model or Requirements model Data model Avicenna Describes the design and protocols of telecommunication links Process model Describes objects, which combine data and processes. Network model Describes the data structure and design. Object model Describes the information that a system must provide. Describes the logic that programmers use to write code modules Modeling techniques, including data flow diagrams and entity relationship diagrams, and unified modeling language diagrams. System Analysis and Design Introduction to SAD 5 Systems Development Tools and Techniques Prototyping Prototyping tests system concepts and provide an opportunity to examine input, output, and user interface before final decisions are made. Early working version of an information system Pros Speeds up the development process significantly Users interact with Prototype very quickly Users can identify needed changes and refine real requirements Avicenna Cons Important decisions might be made too early, before business or IT issues are thoroughly understood Initial Design decisions may be poor System Analysis and Design Introduction to SAD 6 Systems Development Tools and Techniques Computer-Aided Systems Engineering (CASE) Tools Avicenna Also called computer-aided software engineering, is a technique that uses powerful software, called CASE tools, to help systems analysts develop and maintain information systems. Framework for systems development and support a wide variety of design methodologies System Analysis and Design Introduction to SAD 7 Methodologies in the development of information systems Bottom up A formalized approach to implementing the SDLC Avicenna A series of steps and deliverables As the base for the information system, this approach uses the organization’s operational level. The starting point is that, the operational level constitutes the core of the organization. The information requirements of the intermediate and management levels will be supplied by the various processing stages of operational level data. Using this approach, studying the needs and planning of the future system will be prepared initially for the operational level. System Analysis and Design Introduction to SAD 8 Methodologies in the development of information systems Top Down This approach uses the organization’s management level as the base for the information system. The definition of its requirements and the system goals are dictated by the organization’s management. Avicenna System Analysis and Design Introduction to SAD 9 Methodologies in the development of information systems Integrated Approach Avicenna This approach combines both methods, with the aim of benefiting from both the Bottom Up and the Top Down approaches. With this approach, the initial planning is carried out by the Top Down method The planning of the systems themselves (subsystems) is performed using the Bottom Up approach in order to ensure proper planning, based on operational level requirements. System Analysis and Design Introduction to SAD 10 Methodologies in the development of information systems Structured Analysis “Structured analysis is a set of techniques and graphical tools that allow the analyst to develop a new kind of system specification that are easily understandable to the user. Analysts work primarily with their wits, pencil and paper.” [Kendall 1996] Uses a set of process models to describe a system graphically The availability of CASE tools in the 1990s enabled analysts to develop and modify the graphical SASD models. [1] Avicenna System Analysis and Design Introduction to SAD 11 Methodologies in the development of information systems Object-oriented (O-O) analysis Avicenna O-O analysis combines data & processes into things called objects O-O analysis uses object models to represent data and behavior, and to show how objects affect other objects By describing the objects (data) and methods (processes) needed to support business operation, a system developer can design reusable components that allow faster system implementation and decreased development cost System Analysis and Design Introduction to SAD 12 Methodologies in the development of information systems Object-oriented (O-O) analysis Avicenna objects combine data and processes. Object are the end product of object-oriented analysis. Object is a member of a class Class is a collection of similar objects Objects possess characteristics called properties Properties inherits from the object class or possesses on its own In O-O design, built-in processes called methods can change an object’s properties Object can send information to anther object by using a message A message requests specific behavior or information from another object System Analysis and Design Introduction to SAD 13 Methodologies in the development of information systems Object-oriented (O-O) analysis [1] The PERSON class includes INSTRUCTOR and STUDENT objects, which have their own properties and inherited properties. Avicenna System Analysis and Design Introduction to SAD 14 Methodologies in the development of information systems Joint Application Development and Rapid Application Development Avicenna JAD – The basic idea behind JAD is to bring structure to the requirements determination phase of analysis and to the reviews that occur as a part of design. Team based fact finding Users, Managers and Analysts work together for several days System requirements are reviewed Structured meetings System Analysis and Design Introduction to SAD 15 Methodologies in the development of information systems RAD – created to radically decrease the time needed to design and implement information systems. RAD relies on extensive user involvement. Incorporate special techniques and tools: Avicenna CASE tools JAD sessions Fourth generation/visualization programming languages Code generators System Analysis and Design Introduction to SAD 16 Methodologies in the development of information systems There are many other methods A systems analyst should understand the alternative methodologies and their individual strengths and weaknesses. how you will choose the suitable method? Selecting a methodology is not simple, as no one methodology is always best. Many organizations have their own standards. We will discuss this topic in more detail in the analysis chapter Avicenna System Analysis and Design Introduction to SAD 17 Sequence Summary In this Sequence we have Avicenna Discussed the various systems development methods, tools, and techniques Distinguished between structured analysis and object-oriented methodology Discussed how to use appropriate system development method System Analysis and Design Introduction to SAD 18 Reference [1] System Analysis and Design, Sixth Edition Authors: Gary B. Shelly, Thomas J. Cashman and Harry J. Rosenblatt , Publisher: SHELLY CASHMAN SEWIES. [2] Modern Systems Analysis and Design Third Edition Authors: Jeffrey A. Hoffer , Joey F. George, Joseph S. Valacich Publisher: prentice hall [3] System Analysis and Design, 3rd Edition Authors: Dennis, Wixom, & Roth Publisher: John Wiley & sons Avicenna System Analysis and Design Introduction to SAD 19