T15	
Track	Session	
4/21/2016	3:15	PM	
	
	
“Use	the	Modern	Cloud	to	Build	
Mobile	Apps”	
	
Presented by:
Arthur Hicken
Parasoft	
	
	
	
	
	
	
	
Brought	to	you	by:	
	
	
	
340	Corporate	Way,	Suite	300,	Orange	Park,	FL	32073	
888-268-8770	·	904-278-0524	·	info@techwell.com	·	www.techwell.com
Arthur Hicken
Parasoft
Arthur Hicken has been involved in automating various practices at Parasoft for
more than twenty years. He has worked on projects including database
development, the software development lifecycle, web publishing and monitoring,
and integration with legacy systems. Arthur has worked with IT departments in
companies including Cisco, Vanguard, and Motorola to help improve their
software development practices. He has developed and conducted numerous
technical training courses at Parasoft. An expert in his field, Arthur has been
quoted in Business 2.0, Internet Week, and CNET news.com regarding website
quality issues.
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 1
Parasoft© 2016 All Rights Reserved 1
IoT Integrity:
A Guide to Robust Endpoint Testing
IoT Integrity:
A Guide to Robust Endpoint Testing
Parasoft
Arthur Hicken (codecurmudgeon@parasoft.com)
Parasoft
Arthur Hicken (codecurmudgeon@parasoft.com)
Parasoft© 2016 All Rights Reserved 22
Your PresenterYour Presenter
Arthur Hicken is Chief Evangelist at
Parasoft where he has been involved
in automating various software
development and testing practices for
over 20 years.
He has worked on projects including
cybersecurity, database development,
the software development lifecycle,
web publishing and monitoring, and
integration with legacy systems.
Follow him @codecurmudgeon
Blog: http://codecurmudgeon.com
Web: http://parasoft.com
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 2
Parasoft© 2016 All Rights Reserved 33
AgendaAgenda
IoT specificsIoT specifics
Challenges in quality assuranceChallenges in quality assurance
Effectiveness of end-to-end testingEffectiveness of end-to-end testing
Doing it betterDoing it better
Parasoft© 2016 All Rights Reserved 44
Things are EverywhereThings are Everywhere
Industrial Automation Smart Health
Smart Home
Smart City
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 3
Parasoft© 2016 All Rights Reserved 55
Already on the MarketAlready on the Market
Parasoft© 2016 All Rights Reserved 66
Aspects of IoTAspects of IoT
 Communication
 Backbone
 Identification
 Hardware
 Sensors
 Protocols
 Software
 Data Brokers / Cloud Platforms
 Machine Learning
 Security
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 4
Parasoft© 2016 All Rights Reserved 77
IoT EcosystemIoT Ecosystem
Connect to any 3rd
party clouds;
integrate API to
partner services to
offer serviceslike DR
orWarranty
Interact with
outside sources
of data
Dynamic ability to
add premium
features and
capabilities at any
time
Enable data reporting
and analyticsfor
marketing, engineering,
warranty,end user,etc.
Integrate with
other
Ecosystems
Parasoft© 2016 All Rights Reserved 88
IoT specificsIoT specifics
 Multi-layered systems
 Disparate technologies
 Functionality
spanning across many
layers
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 5
Parasoft© 2016 All Rights Reserved 99
IoT specificsIoT specifics
 Even simple functionality may require
different teams to develop
 Debugging requires solid understanding of
many technologies
 Complex functionality may be hidden behind
simple interface
Parasoft© 2016 All Rights Reserved 1010
Why it is difficult to test IoTWhy it is difficult to test IoT
 Disparate development technologies hamper
introducing consistent testing strategies
 “Not enough code to justify testing” syndrome
 Limited user interface make the solution to
look deceptively simple
 Inverted testing pyramid problem
 Strong temptation to rely entirely on system
testing
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 6
Parasoft© 2016 All Rights Reserved 1111
Effectiveness of end-to-end testingEffectiveness of end-to-end testing
 Labor intensive
 Difficult to automate
 Difficult to start early
 Requires
inter-team synchronization
 Difficult to test error handlers
 Failed tests do not provide precise information about
failure points
Parasoft© 2016 All Rights Reserved 1212
Effectiveness of end-to-end testingEffectiveness of end-to-end testing
 End-to-End testing for diabetes health system
example
 Difficult to apply stimulation
 Difficult to validate
test result
 Difficult to test
error handlers
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 7
Parasoft© 2016 All Rights Reserved 1313
Effective IoT TestingEffective IoT Testing
 Avoid manual end-to-end testing
 Invest more into automated tests at
component
 Follow testing pyramid rules
 Measure:
 test results
 test effectiveness
 Determine:
 Risk
Parasoft© 2016 All Rights Reserved 1414
How to do it better ?How to do it better ?
 Give absolute priority to automated tests
 Invest time into designing interfaces (API)
 Use API (service) testing tools to cover
interfaces
 Measure the quality of the test
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 8
Parasoft© 2016 All Rights Reserved 1515
How to do it better ?How to do it better ?
 Use stubs and mocks to improve:
 Facilitate test automation
 Increase code penetration
Parasoft© 2016 All Rights Reserved 1616
How to do it better ?How to do it better ?
 Use service virtualization to improve testing
automation
 Isolate at the message layer
 Simulate functional scenarios and performance
conditions
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 9
Parasoft© 2016 All Rights Reserved 1717
How to do it better ?How to do it better ?
 Report test results against requirements
 Try to get holistic view of your testing process
 Collect/review test data from different layers
 Assess health of given feature across all layers
Parasoft© 2016 All Rights Reserved 1818
Test scenario exampleTest scenario example
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 10
Parasoft© 2016 All Rights Reserved 1919
Test Scenario:
REQUEST_NEW_BOLUS_UPDATE_PUMP
Test Scenario:
REQUEST_NEW_BOLUS_UPDATE_PUMP
Tested System
Tested System
Parasoft© 2016 All Rights Reserved 2020
SummarySummary
 IoT combines previously isolated technologies
 Multiple Tiers = Complexity = Risk
 End to End Testing = Chain is only as strong as it’s
weakest link
 Reliable quality process allows organizations to
assess modules individually and in combination
 Continuously automate testing
 Traceability across tiers, technologies and testing
techniques
Mobile Dev + Test 2016 San Diego April 21, 2016
IoT Integrity
© Parasoft All Rights Reserved 11
Parasoft© 2016 All Rights Reserved 2121
ReferencesReferences
• Cisco: Over 50 billions of devices connected to Internet
http://blogs.cisco.com/news/the-internet-of-things-
infographic/
• Vlad Trifa: HomeWeb and Android at Home – challenges?
http://www.webofthings.com/2011/06/10/homeweb-and-
android-at-home-challenges/
• IoT - Visit the future:
http://www.iot-visitthefuture.eu/index.php?id=108
Parasoft© 2016 All Rights Reserved 2222
 Web
 http://www.parasoft.com
 Blog
 http://alm.parasoft.com
 http://codecurmudgeon.com
Social
Facebook: https://www.facebook.com/parasoftcorporation
Twitter: @Parasoft @CodeCurmudgeon
LinkedIn: http://www.linkedin.com/company/parasoft

IoT Integrity: A Guide to Robust Endpoint Testing

  • 1.
  • 2.
    Arthur Hicken Parasoft Arthur Hickenhas been involved in automating various practices at Parasoft for more than twenty years. He has worked on projects including database development, the software development lifecycle, web publishing and monitoring, and integration with legacy systems. Arthur has worked with IT departments in companies including Cisco, Vanguard, and Motorola to help improve their software development practices. He has developed and conducted numerous technical training courses at Parasoft. An expert in his field, Arthur has been quoted in Business 2.0, Internet Week, and CNET news.com regarding website quality issues.
  • 3.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 1 Parasoft© 2016 All Rights Reserved 1 IoT Integrity: A Guide to Robust Endpoint Testing IoT Integrity: A Guide to Robust Endpoint Testing Parasoft Arthur Hicken (codecurmudgeon@parasoft.com) Parasoft Arthur Hicken (codecurmudgeon@parasoft.com) Parasoft© 2016 All Rights Reserved 22 Your PresenterYour Presenter Arthur Hicken is Chief Evangelist at Parasoft where he has been involved in automating various software development and testing practices for over 20 years. He has worked on projects including cybersecurity, database development, the software development lifecycle, web publishing and monitoring, and integration with legacy systems. Follow him @codecurmudgeon Blog: http://codecurmudgeon.com Web: http://parasoft.com
  • 4.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 2 Parasoft© 2016 All Rights Reserved 33 AgendaAgenda IoT specificsIoT specifics Challenges in quality assuranceChallenges in quality assurance Effectiveness of end-to-end testingEffectiveness of end-to-end testing Doing it betterDoing it better Parasoft© 2016 All Rights Reserved 44 Things are EverywhereThings are Everywhere Industrial Automation Smart Health Smart Home Smart City
  • 5.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 3 Parasoft© 2016 All Rights Reserved 55 Already on the MarketAlready on the Market Parasoft© 2016 All Rights Reserved 66 Aspects of IoTAspects of IoT  Communication  Backbone  Identification  Hardware  Sensors  Protocols  Software  Data Brokers / Cloud Platforms  Machine Learning  Security
  • 6.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 4 Parasoft© 2016 All Rights Reserved 77 IoT EcosystemIoT Ecosystem Connect to any 3rd party clouds; integrate API to partner services to offer serviceslike DR orWarranty Interact with outside sources of data Dynamic ability to add premium features and capabilities at any time Enable data reporting and analyticsfor marketing, engineering, warranty,end user,etc. Integrate with other Ecosystems Parasoft© 2016 All Rights Reserved 88 IoT specificsIoT specifics  Multi-layered systems  Disparate technologies  Functionality spanning across many layers
  • 7.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 5 Parasoft© 2016 All Rights Reserved 99 IoT specificsIoT specifics  Even simple functionality may require different teams to develop  Debugging requires solid understanding of many technologies  Complex functionality may be hidden behind simple interface Parasoft© 2016 All Rights Reserved 1010 Why it is difficult to test IoTWhy it is difficult to test IoT  Disparate development technologies hamper introducing consistent testing strategies  “Not enough code to justify testing” syndrome  Limited user interface make the solution to look deceptively simple  Inverted testing pyramid problem  Strong temptation to rely entirely on system testing
  • 8.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 6 Parasoft© 2016 All Rights Reserved 1111 Effectiveness of end-to-end testingEffectiveness of end-to-end testing  Labor intensive  Difficult to automate  Difficult to start early  Requires inter-team synchronization  Difficult to test error handlers  Failed tests do not provide precise information about failure points Parasoft© 2016 All Rights Reserved 1212 Effectiveness of end-to-end testingEffectiveness of end-to-end testing  End-to-End testing for diabetes health system example  Difficult to apply stimulation  Difficult to validate test result  Difficult to test error handlers
  • 9.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 7 Parasoft© 2016 All Rights Reserved 1313 Effective IoT TestingEffective IoT Testing  Avoid manual end-to-end testing  Invest more into automated tests at component  Follow testing pyramid rules  Measure:  test results  test effectiveness  Determine:  Risk Parasoft© 2016 All Rights Reserved 1414 How to do it better ?How to do it better ?  Give absolute priority to automated tests  Invest time into designing interfaces (API)  Use API (service) testing tools to cover interfaces  Measure the quality of the test
  • 10.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 8 Parasoft© 2016 All Rights Reserved 1515 How to do it better ?How to do it better ?  Use stubs and mocks to improve:  Facilitate test automation  Increase code penetration Parasoft© 2016 All Rights Reserved 1616 How to do it better ?How to do it better ?  Use service virtualization to improve testing automation  Isolate at the message layer  Simulate functional scenarios and performance conditions
  • 11.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 9 Parasoft© 2016 All Rights Reserved 1717 How to do it better ?How to do it better ?  Report test results against requirements  Try to get holistic view of your testing process  Collect/review test data from different layers  Assess health of given feature across all layers Parasoft© 2016 All Rights Reserved 1818 Test scenario exampleTest scenario example
  • 12.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 10 Parasoft© 2016 All Rights Reserved 1919 Test Scenario: REQUEST_NEW_BOLUS_UPDATE_PUMP Test Scenario: REQUEST_NEW_BOLUS_UPDATE_PUMP Tested System Tested System Parasoft© 2016 All Rights Reserved 2020 SummarySummary  IoT combines previously isolated technologies  Multiple Tiers = Complexity = Risk  End to End Testing = Chain is only as strong as it’s weakest link  Reliable quality process allows organizations to assess modules individually and in combination  Continuously automate testing  Traceability across tiers, technologies and testing techniques
  • 13.
    Mobile Dev +Test 2016 San Diego April 21, 2016 IoT Integrity © Parasoft All Rights Reserved 11 Parasoft© 2016 All Rights Reserved 2121 ReferencesReferences • Cisco: Over 50 billions of devices connected to Internet http://blogs.cisco.com/news/the-internet-of-things- infographic/ • Vlad Trifa: HomeWeb and Android at Home – challenges? http://www.webofthings.com/2011/06/10/homeweb-and- android-at-home-challenges/ • IoT - Visit the future: http://www.iot-visitthefuture.eu/index.php?id=108 Parasoft© 2016 All Rights Reserved 2222  Web  http://www.parasoft.com  Blog  http://alm.parasoft.com  http://codecurmudgeon.com Social Facebook: https://www.facebook.com/parasoftcorporation Twitter: @Parasoft @CodeCurmudgeon LinkedIn: http://www.linkedin.com/company/parasoft