Posts

Use Cases

A use case defines a goal-oriented set of interactions between external actors and the system under consideration. Actors are parties outside the system that interact with the system. An actor may be a class of users, roles users can play, or other systems. Cockburn (1997) distinguishes between primary and secondary actors. A primary actor is one having a goal requiring the assistance of the system. A secondary actor is one from which the system needs assistance. A use case is initiated by a user with a particular goal in mind, and completes successfully when that goal is satisfied. It describes the sequence of interactions between actors and the system necessary to deliver the service that satisfies the goal. It also includes possible variants of this sequence, e.g., alternative sequences that may also satisfy the goal, as well as sequences that may lead to failure to complete the service because of exceptional behavior, error handling, etc. The system is treated as a "black box...

Why we cannot fix all the bugs?

Not all the bugs that we find are fixed. Some are deferred, postponed and others are rejected. The reasons are : 1. There is lack of time Too many s/w features and too few people to code and test. Example tax payment date starts from a particular date. 2. It is not a bug If specification has been mis read and report some feature as bug but actually it’s a required feature. Example – gmail has no cancel button. 3. Fixing to bug is too risky – It there is lack of time or schedule crunch is there then its quiet possible that fixing of a low priority bug may give rise to other unknown and new bugs and make the software risky. Hence its better to postponed the bug. 4. Its not worth fixing the bug Bug that would rarely occur or appear in little used feature may be dismissed or a user can avoid that bug are often not fixed. It all depends on the risk involved. 5. Ineffective Bug reporting He tester did not make a strong enough case that a particular bug must be fixed. As ...

Severity and Priority of Bugs

It is not possible to fix all the bugs as there is lack of time. Hence bugs have to be assigned some category so that we are able to fix bugs with higher priority first and if time allows we can fix bugs with lower priority. There are two basis for categorization of bugs. They are know as Priority and Severity. In their bug reports the testers must mention both the categories in order to help developer to fix urgent bugs first. Severity How bad the bug is; the likelihood and the degree of impact when the user encounters a bug. Severity is always determined from the point of view of application. Categories of severity are as under : * Critical * Major * Minor * Suggestion Priority Indicates how much emphasis should be placed on fixing the bug and the urgency of fixing the bug. Priority is always determined from the point of view of the user. Categories of priority are as under : * Show Stopper/ Immediate Fix * High * Medium * Low

Software Testing Life Cycle

Requirement StudySoftware Testing Life Cycle commences with study of requirement document followed by preparation of test plan, test design, test execution and detect identification and reporting. Phases of Software Testing Life Cycle are s as follows : * Test Planning * Test Design * Test Execution * Defect Identification and Reporting * Test Reports and Acceptance Requirement Study: Testing should begin in the requirements phase of the software development life cycle . During the design phase, testers work with developers in determining what aspects of a design are testable and with what parameters those tests work. Test Planning: Test Strategy, Test Plan (s), Test Bed creation. A lot of activities will be carried out during testing, so that a plan is needed. Test Design : Test Procedures, Test Scenarios , Test Cases , Test Scripts to use in testing software. Test Execution: Testers execute the software based on the plans and tests and report any errors found to the development tea...

What is Quality Control?

Quality Control is product oriented approach which monitors whether the software has been developed as per the requirement of the user. This process ensure “Are we building the right product?” Quality Control commences once the Coding phase of Software Development Life Cycle is complete. It starts when the actual software is ready. Testing is performed on the product that has now come into existence. Quality Control determines if the system complies with the requirements and performs functions for which it is intended and meets the organization’s goals and user needs. It is traditional and is performed at the end of the project. Quality Control determines correctness of the final software product by a development project with respect to the user needs and requirements. Quality Control alone does not ensure quality. If we want to develop a quality product then improvement measures have to taken right from the beginning of SDLC. Quality Control follows corrective approach. Quality C...

What is Quality Assurance.

Quality Assurance is the process oriented approach which monitors the entire Software Development Life Cycle to ensure that the process followed is consistent, adheres to standards, uses reliable techniques and prudent practices, and performs the selected functions in the correct manner. This process ensure “Are we building the product right?” Proper application of methods and tools, effective formal technical reviews, concrete management and measurement all lead to quality. It is a myth that Quality Assurance ends once design phase of Software Development Life Cycle ends. This is actually not true. Process of Quality Assurance commences as soon as Requirement Analysis phase of Software Development Life Cycle begins and continues upto release of the software. Software testing is also part of Quality Assurance. Quality Assurance is demonstration of consistency, completeness, and correctness of the software at each stage and between each stage of the development life cycle. Quality...