SlideShare a Scribd company logo
SOFTWARE.
WELL… IT’S COMPLICATED
INHERENT COMPLEXITIES OF SOFTWARE AND TESTING
SHMUEL GERSHON
MAY, 2015
Systems?
A WEBINAR ABOUT SYSTEMS
SYSTEMS COMPLEXITY
WHO YOU TALKING TO?
• Specializing in the tests of embedded
software.
• Special attention:
• Learning Oriented Tests of the Exploratory kind,
Note Taking,
• I like reading, writing, flying kites, sleeping.
• Frequent participant at EuroStar and the
conference webinars
A WEBINAR ABOUT SYSTEMS
A SYSTEM CONTAINS SYSTEMS.
AND IS CONTAINED IN SYSTEMS.
A SYSTEM CONTAINS SYSTEMS.
AND IS CONTAINED IN SYSTEMS.
SOFTWARE SYSTEMS ARE COMPLEX
SIGNIFICANTLY
WHAT IS SOFTWARE?
• 111100101010101000001000010111001011001010101001110010010
001000011111000100010001001001000001010001000010001001110
010101010000010011111111100011000101000101000000101000000
1010001000010001001110010101010000010011111101110010101 b
• 0x f9 40 5d 0b b0 e2 b0 56 65 de 87 47 f4 66 58 2d 2a e7
57 be a6 e4 df 90 a2 6e 6c da 15 f0 74 55 cb 6f e0 dc a6
c7 59 8b e6 d7 a5 22 98 50 34 0a f6 e8 b0 e2 b0 56 65 de
87 47 f4 66 58 2d 2a e7 57 be a6 e4 df 90 a2 6e 6c da 15
WHAT IS SOFTWARE?
•A set of set of
machine-readable
instructions that
directs a computer's
processor to perform
specific operations?
WHAT DOES SOFTWARE LOOK LIKE?
WHAT DOES SOFTWARE LOOK LIKE?
WHAT DOES SOFTWARE LOOK LIKE?
WHAT DOES SOFTWARE LOOK LIKE?
SOFTWARE & SOFTWARE TESTING
Complex
Software
Complex
Software Testing
FRED BROOKS & DAVID PARNAS
ESSENCE AND ACCIDENTS OF SOFTWARE
ENGINEERING
• Some of the hard properties of software are
part of its essence
• As such, no improvement (present of future) can
get rid of it
• Software has no silver bullet
• The hard part is figuring our what we need to
build, then creating and testing the concept.
• The hard part is not coding a representation of the
concept, or performing the test on that
representation
ESSENTIAL DIFFICULTIES OF
SOFTWARE
• Inherent Complexity
• Inherent Conformity
• Inherent Changeability
• Inherent Invisibility
VS
ESSENTIAL DIFFICULTIES OF
SOFTWARE
• Inherent Complexity
• Inherent Conformity
• Inherent Changeability
• Inherent Invisibility
VS
ESSENTIAL DIFFICULTIES OF
SOFTWARE
• Inherent Complexity
• Inherent Conformity
• Inherent Changeability
• Inherent Invisibility
VS
ESSENTIAL DIFFICULTIES OF
SOFTWARE
• Inherent Complexity
• Inherent Conformity
• Inherent Changeability
• Inherent Invisibility
VS
WHAT ABOUT TESTING THEN?
SOFTWARE ASPECTS OF STRATEGIC
DEFENSE SYSTEMS
• Software is unreliable
• Software is created imperfect
• Software professionals cannot keep up with
program complexity
• Humans ideate and create – confuse and forget
• You cannot prove a software correct
• You need empiric experiments
STAR WARS
OR SOFTWARE ASPECTS OF STRATEGIC
DEFENSE SYSTEMS
• Empiric Tests in a 1-off System
• Unknowns of runtime:
•Targets
•Decoys
•Countermeasures
•Time
•...
•Trust requires real conditions
ESSENTIAL DIFFICULTIES OF TESTING
• Programming is Trial and
Error. So is testing.
• Without empiric tests, we
don’t get enough trust.
VS
SO WHAT CAN WE DO?
•You cannot remove
complexity.
•You cannot diminish
complexity unless you
diminish software.
•To deal with it we need
to accept and embrace it.
SO WHAT CAN WE DO?
• Be aware
• Discuss complexity
• Understand parts and
Relationships
• Look for incidental
complexity
• Technology-, solution-,
human-, interface-
• Model
• Beware the model
• Use Models to raise
questions, options and
understanding, more than
to describe the system.
READ THE PAPERS
•Essence and Accidents of Software Engineering
• http://faculty.salisbury.edu/~xswang/Research/Pap
ers/SERelated/no-silver-bullet.pdf
•Software Aspects of Strategic Defense Systems
• http://web.stanford.edu/class/cs99r/readings/par
nas1.pdf
QUESTIONS? ANSWERS?
THANKS!

More Related Content

PDF
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
PPTX
Software Ecosystem Evolution. It's complex!
PPTX
Making disaster routine
PDF
Mt s1 basic_fundamentals
PPTX
Lec 1 Introduction to Software Engg.pptx
PPTX
DevOps Summit 2014 Delivering your Applications without a Hitch using Automat...
PDF
SDLC & DevSecOps
PPTX
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Testing the Untestable: Model Testing of Complex Software-Intensive Systems
Software Ecosystem Evolution. It's complex!
Making disaster routine
Mt s1 basic_fundamentals
Lec 1 Introduction to Software Engg.pptx
DevOps Summit 2014 Delivering your Applications without a Hitch using Automat...
SDLC & DevSecOps
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors

Similar to Software. Well... It's Complicated (20)

PPTX
Exploratory Mobile Testing Webinar_XBOSoft_jean_annharrison
PPTX
Lec 1 Introduction to Software Engg.pptx
PDF
Debugging microservices in production
PPTX
Orchestration, the conductor's score
PPTX
Unit 1.pptx
PDF
A journey into Application Security
PPTX
Agility reboot iv
PDF
Working Effectively with PeopleSoft Support
PPTX
Testing Best Practices
PDF
Thomas Haver - Mobile Testing.pdf
PPT
Types of Software - Y9 Computing
PPTX
Improve Security through Continuous Testing
PPT
Software System Engineering - Chapter 1
PDF
Empirical Methods in Software Engineering - an Overview
PPTX
DockerCon SF 2019 - TDD is Dead
PPT
Software engineering
PDF
Ensuring Security through Continuous Testing
PDF
Technical Capabilities as enabler for Agile and DevOps
PDF
Bypassing Secure Boot using Fault Injection
PDF
Just4Meeting 2012 - How to protect your web applications
Exploratory Mobile Testing Webinar_XBOSoft_jean_annharrison
Lec 1 Introduction to Software Engg.pptx
Debugging microservices in production
Orchestration, the conductor's score
Unit 1.pptx
A journey into Application Security
Agility reboot iv
Working Effectively with PeopleSoft Support
Testing Best Practices
Thomas Haver - Mobile Testing.pdf
Types of Software - Y9 Computing
Improve Security through Continuous Testing
Software System Engineering - Chapter 1
Empirical Methods in Software Engineering - an Overview
DockerCon SF 2019 - TDD is Dead
Software engineering
Ensuring Security through Continuous Testing
Technical Capabilities as enabler for Agile and DevOps
Bypassing Secure Boot using Fault Injection
Just4Meeting 2012 - How to protect your web applications
Ad

More from TEST Huddle (20)

PPTX
Why We Need Diversity in Testing- Accenture
PPTX
Keys to continuous testing for faster delivery euro star webinar
PPTX
Why you Shouldnt Automated But You Will Anyway
PDF
Being a Tester in Scrum
PDF
Leveraging Visual Testing with Your Functional Tests
PPTX
Using Test Trees to get an Overview of Test Work
PPTX
Big Data: The Magic to Attain New Heights
PPTX
Will Robots Replace Testers?
PPTX
TDD For The Rest Of Us
PDF
Scaling Agile with LeSS (Large Scale Scrum)
PPTX
Creating Agile Test Strategies for Larger Enterprises
PPTX
Is There A Risk?
PDF
Are Your Tests Well-Travelled? Thoughts About Test Coverage
PDF
Growing a Company Test Community: Roles and Paths for Testers
PDF
Do we need testers on agile teams?
PDF
How to use selenium successfully
PDF
Testers & Teams on the Agile Fluency™ Journey
PDF
Practical Test Strategy Using Heuristics
PDF
Thinking Through Your Role
PDF
Using Selenium 3 0
Why We Need Diversity in Testing- Accenture
Keys to continuous testing for faster delivery euro star webinar
Why you Shouldnt Automated But You Will Anyway
Being a Tester in Scrum
Leveraging Visual Testing with Your Functional Tests
Using Test Trees to get an Overview of Test Work
Big Data: The Magic to Attain New Heights
Will Robots Replace Testers?
TDD For The Rest Of Us
Scaling Agile with LeSS (Large Scale Scrum)
Creating Agile Test Strategies for Larger Enterprises
Is There A Risk?
Are Your Tests Well-Travelled? Thoughts About Test Coverage
Growing a Company Test Community: Roles and Paths for Testers
Do we need testers on agile teams?
How to use selenium successfully
Testers & Teams on the Agile Fluency™ Journey
Practical Test Strategy Using Heuristics
Thinking Through Your Role
Using Selenium 3 0
Ad

Recently uploaded (20)

PPTX
Monitoring Stack: Grafana, Loki & Promtail
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
Types of Token_ From Utility to Security.pdf
PDF
Topaz Photo AI Crack New Download (Latest 2025)
PDF
Complete Guide to Website Development in Malaysia for SMEs
PPTX
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
PPTX
Weekly report ppt - harsh dattuprasad patel.pptx
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PPTX
Cybersecurity: Protecting the Digital World
PPTX
Introduction to Windows Operating System
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Autodesk AutoCAD Crack Free Download 2025
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
PDF
Time Tracking Features That Teams and Organizations Actually Need
PDF
STL Containers in C++ : Sequence Container : Vector
PDF
Ableton Live Suite for MacOS Crack Full Download (Latest 2025)
PDF
How Tridens DevSecOps Ensures Compliance, Security, and Agility
Monitoring Stack: Grafana, Loki & Promtail
Wondershare Recoverit Full Crack New Version (Latest 2025)
Oracle Fusion HCM Cloud Demo for Beginners
Designing Intelligence for the Shop Floor.pdf
Types of Token_ From Utility to Security.pdf
Topaz Photo AI Crack New Download (Latest 2025)
Complete Guide to Website Development in Malaysia for SMEs
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
Weekly report ppt - harsh dattuprasad patel.pptx
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Cybersecurity: Protecting the Digital World
Introduction to Windows Operating System
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Autodesk AutoCAD Crack Free Download 2025
Patient Appointment Booking in Odoo with online payment
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
Time Tracking Features That Teams and Organizations Actually Need
STL Containers in C++ : Sequence Container : Vector
Ableton Live Suite for MacOS Crack Full Download (Latest 2025)
How Tridens DevSecOps Ensures Compliance, Security, and Agility

Software. Well... It's Complicated

  • 1. SOFTWARE. WELL… IT’S COMPLICATED INHERENT COMPLEXITIES OF SOFTWARE AND TESTING SHMUEL GERSHON MAY, 2015
  • 4. WHO YOU TALKING TO? • Specializing in the tests of embedded software. • Special attention: • Learning Oriented Tests of the Exploratory kind, Note Taking, • I like reading, writing, flying kites, sleeping. • Frequent participant at EuroStar and the conference webinars
  • 5. A WEBINAR ABOUT SYSTEMS
  • 6. A SYSTEM CONTAINS SYSTEMS. AND IS CONTAINED IN SYSTEMS.
  • 7. A SYSTEM CONTAINS SYSTEMS. AND IS CONTAINED IN SYSTEMS.
  • 8. SOFTWARE SYSTEMS ARE COMPLEX SIGNIFICANTLY
  • 9. WHAT IS SOFTWARE? • 111100101010101000001000010111001011001010101001110010010 001000011111000100010001001001000001010001000010001001110 010101010000010011111111100011000101000101000000101000000 1010001000010001001110010101010000010011111101110010101 b • 0x f9 40 5d 0b b0 e2 b0 56 65 de 87 47 f4 66 58 2d 2a e7 57 be a6 e4 df 90 a2 6e 6c da 15 f0 74 55 cb 6f e0 dc a6 c7 59 8b e6 d7 a5 22 98 50 34 0a f6 e8 b0 e2 b0 56 65 de 87 47 f4 66 58 2d 2a e7 57 be a6 e4 df 90 a2 6e 6c da 15
  • 10. WHAT IS SOFTWARE? •A set of set of machine-readable instructions that directs a computer's processor to perform specific operations?
  • 11. WHAT DOES SOFTWARE LOOK LIKE?
  • 12. WHAT DOES SOFTWARE LOOK LIKE?
  • 13. WHAT DOES SOFTWARE LOOK LIKE?
  • 14. WHAT DOES SOFTWARE LOOK LIKE?
  • 15. SOFTWARE & SOFTWARE TESTING Complex Software Complex Software Testing
  • 16. FRED BROOKS & DAVID PARNAS
  • 17. ESSENCE AND ACCIDENTS OF SOFTWARE ENGINEERING • Some of the hard properties of software are part of its essence • As such, no improvement (present of future) can get rid of it • Software has no silver bullet • The hard part is figuring our what we need to build, then creating and testing the concept. • The hard part is not coding a representation of the concept, or performing the test on that representation
  • 18. ESSENTIAL DIFFICULTIES OF SOFTWARE • Inherent Complexity • Inherent Conformity • Inherent Changeability • Inherent Invisibility VS
  • 19. ESSENTIAL DIFFICULTIES OF SOFTWARE • Inherent Complexity • Inherent Conformity • Inherent Changeability • Inherent Invisibility VS
  • 20. ESSENTIAL DIFFICULTIES OF SOFTWARE • Inherent Complexity • Inherent Conformity • Inherent Changeability • Inherent Invisibility VS
  • 21. ESSENTIAL DIFFICULTIES OF SOFTWARE • Inherent Complexity • Inherent Conformity • Inherent Changeability • Inherent Invisibility VS
  • 23. SOFTWARE ASPECTS OF STRATEGIC DEFENSE SYSTEMS • Software is unreliable • Software is created imperfect • Software professionals cannot keep up with program complexity • Humans ideate and create – confuse and forget • You cannot prove a software correct • You need empiric experiments
  • 24. STAR WARS OR SOFTWARE ASPECTS OF STRATEGIC DEFENSE SYSTEMS • Empiric Tests in a 1-off System • Unknowns of runtime: •Targets •Decoys •Countermeasures •Time •... •Trust requires real conditions
  • 25. ESSENTIAL DIFFICULTIES OF TESTING • Programming is Trial and Error. So is testing. • Without empiric tests, we don’t get enough trust. VS
  • 26. SO WHAT CAN WE DO? •You cannot remove complexity. •You cannot diminish complexity unless you diminish software. •To deal with it we need to accept and embrace it.
  • 27. SO WHAT CAN WE DO? • Be aware • Discuss complexity • Understand parts and Relationships • Look for incidental complexity • Technology-, solution-, human-, interface- • Model • Beware the model • Use Models to raise questions, options and understanding, more than to describe the system.
  • 28. READ THE PAPERS •Essence and Accidents of Software Engineering • http://faculty.salisbury.edu/~xswang/Research/Pap ers/SERelated/no-silver-bullet.pdf •Software Aspects of Strategic Defense Systems • http://web.stanford.edu/class/cs99r/readings/par nas1.pdf