Acceptance and Delivery

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

High level QA strategy for SQL Server enforcer
Software change management
Configuration management
Tutorial 9 Lanjun Zhou SEEM Outline Introduction to Assignment Phase 4 Transition to the new System (Chapter 13) – Making the transition to the.
System Analysis and Design (SAD )
Chapter 15 Design, Coding, and Testing. Copyright © 2005 Pearson Addison-Wesley. All rights reserved Design Document The next step in the Software.
1 CS 501 Spring 2007 CS 501: Software Engineering Lecture 25 Delivering the System Business Considerations.
CS CS 5150 Software Engineering Lecture 19 Acceptance and Delivery.
Software Project Transition Planning
Illinois Institute of Technology
CS CS 5150 Software Engineering Lecture 20 Acceptance and Delivery.
Systems Analysis and Design in a Changing World, 6th Edition
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 26 Delivering the System.
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
Software Development, Programming, Testing & Implementation.
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
This chapter is extracted from Sommerville’s slides. Text book chapter
Systems Development Dr. Ashok Agarwal.
Extreme Programming Software Development Written by Sanjay Kumar.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Software Engineering Chapter 15 Construction Leads to Initial Operational Capability Fall 2001.
CompSci 230 Software Design and Construction
SYSTEMS ANALYSIS FORM 4 Included in this topic: Information Systems Systems Analysts System Life Cycle (incl. Case Study) Documentation.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
ITEC 275 Computer Networks – Switching, Routing, and WANs Week 12 Chapter 14 Robert D’Andrea Some slides provide by Priscilla Oppenheimer and used with.
Configuration Management (CM)
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 23 Reliability III.
Systems Analysis and Design
1 Technical & Business Writing (ENG-315) Muhammad Bilal Bashir UIIT, Rawalpindi.
What is Testing? Testing is the process of exercising or evaluating a system or system component by manual or automated means to verify that it satisfies.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 24 Delivering the System.
Configuration Management CSCI 5801: Software Engineering.
CS 360 Lecture 18.  Acceptance testing  The complete system, including documentation, training materials, installation scripts, etc. is tested against.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 26 Delivering the System.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
Extreme Software Engineering A Hands-On Approach From Extreme Software Engineering: A Hands-On Approach Daniel H. Steinberg Daniel W. Palmer.
ITEC 275 Computer Networks – Switching, Routing, and WANs Week 12 Chapter 14 Robert D’Andrea Some slides provide by Priscilla Oppenheimer and used with.
MANAGEMENT INFORMATION SYSTEM
1. WELCOME Project Management Cycle (P.M.C.) What is a project? : What is project management?: Project management life cycle : Phase 1 st : Phase 2 nd.
ITEC 275 Computer Networks – Switching, Routing, and WANs
Software Development - Methodologies
Provide instruction.
Software Configuration Management
Testing the System.
User Documentation Stored information about how to use a system
Systems Analysis & Design N106
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Description of Revision
Chapter 10 Systems Implementation and Operation
Relate to Clients on a business level
Lecture-5 Implementation of Information System Part - I Thepul Ginige
Lecture 09:Software Testing
CSCI 577b Tasks and Activities
ICTSAS305 Provide Advice to Clients
Systems Analysis and Design
Software engineering -1
SYSTEMS ANALYSIS & DESIGN
1.2 System Design Basics.
Systems Construction and Implementation
System Construction and Implementation
Systems Construction and Implementation
Configuration management
Extreme Programming.
CS 501: Software Engineering
Evolutionary Software Process Models
Rapid software development
{Project Name} Organizational Chart, Roles and Responsibilities
Presentation transcript:

Acceptance and Delivery CSCI 5801: Software Engineering

Acceptance Testing Complete system is tested against the requirements by client, assisted by developers including documentation, training materials, installation scripts, etc.

Acceptance Testing Black box testing by the client without knowledge of the internal structure The entire system is tested as a whole Emphasis on whether system meets requirements Tests should use real data in realistic situations, with actual users, administrators, and operators The acceptance test must be successfully completed before a new system can go live/replace a legacy system Completion of acceptance test may be a contractual requirement before the system is paid for

Acceptance Testing in Iterative Models Customer will have already tested many parts of the system At the end of each iteration During user testing in XP Problems and suggestions for improvement will have been incorporated Must still be an acceptance test of the final version before it is released Customer is ultimately interested in system as a whole

Acceptance Testing Good acceptance testing requires careful planning For each functional requirement: Describe scenario to customer Allow them to accomplish scenario on system For each non-functional requirement: Create stress test that describes “worst case scenario” within bounds of requirements Explain and demonstrate system passes stress test

Acceptance Testing Acceptance testing ultimately controlled by customer During one test, customer may want to follow another branch (“what would happen if I…”) Role of developers is to provide assistance when necessary Introduce scenario, its goals and major steps Give customers guidance to accomplish steps when needed

Testing and Release Stages Alpha Testing: Clients operate the system in a realistic but non-production environment Example: Prof. Bodnovich uses system pretending to be employers/students Beta Testing: Clients operate the system in a carefully monitored production environment Example: Select employers and students are allowed to use the system, providing feedback on its usability

Testing and Release Stages Parallel Testing: Clients operate the new system alongside the old system with same data and compare results Can be expensive and may take months! Requires two of everything (staff, equipment, etc.) Requires software to control changeover (do not mail two sets of payments, etc.) Requires automated scripts to compare results Ideally, the new system will be brought into production incrementally

Other Deliverables Everything needed to install software Help systems Configuration files Data files needed for system operation An installation program or shell script to install the system on target hardware Help systems Training materials

Help Systems Users need many routes to find information (people learn in different ways) Index by many terms Examples Tutorials Help systems need to be tested with real users (just like other parts of system) Tradeoffs A good help system requires a major commitment (time, expense, difficulty) A good help system saves user time and support staff effort

Training Providing users with knowledge necessary to fulfill role in system Types of training: One on one training sessions for critical users Classes for large groups of every day users On-line tutorials for other users Help materials

Help and Training Systems Different materials (at different levels of detail) for different users Different types of users (faculty, advisors, students in Banner) System maintenance Other trainers… Different skill levels need different types of training Skilled users work from the conceptual model, relating the system to a task they already know well Less-skilled users prefer cookbook sets of instructions Occasional users will forget complex details, but remember general structure, so will need reminders when requested