DEFINITION
It is the set of activities that analysis,design and implement information system. The steps are parellel,iterative(repeat) and should be followed in sequence.
Continue
them before considering them for system investigation.
REQUIREMENT ANALYSIS
Depending on the result of initial investigation,the survey is expanded to more detailed feasibility study. It consist of following steps: Statement of problem.
Recommendation. Details. Conclusion.
DESIGN
The most creative and challenging task is designing. It deals with transforming the customer requirement into a logical system. Design activities are broadly classified into 2 parts: Preliminary design Detailed design
CODING
The input to the coding phase is the design document. During this different modules are identified in the design document and are coded according to their specification. Good coding standard enhances understanding and good programming practices.
SOFTWARE TESTING
It is the process of executing the program with the intension of finding errors. Testing a program consist of providing with a set of inputs and observing the behaviour of the program as per the user requirement. If it is fail tobehave as per expectations,the condition under which failure is occurred are noted for correction.
TYPES OF TESTING
1. Unit testing:
Individual (stand-alone) components are tested to ensure that they operate correctly.
2. Module testing:
A collection of related components (a module) is tested as a group.
3. Sub-system testing:
The phase tests a set of modules integrated as a subsystem. Since the most common problems in large systems arise from sub-system interface mismatches, this phase focuses on testing these interfaces.
Continue
4. System testing:
This phase concentrates on (i) detecting errors resulting from unexpected interactions between sub-systems, and (ii) validating that the complete systems fulfils functional and non-functional requirements.
Continue
Regression testing means testing that everything that used to work still works after changes are made to the system! tests must be deterministic and repeatable should test all functionality
every interface all boundary situations every feature every line of code everything that can conceivably go wrong!
TEST PLANNING
The preparation of the test plan should begin when the system requirements are formulated, and the plan should be developed in detail as the software is designed.
Continue
The plan should be revised regularly, and tests should be repeated and extended where the software process iterates. Testing finds the existence of defects. Testing should be planned. Testing should begin in small and progress toward large volume of testing. For a effective testing,the testing is done ny third party.
Continue
Start by testing units and modules Test drivers must be written to exercise lower-level components Works well for reusable components to be shared with other projects BUT: pure bottom-up testing will not uncover architectural faults till late in the software process
Roadmap
Reliability, Failures and Faults Fault Avoidance Fault Tolerance Verification and Validation The Testing process
Black box testing White box testing Statistical testing
IMPLEMENTATION
Their are 3 types of implementation 1. Implementation of a computer system to replace a manual one. 2. Implementation of a new computer system to replace existing one. 3. Implementation of a modified application to replace existing one using same computer.
continue
This include following steps:1.Review of project plan and implement it. 2.Conversion of important files. 3.To conduct parallel processing. 4.To discontinue the older version. 5.User testing. 6.Plan for post implementation reviews.
MAINTAINANCE
This includes minor enhancement or corrections which appears late in the system operation. Ist maintainance is called corrective. 2nd maintainance is called adaptive. 3rd maintainance is called perfective. 4th maintainance is called preventive.
continue
CORRUPTIVE:-It is used to repair coding and implementation. ADAPTIVE:-It is used to modify the system to the environmental changes. PERFECTIVE:-It is used to extend the capability of the system beyond those initially intend for the system. PREVENTIVE:-It involves making changes to the system to safeguarded from future problem.
A software failure is an execution event where the software behaves in an unexpected or undesirable way. A software fault is an erroneous portion of a software system which may cause failures to occur if it is run in a particular state, or with particular inputs.
KINDS OF FAILURES
FAILURE CLASS DESCRIPTION
Occurs only with certain inputs Occurs with all inputs System can recover without operator intervention Operator intervention is needed to recover from failure Failure does not corrupt data Failure corrupts system data
unrecoverable
Non-corruptive corruptive
Fault tolerance: developing programs that will operate despite the presence of faults
END OF SLIDES
THANK You. THANK YOU