Defect Analysis: An Approach to Improve Software Development Life Cycle
Authored and Presented by Subashini Raghavan, Software Test Engineer, Intel MSC Sdn. Bhd, Cyberjaya, Malaysia
Abstract:
The key drive for software testing is capturing defects. In software development reducing defects has been substantially important. There are many approaches that can be taken to reduce the number of defects captured in testing or later phase of testing.
This paper discusses on one of the approach called defect analysis. Defect analysis defined as analyzing each defect captured and transfers the learning back to the project life cycle. The two main categories of classifying the defects for analysis are called ‘Originated in Phase’ and the other as ‘Should be detected’. Originated in phase means to identify the phase of the software development life cycle during which the defect originated. Meanwhile, should be detected means to identify the correct test phase or phases in software development life cycle during which the defect should have been captured.
This effort is to provide focus for the area of improvement within software development life cycle by developing action plan or corrective plan. This will also improve validation process in various test phases within the software development life cycle thru developing action plan to take corrective action for continuous process improvement in the overall validation process.
In summary, defect analysis helps project and test teams to keep on learning from past defects thru the action plan or corrective plan. It also helps to reduce repeating same mistakes causing defects in various similar projects. Thus this helps to reduce the testing cycle, increase product quality and achieve earlier product releases to customer.
Author’s and Presenter’s Profile:
Subashini Raghavan, Software Test Engineer, Intel MSC Sdn. Bhd, Cyberjaya, Malaysia.
Subashini is a software test engineer with more than 6 years experience in IT industry. She worked as test lead and tester on small to complex manufacturing automation projects since joined Intel in 2001. She is involved in testing framework and testing life cycle definition in her organization. Currently she plays coach and mentor for new test leads in the organization.
She holds a Master Degree in Information Technology from University of Science, Malaysia.
Back to Top
Software Testing and Management
Authored and Presented by Tulasi Anand, Siemens Information Systems Ltd., Bangalore, India
Abstract:
The test management at Siemens Information Systems Ltd, Bangalore, working for Siemens Medical Solutions, USA, is as given below:
- Understanding requirements: Software requirements are analyzed by the test team, along with the development team. The test team uses flow charts, sequence diagrams and tables for this purpose
- Test effort estimation: The test team estimates for test effort independently. Effort estimates are made for designing test cases, preparing test automation scripts, test execution and reporting, using SISL wide baselines for productivity for each activity.
- Designing for test cases and test automation: Test cases are designed in such a way that they are suitable for automation, by appropriate sequencing of test cases, use of pre-created regression data, modularization of test cases, and reusability of test scripts across different applications. Stress, performance tests, button state management tests can be done very well using test scripts
- Integration test strategies: There are 3 kinds’ projects getting executed at OCS, SISL. Different strategies are followed for IT of these projects.
- Performance and Load testing: These includes Stressing the system using business logic, using multiple query and retrieve operations and by using large database
- Metrics to monitor and measure health of the project: Trend charts are made for progress of execution, load on each team, number of defects raised, solution rate, priority etc.
- ROI: By above methods have resulted high defect detection and reduced problems in stability, button state management and high customer and employee satisfaction.
Author’s and Presenter’s Profile:
Tulasi Anand, Siemens Information Systems Ltd., Bangalore, India.
Tulasi has a total of 15 years of Industry experience in various fields like defense research, development and testing in medical imaging applications. He is an M.Tech from IIT, Madras, India. He worked in Defense Resarch Labs, Hyderabad, India, for 5 years, before moving to Siemens Information Systems Ltd. He has been working in SISL for about 10 years since then.
He worked in medical imaging platform of Siemens called Syngo, in Filming and hardcopy modules. He also designed, developed and tested similar module in Sienet Sky application. Since last 5 years, he is involved in Oncology care systems, working for Siemens Medical Solutions, USA. During this period he was involved in designing and developing Physicist application.
He has visited Germany and US several times, in connection with work responsibilities. He also visited 5 other countries in his personal capacity.
Currently he is in charge of entire OCS testing.
Back to Top
The Science and Engineering to Effective Testing
Authored and Presented by T. Ashok, Founder and CEO, STAG Software Pvt. Ltd., Bangalore, India
Abstract:
Software testing is seen as a skill that is deeply dependant on domain experience along with a disciplined test process. It is of course true that domain knowledge and process do play a vital part, but these alone are insufficient. The act of hunting down bugs in the software does have a body of knowledge, whose theory is based on scientific principles can be applied in real-life using engineering techniques. Software development is probably the only discipline of engineering where the business loss due to software mal-function is a disclaimer in the installation script!
How do we know that we have caught all the business-critical defects? Do we know our strategy and design will indeed be effective? Can we measure quality so that we can get better visibility and make informed business decisions? As we embark to build software that is critical to software, guaranteeing quality becomes paramount. The notion of guarantee can only be thought of, if the body of knowledge that governs the test practice is based on well formed theory and application of this theory.
In this plenary talk, the author outlines the need for a method-centric approach that complements the domain centric and will share his success in application of the science of engineering of testing in his 23 years of software development.
Author’s and Presenter’s Profile:
T.Ashok is the Founder and CEO of STAG Software Private Limited, a company that specializes in building clean software.
Passionate about excellence, his mission is to discover methods to build clean software. Enthusiastic about sharing knowledge, he conducts workshops and speaks in key forums. At STAG he is deeply involved in the Science and Engineering of Testing to develop methods and tools to engineer effective tests.
He is an alumnus of IIT Chicago and Anna University, India with over 23 years of work experience.
T. Ashok can be reached at ash@stagsoftware.com. His company website is www.stagsoftware.com
Back to Top
Exploring “Test-Driven Requirements”
Authored and Presented by Phil Robinson, Principle Consultant, Lonsdale Systems, Australia
Abstract:
Test-driven development (TDD) is one of the new breed of "agile" software development techniques. TDD is based on the simple philosophy that the test cases for a new feature should be designed before the feature is implemented. Advocates of TDD claim that it results in shorter development times and better quality code. They cite early defect detection and the ease of regression testing as the main drivers for this improvement.
As TDD grows in popularity, many practitioners are beginning to realise that some of its concepts can be applied to the other phases of the development life cycle. This session explores how the TDD philosophy can be applied to the requirements analysis phase.
The session commences with a brief overview of TDD, followed by an in-depth discussion of “test-driven requirements” (TDR). The discussion focuses on the abstract nature of software requirements and how this makes them difficulties to validate. This is compared with test cases, which provide concrete examples of requirements that are by their very nature, “self-validating”.
The session concludes with a demonstration of the FIT acceptance test framework designed to support TDR in much the same way that the xUnit test frameworks support TDD.
Author’s and Presenter’s Profile:
Phil Robinson, Principle Consultant, Lonsdale Systems, Australia.
Phil has worked with information technology for more than thirty years. During his lengthy career, he has been involved in the planning, analysis and implementation of a diverse range of business, engineering, scientific and technical information systems.
Phil is an experienced workshop facilitator and has led numerous workshops in the course of his consulting assignments. He has extensive training experience, earning a reputation as a lucid and knowledgeable presenter. Phil has presented training courses for clients in Australia, India, Indonesia, Hong Kong, Malaysia, Philippines, Singapore Taiwan and Thailand.
As well as presenting courses, Phil has authored numerous courses for industry and three University units. Earlier in his career, he wrote two books on programming Apple computers. The books were published in a number of countries including the USA, UK and as translations in Germany and France. More recently, Phil has co-authored two award-winning articles describing an original organisational theory and a chapter for a book on enterprise architecture.
Phil has a degree in Electrical Engineering and has trained as a Group Work Leader.
Back to Top
Agile Testing
Authored and Presented by: Vivek Prahlad, Product Manager, ThoughtWorks Studios, India
Abstract:
Agile methods are attracting a lot of interest amongst Software professionals. These methods enable a collaborative, fun approach to software development that has, over the past decade, achieved outstanding delivery results. The methods are especially valuable when requirements change rapidly. Getting testing and automation right is often key to successful agile projects. This talk will share lessons learned at ThoughtWorks over the past 8 years of delivering Agile projects. The talk will attempt to answer the following questions: How does testing integrate with the development process on an Agile project? How does the role of testers change? What are some of the tools and techniques that agile teams tend to use? What are some of the key factors to watch out for?
Author’s and Presenter’s Profile:
Vivek Prahlad, Product Manager, ThoughtWorks Studios, India.
Vivek is an IT professional with 7 years of industry experience. He joined ThoughtWorks Inc. in 2003 after a stint at i2 Technologies, where he led the development of i2’s scheduling products. He is currently the Product Manager of Twist, a next generation functional testing tool from ThoughtWorks Studios.
During his career, Vivek has worked as a technical lead, agile coach, and project manager. He has worked in various software industry verticals, including supply chain management, manufacturing, financial services, and embedded systems. Vivek is the author of Frankenstein (http://www.openqa.org/frankenstein), an Open Source testing tool for Swing applications.
Back to Top
Quality Assurance for the Web 2.0 era
Steven Wong, Senior Technical Consultant, South-east Asia HP Software
Everyone is talking about Web 2.0 today. What is Web 2.0 and what does it mean to the quality assurance community? Whilst Web 2.0 promises new possibilities and opportunities, new challenges are created for the Quality Assurance community.
The goal of this session is to discuss the new capabilities offered by Web 2.0 and the challenges and that come along with it for Quality Assurance. It also aims to share with the audience how to address these challenges and ensure that as organizations move into the Web 2.0 era, Quality Assurance teams can keep up to ensure that these applications are of high quality, performance and secure.
Presenter Profile:
Steven Wong is a Senior Technical Consultant for HP Software for South-east Asia specializing in the Quality Management solutions of HP Software. Steven has been in the IT industry for 10 years and prior to joining HP, he has been working as Software Architect and Developer in the R&D department of various software organizations in Malaysia and Singapore.
Back to Top
Test Process Maturity and Related Measurements
Authored and Presented by M C Nagaraj, Director of Customer Excellence, STAG Software Pvt. Ltd., Bangalore, India
Abstract:
The organizations have moved from “assemble testing team on need basis” to “a focused independent testing team” over years. It is quite natural that the test process to run the organization also has changed drastically to address the entire test life cycle process covering different aspects of process engineering:
- Methods and procedure
- Technology and tools
- People
Organization involved in software development normally chooses standard models as framework to improve their software development life cycle process like ISO 9001, CMMI, SPICE etc. Most of these models do not adequately address testing issues though there are attempts in every new version. Because of the important role of testing in software process and product quality, and the limitations of existing process assessment models, Ilene Burnstein at Illinois Institute of Technology developed the Testing Maturity Model. This model helps organizations to introduce best practices in progressive way and assess the capability and maturity of test process against a set of standards goals.
The quality of measurements collected regarding testing activities improves over the years. This also reflects the level of process maturity achieved. This paper is intended to share authors experience on journey of improvements regarding test related measurement collections observed in the organization over time.
Author’s and Presenter’s Profile:
M C Nagaraj, Director of Customer Excellence, STAG Software Pvt. Ltd., Bangalore, India.
Nagaraj is Director- Customer Excellence, in STAG Software Private Ltd. He has over twenty years of experience in the software discipline and has worked in all the phases of software development life cycle out of which 14 years in the field of Software Test Engineering.
Prior to this he was the Engineering Project Manager in GE-GXS responsible for managing Testing Team for different products. Before joining GE he was Program Manager of Worldwide Software Test and Analysis Group at VeriFone India Ltd, was a division of Hewlett-Packard.
He is passionate about driving process improvement for achieving better business results. He has delivered lectures on Software Engineering, Software Testing and Software process improvement at many organizations. He was certified internal auditor for ISO and part of internal assessment team for CMM model.
He holds an engineering degree in Mechanical discipline from Mysore University. He has completed diploma in Statistical Quality Control (SQC) from ISI. He is also Certified Software Quality Engineer (CSQE) from ASQ. His interests are in the areas of test design, project management, process improvement, and metrics and data analysis using statistical tools.
He had helped many organizations to install a disciplined test process and to improve the process over time. The model used by him in all consulting assignments is Test Maturity Model (TMM). This has helped organizations:
- To commit acceptable goals to their customers and meet with little/no variations
- To reduce the defect escape rate significantly to their customers
- To sustain motivated test engineers in the system for longer duration
Back to Top
Great testing stories from India (Created by Not Following Any "Best Practices"
Authored and Presented by Pradeep Soundararajan, Consulting Tester - Satisfice Inc & Test Manager, TriVium Systems, India
Abstract:
"Pradeep's first language is not English--his first language appears to be testing." -- Michael Bolton
When I was 4 years old, I used to eat sand (not because my mother didn't like me eating sand nor for the reason of poverty but as a child, I think, I liked exploring sand as another food option for me) . It was my mother who helped me know my act of eating sand during child hood and referred to me as 'naughty' during childhood.
I could eat sand without knowing it was called 'sand' and I could be naughty without knowing I was called 'naughty'.
When I started my career as a tester and found the first few bugs, I was told by a senior to do more such "negative testing" to find more such bugs. I asked him, "What is negative testing?" and he replied, "Whatever you did to find these bugs is negative testing".
I could do negative testing without knowing that someone refers to what I am doing as 'negative testing'.
Years later, I blogged that I still didn't understand what negative testing means but ideas of what it could be.
It took me a couple of years to learn that I do many things without knowing how someone calls it and then learned from others how some parts of the community I live in calls it.
All these stories indicate that we might be doing great things without knowing it. What is important to us is doing great things and not necessarily knowing the names but it is good to know the names of the great things we do when we intend to communicate with other people.
Anything that works great for me could make you fail badly. For instance, I can live a 100 years eating curd rice and pickle but you may die falling sick of it OR what medicines that could save me from a headache could kill you because although the common problem we might have is headache the actual root cause is different .
If you disagree to it, 'best practices' fit you well.
If you agree to it, then I am sure you understand why doctors prescribe different medicines for the same person, the next time he /she gets a headache.
In this presentation, you would hear some of the great stories of Indian software testing that fortunately I was a part of and played a role in helping teams achieve the success. What might surprise you is the fact that those teams who did not follow 'best practices' tasted success that teams who claim to follow 'best practices' dream to achieve.
If you are going to listen to these stories in my presentation, I warn you to be aware that you *cannot* see the same success if you try doing things we did.
Welcome to context driven testing!
Author’s and Presenter’s Profile:
Pradeep Soundararajan, Consulting Tester - Satisfice Inc & Test Manager, TriVium Systems, India.
Pradeep is a student and colleague of James Bach, Jerry Weinberg, Michael Bolton and Ben Simo. He coaches, consults, speaks, writes on software testing and problem solving. He practices Rapid, Exploratory and Context Driven Approaches (and humility, too). Pradeep is recognized as one of the most passionate tester worldwide. He coaches, consults, writes and speaks on software testing and problem solving.
Pradeep has served many software products and services organizations in India offering a wide range of services from testing, consulting, managing, coaching and mentoring. Currently, Pradeep manages testing for TriVium ( a leader in converge communication products and services ) in Bangalore and represents James Bach's Satisfice Inc in India.
He writes a blog Tester Tested! ( http://testertested.blogspot.com ) and welcomes testers to get in touch with him through pradeep.srajan@gmail.com
Back to Top
Distributed eXtreme Programming (XP) Testing - An Agile Test Approach for Offshore Outsourcing
Authored and Presented by Shivakumar Balasubramaniyan, Global Testing Delivery Manager, Cognizant Technology Solutions, India
Abstract:
One of the key principles behind XP testing and software development is effective communication and transparency between clients QA testers, software programmers, SME’s and the end users. If there is anything that has been emphasised repeatedly about agile methods, it is the need for real-time communication, preferably face-to-face. This physical proximity is one of the several reasons why agile techniques are so effective. But considering the factors of cost saving and faster time to market, the same approach cannot be taken for a large project or on a long term basis to gain business value. One of the viable solutions to address the above situation is the implementation of a “Distributed eXtreme Programming Testing”.
This white paper explores the need of Distributed XP testing, provides a primer on key challenges of implementation and illustrates the approach of addressing the challenge. The white paper also discusses our experiences in performing Distributed XP testing and has also shown that at the end of day, we can stay true to the values and principles of XP and not compromising the practices in a distributed environment. A Distributed testing teams actively collaborate on a common software/ systems project separated by Distance, Time zone, Culture. In Distributed XP testing model, the team members are physically apart bringing in a relaxation to the XP principle. The team can be distributed across various geographical locations and offshore centres. The offshore team in conjunction with “virtual” team (again at offshore) bridge the distance and bring in XP practices to Distributed testing.
Author’s and Presenter’s Profile:
Shivakumar Balasubramaniyan, Global Testing Delivery Manager, Cognizant Technology Solutions, India.
Shiva is a Global Testing Delivery Manager for Insurance customers across US, UK and Continental Europe managing the testing delivery for Cognizant. He has performed gamut of roles as test manager, test consultant & testing delivery manager for large testing programs and also as testing process consultant.
He is a career testing professional & his strengths are his innovations in testing. Several of his innovations have enabled large multi geography; multi vendor testing programs optimize testing costs and improve quality. Inspired by Olympic motto “Citius, Altius, Fortius”, which in Latin means “Faster, Higher and Stronger”, he applies practical theories from across various industries (manufacturing, IT) in testing in order to deliver solutions faster, better & cheaper.
He has authored the various articles (An Effective Handbook for Implementing Test Strategies, A Handbook for Load Testing, CMM – The Road Not Taken, Software Testing Do’s and Don’ts) in various online QA forums (like www.Stickyminds.com).
His current area of interest is to design a defect prediction model which will also aid in setting up a prediction model for quantifying application quality well early in the testing life cycle.
Back to Top |