system analysis and design
DESCRIPTION
System Analysis and Design. Rabie A. Ramadan, PhD http://rabieramadan.org 1. About my self. Rabie A. Ramadan My website and publications http://www.rabieramadan.org. Class Information. I am not here to punish you Trust yourself and do your best - PowerPoint PPT PresentationTRANSCRIPT
System Analysis and Design
Rabie A. Ramadan, PhD
http://rabieramadan.org
1
2
About my self
Rabie A. Ramadan
My website and publications • http://www.rabieramadan.org
3
Class Information
I am not here to punish you
Trust yourself and do your best
I want you to learn and compete with others working on the same field
I want you to be confident when you speak with others
Class Information
You can bring anything to drink but NO FOOD PLEASE
When you come in , DO NOT knock on the door
When you want to leave , do not tell me Just leave but you will be counted as absent• I do not take attendance every class but sometimes I
do
5
Class Information
Attendance is a vey important
Assignments must be delivered on time
6
Class Information
Textbooks
Systems Analysis and DesignSystems Analysis and Design , , 22ndnd EditionEdition
Alan Dennis and Barbara Haley WixomJohn Wiley & Sons, Inc.
7
Class Information Website
http://www.rabieramadan.org/classes/2011/sysanalysis/
IntroductionIntroduction
8
Grading
Assig 5%Attendance 5%Exam1 15%Exam2 15%project 20%Final 40%
9
Key Ideas
1 - 10
Many failed systems were abandoned because analysts tried to build wonderful systems without understanding the organization.
The primarily goal is to create value for the organization.
Key Ideas
1 - 11
The systems analyst is a key person analyzing the business, identifying opportunities for improvement, and designing information systems to implement these ideas.
It is important to understand and develop through practice the skills needed to successfully design and implement new information systems.
THE SYSTEMS DEVELOPMENT LIFE CYCLE
1 - 12
Major Attributes of the Life Cycle
1 - 13
The project --• Moves systematically through phases where each
phase has a standard set of outputs
• Produces project deliverables
• Uses deliverables in implementation
• Results in actual information system
• Uses gradual refinement
Project Phases
1 - 14
Planning (Why build the system? How should the team go about building it?)
Analysis (Who uses system, what will it do, where and when will the system be used?)
Design (How will the system work?)
Implementation (System delivery)
1 - 15
A simple process for making lunch
Planning
1 - 16
Identifying business value
Analyze feasibility
Develop work plan
Staff the project
Control and direct project
Analysis
1 - 17
Analysis strategy
Gathering business requirements
Requirements definition use cases
Process modeling
Data modeling
Design
1 - 18
Design selection
Architecture design
Interface design
Data storage design
Program design
Implementation
1 - 19
Construction• Program building
• Program and system testing
Installation• Conversion strategy
• Training plan
• Support plan
Processes and Deliverables
1 - 20
Process Product
Planning
Analysis
Design
Implementation
System RequestFeasibility Analysis
Workplan
System Proposal
System Specification
New System and Maintenance Plan
SYSTEM DEVELOPMENT METHODOLOGIES
1 - 21
What Is a Methodology?
1 - 22
A formalized approach to implementing the Systems Development Life Cycle (SDLC)• A series of steps and deliverables
Methodology Categories
Process-Centered
Data-CenteredObject-
Oriented
Waterfall Development Methodology
1 - 23
Pros and Cons of the Waterfall Methodology
1 - 24
Pros Cons
Identifies systems requirements long
before programming begins
Minimizes changes to requirements as
project progresses
Design must be specified on paper
before programming begins
Long time between system proposal and
delivery of new system
Parallel Development Methodology
1 - 25
Pros and Cons of Parallel Development Methodology
1 - 26
Pros Cons
Reduces Schedule Time
Less Chance ofRework
Still Uses PaperDocuments
Sub-projects May BeDifficult to Integrate
Rapid Application Development (RAD)
1 - 27
Incorporate special techniques and tools:• CASE tools
• JAD sessions
• Fourth generation/visualization programming languages
• Code generators
CASE tools
1 - 28
Computer-aided software engineering (CASE)• Scientific application of a set of tools
and methods to a software system which is meant to result in high-quality, defect-free, and maintainable software products.
Modeling business / real-world processes and data flow.
Development of data models in the form of entity-relationship diagrams
JAD sessions
1 - 29
Joint Application Development (JAD)
• Developed by Drake and Josh of IBM
• Crawford of IBM Toronto in a workshop setting.
• JAD was designed to bring system developers and users of
varying backgrounds and opinions together in a productive
as well as creative environment.
Three RAD Categories
1 - 30
Phased development• A series of versions developed sequentially
Prototyping• System prototyping
Throw-away prototyping• Design prototyping
Phased Development Methodology
1 - 31
Insert Figure 1-4 here
Pros and Cons of Phased Development Methodology
1 - 32
Pros Cons
Users Get a SystemTo Use Quickly
Users Can IdentifyAdditional NeedsFor Later Versions
Users Work with aSystem that isIntentionally Incomplete
How Prototyping Works
1 - 33
Pros and Cons of Prototyping Methodology
1 - 34
Pros Cons
Users Interact withPrototype Very Quickly
Users Can IdentifyNeeded ChangesAnd Refine RealRequirements
Tendency to doSuperficial Analysis
Initial Design Decisions May
Be Poor
Throwaway Prototyping
1 - 35
Pros and Cons of Throwaway Prototyping Methodology
1 - 36
Pros Cons
Risks are Minimized
Important Issues areUnderstood Before the
Real System is Built
May Take LongerThan Prototyping
Agile Development: Extreme Programming
1 - 37
Pros and Cons of Agile Methodologies
1 - 38
Pros Cons
Fast Delivery of Results
Works Well in ProjectsWith Undefined or
Changing Requirements
Requires Discipline
Works Best in Small Projects
Requires MuchUser Input
Criteria for Selecting the Appropriate Methodology
1 - 39
Clear user requirements Familiarity with technology Complexity of system Reliability of system Time schedule Schedule visibility
TEAM ROLES AND SKILLS
1 - 40
Information Systems Roles
1 - 41
Business analyst Systems analyst Infrastructure analyst Change management analyst Project manager
1 - 42
Summary
1 - 43
The Systems Development Lifecycle consists of four stages: Planning, Analysis, Design, and Implementation
There are six major development methodologies: the waterfall method, the parallel development method, the phased development method, system prototyping, design prototyping, and agile development.
There are five major team roles: business analyst, systems analyst, infrastructure analyst, change management analyst and project manager.