UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests...

28
UCAIug Testing Subcommittee Boot Camp © 2011 EnerNex. All Rights Reserved. www.enernex.com

Transcript of UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests...

Page 1: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

UCAIug Testing Subcommitteeg gBoot Camp

© 2011 EnerNex. All Rights Reserved. www.enernex.com

Page 2: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

AgendaAgendaAgendaAgenda

Introduction to 3 UCAIug groupsIntroduction to 3 UCAIug groups

Testing Overview

Testing DetailsTesting Details

Development of a Testing Program

© 2011 EnerNex. All Rights Reserved. www.enernex.com2

Page 3: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Introduction to UCAIug groupsIntroduction to UCAIug groupsIntroduction to UCAIug groupsIntroduction to UCAIug groups

UCAIug – how did we get here?UCAIug  how did we get here?

– MMS Forum ‐ 1993

– AEP Substation Initiative ‐ 1996AEP Substation Initiative  1996

– UCA2 Users Group ‐ 1999

UCA International Users Group – 2002– UCA International Users Group – 2002

Why did we get hereWhy did we get here

– Share experiences

P t d ti f d l i t d d

© 2011 EnerNex. All Rights Reserved. www.enernex.com

– Promote adoption of underlying standards

3

Page 4: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

IEC 61850 Users GroupIEC 61850 Users GroupIEC 61850 Users GroupIEC 61850 Users Group

This was the start of UCAIugThis was the start of UCAIug

Started as protocol with a substation

Is now far more than a protocol a way of lifeIs now far more than a protocol, a way of life

Based upon MMS, ISO, TCP/IP

Defines conformance suites for various productDefines conformance suites for various product

Defines performance test for “GOOSE”

Created QAPCreated QAP

Has Certificate program without logo

© 2011 EnerNex. All Rights Reserved. www.enernex.com4

Page 5: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

CIM Users GroupCIM Users GroupCIM Users GroupCIM Users Group

Second group to join UCAIugSecond group to join UCAIug

Large user group

Started as object database standardStarted as object database standard

Now deals with object transport

Based upon XML TCP/IPBased upon XML, TCP/IP

Defines interoperability suites for various use cases

Performs pre standards tests (verifies standardsPerforms pre‐standards tests (verifies standards BEFORE they are issued

Has no formal Certificate program

© 2011 EnerNex. All Rights Reserved. www.enernex.com

Has no formal Certificate program

5

Page 6: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Open Smart Grid Users GroupOpen Smart Grid Users GroupOpen Smart Grid Users GroupOpen Smart Grid Users Group

This is most recent entry to UCAIugThis is most recent entry to UCAIug

Has diverse user base

Device and enterprise componentsDevice and enterprise components

– Device : bits and bytes,  RF signal strength, etc.

Enterprise : XML like CIM– Enterprise : XML like CIM

Based upon ZigBee (SEP), XML, TCP/IP

Will define conformance and IOP suitesWill define conformance and IOP suites

Has no programs complete at this time

© 2011 EnerNex. All Rights Reserved. www.enernex.com6

Page 7: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

AgendaAgendaAgendaAgenda

Introduction to 3 UCAIug groupsIntroduction to 3 UCAIug groups

Testing Overview

Testing DetailsTesting Details

Development of a Testing Program

© 2011 EnerNex. All Rights Reserved. www.enernex.com7

Page 8: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing OverviewTesting Overview ‐‐ GoalsGoalsTesting Overview Testing Overview  GoalsGoals

Why do we test?Why do we test?

– Expose latent defects in system

– Users expect error‐free systems in their applicationUsers expect error free systems in their application

– Vendors want independent validation

Sometimes: “Check the box”– Sometimes:  Check the box

© 2011 EnerNex. All Rights Reserved. www.enernex.com8

Page 9: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing OverviewTesting Overview ‐‐ OutcomesOutcomesTesting Overview Testing Overview  OutcomesOutcomes

What do we expect from testingWhat do we expect from testing

– Error‐free report: no problems found (bad?)

– Report showing areas needing improvementReport showing areas needing improvement

– Report showing failure of test (rarely issued)

© 2011 EnerNex. All Rights Reserved. www.enernex.com9

Page 10: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing OverviewTesting Overview –– Product typesProduct typesTesting Overview Testing Overview  Product typesProduct types

Can test products or servicesCan test products or services

– Product: Identified unit with specific input/output relationship, typically at bits and bytes levelp, yp y y

– Service: Software with less well‐defined inputs and outputs, generally holding state informationp g y g

Why testing differs

– Product: stimulate UUT, verify response, y p

– Service: send context, verify response semantics

© 2011 EnerNex. All Rights Reserved. www.enernex.com10

Page 11: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing OverviewTesting Overview –– Test CasesTest CasesTesting Overview Testing Overview  Test CasesTest Cases

What are test case sources?What are test case sources?

– Implicit standards: “… shall …”

– Explicit standards: tests specified by SDOExplicit standards: tests specified by SDO

– Industry Use Cases: “… Monitors system and issues …”…

– User use cases: Specific ways user operates system

– Vendor use cases: Regression testingVendor use cases: Regression testing

© 2011 EnerNex. All Rights Reserved. www.enernex.com11

Page 12: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing OverviewTesting Overview –– Test StepsTest StepsTesting Overview Testing Overview  Test StepsTest Steps

Test procedures document: What will tester do?Test procedures document: What will tester do?

– Requirement for specific test step

– PreconditionsPreconditions

– Stimulus

Expected response (or range of responses)– Expected response (or range of responses)

– Verdict definition

© 2011 EnerNex. All Rights Reserved. www.enernex.com12

Page 13: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

AgendaAgendaAgendaAgenda

Introduction to 3 UCAIug groupsIntroduction to 3 UCAIug groups

Testing Overview

Testing DetailsTesting Details

Development of a Testing Program

© 2011 EnerNex. All Rights Reserved. www.enernex.com13

Page 14: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing DetailsTesting Details –– Types of TestsTypes of TestsTesting Details Testing Details  Types of TestsTypes of Tests

Conformance – does device/system match specConformance  does device/system match spec

Pair‐wise IOP – does it work with a specific partner?

Standards‐vetting IOP – does the proposed specStandards vetting IOP  does the proposed spec mandate unique solutions?

End‐to‐End IOP – does entire system work?End to End IOP  does entire system work?

Ad‐hoc testing – for specific situations, does the system correctly perform its function?y y p

© 2011 EnerNex. All Rights Reserved. www.enernex.com14

Page 15: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing DetailsTesting Details –– Test ReportsTest ReportsTesting Details Testing Details  Test ReportsTest Reports

What was testedWhat was tested

How tested (environment, test equipment, etc.)

Which tests executedWhich tests executed

Which tests not executed (and why)

Tester commentsTester comments

Overall verdict: pass or fail or inconclusive

© 2011 EnerNex. All Rights Reserved. www.enernex.com15

Page 16: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing DetailsTesting Details –– Test ExecutionTest ExecutionTesting Details Testing Details  Test ExecutionTest Execution

Level of test specificationLevel of test specification

– Specify test procedureAllows innovation in test scriptingp gPossible differences between testers

– Define standardized test scriptspRequires specification of one test toolPublic tool requires much volunteer time to vet

Control of tests – ideally voted by User Group

– Reality – most users don’t understand tests

© 2011 EnerNex. All Rights Reserved. www.enernex.com16

Page 17: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing DetailsTesting Details –– User Group/SDOUser Group/SDOTesting Details Testing Details  User Group/SDOUser Group/SDO

SDOs may have national/political agendasSDOs may have national/political agendas

Inherent struggle between groups

– SDO wants stability – stable standardsSDO wants stability  stable standards

– UG wants flexibility – faster evolution

Both want appearance of stability for adoption– Both want appearance of stability for adoption

Implication upon testing

Test groups must be flexible when interpreting a– Test groups must be flexible when interpreting a standard

Sometimes deliberately violate written spec

© 2011 EnerNex. All Rights Reserved. www.enernex.com

– Sometimes deliberately violate written spec

17

Page 18: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

AgendaAgendaAgendaAgenda

Introduction to 3 UCAIug groupsIntroduction to 3 UCAIug groups

Testing Overview

Testing DetailsTesting Details

Development of a Testing Program

© 2011 EnerNex. All Rights Reserved. www.enernex.com18

Page 19: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Test Program DevelopmentTest Program DevelopmentTest Program DevelopmentTest Program Development

Question before startingQuestion before starting

– What programs already exist/known to users?

– What is funding model?What is funding model?Test development

Test program maintenancep g

Test program administration

Logo / formal certificates?

– What can vendors afford? Testers?

– What problems are users seeing/testing needs

© 2011 EnerNex. All Rights Reserved. www.enernex.com19

Page 20: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Quality Assurance PlanQuality Assurance PlanQuality Assurance PlanQuality Assurance Plan

Need this as first stepNeed this as first step

– Define how testing process functions

– Defines defect feedback mechanismsDefines defect feedback mechanisms

– Defines quality systems needed by testers

Defines funding model for the testing process– Defines funding model for the testing process

– Defines conformance vs. IOP testing or both

Defines whether UG will contract work– Defines whether UG will contract work

This is the “business plan” for the testing group

G t t f f thi QAP

© 2011 EnerNex. All Rights Reserved. www.enernex.com

Get support from user group of this QAP

Iterate until users agree to plan20

Page 21: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

UCAIug QAP ProcessUCAIug QAP ProcessUCAIug QAP ProcessUCAIug QAP Process

© 2011 EnerNex. All Rights Reserved. www.enernex.com21

Page 22: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Forming Testing GroupForming Testing GroupForming Testing GroupForming Testing Group

Seek volunteersSeek volunteers

Set realistic timetable, don’t overwork volunteers

Create real project plan too easy to fall behindCreate real project plan, too easy to fall behind

Avoid temptation of scope creep

Finish planned work unless completion makes no– Finish planned work unless completion makes no sense

Continue to seek volunteers until 1/3 completeContinue to seek volunteers until 1/3 complete

Add “unplanned” work at end

© 2011 EnerNex. All Rights Reserved. www.enernex.com22

Page 23: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Test Plan reviewsTest Plan reviewsTest Plan reviewsTest Plan reviews

Have user group periodically review test planHave user group periodically review test plan

– Don’t want a surprise after 6 months work

– Be willing to change to meet user needsBe willing to change to meet user needs

– Avoid temptation to satisfy minority of users

Ask question: “Is this what our industry needs?”– Ask question:  Is this what our industry needs?

Upon completion of test plan, real work begins

© 2011 EnerNex. All Rights Reserved. www.enernex.com23

Page 24: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Test Procedure DevelopmentTest Procedure DevelopmentTest Procedure DevelopmentTest Procedure Development

Begin with highest‐level of suiteBegin with highest level of suite

– Example: Connects, authenticates, basic data

Break each of these into logical functionsBreak each of these into logical functions

– Example: Joins network, creates peer matrix

Break each function into individual testsBreak each function into individual tests

– Example: Join network using only default credentialscredentials

– Create both positive and negative tests

Break tests into test steps with stimulus/response

© 2011 EnerNex. All Rights Reserved. www.enernex.com

Break tests into test steps with stimulus/response

24

Page 25: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Practical ExamplePractical Example –– 6185061850Practical Example Practical Example  6185061850

Decided on lightweight process at startDecided on lightweight process at start

QAP:

– Write test proceduresWrite test procedures

– Accredit/monitor testers

Arbitrate disputes– Arbitrate disputes

– Post tester‐created certificates

Results: industry acceptance low cost to usersResults: industry acceptance, low‐cost to users

© 2011 EnerNex. All Rights Reserved. www.enernex.com25

Page 26: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Practical ExamplePractical Example –– CIMugCIMugPractical Example Practical Example  CIMugCIMug

Decided on lightweight process at startDecided on lightweight process at start

QAP (informal):

– Only perform IOP testingOnly perform IOP testing

– IOP tests specific to each IOP

Results:Results:

– IOPs have found errors in pre‐IS IEC documents

CIM products are interoperable– CIM products are interoperable

© 2011 EnerNex. All Rights Reserved. www.enernex.com26

Page 27: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

Testing OutcomeTesting OutcomeTesting OutcomeTesting Outcome

All stakeholders agree on testing processAll stakeholders agree on testing process

Testing is meaningful to the industry

Testing is cost‐effectiveTesting is cost effective

– Users view tested products as good “first step”

Vendors view testing as more than “check the box”– Vendors view testing as more than  check the box

© 2011 EnerNex. All Rights Reserved. www.enernex.com27

Page 28: UCAIug Testin g Subcommittee Boot Camp · – Explicit standards:standards: teststests specifiedspecified byby SDOSDO – Industry Use Cases: “… Monitors system and issues …”

QuestionsQuestionsQuestionsQuestions

© 2011 EnerNex. All Rights Reserved. www.enernex.com28