Wednesday, August 25, 2010

Systems Development Life Cycle

Systems Development Life Cycle

SDLC -Systems Development Life Cycle

SDLC in systems engineering, information systems and software engineering

SDLC: Analysis -> Design -> Implementation -> Testing -> Maintenance

SDLC -phases

1.requriement gathering and analysis

2.design

3.build or coding

4.Testing

5.operation and Maintenance

SDLC- methodologies

concept underpins many kinds of software development methodologies.

1.Waterfall Approach

2. Prototyping Approach

3. Incremental Approach

4. Spiral Approach

5. Rapid Application Development (RAD) Approach

6.Other software development practices and techniques

> Object oriented

> Top-down programming

> Unified Process (UP)

> Agile Software Development

> Integrated Software Development(iterative, waterfall, spiral, agile)

methodologies for waterfall ,prototyping,spiral

Software testing

Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test.

Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs.

Software testing can also be stated as the process of validating and verifying that a software program/application/product.

Different software development models will focus the test effort at different points in the development process. Newer development models like

> Agile development

> Employ test driven development

Testing methods

The box approach

1.White box testing

2.Black box testing

3.Grey box testing

Testing levels

1.Function level

2.Non -Function level

Functional testing

Functional testing is done using the functional specifications provided by the client or by using the design specifications like use cases provided by the design team.

· Unit Testing

· Smoke testing / Sanity testing

· Integration Testing (Top Down,Bottom up Testing)

· Interface & Usability Testing

· System Testing

· Regression Testing

· Pre User Acceptance Testing(Alpha & Beta)

· User Acceptance Testing

· White Box & Black Box Testing

· Globalization & Localization Testing

Non-Functional Testing

Non-Functioning testing is done based on the requirements and test scenarios defined by the client.

· Load and Performance Testing

· Ergonomics Testing

· Stress & Volume Testing

· Compatibility & Migration Testing

· Data Conversion Testing

· Security / Penetration Testing

· Operational Readiness Testing

· Installation Testing

· Security Testing (Application Security, Network Security,System Security)

The testing process

> Traditional CMMI or waterfall development model

> Agile or Extreme development model

Automated testing

> Testing tools (Ant, Maven)

Measurement in software testing

Usually, quality is constrained to such topics as correctness, completeness, security,but can also include more technical requirements as described under the ISO standard ISO/IEC 9126, such as

>capability

>reliability

>efficiency

>portability

>maintainability

>compatibility

>usability



No comments:

Post a Comment