Presented To: September 9, 2015 CONFIDENTIAL Copyright 2007, TopCoder, Inc. Sean Campion [scamp] 27 June 2007 TopCoder Open, Las Vegas TopCoder Component-Based.

Slides:



Advertisements
Similar presentations
MGD Services, Inc. The IT Quality Assurance Specialists
Advertisements

Inktomi Confidential and Proprietary The Inktomi Climate Lab: An Integrated Environment for Analyzing and Simulating Customer Network Traffic Stephane.
High level QA strategy for SQL Server enforcer
Topics to be discussed Introduction Performance Factors Methodology Test Process Tools Conclusion Abu Bakr Siddiq.
Web Development Engineering Processes Introduction to Web Development Outsourcing Processes.
Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Copyright  2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency. All rights reserved. TEA confidential and proprietary.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
GAI Proprietary Information
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
Chapter 6 SYSTEMS DEVELOPMENT Phases, Tools, and Techniques
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
- 1 - Component Based Development R&D SDM Theo Schouten.
APPLICATION DEVELOPMENT BY SYED ADNAN ALI.
Chapter 6 Systems Development: Phases, Tools, and Techniques
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Difference between project and other assignments real customer before programming: negotiations with client to clarify requirements often changes.
Introduction to Software Testing
Agile Testing with Testing Anywhere The road to automation need not be long.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
000000_1 Confidential and proprietary information of Ingram Micro Inc. — Do not distribute or duplicate without Ingram Micro's express written permission.
12.
SOFTWARE QUALITY ASSURANCE PRACTICE IN JAPAN
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Second-Hand Shopping: Efficient Component Reuse TopCoder, Inc. Sean Campion, Project Manager [scamp]
L6 - March 1, 2006copyright Thomas Pole , all rights reserved 1 Lecture 6: Software Packaging: Dynamically Integrable Components and Text Ch.
Page 1 MODEL TEST in the small GENERALIZE PROGRAM PROCESS allocated maintenance changes management documents initial requirement project infrastructure.
© Blackboard, Inc. All rights reserved. Back to the Feature: An Agile, User-centric Software Development Lifecycle Cindy Barry Senior Product Manager Martha.
From Research Prototype to Production
Web Trnsport – Beta Testing and Implementation TUG Roundtable Discussion Elizabeth Rodgers Info Tech, Inc. October 9, 2007.
Test Roles and Independence of Testing Telerik Software Academy Software Quality Assurance.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Introduction to Software Engineering
 CS 5380 Software Engineering Chapter 8 Testing.
1 10/14/2015ã 2007, Spencer Rugaber The Waterfall Process Software plans and requirements Validation System feasibility Validation Product design Verification.
Chapter 1: Introduction Omar Meqdadi SE 2730 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Dr. Tom WayCSC Testing and Test-Driven Development CSC 4700 Software Engineering Based on Sommerville slides.
1 Software Engineering Ian Sommerville th edition Instructor: Mrs. Eman ElAjrami University Of Palestine.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer, Progress Sonic.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer Progress Sonic.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Engineering Lecture # 1.
July, 2008 Impati – Software Test Solutions. July, Contents Testing Service Overview and Approach Test Services and Industries Key Services Offering.
CS223: Software Engineering Lecture 4: Software Development Models.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
T Iteration Demo Tikkaajat [PP] Iteration
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Software architecture is the high- level structure of a software system. It has no concrete definition but can be best described as an organizational.
Copyright 2015, Robert W. Hasker. Classic Model Gathering Requirements Specification Scenarios Sequences Design Architecture Class, state models Implementation.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Engineering (CSI 321)
Software Verification and Validation
Software Life Cycle “What happens in the ‘life’ of software”
CHAPTER 2 Testing Throughout the Software Life Cycle
Software Development Life Cycle
Introduction to Software Testing
Quality Assurance in an Agile Development Team Michelle Wu 2018 PNSQC
SYSTEMS ANALYSIS & DESIGN
The Software Testing Life Cycle
Chapter 5 Architectural Design.
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

Presented To: September 9, 2015 CONFIDENTIAL Copyright 2007, TopCoder, Inc. Sean Campion [scamp] 27 June 2007 TopCoder Open, Las Vegas TopCoder Component-Based Software Engineering (CBSE) Quality Assurance (QA)

CBSE Quality Assurance Specific Challenges TopCoder Process from QA perspective Wrap-up [ ] Agenda CONFIDENTIAL Copyright 2007, TopCoder, Inc.

[ ] CBSE Quality Assurance Specific Challenges CONFIDENTIAL Copyright 2007, TopCoder, Inc. The following are common QA problems cited against the use of reusable components. I will discuss each issue, and what TopCoder does to address the issue.

[ ] CBSE Quality Assurance Specific Challenges CONFIDENTIAL Copyright 2007, TopCoder, Inc. Issue: Lack of access to commercial component source code. TopCoder: We provide both the source code and all design documentation for every component that we produce.

[ ] CBSE Quality Assurance Specific Challenges CONFIDENTIAL Copyright 2007, TopCoder, Inc. Issue: Components are not readily testable. TopCoder: All of our components are required to have unit tests of stress, failure, and accuracy.

[ ] CBSE Quality Assurance Specific Challenges CONFIDENTIAL Copyright 2007, TopCoder, Inc. Issue: Difficult to use and interpret tests from component vendors TopCoder: Our documentation provides examples on how to run the tests; we also provide the test results in the form of logs.

[ ] CBSE Quality Assurance Specific Challenges CONFIDENTIAL Copyright 2007, TopCoder, Inc. Issue: Concern that components were not developed for a specific operating environment; and that developing a component test bed for all possible environments is too costly and time consuming. TopCoder: We are developing a software system that will take advantage of participants diverse environments to test components.

[ ] CONFIDENTIAL Copyright 2007, TopCoder, Inc. -Distributes component tests to participating computers. -Takes advantage of diverse environments, hardware, character sets, and so on. -Massively parallel -Can be setup at customer sites to start validating existing components during architecture phase on actual target environment. -Customers can use to test their own components. -Ideal for regression-testing when component is updated.

[ ] CONFIDENTIAL Copyright 2007, TopCoder, Inc.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Specification Phase -Mid and end-point peer reviews of the application specification, conducted by 2 Project Managers and 1 Architect. -High-level test cases, tied to application level functionality, developed. -Customer review and sign-off on application specification.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Architecture Phase -Mid and end-point peer reviews of the architecture design, conducted by 1 Project Manager and 2 Architects. -High-level test cases expanded into detailed test cases and scenarios. -Customer review and sign-off on architecture design. -Future: Existing components identified for reuse can be validated using including on the customer target systems if desired.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Component Production Phase - Design -Design competitions; designers know they are competing against each other. -Automated submission screening tool. -Manual screening phase. -Review Board. -Scorecard-based evaluation. -Final fixes. -Winning designer required to support the development phase.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Component Production Phase - Development -Development competitions; developers know they are competing against each other. -Automated submission screening tool. -Manual screening phase. -Review Board. -Scorecard-based evaluation. -Final fixes. -Unit tests: stress, failure, accuracy -Coverage Tool: minimum of 85% line coverage from unit tests.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Assembly Phase -Assembly competitions; teams know they are competing against each other. -Manual screening phase. -Review Board. -Scorecard-based evaluation. -Final fixes.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Assembly Phase - Testing -Testing competitions; teams know they are competing against each other. -Produces automated tests that will be run against the assembly competition submissions.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Certification Phase -Replicate the customer’s target environment on a TC server. -Deploy and rigorously test the winning assembly submission. -Run automated tests against the submission. -Run manual tests against the submission. -Early customer access to the TC testing environment for immediate feedback.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. User Acceptance Testing Phase -Customer has option of performing their own User Acceptance Testing. -TopCoder will directly support any UAT.

[ ] TopCoder Process from a QA Perspective CONFIDENTIAL Copyright 2007, TopCoder, Inc. Deployment Phase -TopCoder will support the deployed application for 90 days. -Customer receives all source code, including component source code, and all design documentation from all phases.

[ ] Metrics CONFIDENTIAL Copyright 2007, TopCoder, Inc. Here’s how TopCoder compares to industry standards: Industry Defects per KLOC: 3.43 TopCoder Defects per KLOC: 2.10

[ ] Wrap-Up CONFIDENTIAL Copyright 2007, TopCoder, Inc. -Quality Assurance addressed at every stage of the process in one form or another. -TopCoder continuously looking to improve QA through processes and tools. addresses a primary concern of reusable components. -Quality software distinguishes TopCoder from other software.

[ ] References CONFIDENTIAL Copyright 2007, TopCoder, Inc. -“Testing and Quality Assurance for Component-Based Software”, Jerry Zeyu Gao, H.-S. Jacob Tsao, & Ye Wu; Artech House, Boston, “Risk Management in Component-Based Development: A Separation of Concerns Perspective”, Awais Rashid, Gerald Kotonya, Computing Department, Lancaster University, UK. -“The Trouble With Testing Components”, Elaine J. Weyuker, in “Component Based Software Engineering”, Chapter 28, Addison-Wesley, “CBS Testing Requirements and Test Case Process Documentation Revisited”, Nasib S. Gill, Pradeep Tomar, Department of Computer Science and Applications, Haryana India, March From ACM SIGSOFT Software Engineering Notes, Volume 32 Number 2. -“The QSM Software Alamanac: Application Development Series”, QSM Inc., 2006.