22
System Analysis System Analysis & Design & Design - Mr. Ahmad Al-Ghoul - Mr. Ahmad Al-Ghoul System Analysis and System Analysis and Design Design

System Analysis & Design System Analysis & Design - Mr. Ahmad Al-Ghoul System Analysis and Design

Embed Size (px)

Citation preview

System AnalysisSystem Analysis& Design& Design

- Mr. Ahmad Al-Ghoul- Mr. Ahmad Al-Ghoul

System Analysis and System Analysis and DesignDesign

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

22

learning Objectiveslearning Objectives

Explain Explain joint application joint application development (JAD) development (JAD)

Explain Explain Prototyping-based Prototyping-based methodologiesmethodologies

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

33

introductionintroduction

JAD (Joint Application Development) is a methodology that JAD (Joint Application Development) is a methodology that involves the client or end user in the design and involves the client or end user in the design and development of an application, through a succession of development of an application, through a succession of collaborative workshops called JAD sessions. System collaborative workshops called JAD sessions. System development personal at IBM developed JAD in the late development personal at IBM developed JAD in the late 1970s and began teaching the approach through 1970s and began teaching the approach through workshops in 1980workshops in 1980

As systems grew in size and complexity, it become As systems grew in size and complexity, it become impossible to make it one-shot pass through stages. impossible to make it one-shot pass through stages. Developers were always looping back and reading things to Developers were always looping back and reading things to come up with a system that satisfied the users. In response come up with a system that satisfied the users. In response to this limitation, system developers apply a technique to this limitation, system developers apply a technique called prototype.called prototype.

Prototype provides the developers and future users with an Prototype provides the developers and future users with an idea of how the system in its completed form will functionidea of how the system in its completed form will function

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

44

Systems Development Systems Development MethodologiesMethodologies

Joint Application Development (JAD)Joint Application Development (JAD) Joint Application Development (JAD) can replace a series of Joint Application Development (JAD) can replace a series of

interviews with the user communityinterviews with the user community JAD is a technique that allows the analyst to accomplish JAD is a technique that allows the analyst to accomplish

requirements analysis and design the user interface with the requirements analysis and design the user interface with the users in a group settingusers in a group setting

Brings together key users, managers and systems analystsBrings together key users, managers and systems analysts Purpose: collect system requirements simultaneously from key Purpose: collect system requirements simultaneously from key

peoplepeople Objective is to analyze the existing system, obtain user input Objective is to analyze the existing system, obtain user input

and expectations, and document user requirements for the and expectations, and document user requirements for the new systemnew system

End ResultEnd Result Documentation detailing existing systemDocumentation detailing existing system Features of proposed systemFeatures of proposed system

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

55

Systems Development Systems Development MethodologiesMethodologies

JAD Participants and RolesJAD Participants and Roles During the development process, the IT staff would collect During the development process, the IT staff would collect

information from users, define system requirements, and information from users, define system requirements, and construct the new systemconstruct the new system

At various stages of the process, the IT staff might ask users At various stages of the process, the IT staff might ask users to review the design, offer comments, and submit changesto review the design, offer comments, and submit changes

IT professionals now recognize that successful systems IT professionals now recognize that successful systems must be user oriented, and user need to be involved, must be user oriented, and user need to be involved, formally or informally, at every stage of system formally or informally, at every stage of system developmentdevelopment

One popular strategy for user involvement is a JAD team One popular strategy for user involvement is a JAD team approach, which involves a task force of users, managers, approach, which involves a task force of users, managers, and IT professionals that work together to gather and IT professionals that work together to gather information, discuss business need, and define the new information, discuss business need, and define the new system requirementssystem requirements

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

66

Systems Development Systems Development MethodologiesMethodologies

JAD Participants and RolesJAD Participants and Roles A (JAD) team usually meets over a period of A (JAD) team usually meets over a period of

days or weeks in special conference room or at days or weeks in special conference room or at an off-site locationan off-site location

JAD participants should be insulated from the JAD participants should be insulated from the distraction of day-to-day operationsdistraction of day-to-day operations

Objective is to analyze the existing system, Objective is to analyze the existing system, obtain user input and expectations, and obtain user input and expectations, and document user requirements for the new document user requirements for the new systemsystem

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

77

Systems Development Systems Development MethodologiesMethodologies

JAD participants and rolesJAD participants and roles Project leaderProject leader Top managementTop management ManagersManagers UsersUsers Systems analysts and other IT staff Systems analysts and other IT staff

membersmembers recorderrecorder

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

88

Systems Development Systems Development MethodologiesMethodologies

JAD participants and rolesJAD participants and roles Project leaderProject leader

Project leader develop an agenda, acts as Project leader develop an agenda, acts as facilitators, and leads the JAD sessionfacilitators, and leads the JAD session

Top managementTop management Provide enterprise level authorization and Provide enterprise level authorization and

support for the projectsupport for the project managersmanagers

Provide department level support for the Provide department level support for the project and understanding of how the project project and understanding of how the project must support business functions and must support business functions and requirementsrequirements

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

99

Systems Development Systems Development MethodologiesMethodologies

JAD participants and rolesJAD participants and roles UsersUsers

Provide operational level input on current operations, Provide operational level input on current operations, desired changes, input and output requirements, user desired changes, input and output requirements, user interface issues, and how the project will support interface issues, and how the project will support day-to-day tasksday-to-day tasks

Systems analysts and other IT staff membersSystems analysts and other IT staff members Provide technical assistance and resources for JAD Provide technical assistance and resources for JAD

team members on issues such as security, backup, team members on issues such as security, backup, hardware, software, and network capabilityhardware, software, and network capability

RecorderRecorder Documents results of JAD sessions and work with Documents results of JAD sessions and work with

system analysts to build system models and develop system analysts to build system models and develop CASE tool documentationCASE tool documentation

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1010

Systems Development Systems Development MethodologiesMethodologies

Preparing for the JAD SessionsPreparing for the JAD Sessions Time commitment – ½ day to several Time commitment – ½ day to several

weeksweeks Strong management support is needed Strong management support is needed

to release key participants from their to release key participants from their usual responsibilitiesusual responsibilities

Careful planning is essentialCareful planning is essential

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1111

Systems Development MethodologiesSystems Development Methodologies

Typical JAD session agendaTypical JAD session agenda

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1212

Systems Development Systems Development MethodologiesMethodologies

JAD Advantages and DisadvantagesJAD Advantages and Disadvantages Advantages Advantages

Allows key users to participate effectively Allows key users to participate effectively When properly used, JAD can result in a more When properly used, JAD can result in a more

accurate statement of system requirements, a better accurate statement of system requirements, a better understanding of common goals, and a stronger understanding of common goals, and a stronger commitment to the success of the new systemcommitment to the success of the new system

DisadvantagesDisadvantages More expensive and can be cumbersome if the group More expensive and can be cumbersome if the group

is too large relative to the size of the projectis too large relative to the size of the project

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1313

Systems Development Systems Development MethodologiesMethodologies

Prototyping methodologyPrototyping methodology Prototyping methodology perform the Prototyping methodology perform the

analysis, design and implementation phases analysis, design and implementation phases concurrently.concurrently.

All three phases are performed repeatedly in All three phases are performed repeatedly in a cycle until the system is completed.a cycle until the system is completed.

A prototype is a smaller version of the system A prototype is a smaller version of the system with a minimal amount of features.with a minimal amount of features.

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1414

Systems Development Systems Development MethodologiesMethodologies

Prototyping methodologyPrototyping methodology Quickly converts requirements to working version of Quickly converts requirements to working version of

systemsystem Once the user sees requirements converted to system, Once the user sees requirements converted to system,

will ask for modifications or will generate additional will ask for modifications or will generate additional requestsrequests

Most useful when:Most useful when: User requests are not clearUser requests are not clear Few users are involved in the systemFew users are involved in the system Designs are complex and require concrete formDesigns are complex and require concrete form History of communication problems between analysts and History of communication problems between analysts and

usersusers Tools are readily available to build prototypeTools are readily available to build prototype

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1515

Systems Development Systems Development MethodologiesMethodologies

Prototyping methodologyPrototyping methodology Types of prototypesTypes of prototypes Prototype are of two typesPrototype are of two types

EvolutionaryEvolutionary Evolutionary prototype is continually refined until it contains all Evolutionary prototype is continually refined until it contains all

of the functionality that the users require of the new systemof the functionality that the users require of the new system A requirements prototype A requirements prototype

Developed as a way to define the functional requirements of the Developed as a way to define the functional requirements of the new system when the users are unable to determine exactly new system when the users are unable to determine exactly what they wantwhat they want

A requirements prototype review the requirements, features are A requirements prototype review the requirements, features are added, users are able to define the processing required for the added, users are able to define the processing required for the new systemnew system

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1616

Systems Development Systems Development MethodologiesMethodologies

Prototyping methodologyPrototyping methodology Development of an Evolutionary PrototypeDevelopment of an Evolutionary Prototype

1.1. Identify user needs: the developer interviews users Identify user needs: the developer interviews users to obtain an idea of what is required from the to obtain an idea of what is required from the system system

2.2. Develop a prototype: the developer uses one or Develop a prototype: the developer uses one or more prototyping tools to develop a prototypemore prototyping tools to develop a prototype

3.3. Determine if the prototype is acceptable: the users Determine if the prototype is acceptable: the users decide if the prototype is satisfactory or not. If not decide if the prototype is satisfactory or not. If not the prototype is go back to the step onethe prototype is go back to the step one

4.4. Use the prototype: the prototype becomes the Use the prototype: the prototype becomes the production systemproduction system

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1717

Systems Development Systems Development MethodologiesMethodologies

Prototyping methodologyPrototyping methodology Development of a Requirements PrototypeDevelopment of a Requirements Prototype The first three steps to develop a The first three steps to develop a

requirements prototype are the same as requirements prototype are the same as those taken to develop an evolutionary those taken to develop an evolutionary prototype. The next steps are as followsprototype. The next steps are as follows4.4. Code the new system: the developer uses the Code the new system: the developer uses the

prototype as the basis for coding the new systemprototype as the basis for coding the new system5.5. Test the new systemTest the new system6.6. Determine if the new system is acceptable: the Determine if the new system is acceptable: the

users advises the developer whether the system is users advises the developer whether the system is acceptable or not. If not go back to step fouracceptable or not. If not go back to step four

7.7. Put the new system into productionPut the new system into production

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1818

Systems Development MethodologiesSystems Development Methodologies Prototyping methodologyPrototyping methodology

Advantages: Advantages: Most important functionalities are considered as and Most important functionalities are considered as and

when they arrivewhen they arrive Consistency between requirements is checked in each Consistency between requirements is checked in each

iterationiteration Customers feel the progress of the development processCustomers feel the progress of the development process Developer can use the prototype in any iteration as a Developer can use the prototype in any iteration as a

source for winning customer contractssource for winning customer contracts Disadvantages:Disadvantages:

Identifying the most important subset of requirements Identifying the most important subset of requirements at any stage is a tedious taskat any stage is a tedious task

Establishing consistency in each iteration is a repetitive Establishing consistency in each iteration is a repetitive work, particularly when new subset of requirements work, particularly when new subset of requirements bear no relationships with the existing onesbear no relationships with the existing ones

Sharing data with other systems is often not consideredSharing data with other systems is often not considered Project deadline cannot be estimatedProject deadline cannot be estimated

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

1919

Systems Development Systems Development Methodologies [3]Methodologies [3]

Prototyping-based methodologiesPrototyping-based methodologies

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

2020

Sequence SummarySequence Summary A joint application development (JAD) is a team-A joint application development (JAD) is a team-

based approach to fact finding and requirements based approach to fact finding and requirements modeling. JAD involves an interactive group of modeling. JAD involves an interactive group of users, managers, and IT professionals who users, managers, and IT professionals who participate in requirements modeling and participate in requirements modeling and develop a greater commitment to the project and develop a greater commitment to the project and to their common goalsto their common goals

In prototyping, a trial system is developed In prototyping, a trial system is developed quickly and presented to the user for review. quickly and presented to the user for review. Refinement are made based on the review, and Refinement are made based on the review, and this process is repeated until the prototype is this process is repeated until the prototype is approved by the user.approved by the user.

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

2121

Sequence SummarySequence Summary

In this Sequence we haveIn this Sequence we have Explained Explained joint application development (JAD)joint application development (JAD) Addressed JAD Participants and their rolesAddressed JAD Participants and their roles Discussed how to prepare for JAD sessions Discussed how to prepare for JAD sessions Explained JAD advantages and disadvantagesExplained JAD advantages and disadvantages Explained Explained Prototyping-based methodologiesPrototyping-based methodologies Explained when to use prototyping-based Explained when to use prototyping-based

methodologies methodologies Distinguished between Distinguished between Evolutionary prototype Evolutionary prototype

and and Requirements PrototypeRequirements Prototype Explained prototyping methodologies advantages and Explained prototyping methodologies advantages and

disadvantagesdisadvantages

AvicennaAvicenna System Analysis and Design System Analysis and Design System Analysis System Analysis

2222

ReferenceReference[1] System Analysis and Design, Sixth Edition[1] System Analysis and Design, Sixth Edition Authors: Gary B. Shelly, Thomas J. Cashman and Harry J. Authors: Gary B. Shelly, Thomas J. Cashman and Harry J.

Rosenblatt Rosenblatt Publisher: SHELLY CASHMAN SEWIES.Publisher: SHELLY CASHMAN SEWIES.

[2] Modern Systems Analysis and Design Third Edition[2] Modern Systems Analysis and Design Third Edition Authors: Jeffrey A. Hoffer , Joey F. George, Joseph S. Authors: Jeffrey A. Hoffer , Joey F. George, Joseph S.

ValacichValacich Publisher: prentice hall Publisher: prentice hall

[3] System Analysis and Design, 3[3] System Analysis and Design, 3rdrd Edition Edition Authors: Dennis, Wixom, & RothAuthors: Dennis, Wixom, & Roth Publisher: John Wiley & sonsPublisher: John Wiley & sons

[4] Management Information Systems, tenth Edition[4] Management Information Systems, tenth Edition Authors: Raymond Mcleod, Jr. & George P. SchellAuthors: Raymond Mcleod, Jr. & George P. Schell Publisher: prentice hall Publisher: prentice hall