Life cycle model

Life cycle model A frame work containing the processes, activities, and tasks involved in the development, operation and maintenance of a product spanning the life of the system from the definition of its requirements to the termination of its use.

What is meant by Software? Software is the collection of computer programs, which includes procedures, rules and associated towards documentation of requirements.
Phases in Project Development
ØPreliminary Investigation ØFeasibility Analysis
ØRequirement Analysis ØSRS Preparation ØPlanning ØDesign ØCoding ØTesting ØImplementation & Maintenance
What is meant by Software Engineering?
Software engineering is the systematic approach to the development, operation, maintenance and retirement of software with reliable cost.
Test An activity in which a system or component is executed under specified conditions, the results are observed or recorded, and an evaluation is made of some aspect of the system or component .
Testing®
The execution of tests with the intent of providing that the system and application under test does or does not perform according to the requirements specifications.
Testing (IEEE) The process of operating a system or component under specified conditions, Observing or recording the results, and making an evaluation of some aspect of the System or component.
Testing is a process designed to :- • Prove that the program is error free • Establish that the software performs its functions correctly • Establish with confidence that the software does its job fully
GOALS OF TESTING 1. Find cases where the program does not do what it is supposed to do.
2. Find cases where the program does things it is not supposed to do.
THE EIGHT BASIC PRINCIPLES OF TESTING
1. Define the expected output or result.
2. Don't test your own programs.
3. Inspect the results of each test completely.
4. Include test cases for invalid or unexpected conditions .
5. Test the program to see if it does what it is not supposed to do as well as what it is supposed to do. 6. Avoid disposable test cases unless the program itself is disposable. 7. Do not plan tests assuming that no errors will be found. 8. The probability of locating more errors in any one module is directly proportional to the number of errors already found in that module. Let's look at each of these pints.
Why Testing is Required?
Technical Reason Business Reasons Professional Reasons
Technical Reason: *Developers not infallible. *Requirement Implications are not always fully seen. *Behavior of system not necessarily predictable from components. *Dynamic testing can only reveal some bugs.
Business Reasons *Don’t need customer/user to find bugs. *Post release debugging is very difficult and expensive.
Professional Reasons *Test case design is challenging and rewarding. *Good testing gives confidence in work. *Systematic testing is effective.
PDCA METHOD Plan (P) Device a plan Do (D) Execute the plan Check (C) Check the results Act (A) Take the necessary action
Attitude of a Tester:
* I perform at least as well as another expert would * I deliver useful results in a usable form * I choose methods that fit the situation * I make appropriate use of available tools and resources * I collaborate effectively with the project team
* I can explain and defend my work * I can advise clients about the risks and limitations of my work * I can advise clients about how my work could be even better * I faithfully and ethically serve my clients * I become more expert over time
The Economics of Testing
* Testing involves a trade-off between COST and RISK. * Is the level of acceptable risk the same for all programs? * When is it not cost effective to continue testing? * Under what circumstances could testing guarantee that a program is correct? Costs of Errors Over the Life Cycle * The sooner an error can be found and corrected, the lower the cost. * Costs can increase exponentially with time between injection and discovery. * An industry survey showed that it is 75 times more expensive to correct errors discovered during ‘installation’’ than during ‘‘analysis’’. * One organization reported an average cost of $91 per defect found during ‘‘inspections’’ versus $25,000 per defect found after product delivery. What is 'Software Quality Assurance'? Software QA involves the entire software development PROCESS - monitoring and improving the process, making sure that any agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with. It is oriented to 'prevention'.

No comments: