Beruflich Dokumente
Kultur Dokumente
1. Analysis
2. Design
3. Coding
4. Testing
5. Support
3. Coding: The Design must be translated into a machine readable form and this
transformation is called Coding. If design is performed in a detailed manner,
coding can be done very easily.
4. Testing: Once code has been generated, program, testing begins, This testing
process focus on logical internals of the software ensuring that all statements
have been tested to uncover errors and ensure that defined input will produce
actual results that agree with the required result that agree with the required
result as stated in SRS.
In the above model testing is postponed to a later stage, until the coding completes, so
only at that time we will come to know whether the solution works properly as we
expect. This may be a risk in certain types of project, where the technology itself is a risk,
also correction at the end of the phase, may involve correcting to previous phases also
and so the rework is more.
User’s
requirement UAT
Specification
SRS ST
HLD IT
LLD UT
CODING
Phase 3: HLD: In this phase, the major modules in the the software shall be
identified and high level design documents shall be prepared for each of the
modules. The interdependencies across the modules shall be documented.
Phase 5: Coding and Unit Testing: In this phase coding shall be done following the
programming standards. The coding shall be carried out at each detailed design
document level, code review shall be done and the code shall be unit tested.
Phase 6: Integration Testing: In this phase, the product shall be tested module wise
and the interdependencies among the modules shall be validated.
Phase 7: System Testing: In this phase the functionality of the product shall be
tested as a whole.
Phase 8: Acceptance Testing: The final product shall be validated against the user
requirements, acceptance criteria and acceptance data.
System Study: We need to study Domain, S/W, H/W, FDS, UI, SRS.
Gap Analysis: Finding the difference between the client requirements and the
application Developed.
1. Static Testing
2. Dynamic Testing
Static Testing: Testing the application without execution the program. This can
be done by Inspections and walkthroughs.
Dynamic Testing: Testing the application by executing the software program with
the help of test data.
What is Black Box Testing?
Block box testing all the tests are based on functionality and requirements of the
application. In this type of testing the functionality of the application is only
considered and it does not concentrate on any knowledge of internal design or
code.
“ How well a program meets its requirements’”.
Assume that requirements are already validated.
Look for missing or incorrect functionality. Excurse system with input which the
expected output is known.
Performance, stress, reliability, security.
Advantages:- It ensures functional requirements are met.
It makes no structure assumption.
Limitations:-
Possibility of missing logic error in the software cannot ensure code coverage.
Dividing input domain into classes of data from which test cases can be derived. If
input has range of values then it has one valid and two invalid classes are defined.
If input is Boolean then one valid and one invalid classes are defined. It is performed
to reduce no. of test cases while uncovering most of errors.
The aim of equivalence testing is to select values that have equivalent processing,
one that we can assuming if a test passes with the representative value, it should
pass with all other values in the same partition. That is we assume that similar some
equivalence partitions may be include combinations such as
Valid vs. invalid input and output values.
Numeric values with negative, +ve and zero values.
Strings that are empty or non-empty.
Data files that exist or not. Are readable or not. Date, years that are pre-zero or post
2000,leap years or non-leap years. Dates that are in 28,29,30, or 31 days months,
Days on workdays/ out side office-hours.
Type of data file e.g., hard drive , flop drive, cd-rom, network.
Equivalence partition is a set of test cases where the successful execution of any test
case in the clause guarantees the success of all the test cases. In an equivalence
partition for 1 set of correct test cases 2 sets of incorrect test cases are taken. In
order to verify that the system behaves correctly for the correct test cases and
wrongly for the incorrect test cases.
Limitations:- white box does not ensure that functional requirements are met.
Tests may not mimic real world situations.
What is review?
Reviews are ensuring that the work product and under review meets its
requirements.
What is verification?
Verification refers to set of activities that ensures that software correctly implements
a specific function. Verification involves reviews and meetings to evaluate
documents, plans, code, requirement and specifications. This can be done by check
lists, walkthroughs and inspections.
What is walkthroughs?
A walkthroughs is an informal meeting for evaluation or information purpose. For this
preparation is not required.
What is inspection?
Inspection is formalized meeting. It is evaluating a document such as requirement
specifications or testplan and the purpose is to findout the problem and see what is
missing but not to fix anything. The result of the inspection meeting should be
written report.
What is validation?
Validation refers to set of activities that ensures that software that has been built is
traceable to customer requirements. Validation involves actual testing and takes
place after verifications are completed.
Change control: change control combines human procedures and automated tools to
provide a mechanism for the control of change. The “check-in” and “check-out”
presses implement. Two implements of change control access control and
synchronization control.
Access control: It governs which software engineers have the authority to access and
modify a particular configuration object.
Validation:
Validation is dynamic testing procedure
Validations involves actual testing of the product as per the test plan. (UI, IT, ST and
UAT)
Are we building the right product?
It is a corrective procedure
It involves the tester and user (some times)
It is to check that the product satisfies the requirements and is accepted by the user.
It is also called computer testing, since errors are found out by testing the software
on a computer.
Validation occurs only code and the executable application.
Validation is only on executable forms of a work product.
Validation finds errors only during the testing stage and hence cost of errors reduced
is less than verification.
Various manual and automated tools are available for validation.
Validation tasks include: planning, test case development, test execution, test ware
maintenance.
Validation activities include: ut, usability testing, function testing, system testing,
and acceptance testing.
Validation deliverables are: test plan, test design specification, test case
specification, test procedure specification, test log, test incident report.
What is quality?
Quality is defined as meeting the customer’s requirements in the first time and
every time. Quality can only seen through the eyes of the customers. An
understanding of the customer’s exceptions is the first step then executing those
exceptions is required and the main prospective of the quality are possesses desired
features, fitness for use, confirmation to requirements at an acceptable cost.
The review comments are given in review report, all those comments are
incorporated in the test plan. Re-review is conducted if required.
QA people conducts audit and the test plan is baseline. With the information of test
plan, SRS, detail design documents, test case preparation is started.
After test case preparation completed it will send to peer-review within the team and
again it also sent to development team, they will check whether these test cases are
sufficient for the application functionality. If the test cases are not covered then they
will give review report. All these review comments are incorporated in test case
document.
Before test execution starts test bed environment is steeped. When a test build is
ready of testing development team clearly specify the scope of test module. Testers
will start the execution of test cases. Testers will post the bugs into the defect
management tool. Regression testing will be conducted after the fixes, test report is
prepared with the results of test cases on the build and test cases are also updated if
need. If completion criteria is satisfied then all deliverables are submitted to test
lead.
High: The application is not working as desired. An item that doesn’t function as
expected ordesigned
Ex: Inaccurate calculations.
Slow system
Turn around performance
Wrong fields being updated
An updated operation that fails to complete.
Medium: There are failure reported due to the defect but certainly needs to be
rectified. “An item that doesn’t confirm to standards and conventions”.
Ex: In correct not key operations.
An error condition which is not trapped.
Matching visual and test links which leads to different end points.
Low: Defects in the user interface/navigation. “Cosmetic issues which are not crucial
to the operation of the system”.
Ex: Misspelled or grammatical text.
Inappropriate, Inconsistence, incorrect formatting such as text, font size,
alignment, color, etc.,
Priority: Assign a priority to the defect which determines the order in which defects
should be fixed.
The importance of the bug that has to be cleared.
We are putting time bounding for the defect.
This will decide the test lead.
What is baseline?
A work product has been formally reviewed and agreed upon, there after serves as
the basis for further development and can be changed only. Through formal change
control procedures.
The benefit of traceability matrix is that it help to identify which test case result from
a specific set of requirements, so that the test can easily determine which test cases
are affected by the change in the requirements.
When a test has failed, tracing the test case back to its source requirement may be
necessary to determine whether the test case was defined correctly.
As the size of test specifications grows quickly into large sets test documentation
being able to easily determine which tests execute which conditions becomes imp.
This is accomplished with a traceability matrix.
By mapping the test requirement to the test that exercise that specific condition one
can quickly determine which test to execute, which test to modify should a
requirement change and which condition has no associated test.
When testing should occur?
Or
In SDLC when testing should occur?
Testing should occur through out all the phases of a project.
What is requirement?
A requirement is defined as a description of a condition or capability of a system.
Abbreviations:-
ISO: International Organization for Standards
IEEE: Institute of Electrical and Electronics Engineers
SEI: Software Engineering Institute
CMM: Capability Maturity Model
CMMI: CMM-Integration
PCMM: People-CMM
KPA: Key Process Area.
SLA: Service Level Agreement.
What is the difference between client-server testing and web bases testing?
Client-server testing:
It is plat form dependent
Client server transactions are limited.
User behavior is predictable and controllable.
Failures are noticed internally
System variables are LAN, Centralized s/w, h/w.
What is Re-testing?
Re-execution of a test on same application build with different inputs values (test
data) is called Re-testing.
In automation this is called Data Driven test.