Ethics as a Quality Attribute Michael Keeling IBM @michaelkeeling - - PowerPoint PPT Presentation

ethics as a quality attribute
SMART_READER_LITE
LIVE PREVIEW

Ethics as a Quality Attribute Michael Keeling IBM @michaelkeeling - - PowerPoint PPT Presentation

Ethics as a Quality Attribute Michael Keeling IBM @michaelkeeling Virtue Ethics Consider the character of the individual Its OK to lie if your intentions are virtuous. Aristotle 3 Virtue Ethics Consider the character of the


slide-1
SLIDE 1

Ethics as a Quality Attribute

Michael Keeling IBM @michaelkeeling

slide-2
SLIDE 2
slide-3
SLIDE 3

3

Virtue Ethics

Consider the character of the individual “It’s OK to lie if your intentions are virtuous.”

Aristotle

slide-4
SLIDE 4

4

Aristotle

Virtue Ethics

Consider the character of the individual “It’s OK to lie if your intentions are virtuous.” No Decision: Loyalty is a good characteristic, but to whom are you loyal?

slide-5
SLIDE 5

5

Utilitarianism

Consider the consequences “It’s OK to tell a lie only if it helps more people than telling the truth.”

John Stuart Mill

slide-6
SLIDE 6

6

John Stuart Mill

Utilitarianism

Consider the consequences “It’s OK to tell a lie only if it helps more people than telling the truth.” Decision: We help more people by shipping sooner.

slide-7
SLIDE 7

7

Immanuel Kant

Deontological Ethics

Rules or principles define moral obligations “It is never OK to lie, even if your intentions are good.”

slide-8
SLIDE 8

8

Immanuel Kant

Deontological Ethics

Rules or principles define moral obligations “It is never OK to lie, even if your intentions are good.” Decision: Workforce reduction with time to transition humanely.

slide-9
SLIDE 9

Consider…

9

Potential harm vs. potential good for some set of stakeholders

slide-10
SLIDE 10

10

https://www.google.com/doodles/30th-anniversary-of-pac-man

slide-11
SLIDE 11

11

4.8 million hours $120 – 298 million 504 million happy people

http://blog.rescuetime.com/2010/05/24/the-tragic-cost-of-google-pac-man-4-82-million-hours/

slide-12
SLIDE 12
slide-13
SLIDE 13

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs

13

slide-14
SLIDE 14

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs
  • Environmental Sustainability
  • Maintainability

14

“Framing Sustainability as a Property of Software Quality” by Patricia Lago, Sedef Akinli KoÇak, Ivica Crnkovic, and Birgit Penzenstadler. published in Communication of the ACM, October 2015

slide-15
SLIDE 15

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs
  • Environmental Sustainability
  • Maintainability

15

Downtime harms customers Do you compensate them? Can customers afford the harm?

slide-16
SLIDE 16

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs
  • Environmental Sustainability
  • Maintainability

16

How much stress will you put on your team? How much tension with maintainability can you bear?

slide-17
SLIDE 17

Ethical Time-to-Market?

17

Source Development team Stimulus Delivers increments of the software Artifact Development team Response Continues working for the company Response Measure At the same historical rate Environment Highly stressful / Overtime situation

slide-18
SLIDE 18

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs
  • Environmental Sustainability
  • Maintainability

18

Fair wages Proper accounting Proper procurement In tension with maintainability

slide-19
SLIDE 19

Some Unethical Practices…

  • Purposefully reduced wages by gender,

nationality

  • Outsourcing at less than fair prices
  • Inaccurate hours reporting
  • Violating open source licensing
  • Knowingly shipping junk

19

slide-20
SLIDE 20

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs
  • Environmental Sustainability
  • Maintainability

20

What is the environmental impact of your software?

slide-21
SLIDE 21

Environmental Sustainability

21

Source Auto-scaling scripts Stimulus Detect signal for load increase Artifact Cloud / Services Response Increases capacity Response Measure Overall carbon output remains neutral Environment Peak load

slide-22
SLIDE 22

Top Quality Attributes

  • Availability
  • Time-to-market
  • Costs
  • Environmental Sustainability
  • Maintainability

22

Craftsmanship Technical debt management Documentation and communication

slide-23
SLIDE 23

23

Maybe good communication is a moral imperative in software architecture!

slide-24
SLIDE 24
  • Who are your stakeholders?
  • What can cause them harm?
  • What can cause them potential good?
  • Who is responsible for deciding?

24

See also: http://www.acm.org/about-acm/acm-code-of-ethics-and-professional-conduct

slide-25
SLIDE 25

25

You have the power and responsibility to do what is right.

slide-26
SLIDE 26

26

Be excellent to each other!

slide-27
SLIDE 27

Thank you!

Michael Keeling IBM @michaelkeeling http://neverletdown.net

27

Coming soon to the Pragmatic Bookshelf! Filled with hands-on exercises! A practical guide to software architecture design! Check out Michael’s book… http://bit.ly/swarch-design-book