Friday, April 9, 2010

Sys Analysis Design



SYSTEM DEVELOPMENT LIFE CYCLE – (SDLC)

System: an assembly of procedures, process, and techniques for management functions

SDLC- an entire process of developing the System

There are 4 models of SDLC

- Classical model
- Waterfall model
- Davis & Olson Model
- Spiral Model

CLASSICAL MODEL:

Classical model of SDLC includes the following stages

i. System Definition
What sort of the system is required? Whether it will be user friendly, high security etc..

ii. System Analysis
a. Feasibility Analysis
- economic
- size
- technology
- cost- efficient
- speed
- operational etc

b. System Requirement
- Who needs the system?
- What is the purpose?
- What type of reports should be generated?
- Who will maintain the system?
- What sort of maintenance is required?

iii. System Design
a. Logical Design

- deals with codes and queries
- In which language the system will be? (whether it will be in C, C++, Oracle, Java, etc)

b. Physical Design- How will the system look?
- user friendly
- it may be procedural
- Complex
- High Security etc.

iv. System Programming
- Designing the Model/ Creating Alternatives
- In simple words – System Programming is the detailed designing

v. System Testing
- testing the models to find out which model works in a better way

vi. System Implementation- Implementation of the best model

vii. Follow up- rectifying the error and fix it

Disadvantage: It’s a cyclic process that’s why if any problem found we have to follow the process and after follow up we can go to the first step again, which makes the procedure lengthier.


WATERFALL MODEL
All the stages are similar to SDLC Classical model.

Note: after the follow-up stage, if there is any problem, the developer can directly go to the problem; no need to begin form the first step all over again.


DAVIS & OLSON MODEL:
They have divided the SDLC in three stages.
- Definition Stage
- Design Stage
- Implementation

All the above stages are further divided into following sub stages.

Definition Stage:- Proposal Definition/ System Definition
- Feasibility analysis
- Requirement information Analysis/ System Requirement
- Conceptual Design/ Logical Design

Design Stage
- Physical system Design
- Physical database Design
- Programming
- Testing/ Procedural Development

Implementation/ Installation/ Operational Stage:- Implementation
- Operation & Maintenance
- Follow up/ Posit Audit


The benefit of the model is that we can revert back to any stage from any stage.

SPIRAL MODEL

There are four stages of Spiral model

- Planning
o Planning includes System definition
- Analysis & Design
o It also includes Risk analysis
o Customer Evaluation
- Implementation & Testing
o It includes modification
- Communication


If the number of spirals are more, the larger the scope of project, since the system is modified several times.


PROTOTYPE

Prototype is a model or a blue print.

Prototyping deals with developing the Model of a system as per the specification the customers.

There are two types of Prototype

- Discardable Prototype
- Operational Prototype

DISCARDABLE PROTOTYPE:

- It’s a blue print which doesn’t have an operational system
- It gives us a duplicate model with less numbers of coding. It gives us only important coding of the model

The following are the discardable prototype steps

- System Definition & Analysis
- Design Discardable Prototype
- Check End-User’s Satisfaction
o If User Satisfied – go to next step
o If No- Go to step (2) or Modify and goto Step (3)
- Design Operational System
- Check End-User’s Satisfaction
o If User Satisfied – go to next step
o If No- Go to step (4) or Modify and goto Step (5)
- Implement
- Follow up


OPERATIONAL PROTOTYPE:

- It’s a model with proper codes; i.e. directly developing a system and can be implemented after the User’s satisfaction

The following are the Operational prototype steps

- System Definition & Analysis
- Design Operational Prototype
- Check End-User’s Satisfaction
o If User Satisfied – go to next step
o If No- Go to step (2) or Modify and goto Step (3)
- Implement
- Follow up

BENEFIT OF PROTOTYPING

- Cost Reduction
- User’s Orientation & User’s Interaction
- Customer Satisfaction
- Training takes lesser time as users are familiar to prototype
- Prototype gives perfect system because it has been modified several number of times.

DRAWBACKS OF PROTOTYPING
- We cant anticipate the difficulties arise after implementation
- More number of modification increases the cost.

RAD: RAPID APPLICATION DEVELOPMENT

Rapid Application Development (RAD) refers to a type of software development methodology that uses minimal planning in favor of rapid prototyping. The "planning" of software developed using RAD is interleaved with writing the software itself. The lack of extensive pre-planning generally allows software to be written much faster, and makes it easier to change requirements.

Rapid Application Development has the following three levels/ stages

1. ISP – Information Strategic Planning
2. BAA- Business Area Applications
3. Rapid Application Design

ISP
- it is used by the top level management
- It is used for development of strategies

BAA- application or implementation of strategies of the top level management
- BAA supports ISP
- BAA decides the process to achieve goals set by top level management

RAD
- RAD deals with instructions, codes and design of the system and database


ADVANTAGES OF RAD

- Saves time
- All the three levels are involved in designing the system
- It is easy to understand
- Lower cost
- Systematic path to design the process
- Due to the involvement of all the levels of management system design is done as per the management needs

WORKING OF RAD

RAD basically deals with four management aspects

Management:
Though management is involved in the all the three stages of the management, the Top level management is the main adaptor of RAD.

People:
All the 3 levels of the management deal and help in developing RAD. i.e. they understand the system well, hence less training is required.

Methodology:- Need Identification
- Analysing
- Designing and programming
- Testing and implementation
- Maintenance & Follow-up

Integration

Integrated with prototype and CASE tools
Means it’s a combination of Prototyping and CASE tools

DRAWBACKS OF RAD
- If there is an error in designing a model, the entire system fails.
- Due to less time consumption, rate of error may increase
- Continuous modification is required

CASE TOOL

COMPUTER AIDED SOFTWARE ENGINEERING

It helps to reduce workload of human developers of the system.
It directly creates a code for the generated software pages.

E.g. MS FrontPage helps in creating the codes for the designed pages.
D2K (Developer 2000) helps in generate codes for oracle system.


Computer-Aided Software Engineering (CASE), in the field of Software Engineering is the 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. It also refers to methods for the development of information systems together with automated tools that can be used in the software development process.

ADVANTAGES OF CASE
- It helps human in designing codes and systems
- It reduces human errors
- Time saving

DIFFERENT CASE TOOL SETS
- Planning tool set
- Analysing tool set
- Designing tool set
- Code generator
- Information Generator
- Database Generator
- Public Interface tool set
DRAWBACKS OF CASE TOOLS
- It doesn’t do by itself
- Needs instruction at every stage

There are four levels of CASE tools
Level 1: UPPER CASE TOOL
Deals with system definition
Level 2: MIDDLE CASE TOOL
System analysis and design
Level 3: LOWER CASE TOOL
Programming, testing, Implementation & Maintenance
Level 4: INTEGRATED CASE TOOLIntegration of all the 3 levels
 A. R. Sayyed

1 comment: