Quality Assurance CS 615-616 2002-2003 Pace University Jim Leonardo Milo Auguste Jr. Ritu Mehrotra.

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

Configuration Management
Software Quality Assurance Plan
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 11 Designing for Usability I.
Server-Side vs. Client-Side Scripting Languages
Tutorial 6 Working with Web Forms
Development of a Web Based B&B Reservation System Elizabeth Gates 22July04.
Illinois Institute of Technology
Quality Assurance CS 615. Mission Statement The Quality Assurance team will provide assurance to stakeholders in CS-615/616 projects that their projects.
Quality is about testing early and testing often Joe Apuzzo, Ngozi Nwana, Sweety Varghese Student/Faculty Research Day CSIS Pace University May 6th, 2005.
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Tutorial 6 Working with Web Forms. XP Objectives Explore how Web forms interact with Web servers Create form elements Create field sets and legends Create.
DePaul Bears Try Your Luck!. Why buy this product? Approximately 1,000,000 cell phone users Approximately 2,000,000 or more people play the lottery New.
Agile Testing with Testing Anywhere The road to automation need not be long.
Selecting a Tool 1 When to start evaluating: Current method is not effective Can solve an immediate problem/challenge Can increase productivity and deliverables.
A detailed guide on how to set-up your printing storefront. Please Note: Storefronts are compatible with all browsers, however for optimal use of the admin.
MRC VIEWABLE IMPRESSION RECONCILIATION PROCESS: PHASE 3 RESULTS AND MOVING FORWARD Presented to IAB 3MS Educational Forum July 8, 2015.
Systems Analysis and Design in a Changing World, 6th Edition
Content Management Systems Equals Distributed Web Site Maintenance Robert Gulick, EdD DBA / Technology Trainer Carmi Gulick.
Web Development Process Description
Systems Analysis and Design in a Changing World, 6th Edition
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
CLEANROOM SOFTWARE ENGINEERING.
Software Configuration Management (SCM)
Interim Presentation Group 4 - May 14th, 2012 Langson Library Redesign.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter 2 Process: A Generic View
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Boston University Project Management Association Website Development Group 3 Team3 CS632 Dr. Vijay Kanabar Team Members Mario Soto Emily Ziegler Kevin.
Software Project Documentation. Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design.
Team Skill 6: Building the Right System Managing Change (28)
MSE Presentation 1 By Padmaja Havaldar- Graduate Student Under the guidance of Dr. Daniel Andresen – Major Advisor Dr. Scott Deloach-Committee Member Dr.
Tutorial 6 Working with Web Forms. XP Objectives Explore how Web forms interact with Web servers Create form elements Create field sets and legends Create.
Tutorial 6 Working with Web Forms. 2New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition Objectives Explore how Web forms interact with.
TEST-1 6. Testing & Refactoring. TEST-2 How we create classes? We think about what a class must do We focus on its implementation We write fields We write.
Cs413_design04.ppt Design and Software Development Design : to create a functional interface that has high usability Development : an organized approach.
1 TenStep Project Management Process ™ PM00.9 PM00.9 Project Management Preparation for Success * Manage Quality *
Members: Adam Lee, Kartik Subbu, Nick Oakman, and Gabriel Semonis Advisor: Professor Daji Qiao.
Software Configuration Management (SCM). Product Developer Disciplines One view of the world is that there are three types of activities are required.
By Godwin Alemoh. What is usability testing Usability testing: is the process of carrying out experiments to find out specific information about a design.
Tutorial 6 Working with Web Forms. 2New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition Objectives Explore how Web forms interact with.
8 th Semester, Batch 2009 Department Of Computer Science SSUET.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 13 Usability 1.
GROUP PresentsPresents. WEB CRAWLER A visualization of links in the World Wide Web Software Engineering C Semester Two Massey University - Palmerston.
Lab 301 Populating Template Data from a Third Party Data Source Justin Pava, Software Release Manager Andrew Schoonmaker, Software QA Engineer.
CIS-NG CASREP Information System Next Generation Shawn Baugh Amy Ramirez Amy Lee Alex Sanin Sam Avanessians.
Non Functional Testing. Contents Introduction – Security Testing Why Security Test ? Security Testing Basic Concepts Security requirements - Top 5 Non-Functional.
How to develop a VoIP softphone in C# by using OZEKI VoIP SIP SDK This presentation demonstrates the first steps concerning to how to develop a fully-functional.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
Section 10.1 Define scripting
Configuration Management
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Project Configuration Management
Regression Testing with its types
CMPE 280 Web UI Design and Development August 29 Class Meeting
DePaul Bears Try Your Luck!.
Chapter 18 Maintaining Information Systems
System Design Ashima Wadhwa.
Configuration Management
DCR ARB Presentation Team 5: Tour Conductor.
GLAST Release Manager Automated code compilation via the Release Manager Navid Golpayegani, GSFC/SSAI Overview The Release Manager is a program responsible.
UNH Programming Assistance Center Automation
Cookies BIS1523 – Lecture 23.
Engineering Processes
Lecture 09:Software Testing
Software Verification, Validation, and Acceptance Testing
Web Standards and Accessible Design.
Presentation transcript:

Quality Assurance CS Pace University Jim Leonardo Milo Auguste Jr. Ritu Mehrotra

Mission Statement The Quality Assurance team provides assurance to stakeholders in CS- 615/616 projects that their projects meet their requirements for correctness, usability, reliability, and maintainability The Quality Assurance team provides assurance to stakeholders in CS- 615/616 projects that their projects meet their requirements for correctness, usability, reliability, and maintainability

General Tasks Establishment of Best Practices Establishment of Best Practices Testing for Correctness Testing for Correctness Concurrency Testing for Server Based Applications Concurrency Testing for Server Based Applications Assuring Maintainability Assuring Maintainability Evaluating Usability Evaluating Usability Tracking of Compliance to All of the Above Tracking of Compliance to All of the Above

Best Practices Guidelines Guidelines When applicable, RDBMS databases should be used. Local databases such as MS Access should be avoided (Performance, Reliability) When applicable, RDBMS databases should be used. Local databases such as MS Access should be avoided (Performance, Reliability) If a given language makes it optional to force variable declaration, it should be turned on. (Reliability, Maintainability) If a given language makes it optional to force variable declaration, it should be turned on. (Reliability, Maintainability) Code should be commented before or during typing. (Maintainability) Code should be commented before or during typing. (Maintainability)

Guidelines continued Guidelines continued When public classes are created, all public interfaces should be documented separately from internal code documentation. (Maintainability, Usability) When public classes are created, all public interfaces should be documented separately from internal code documentation. (Maintainability, Usability) Browser based applications should be compatible with more than one browser (Reliability, Usability) Browser based applications should be compatible with more than one browser (Reliability, Usability) Any user input should be pre-filtered to prevent database errors (Reliability, Usability) Any user input should be pre-filtered to prevent database errors (Reliability, Usability) Best Practices

Guidelines continued Guidelines continued Ensure that you can’t get lost on web pages… You should always be able to navigate the website as easily as navigating any application. Ensure that you can’t get lost on web pages… You should always be able to navigate the website as easily as navigating any application. Websites requiring login should also allow logout and should redirect any restricted page back to the login screen if you are not currently logged in. Websites requiring login should also allow logout and should redirect any restricted page back to the login screen if you are not currently logged in. Fields, buttons, etc. should be labeled consistently Fields, buttons, etc. should be labeled consistently

Correctness Testing Step 1: Review of requirements/design documents Step 1: Review of requirements/design documents Step 2: Use Case Testing Step 2: Use Case Testing Step 3: Break/Load testing. Step 3: Break/Load testing.

Technologies Pre-made software Pre-made software OpenSTA automated virtual user scripting and load testing for HTTP/HTTPS OpenSTA automated virtual user scripting and load testing for HTTP/HTTPS Mozilla general purpose web browser used for secondary testing Mozilla general purpose web browser used for secondary testing

Questionnaire Result Highlights Determining and Setting up technology took on average 2.7 weeks, median was 2 weeks…or 5 weeks if you drop out the projects with strong tech. requirements. Determining and Setting up technology took on average 2.7 weeks, median was 2 weeks…or 5 weeks if you drop out the projects with strong tech. requirements. Arcview, MySQL, J2ME, Matlab, and Java were specifically requested to be used by the customers. Arcview, MySQL, J2ME, Matlab, and Java were specifically requested to be used by the customers. Our projects are using such technologies as PHP, Oracle, MySQL, Java, Apache, ColdFusion, C++, and Perl…and just about everything else. Our projects are using such technologies as PHP, Oracle, MySQL, Java, Apache, ColdFusion, C++, and Perl…and just about everything else. At the middle of this semester, only about 45% of the projects felt that they were more than 80% complete. At the middle of this semester, only about 45% of the projects felt that they were more than 80% complete. Everyone felt that they supplied 70% or more of the requirements for the project to the customer, not the other way around. Everyone felt that they supplied 70% or more of the requirements for the project to the customer, not the other way around. Half of the projects had settled on more than 70% of their requirements at the end of the first semester. Half of the projects had settled on more than 70% of their requirements at the end of the first semester. More than 60% of project teams felt that there would be additional work beyond general maintenance required at the end of the semester) More than 60% of project teams felt that there would be additional work beyond general maintenance required at the end of the semester)

Case Studies System Web Based? Phone Based? GenealogyX Absentee System XX Yellow Pages X Complaint Desk X

Genealogy System First testing and feedback in November/December First testing and feedback in November/December System was entirely rewritten since the original tests were performed System was entirely rewritten since the original tests were performed Seven major issues uncovered in the first version, these were not repeated in the second version. This demonstrates the value of early testing. Seven major issues uncovered in the first version, these were not repeated in the second version. This demonstrates the value of early testing. Despite early testing, more issues were uncovered, demonstrating the need for ongoing testing. Despite early testing, more issues were uncovered, demonstrating the need for ongoing testing.

Absentee System Original testing in November/December revealed three errors, these were addressed shortly thereafter. Original testing in November/December revealed three errors, these were addressed shortly thereafter. QA was able to identify several areas of the old ( ) system that were not in conformance with best-practices. QA was able to identify several areas of the old ( ) system that were not in conformance with best-practices. A redesigned web-interface was introduced A redesigned web-interface was introduced Reasons for this: Usability/Cosmetic Appeal and Conformance. Reasons for this: Usability/Cosmetic Appeal and Conformance. QA verified that no further errors were introduced and best-practices related issues were addressed during this transition. QA verified that no further errors were introduced and best-practices related issues were addressed during this transition.

Yellow Pages This was a new undertaking for Spring ’03 This was a new undertaking for Spring ’03 Testing performed using both “corded”, cordless and cellular telephones. No noticeable impact was observed as a result of the phone type. Testing performed using both “corded”, cordless and cellular telephones. No noticeable impact was observed as a result of the phone type. Unable to perform concurrency verification due to limit of 1 phone line into the system. Unable to perform concurrency verification due to limit of 1 phone line into the system. The overall quality of this system was impaired by the (third party) speech engine that was used. It had a number of problems with recognizing some words and needed to be spoken to very slowly. The overall quality of this system was impaired by the (third party) speech engine that was used. It had a number of problems with recognizing some words and needed to be spoken to very slowly.

Complaint Desk This was a new project to Spring ’03, it was hoped it would share much with a previously developed help desk system. This was a new project to Spring ’03, it was hoped it would share much with a previously developed help desk system. The team generally avoided repeating the same types of errors from the prior system, but there were a few that did creep in. The team generally avoided repeating the same types of errors from the prior system, but there were a few that did creep in. Errors that were repeated centered mostly around data validation items like checking length of text that needed to be implemented on new fields. Errors that were repeated centered mostly around data validation items like checking length of text that needed to be implemented on new fields.

Conclusions Too much time was spent determining technologies to be used…this could be alleviated by standardizing. Too much time was spent determining technologies to be used…this could be alleviated by standardizing. Standardizing would also allow for component reuse between projects and successive years. (No need for everyone to create their own login form) Standardizing would also allow for component reuse between projects and successive years. (No need for everyone to create their own login form) A forum for knowledge sharing should be created and utilized. A forum for knowledge sharing should be created and utilized. One more milestone should be added to each semester for code delivery. One more milestone should be added to each semester for code delivery. QA could be provided in the future by requiring teams to cross test each others’ systems. QA could be provided in the future by requiring teams to cross test each others’ systems.