humane assessment: taming the elephant from the development room

72
taming the elephant from the development room humane assessment humane-assessment.com

Upload: tudor-girba

Post on 19-Jun-2015

182 views

Category:

Technology


3 download

DESCRIPTION

I used this set of slides for a talk I gave at SI-SE Fachtagung in Zurich.

TRANSCRIPT

Page 1: Humane assessment: Taming the elephant from the development room

taming the eleph

ant

from the developme

nt room

humaneassessment

humane-assessment.com

Page 2: Humane assessment: Taming the elephant from the development room

technical debt

Page 3: Humane assessment: Taming the elephant from the development room

technical debt

Page 4: Humane assessment: Taming the elephant from the development room

technical debt

Page 5: Humane assessment: Taming the elephant from the development room

development

Page 6: Humane assessment: Taming the elephant from the development room

http://www.humane-assessment.com/guide/assessment-costs

development

Page 7: Humane assessment: Taming the elephant from the development room
Page 8: Humane assessment: Taming the elephant from the development room
Page 9: Humane assessment: Taming the elephant from the development room

development

Page 10: Humane assessment: Taming the elephant from the development room

decisiondevelopment

Page 11: Humane assessment: Taming the elephant from the development room

decisiondevelopment

Page 12: Humane assessment: Taming the elephant from the development room

decisiondevelopment

Page 13: Humane assessment: Taming the elephant from the development room

development

Page 14: Humane assessment: Taming the elephant from the development room
Page 15: Humane assessment: Taming the elephant from the development room

assessment

Page 16: Humane assessment: Taming the elephant from the development room
Page 17: Humane assessment: Taming the elephant from the development room
Page 18: Humane assessment: Taming the elephant from the development room
Page 19: Humane assessment: Taming the elephant from the development room
Page 20: Humane assessment: Taming the elephant from the development room
Page 21: Humane assessment: Taming the elephant from the development room
Page 22: Humane assessment: Taming the elephant from the development room
Page 23: Humane assessment: Taming the elephant from the development room
Page 24: Humane assessment: Taming the elephant from the development room
Page 25: Humane assessment: Taming the elephant from the development room
Page 26: Humane assessment: Taming the elephant from the development room
Page 27: Humane assessment: Taming the elephant from the development room
Page 28: Humane assessment: Taming the elephant from the development room

decisiondevelopment

assessment

Page 29: Humane assessment: Taming the elephant from the development room

decisiondata

assessment

Page 30: Humane assessment: Taming the elephant from the development room

decisionanalysesdata

assessment

Page 31: Humane assessment: Taming the elephant from the development room

decisionanalyses modelsdata

assessment

Page 32: Humane assessment: Taming the elephant from the development room

decisionanalyses modelsdata

assessment

Page 33: Humane assessment: Taming the elephant from the development room

applyanalysis

interpretconfident?

hypothesize

Page 34: Humane assessment: Taming the elephant from the development room

existinganalysis?

applyanalysis

interpretconfident?

hypothesize

Page 35: Humane assessment: Taming the elephant from the development room

existinganalysis?

applyanalysis

interpretconfident?

craftanalysis

hypothesize

Page 36: Humane assessment: Taming the elephant from the development room

craftanalysis

activities

daily

spike

strategic

facilitator

stakeholder

skills tooling

buildup

throwaway

Page 37: Humane assessment: Taming the elephant from the development room

decisionanalyses modelsdata

assessment

Page 38: Humane assessment: Taming the elephant from the development room

NOM = ?

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 39: Humane assessment: Taming the elephant from the development room

NOM = 7

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 40: Humane assessment: Taming the elephant from the development room

NOM = 7 6

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 41: Humane assessment: Taming the elephant from the development room

NOM = 7 6 4

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 42: Humane assessment: Taming the elephant from the development room

NOM = 7 6 4 3

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 43: Humane assessment: Taming the elephant from the development room

NOM = 7 6 4 3 2

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 44: Humane assessment: Taming the elephant from the development room

NOM = 7, 6, 4, 3, 2 ?

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

Page 45: Humane assessment: Taming the elephant from the development room

NOM = 7, 6, 4, 3, 2 ?

public class Library {List books;public Library() {…}public void addBook(Book b) {…}public void removeBook(Book b) {…}private boolean hasBook(Book b) {…}protected List getBooks() {…}protected void setBooks(List books) {…}public boolean equals(…) {…}

}

your responsibil

ity

Page 46: Humane assessment: Taming the elephant from the development room

decisionanalyses modelsdata

assessment

Page 47: Humane assessment: Taming the elephant from the development room

analyses modelsdata

Page 48: Humane assessment: Taming the elephant from the development room

importers modelsdata analyses

Page 49: Humane assessment: Taming the elephant from the development room

importers modelsdata analyses

Page 50: Humane assessment: Taming the elephant from the development room

importers modelsdata analyses

engines

Page 51: Humane assessment: Taming the elephant from the development room

importers modelsdata analyses

enginesmoosetechnology.org

Page 52: Humane assessment: Taming the elephant from the development room
Page 53: Humane assessment: Taming the elephant from the development room
Page 54: Humane assessment: Taming the elephant from the development room
Page 55: Humane assessment: Taming the elephant from the development room
Page 56: Humane assessment: Taming the elephant from the development room
Page 57: Humane assessment: Taming the elephant from the development room
Page 58: Humane assessment: Taming the elephant from the development room
Page 59: Humane assessment: Taming the elephant from the development room
Page 60: Humane assessment: Taming the elephant from the development room
Page 61: Humane assessment: Taming the elephant from the development room

importers modelsdata analyses

enginesmoosetechnology.org

Page 62: Humane assessment: Taming the elephant from the development room

craftanalysis

activities

daily

spike

strategic

facilitator

stakeholder

skills tooling

buildup

throwaway

Page 63: Humane assessment: Taming the elephant from the development room

strategicmodel abstraction

Page 64: Humane assessment: Taming the elephant from the development room

public void doSomethingWithEntity( final int id, final String code) {

Entity entity = lookupBy(id, code); doSomething(entity);}

Page 65: Humane assessment: Taming the elephant from the development room

((model allAttributes select: [:a| a hasClassScope not]), model allParameters) select: [ :each | ('*id*' match: each name) or: [ '*code*' match: each name ] ]

public void doSomethingWithEntity( final int id, final String code) {

Entity entity = lookupBy(id, code); doSomething(entity);}

Page 66: Humane assessment: Taming the elephant from the development room
Page 67: Humane assessment: Taming the elephant from the development room

spikea JBoss memory leak

Page 68: Humane assessment: Taming the elephant from the development room

@Remote(...)@Stateless(...)public class XYZService { @EJB private ABCService abc; ...}

@Remote(...)@Stateless(...)public class ABCService { @EJB private XYZService xyz; ...}

Page 69: Humane assessment: Taming the elephant from the development room

@Remote(...)@Stateless(...)public class XYZService { @EJB private ABCService abc; ...}

(model allClasses select: #isRemote) cyclesToAll: [ :class | class attributes flatCollectAsSet: [ :attr | attr declaredType withSubclassHierarchy ]]]

@Remote(...)@Stateless(...)public class ABCService { @EJB private XYZService xyz; ...}

Page 70: Humane assessment: Taming the elephant from the development room
Page 71: Humane assessment: Taming the elephant from the development room

taming the eleph

ant

from the developme

nt room

humaneassessment

humane-assessment.com