Professional Documents
Culture Documents
WORK BENCH:
DO PROCEDURE:
TASK 1: ACCESS READINESS
Responsibility of sponsors to ensure that the organization is ready for client-server
technology.
8 dimensions:
1. Motivation: to derive improvements in quality
2. Investment: approval of budget
3. Client-server skills: ability of client-server installation team to incorporate the client-
server technology concepts.
4. User education: awareness by the individuals
5. Culture: new concepts/new approach
6. Client-server support staff: required number of staff for developing frontend/backend
environment
7. Client-server aids & tools:
8. s/w development process maturity: ability to produce high quality s/w on a consistent
basis.
Software development maturity model:
Client-server characteristics:
1. Data format
2. Completeness of data
3. Understandable documentation
4. Ease of use
5. Sufficient help routines
OUTPUT:
Finally, based on this testing process a test report is generated.
OVERVIEW:
The testing strategy for RAD is spiral testing. This testing strategy assumes the RAD
system is:
- Is iterative
- Is evolutionary
- Contains RAD language with a defined grammar
- Provides reusable components ability
- Uses implementation code from reusable components written in a high level language
- Contains a sophisticated support environment
OBJECTIVES:
The RAD testing methodology described in this testing process is designed to take
maximum advantage of the iterative nature of RAD.
It should also focus on the requirements capturing purpose of developing.
RAD based testing must provide tools and methods to analyze system requirements and
capture requirements changes.
CONCERNS:
It describes the 4 concerns the testers should have about RAD based testing.
i) Testing iteration:
- The iterative nature of s/w development implies that the system must track revision
histories and maintain version controls of alternate RAD versions.
- Requirements may be added deleted or changed.
- Test goals must easily change to fit modified requirements.
ii) Testing components:
- The use of reusable components raises reliability concerns.
- The testing methodology must consider how information on past component testing
can be recorded and referenced to determine what unit testing might still be needed
and what integration testing strategies might best check the components in their
instantiated context.
iii) Testing performance:
- One necessary testing component is a set of test conditions.
- Requirements –based and functional testing base test conditions on some stated
form of behavior or required performance standard, such as formal specifications or a
requirements document.
- The testing methodology must establish an objective standard of the intended
behavior of the RAD under consideration.
iv) Recording test information:
- The software development environment not only should capture requirements,
assumptions and design decisions, but ideally should map these into the RAD in a
way useful to both rapid application development and testing.
- These mapping need to be rapidly revisable to quickly make the next RAD
iteration. WORK BENCH:
INPUT:
The only input
to this test process
is the RAD
requirements.
Because of the
nature of RAD, the
requirements are
incomplete when
development
begins.
The
requirements will
be continually
developed throughout various iterations.
DO PROCEDURE:
It describes iterative RAD and spiral testing and then integrates those topics into 3 task
strategy.
Testing within iterative RAD:
The most obvious approach to testing during RAD would be to treat that each
development iteration as one s/w lifecycle.
The process’s complexity is also compounded by the need to conduct a full cycle of
testing for each iteration, even though the early iterations will almost never contain detailed or
unchanging requirements.
An alternative test approach is to iterate test planning in parallel with the developing
iterations. This will simplify testing and reduce overall testing costs when compared to the
preceding approach.
As RAD iterations proceed, the test plan would expand to incorporate the latest iteration
modification.
Spiral testing:
The proposed RAD testing strategies termed spiral testing, remains iterative and parallel
the RAD process. Spiral testing distinguishes between the initial few RAD testing iterations,
subsequent iterations and final few iterations.
The framework for intermediate testing activity and final acceptance testing, to include
test derivation is laid in the initial iterations.
Unit and integration testing will likely be confined to subsequent and final testing
iteration.
Subsequent testing iteration will have less framework-related activity and more
acceptance test oracle derivation activity.
Final iterations are where developers return to their RAD to fix identified errors and testers
conduct final integration, acceptance and regression testing.
TASK 1: DETERMINE APPROPRIATENESS OF RAD
There are strength and weakness to using the RAD concept to build s/w. RAD
development offers the following strengths:
- System users get a quick view of system deliverables.
- The cost of risk associated with development is reduced.
- Customer satisfaction can be improved.
- Using powerful development tools can reduce the time.
Problems associated with using RAD model:
- Users and developers must be committed to rapid-fire activities.
- Diffusers are not continuously involved throughout the RAD cycles.
TASK 2: TEST PLANNING ITERATIONS
To mirror this process for test planning purposes, the initial test plan iterations consider
the development results and frame the testing process.
This is logical point for testers to determine the major critical portions of RAD &
establish test priorities.
In initial iteration, test team will forecast the most important portion of system to test. It
is to recommend that the document for each iteration of RAD process be subject to inspection
process.
TASK 3: TEST SUBSEQUENT PLANNING ITERATION
The subsequent testing iterations will be categorized by unit, integration testing and
continued requirement review to determine whether any requirements are missing.
Reusable components are instantiated to provide required function to the test and design
team perform unit testing with these modules. The test team can commence integration test
planning for those component.
TASK 4: TEST THE FINAL PLANNING ITERATION
Once developer establish all requirements the final few iterations of development are
devoted to implementing the remaining functionality, followed by error corrections.
Therefore, testers can devote their work to completing the test for acceptance testing and
to remaining unit and integration testing.
The final testing planning iterations commence with the completion of the operational
RAD and prior to final user acceptance.
OUTPUT:
After performing RAD testing, a RAD test report is generated as output.
---------------------------------------------------------------------------------------------------------------------
TESTING IN MULTIPLATFORM ENVIRONMENT
Testing in multiplatform environment is conducted to test the software that produces
same result with different platform/runtime environments and in different situations.
Here software is designed to run on different platform must undergo for test. It will check
the intended functionality and check whether it works in same manner and produce correct
output. Validation testing is used to test.
OVERVIEW:
Test the software that is capable to run on different platform. There can be slight
variation while working on various platform but check to determine whether the software
produces correct results on various platforms.
OBJECTIVE:
Six activities are performed to obtain the correct results in different platform.
CONCERN:
i) The platforms in the test lab will not be representative of the platform in the real
world.
ii) The s/w will be expected to work on platforms not included in the test lab.
iii) The supporting s/w on various platforms is not comprehensive.
WORK BENCH:
DO PROCEDURE:
TASK 1: DEFINE PLATFORM CONFIGURATION CONCERN
1. Develop a lot of potential concerns about the environment.
2. Error guessing to anticipate problem.
3. Error guessing requires 2 pre requisites
i) Error guessing group understands how the platform works.
ii) Error guessing group knows how to handle the problems arrives.
TASK 2: LIST NEEDED PLATFORM CONFIGURATION
- Test must identify the platforms that must be tested. This would be the input to the test
process.
- Determine if those platforms are available in the test data.
- If exact platform is not available, the testers need to determine whether an existing
platform is acceptable.
TASK 3: ACCESS TEST COMPONENT/TEST ROOM CONFIGURATION CONCERN
Testers needed to determine whether the platforms available in the test room are
acceptable for testing.
2steps:
1. Needed platform is listed.
2. Make a determination to whether the available platform is acceptable for testing.
TASK 4: LIST STRUCTURAL COMPONENT/ LIST STRUCTURAL COMPONENT
AFFECTED BY THE PLATFORM
- Structural testing data with architecture of the system.
- Architecture describes how the system is put together.
Some of the architectural problems:
1. Maximum size of fields.
2. Disk storage limitation.
3. Performance limitation.
TASK 5: LIST INTERFACE PLATFORM AFFECTS
- The point at which control is passed from one processing component to another.
- The task is to identify those interface, so that they can be tested.
2 important task:
1. Identify interface.
2. Whether those interface affected by specific platform.
TASK 6: EXECUTE THE TESTS
Finally the testing process is get executed.
OUTPUT:
The test report can be as,
- Structural components that works/not works.
- Interface that works/not works.
- Multiplatform operational concern that works/not works.
- Platform on which s/w should operate that works/not works.
WORKBENCH:
INPUT:
Organizations implementing the data warehouse activity need to establish processes to
manage operate and control that activity. Enterprise-wide requirements applicable to the data
warehouse includes:
Data accessibility: who has access to the data warehouse
Update controls: who can change data within the data warehouse
Date controls: the date that the data is applicable for different types of process
Usage controls: how data can be used by the users of the data warehouse
Documentation controls: how the data within the data warehouse is to be described to users
DO PROCEDURE:
TASK 1: MEASURE THE MAGNITUDE OF DATA WAREHOUSE CONCERNS
This task involves two activities.
i) The first activity is to confirm that the 14 data warehouse concerns described earlier
is appropriate for the organization. The list of concerns can be expanded or reduced.
ii) Once the list of potential data warehouse concerns has been finalized, the magnitude
of those concerns must be determined.
A team of testers knowledgeable in both testing and the data warehouse activity should be
assembled. For each concern, work paper lists several criteria. The each criteria should be
answered with a yes or no response.
Yes response- criterion has been met
No response- either the criterion has not been established
Comments column- to clarify the yes and no responses.
TASK 2: IDENTIFY DATA WAREHOUSE ACTIVITIES TO TEST
The more common process associated with data warehouse activity
Organizational process:
The data warehouse administration function normally has baseline responsibilities for
data documentation, system development procedures and standards for those applications using
data warehousing technology. The database administrator (DBA) function also has indirect or
dotted-line responsibilities to computer operations and users of data warehouse technology
through providing advice and directions.
Data documentation process:
Many existing systems are process-driven, whereas data warehouse technology involves
data-driven systems. This change in emphasis necessities better data documentation. The data
dictionary can be used as a standalone automated documentation tool or integrated into the
processing environment.
System development process:
The system development process in the data warehouse technology has the following
three objectives:
1. To familiarize the system’s development people with the resources and capabilities
available
2. To ensure that the proposed application system can be integrated into the existing data
warehouse structure, and if not, to modify the application and/or the data warehouse
structure
3. To ensure that application processing will preserve the consistency, reliability and
integrity of the data warehouse.
Access control process:
The access control function has two primary purposes.
- The first is to identify the resources requiring control and determine who should be given
access to those resources.
- The second is to define and enforce the control specifications
The access control function can be performed by the data warehouse administration function
or an independent security officer.
Data integrity process:
The following tasks need to be performed:
1. Identify the method of ensuring the completeness of the physical records in the data
warehouse.
2. Determine the method of ensuring the completeness of the logical structure of the data
warehouse (i.e., schema)
3. Determine which users are responsible for the integrity of which segments of the data
warehouse.
4. Develop methods to enable those users to perform their data integrity responsibilities.
Operation process:
Computer operators face the following challenges when operating data warehouse
technology:
1. Monitoring space allocation to ensure minimal disruptions because of space management
problems.
2. Understanding and using data warehouse software operating procedures and messages
3. Monitoring service levels to ensure adequate resources for users
4. Maintaining operating statistics so that the data warehouse performance can be monitored
5. Reorganizing the data warehouse as necessary
Backup/recovery process:
Recovery can occur only if adequate backup data is maintained. The recovery procedure
involves the following four major challenges:
1. Verifying that the integrity of the data warehouse has been lost
2. Notifying users that the data warehouse is inoperable and providing them with alternate
processing means
3. Ensuring and having adequate backup data ready
4. Performing the necessary procedures to recover the integrity of the data warehouse
TASK 3: TEST THE ADEQUACY OF DATA WAREHOUSE ACTIVITY PROCESS
- This take is to evaluate that each of the seven identified processes contains controls that
are adequate to reduce the concerns identified.
- A control is any means used to reduce the probability of a failure
- The tests are those focused on determining that specific controls exist, then the testers can
assume that the process is adequately controlled so that the probability of failure is
minimized.
CHECK PROCEDURE:
A quality control checklist for testing a data warehouse;
- Yes response : good test practices
- No response : warrant additional investigation
- Comments column : to explain No response and to record results of investigation
- The N/A response : the checklist item is not applicable to the test situation
OUTPUT:
- The output from data warehouse test process is an assessment of the adequacy of the data
warehouse activity processes.
- The assessment report should indicate the concerns addressed by the test team, the
processes in place in the data warehouse activity, and the adequacy of those processes.
Debugging:
It is the systematic process of spotting and fixing the number of bugs, or defects,
in a piece of software so, that software is behaving as expected.
Debugging is harder for complex systems in particular when various subsystems
are tightly coupled as changes in one system or interface may cause bugs to
emerge in another.
Debugging is a developer activity & effective debugging is very important before
testing begins to increase the quality of the system.
Debugging will not give confidence that the system meets its requirements
completely but testing gives confidence.
Re opened
Dependency testing:
Destructive testing:
Durability testing
Durability Testing is a Performance testing technique used to determine the
characteristics of a system under various load conditions over time.
This testing helps us to identify the stability of transaction response times over the
duration of the test.
The following parameters are measured while testing for durability:
Memory leaks
Evaluated I/O activity levels
Valuate database resource consumption.
To know the cause we have taken four main bones as input: finance, process, people and
tools.
Different Kinds Of Variations Used In Six Sigma:
There are four basic ways of measuring variations: Mean, Median, Mode, and Range.
Standard Deviation:
The most accurate method of quantifying variations is by using standard deviation. It
indicates the degree of variation in a set of measurements or a process by measuring the average
spread of data around the mean. It’s more complicated than the deviation process discussed in
the previous question, but it does give accurate information.
Roles and Responsibilities:
Quality Leader (QL)/Quality Manager (QM):
The leader represents the expectations of the customer and takes necessary actions to
improve the operational effectiveness of the company. Generally the quality function is separate
from the production or other transaction processing function just to exercise impartiality. The
quality manager is one of the senior most executive directly reporting to the CEO of the
company.
Master Black Belt (MBB):
Master Black Belts are the senior executives responsible to handle some specific
important function of the company. These functions can be HR, or legal, or some other process
specific areas. Master Black Belts work in tandem with the process owners & are responsible to
ensure that quality objectives and targets are fixed, plans are set, process is continuously tracked,
and training is provided to the concerned. MBB closely interact with the process owners and
share information on daily basis.
Process Owner (PO):
Process owners are the real doers & are responsible for specific processes. For example,
in Code Development department there one head shall be there- maybe the PM/GM who
becomes the process owner. According to the size of the company and major activities, there can
be process owners at junior levels of the company structure.
Black Belt (BB):
Black Belts executives are the heart and soul of the Six Sigma companies. The objective
of having BB in the company is to provide effective leadership to the quality projects and these
BB work full time until the project gets completed. Black Belts are responsible to provide
necessary training to their Green Belts working on the project.
Green Belts (GB):
Green Belts are junior employees especially trained in Six Sigma. GB spend apportion of
their time completing various projects assigned to them in addition to their regular work role and
responsibilities. Depending on their workload, they usually around 10% to 50% of their time on
their projects. As the Six Sigma quality program evolves in the company, all employees start
adopting the Six Sigma methodology in their daily routine & a time comes when they don’t need
any percentage limit for their time. They get so much used to the new style that they start
devoting 100% of their time the new way.
TOTAL QUALITY MANAGEMENT (TQM)
INTRODUCTION:
Quality Definition:
According to Deming, “quality may be defined as an excellent product or services that
fulfills or exceeds customer exceptions”.
Quality can be quantified as follows
Q=P/E
Where, Q=Quality P=Performance E=Exception
Definition of TQM:
- Total Quality Management (TQM) is an enhancement to the traditional way of doing
business.
Total – Made up of the whole
Quality – Degree of Excellence a Product or Service provides.
Management – Art of handling, controlling, directing etc.
- TQM is the application of quantitative methods and human resources to improve all the
processes within an organization and exceed customer needs now and in the future.
- Total quality management is defined as philosophy and a set of guiding principles that
represent the foundation of a continuously improving organization.
Basic approach:
TQM requires six basic concepts:
1. A commitment and involved management to provide long-term top-to-bottom
organizational support.
2. An unwavering focuses on the customer, both internally and externally.
3. Effective involvement and utilization of the entire work force.
4. Continuous improvement of the business and production process.
5. Treating suppliers as partners.
6. Establish performance measures such as uptime, percent nonconforming, absenteeism
and customer satisfaction should be determined for the process. Quantitative data are
necessary to measure the continuous quality improvement activity.
EVOLUTION OF TQM:
Inspection - inspect the finished product and eliminate defective.
Quality control - also to determine the cause of defects and correcting it.
Quality assurance - products and processes are good.
TQM - continuous process improvements through measurements.
PRINCIPLES OF TQM:
- Quality is everyone’s business
- Customer emphasis
- Quality must be built into the product
- TQM requires management commitment and involvement at all levels
- TQM accomplishment involves continual training
- Long term emphasis on measurable processes and productivity improvements
- Understand the current process before improvement begins
- Cross functional orientation and teamwork
- Effective use of statistical methods & quality control
- Information sharing
- Eliminate communication barriers
FRAMEWORK OF TQM:
Phases:
1. Product planning : customer specification turned into requirements
2. Part deployment : requirements turned into parts requirements
3. Process planning : process selected to meet part requirements
4. Process control : process control, inspection and test methods developed
TAGUCHI QUALITY LOSS FUNCTION
INTRODUCTION:
- Genichi Taguchi, a Japanese engineer.
- He realized the importance of cost associated with poor quality and its impact on
corporate profitability.
- Taguchi did not confine himself to the corporate losses alone but look into consideration
the losses (due to poor quality) to the society.
- Using the Taylor Expansion Series, Taguchi developed a mathematical model in which
loss is a quadratic function of the deviation of the quality of interest from its target value.
Latent defects in the product=defects removed during the phase + defects found later
- The metric can be calculated for the entire development process, for the front end (before
code integration), and for each phase.
- It is called early defect removal and phase effectiveness when used for the front end and
for specific phases.
- The higher the value of the metric, the more effective the development process.
From the table observe that there are two important dimensions:
i) What operations have to be tested
ii) How the operations have to be tested
SCOPE OF AUTOMATION
The automation requirements define what needs to be automated looking into various
aspects. The specific requirements can vary from product to product, from situation to situation,
from time to time.
1. Identify the types of testing amenable to automation
Certain types of test automatically lend themselves to automation.
a) Stress, reliability, scalability and performance testing: these type of testing require the
test cases to be run from a large number of different machines for an extended period of
time, such as 24hr, 48hr and so on.
- Test cases belonging to these testing types become the first candidates of automation.
b) Regression tests: This test is repetitive in nature; these test cases are executed multiple
times during the product development phases. Here the automation will save significant
time and effort in the long run.
c) Functional tests: these kinds of tests may require a complex set up and thus require
specialized skill. Automating these once, using the expert skills sets, can enable using
less-skilled people to run these tests on an ongoing basis.
2. Automating area less prone to change
In a product scenario, the changes in requirements are quite common. In such situation
automation should consider those areas where requirements go through lesser or no
changes.
Normally changes in requirements cause scenarios and new features to be impacted, not
the basic functionality of the product.
To avoid rework on automation test cases, proper analysis has to be done to find out the
areas of changes to user interfaces and automate only those areas that will go through
relatively less change.
3. Automate tests that pertain to standards
Product tests may have to undergo is compliance to standards. For example: a product
providing a JDBC interface should satisfy the standard JDBC tests.
Automating for standards provides a dual advantage. Test suites developed for standards
are not only used for product but can also be sold as test tools for the market.
To certify the s/w or h/w, a test suite is developed and handled over the different
companies.
4. Management aspects in automation
Prior to starting automation, adequate effort has to be spent to obtain management
commitments.
Automation generally is a phase involving a large amount of effort and is not necessarily
a one-time activity.
The automated test cases need to be maintained till the product reaches obsolescence. It
involves significant effort to develop and maintain automated tools.
CHALLENGES IN AUTOMATION
Test automation presents some very unique challenges.
- The most important of these challenges is management commitment.
- Automation takes time and effort and pays off in the long run.
- However, automation requires significant initial outlay of money as a steep learning
curve for the test engineers before it can start paying off.
- Management should have patience and persist with automation.
- The main challenge here is because of the heavy front-loading of cost of test automation,
management starts to look for an early payback
- Successful test automation are characterized by unflinching management commitment a
clear vision of the goals and the ability to set realistic short-term goals that track progress
with respect to the long-term vision.