SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
@davearonsonwww.Codosaur.us
ACRUMEN:
Key Aspects of Software Quality
by Dave Aronson
Slides at:
https://bit.ly/acrumen-rn-cg-2018
@davearonsonwww.Codosaur.us
Do you like low quality software?
@davearonsonwww.Codosaur.us
We need more software quality!
@davearonsonwww.Codosaur.us
What is software quality?!
@davearonsonwww.Codosaur.us
Who is this clown?
@davearonsonwww.Codosaur.us
Experienced Developer
@davearonsonwww.Codosaur.us
T. Rex of Codosaurus, LLC
@davearonsonwww.Codosaur.us
Previous attempts:
@davearonsonwww.Codosaur.us
So zoom out . . .
@davearonsonwww.Codosaur.us
. . . to six aspects . . .
@davearonsonwww.Codosaur.us
. . . with simple names and explanations . . .
@davearonsonwww.Codosaur.us
. . . from many points of view.
+
@davearonsonwww.Codosaur.us
Acrumen: Latin for sour fruit
@davearonsonwww.Codosaur.us
ACRUMEN: Prioritized acronym of aspects
@davearonsonwww.Codosaur.us
does the right job
does the job right
hard to make misbehave
easy (for users) to use
easy (for devs) to change
efficiently uses resources
So what are the aspects already?!
Appropriate
Correct
Robust
Usable
Maintainable
Efficient
Software should be:
:
:
:
:
:
:
@davearonsonwww.Codosaur.us
N stands for… Nothing! Just makes a word.
@davearonsonwww.Codosaur.us
The Importance of Being Appropriate
≠
@davearonsonwww.Codosaur.us
Achieving Appropriate: Requirements Experts?
@davearonsonwww.Codosaur.us
Achieving Appropriate: Talk to stakeholders!
@davearonsonwww.Codosaur.us
Achieving Appropriate: Mockups, Prototypes, Demos
@davearonsonwww.Codosaur.us
Achieving Appropriate: Propose Tests!
@davearonsonwww.Codosaur.us
How do we know it’s Correct?
@davearonsonwww.Codosaur.us
Achieving Correct: Proven by Tests!
@davearonsonwww.Codosaur.us
Achieving Correct: Start with “appropriate” tests (high-level)
@davearonsonwww.Codosaur.us
Achieving Correct: Low-level tests too
@davearonsonwww.Codosaur.us
Defining Robust: Hard to make it misbehave
Confidentiality
Availability
Integrity
@davearonsonwww.Codosaur.us
Uphold Confidentiality: Don’t Reveal Info (w/o authorization)
@davearonsonwww.Codosaur.us
Uphold Integrity: Don’t Alter Info (w/o authorization)
@davearonsonwww.Codosaur.us
Uphold Availability: Don’t Be Unavailable (w/o authorization)
@davearonsonwww.Codosaur.us
Defining Robust: Uphold CIA Triad even under attack
@davearonsonwww.Codosaur.us
Achieving Robust: What could go wrong?
@davearonsonwww.Codosaur.us
Achieving Robust: Think Like an Attacker
@davearonsonwww.Codosaur.us
Achieving Robust: Handle Likely Problems
@davearonsonwww.Codosaur.us
Defining Usable: Clarity
@davearonsonwww.Codosaur.us
Defining Usable: What Else Can It Do?
But wait!

There’s more!
@davearonsonwww.Codosaur.us
Defining Usable: Easy Despite Challenges
@davearonsonwww.Codosaur.us
Achieving Usable: Usability (better, UX) Experts?
@davearonsonwww.Codosaur.us
Achieving Usable: Guidelines, Standards, and Regulations
@davearonsonwww.Codosaur.us
Achieving Usable: Testing!
@davearonsonwww.Codosaur.us
Defining Maintainable: Easy to Change
@davearonsonwww.Codosaur.us
Defining Maintainable: …with low fear of error…
@davearonsonwww.Codosaur.us
Defining Maintainable: …and low chance of error…
@davearonsonwww.Codosaur.us
Defining Maintainable: …even for a novice…
@davearonsonwww.Codosaur.us
Defining Maintainable: …new to the project.
@davearonsonwww.Codosaur.us
Achieving Maintainable: Good Names
@davearonsonwww.Codosaur.us
Achieving Maintainable: Single Responsibility
@davearonsonwww.Codosaur.us
Achieving Maintainable: Tests!
@davearonsonwww.Codosaur.us
Efficient Use of Resources
@davearonsonwww.Codosaur.us
Achieving Efficient: Measure!
@davearonsonwww.Codosaur.us
Achieving Efficient: Algorithms and Data Structures
@davearonsonwww.Codosaur.us
If our software is

Appropriate,

Correct,

Robust,

Usable,

Maintainable, and 

Efficient, then

Nobody should be sour about it!
Conclusion
@davearonsonwww.Codosaur.us
Image Credits, just to keep things legal; all images are either mine, used by permission,

or found on Google Image Search with reusable-license filter (some requiring credit but not all)
Alterations: http://www.barksdale.af.mil/News/Article/321176/military-clothing-sales-reopens-inside-base-exchange/
Billy Mays: https://commons.wikimedia.org/wiki/File:Billy_Mays_headshot.jpg
Boards High Up: https://pixabay.com/en/boards-height-balance-2040575/
Business Silhouettes: http://www.publicdomainpictures.net/view-image.php?image=57465
Calipers: https://pixabay.com/en/diet-calorie-counter-weight-loss-695723/
Change: https://images.pexels.com/photos/259209/pexels-photo-259209.jpeg
Checkers: https://commons.wikimedia.org/wiki/File:Draughts.svg
Checklist on clipboard: https://pixabay.com/en/checklist-clip-board-blank-to-do-310092/
Checklist w/o clipboard: https://pixabay.com/en/checklist-list-check-check-list-911840/
Chess: https://bs.wikipedia.org/wiki/Datoteka:AAA_SVG_Chessboard_and_chess_pieces_03.svg
Clear Night Sky: https://pixabay.com/en/british-columbia-canada-clear-lake-2382640/
Darth Vader: https://pixabay.com/en/star-wars-darth-wader-villain-2463926/
Data Structure: https://commons.wikimedia.org/wiki/File:A_diagram_of_the_Aho-Corasick_string_search_algorithm_extracted.png
Dice: https://pxhere.com/en/photo/615255
Easy Button: https://www.flickr.com/photos/slgc/24803618672
Error X: https://commons.wikimedia.org/wiki/File:Dialog-error-round.svg
Experts (tho Road Safety, not Requirements): http://archive.government.ru/eng/multimedia/photo/2013/3/#PhotoSwipe1528053974200
Experts (tho NASA, not UX): https://roundupreads.jsc.nasa.gov/pages.ashx/699/10%20things%20to%20know%20and%20share%20about%20the%20Eclipse%20Across%20America
Eye Tester: https://commons.wikimedia.org/wiki/File:Test_type_to_test_eyesight,_England,_1920-1960_Wellcome_L0058205.jpg
F-35 Flight Test: http://www.hill.af.mil/News/Article-Display/Article/838188/commentary-diamond-in-the-rough-commander-shares-514th-flts-mission/
F-35 Landing Test: http://www.eglin.af.mil/News/Article/814410/marines-fly-first-f-35-stovl-mission-at-eglin/
Feedback Circuit: mine (other than the “?” and the color, this was the TIDMADT logo.)
Glucose Test: https://pxhere.com/en/photo/726931
Handle: https://pixabay.com/en/handle-door-handle-doorknob-lock-1200809/
International Space Station: https://www.flickr.com/photos/nasacommons/8980505397
Lemonade: https://pixabay.com/en/lemonade-lemons-glass-beverage-1447521/
Lemonhead: https://www.maxpixel.net/Face-Fruit-Citrus-Fruit-Angry-Sour-Citron-Lemon-155021
Long List: https://pxhere.com/en/photo/941467
Low Quality: https://pixabay.com/en/bad-review-bad-customer-review-2813741/
Man in Matrix: https://pixabay.com/en/man-despair-problem-null-one-65049/
Name Tags: https://commons.wikimedia.org/wiki/File:NFX_Guild_conference_name_tags.jpg
New Guy: https://commons.wikimedia.org/wiki/File:New_Guy_(5895483627).jpg
Novice: https://pxhere.com/en/photo/796734
One Job: https://bloodredstrider.deviantart.com/art/Fortune-Cookie-Fail-394495312
Ordered List: https://pixabay.com/en/steps-list-ordered-list-items-1496523/
Plan A/B/C: https://pixabay.com/get/ef37b10d21fd1c22d9584518a345479ee277e0d204b014439df0c47ba7eab1/planning-620299_1920.jpg
Potatoes in Pot: https://pixabay.com/en/potatoes-fear-horror-pot-cook-3119211/
Prius: https://www.flickr.com/photos/toyota-europe/6759334043/in/photostream/
Quality Excellence Package: https://pixabay.com/en/software-packaging-quality-500956/
Simple list: https://commons.wikimedia.org/wiki/File:List_icon.svg
Site Unavailable: https://pixabay.com/en/error-www-internet-calculator-101408/
Test Pattern: https://commons.wikimedia.org/wiki/File:RCA_Indian_Head_test_pattern.JPG
The Codosaurus: by Fanie Gregoire, https://www.etsy.com/shop/fanie (used by permission)
Thermos: https://zh.wikipedia.org/wiki/File:Thermoskanne(hoch,_silber).JPG
Ties: https://www.publicdomainpictures.net/en/view-image.php?image=37274
Triangle: https://cdn.pixabay.com/photo/2016/03/31/17/52/geometry-1293961_960_720.png (words mine)
Two Women at Laptop: https://www.flickr.com/photos/wocintechchat/22543243101
Usability Testing: https://www.flickr.com/photos/eekim/1819059803
Viking: https://pixabay.com/en/man-viking-barbarian-machado-1706964/
Weeds: extracted from https://commons.wikimedia.org/wiki/File:Indian_Weeds.jpg
Wireframe Mockups: https://www.flickr.com/photos/qubodup/14793417722
Wizard: https://commons.wikimedia.org/wiki/File:Kandalf_wizard_mascot_kde.png
Woman Programming: https://pxhere.com/en/photo/912909
Wondering Monkey: https://www.pexels.com/photo/brown-monkey-photo-767197/
Your Co's App: Eric Burke of StuffThatHappens.com (defunct)
@davearonsonwww.Codosaur.us
http://www.Codosaur.us
@davearonson (Twitter)
Questions? Feedback? Training?
?

Contenu connexe

Similaire à ACRUMEN Slides for RubyNation and CapitalGo, 2018

Similaire à ACRUMEN Slides for RubyNation and CapitalGo, 2018 (20)

Building a Secure DevOps Pipeline - for your AppSec Program
Building a Secure DevOps Pipeline - for your AppSec Program   Building a Secure DevOps Pipeline - for your AppSec Program
Building a Secure DevOps Pipeline - for your AppSec Program
 
Data driven devops as presented at Codemash 2018
Data driven devops as presented at Codemash 2018Data driven devops as presented at Codemash 2018
Data driven devops as presented at Codemash 2018
 
0 for 3: Edtech Startup Lessons Learned
0 for 3: Edtech Startup Lessons Learned0 for 3: Edtech Startup Lessons Learned
0 for 3: Edtech Startup Lessons Learned
 
State of the WEB ‘18
State of the WEB ‘18State of the WEB ‘18
State of the WEB ‘18
 
Smart Marketing - EduWeb 2015, Chicago
Smart Marketing - EduWeb 2015, ChicagoSmart Marketing - EduWeb 2015, Chicago
Smart Marketing - EduWeb 2015, Chicago
 
Continuous Security: 5 Ways DevOps Improves Security
Continuous Security: 5 Ways DevOps Improves SecurityContinuous Security: 5 Ways DevOps Improves Security
Continuous Security: 5 Ways DevOps Improves Security
 
FOWD NYC 2009
FOWD NYC 2009FOWD NYC 2009
FOWD NYC 2009
 
Why Choose Softworks
Why Choose SoftworksWhy Choose Softworks
Why Choose Softworks
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
Data driven devops as presented at QCon London 2018
Data driven devops as presented at QCon London 2018Data driven devops as presented at QCon London 2018
Data driven devops as presented at QCon London 2018
 
Breaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfBreaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconf
 
Web Strategery
Web StrategeryWeb Strategery
Web Strategery
 
Cleared Job Fair Handbook | July 14
Cleared Job Fair Handbook | July 14Cleared Job Fair Handbook | July 14
Cleared Job Fair Handbook | July 14
 
Cut the crap. Practical tips and real world examples for removing waste from ...
Cut the crap. Practical tips and real world examples for removing waste from ...Cut the crap. Practical tips and real world examples for removing waste from ...
Cut the crap. Practical tips and real world examples for removing waste from ...
 
Future of Testing, Test Automation and The Quality Analyst
Future of Testing, Test Automation and The Quality AnalystFuture of Testing, Test Automation and The Quality Analyst
Future of Testing, Test Automation and The Quality Analyst
 
Costs of the Cult of Expertise
Costs of the Cult of ExpertiseCosts of the Cult of Expertise
Costs of the Cult of Expertise
 
How to be a good developer
How to be a good developerHow to be a good developer
How to be a good developer
 
Responsive Design & SharePoint - Is it right for you?
Responsive Design & SharePoint - Is it right for you?Responsive Design & SharePoint - Is it right for you?
Responsive Design & SharePoint - Is it right for you?
 
Bridging the gap between designers and developers at theguardian.com
Bridging the gap between designers and developers at theguardian.comBridging the gap between designers and developers at theguardian.com
Bridging the gap between designers and developers at theguardian.com
 
AppSec Pipelines and Event based Security
AppSec Pipelines and Event based SecurityAppSec Pipelines and Event based Security
AppSec Pipelines and Event based Security
 

Dernier

notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.ppt
MsecMca
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Call Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
ankushspencer015
 
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 

Dernier (20)

Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.ppt
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar  ≼🔝 Delhi door step de...
Call Now ≽ 9953056974 ≼🔝 Call Girls In New Ashok Nagar ≼🔝 Delhi door step de...
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank  Design by Working Stress - IS Method.pdfIntze Overhead Water Tank  Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Call Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Netaji Nagar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
 
Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01Double rodded leveling 1 pdf activity 01
Double rodded leveling 1 pdf activity 01
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineering
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Intro To Electric Vehicles PDF Notes.pdf
Intro To Electric Vehicles PDF Notes.pdfIntro To Electric Vehicles PDF Notes.pdf
Intro To Electric Vehicles PDF Notes.pdf
 
Call Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Walvekar Nagar Call Me 7737669865 Budget Friendly No Advance Booking
 
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bangalore ☎ 7737669865 🥵 Book Your One night Stand
 

ACRUMEN Slides for RubyNation and CapitalGo, 2018