SPRAE A Framework for Teaching Software Testing Edward L. Jones Florida A&M University.

Slides:



Advertisements
Similar presentations
A Systems Approach To Training
Advertisements

Candidate Student: Maxim Shvetsov Professor Alexander Settles
©2006 OLC 1 Process Management: The Foundation for Achieving Organizational Excellence Process Management Implementation Worldwide.
Designing new systems or modifying existing ones should always be aimed at helping an organization achieve its goals State the purpose of systems design.
COE Labs Objectives and Benefits. General Objectives 1.Students’ training using state-of-the-art facilities through course labs 2.Enable world-class research.
Planning a measurement program What is a metrics plan? A metrics plan must describe the who, what, where, when, how, and why of metrics. It begins with.
© Prentice Hall CHAPTER 9 Application Development by Information Systems Professionals.
Computers: Tools for an Information Age
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Copyright © 2005 Pearson Education Inc. Personal Selling and Direct Marketing Chapter 17 PowerPoint slides Express version Instructor name Course name.
Evolving an Elective Software Testing Course: Lessons Learned Edward L. Jones Florida A&M University Tallahassee, FL USA 3rd Workshop on Teaching Software.
INTEL CONFIDENTIAL, FOR INTERNAL USE ONLY 1 Intel Teach Essentials Program Curriculum Roundtable – Oxford – July 2013.
Science Inquiry Minds-on Hands-on.
All Aspects of the Industry SDCOE-ROP/CTE Fall 2012.
Y. Rong June 2008 Modified in Feb  Industrial leaders  Initiation of a project (any project)  Innovative way to do: NABC ◦ Need analysis ◦ Approach.
Privileged and Confidential Strategic Approach to Asset Management Presented to October Urban Water Council Regional Seminar.
By: Taylor Helsper.  Introduction  Test Driven Development  JUnit  TDD Example  Conclusion.
Software Engineering Experimentation Software Engineering Specific Issues (Mostly CS as well) Jeff Offutt
JIC ABET WORKSHOP No.4 Guidelines on: II Faculty Survey Questionnaire.
Teaching Fellow Admissions Tutor for Computer Science Director of Undergraduate Studies.
ISERN-Meeting, Honolulu, Hawaii 09 October 2000 Slide 0 Using Experiments to Teach Software Engineering Using Experiments to Teach Software Engineering.
Succeeding with Technology Systems Development An Overview of Systems Development Tools and Techniques for Systems Development Systems Investigation Systems.
Unit 2: Engineering Design Process
Architect By: Chia-Jade Lee & Chloe Horgan By: Chia-Jade Lee & Chloe Horgan.
Technology Leadership
Critical and creative thinking Assessment Tool How could schools use the tool? Sharon Foster.
Pertemuan 5 Pengembangan Teknologi Informasi Matakuliah: H0402/PENGELOLAAN SISTEM KOMPUTER Tahun: 2005 Versi: 1/0.
Lecture 1 What is Modeling? What is Modeling? Creating a simplified version of reality Working with this version to understand or control some.
August 3,  Review “Guiding Principles for SLO Assessment” (ASCCC, 2010)  Review Assessment Pulse Roundtable results  Discuss and formulate our.
RUP Implementation and Testing
Suwimon Vongsingthong Department of Information Technology and Management, Krirk University, Thailand
Integrating Evaluation into the Design of the Minnesota Demonstration Project Paint Product Stewardship Initiative St. Paul, MN May 1, 2008 Matt Keene,
Athena, a large scale programming lab support tool Anton Jansen, Ph.D. Student Software Engineering and ARCHitecture (SEARCH) University of Groningen The.
By Touseef Tahir Software Testing Basics. Today's Agenda Software Quality assurance Software Testing Software Test cases Software Test Plans Software.
Big Idea 1: The Practice of Science Description A: Scientific inquiry is a multifaceted activity; the processes of science include the formulation of scientifically.
BUSINESS INFORMATICS descriptors presentation Vladimir Radevski, PhD Associated Professor Faculty of Contemporary Sciences and Technologies (CST) Linkoping.
Configuration Management (CM)
Learning outcomes for BUSINESS INFORMATCIS Vladimir Radevski, PhD Associated Professor Faculty of Contemporary Sciences and Technologies (CST)
* Research suggests that technology used in classrooms can be especially advantageous to at-risk, EL, and special ed students. (Means, Blando, Olson,
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
Human Resource Management Presentation 1 Human Resource Management Team Id: By:- Bhavin S. Mungara ( ) Nilesh D. Mangroliya ( )
21-25 Feb 2001SIGCSE 2001 Integrating Testing into the Curriculum – Arsenic in Small Doses Edward L. Jones CIS Department Florida A&M University Tallahassee,
Monitoring and Evaluation Management of a Training Program.
Georgia Institute of Technology CS 4320 Fall 2003.
XP Explained Chapters 7-9. Primary Practices  Sit together Ideal Resistance Multi-site  Whole Team All the necessary skills in a single management structure.
Systems Analysis and Design
15 Nov 2005 Jones - IASTED/SEA 1 Automated Support for Test-Driven Specification Edward L. Jones IASTED SEA Conference Phoenix, Arizona October 14-16,
Rational Unified Process Fundamentals Module 5: Implementing RUP.
CEN 5070 – Software V&V What is Software Testing © , Dr. E.L. Jones.
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. BUSINESS PLUG-IN B19 Global Information Systems.
Chapter 11 Managing Application Development. Agenda Application management framework Application management issues Criteria for development approach Development.
Workshop #1: Introduction to Graduation Project Wednesday September 2 nd at 10 am Capstone Committee Department of Computer Science.
Integrating Evaluation into the Design of the Minnesota Demonstration Project Paint Product Stewardship Initiative St. Paul, MN May 1, 2008 Matt Keene,
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Proposed Course: ENG450: Multidisciplinary Design Bob Dennis.
Continual Service Improvement Methods & Techniques.
Chapter 29 Conducting Market Research. Objectives  Explain the steps in designing and conducting market research  Compare primary and secondary data.
Info-Tech Research Group1 Info-Tech Research Group, Inc. Is a global leader in providing IT research and advice. Info-Tech’s products and services combine.
BEST PRACTICE. Training firm is an educational concept based on “learning by doing”. It is a simulation of a real company, which can be achieved through.
Florida A&M University
Florida A&M University
Essential Needs of Software Test Automation
The Florida A&M University Software TestLab Role and Opportunities
Korea Education and Research Information Service (KERIS)
6 Recommendations for Driving Business Value from Test Automation.
Scientific Methods.
TAKS, Inquiry, Standards and Assessment
The Assessing Cycle Module 1 Assessment Assessment Accountability Data
Principles of an ERP Implementation
Quality management and Process improvement
Presentation transcript:

SPRAE A Framework for Teaching Software Testing Edward L. Jones Florida A&M University

Purpose Software testing is neglected in curriculum Students miss out on surprising benefits from not learning to test An approach to integrating testing into the undergraduate curriculum. Approach is based on a few, simple principles

Outline Problem: Testing in the curriculum. Past FAMU Approaches FAMU Software TestLab Initiative The SPRAE Framework & Example On-Going Work Conclusion

The Problem Building Testing Building Testing INDUSTRY In Industry: Testing is 50% of software cost!

The Problem In the University: Where’s the Beef? Building Testing UNIVERSITY

Why No Testing? Heredity – teacher not trained No room in curriculum Attitude Digression from the fun part A necessary evil Not as important as creative part TESTING is HARD!!

Why Change? Testing integrates software skill sets Analysis … Logic … Writing Design … Programming Experimentation Testers make better software engineers

Past Approaches Testing in senior courses (ad-hoc) Elective course offered in 1999 Goal = integrate into all courses TestLab = training/dissemination environment SPRAE = essential principles/practices

TestLab: Big Picture Marketing Proposals Support ($$) Curriculum Students Software TestLab Research Publications Corporate Sponsors

SPRAE Principles S S pecification – no spec, no test P P remeditation – follow a process R R epeatability – write down actions A A ccountability – record results E E conomy – save labor, don’t skip steps

SPRAE Test Life Cycle Design Implementation Execution Evaluation Analysis Testing uses software development skills.

Example - Pay (S) Specification: Compute pay for an employee, given Hours worked and hourly pay Rate; overtime is 1.5 times hourly Rate, for Hours above 40. Hours Rate Pay Compute Pay

Principle P Premeditation: Use a systematic process to devise test cases based on the specification. One Technique: Decision analysis -- identify behaviors One test case per behavior Determine expected result

Example - Pay Test Case Design: Decision Table. Columns identify behaviors to test.

Principle R Repeatability: Processes for test case creation and test execution must yield equivalent results, independently of the tester.

Principle A Accountability: Records must be kept that document the test process and its artifacts. Documentation answers: What tests were planned? Which tests were conducted? Who did what testing, and when? What were the results? How were the results interpreted?

Example - Pay Repeatability/Accountability:

Principle E Economy: Test activities must not require excessive time or effort. Automation Test drivers (classical tool) Simplified processes for Test case generation Data collection

Why SPRAE? “SPRAE” is a mnemonic for essentials Through one testing experience, students learn the key principles These principles transfer to new test experiences SPRAE explains the “what and why” A framework for life-long learning.

On-Going Work Modules for Fall 2000 courses Software Engineering Data Structures Train students TestLab infrastructure website:

Conclusions Software testing need not be neglected in curriculum. No need for a “big bang” approach. Testing can be integrated into the curriculum incrementally. Students realize far-reaching benefits from even simple testing experiences.