Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Humane assessment by example (MooseDay 04.2013)

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →

Humane assessment by example (MooseDay 04.2013)

I used this set of slides for a presentation at MooseDay 2013 (April)

Tudor Girba

April 04, 2013

Transcript

34 slides
  1. com.company common module core whatever name srv ui inter whatever

    model allModelNamespaces select: [:each | (NamingConventionGrammar new matches: each mooseName) not]
  2. 2012-03-13 16:10:56,876 TRACE CachingDelegate: Cache hit /service/Region QueryTO [depth=-1, parentDepth=1,

    namespace=Region, regioncode=IACA, itemcodes=[APA4725090], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=-742458864 2012-03-13 16:10:58,470 TRACE CachingDelegate: Cache MISS /service/Region QueryTO [depth=1, parentDepth=2, namespace=Region, regioncode=Structure, itemcodes=[], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=2003270021 2012-03-13 16:10:58,563 INFO LegacyScriptCalls: LegacyScriptCall called with Parameter: namespace[nnn;Core] From=abc To=xyz [DataFilter] Id=1234 [OutputFormat] Format=xml [XsltConfig] XSLT=WithItemId ] payload[] 2012-03-13 16:10:58,798 INFO ActionService: getActionsByDate: patId=8909580, caseId=3807672, from=Wed Dec 21 00:00:00 CET 2011, to=Wed Mar 14 00:00:00 CET 2012 2012-03-13 16:10:58,923 TRACE CachingDelegate: Cache hit /service/Region AnotherQueryTO [regioncode=null, itemCodes=[], namespace=Region, codeSystem=domain.entry, elementKind=Region, validityDate=Tue Mar 13 00:00:00 CET 2012, descriptionIncluded=false, locale=de_CH, validityTestMode=false] hash=570633577 2012-03-13 16:10:59,266 TRACE CachingDelegate: Cache MISS /service/AnotherRegion QueryTO [depth=1, parentDepth=-1, namespace=AnotherRegion, regioncode=630, itemcodes=[I_23451], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=-1116635756
  3. 2012-03-13 16:10:56,876 TRACE CachingDelegate: Cache hit /service/Region QueryTO [depth=-1, parentDepth=1,

    namespace=Region, regioncode=IACA, itemcodes=[APA4725090], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=-742458864 2012-03-13 16:10:58,470 TRACE CachingDelegate: Cache MISS /service/Region QueryTO [depth=1, parentDepth=2, namespace=Region, regioncode=Structure, itemcodes=[], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=2003270021 2012-03-13 16:10:58,563 INFO LegacyScriptCalls: LegacyScriptCall called with Parameter: namespace[nnn;Core] From=abc To=xyz [DataFilter] Id=1234 [OutputFormat] Format=xml [XsltConfig] XSLT=WithItemId ] payload[] 2012-03-13 16:10:58,798 INFO ActionService: getActionsByDate: patId=8909580, caseId=3807672, from=Wed Dec 21 00:00:00 CET 2011, to=Wed Mar 14 00:00:00 CET 2012 2012-03-13 16:10:58,923 TRACE CachingDelegate: Cache hit /service/Region AnotherQueryTO [regioncode=null, itemCodes=[], namespace=Region, codeSystem=domain.entry, elementKind=Region, validityDate=Tue Mar 13 00:00:00 CET 2012, descriptionIncluded=false, locale=de_CH, validityTestMode=false] hash=570633577 2012-03-13 16:10:59,266 TRACE CachingDelegate: Cache MISS /service/AnotherRegion QueryTO [depth=1, parentDepth=-1, namespace=AnotherRegion, regioncode=630, itemcodes=[I_23451], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=-1116635756 Cache MISS Cache hit Cache MISS Cache hit
  4. 2012-03-13 16:10:56,876 TRACE CachingDelegate: Cache hit /service/Region QueryTO [depth=-1, parentDepth=1,

    namespace=Region, regioncode=IACA, itemcodes=[APA4725090], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=-742458864 2012-03-13 16:10:58,470 TRACE CachingDelegate: Cache MISS /service/Region QueryTO [depth=1, parentDepth=2, namespace=Region, regioncode=Structure, itemcodes=[], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=2003270021 2012-03-13 16:10:58,563 INFO LegacyScriptCalls: LegacyScriptCall called with Parameter: namespace[nnn;Core] From=abc To=xyz [DataFilter] Id=1234 [OutputFormat] Format=xml [XsltConfig] XSLT=WithItemId ] payload[] 2012-03-13 16:10:58,798 INFO ActionService: getActionsByDate: patId=8909580, caseId=3807672, from=Wed Dec 21 00:00:00 CET 2011, to=Wed Mar 14 00:00:00 CET 2012 2012-03-13 16:10:58,923 TRACE CachingDelegate: Cache hit /service/Region AnotherQueryTO [regioncode=null, itemCodes=[], namespace=Region, codeSystem=domain.entry, elementKind=Region, validityDate=Tue Mar 13 00:00:00 CET 2012, descriptionIncluded=false, locale=de_CH, validityTestMode=false] hash=570633577 2012-03-13 16:10:59,266 TRACE CachingDelegate: Cache MISS /service/AnotherRegion QueryTO [depth=1, parentDepth=-1, namespace=AnotherRegion, regioncode=630, itemcodes=[I_23451], codesystem=, elementkind=ITEM, descriptionIncluded=false, validityTestMode=false] hash=-1116635756 Cache MISS Cache hit Cache MISS Cache hit QueryTO AnotherQueryTO QueryTO QueryTO
  5. accept(Visitor) Description description Value accept(Visitor) Boolean actualValue BooleanValue accept(Visitor) ...

    ...Value accept(Visitor) UndefinedValue Value value; ... if (value == null) { ... }
  6. accept(Visitor) boolean isUndefined() Description description Value accept(Visitor) Boolean actualValue BooleanValue

    accept(Visitor) ... ...Value accept(Visitor) boolean isUndefined() UndefinedValue Value value; ... if (value == null) { ... }
  7. accept(Visitor) boolean isUndefined() Description description Value accept(Visitor) Boolean actualValue BooleanValue

    accept(Visitor) ... ...Value accept(Visitor) boolean isUndefined() UndefinedValue Value value; ... if (value.isUndefined()) { ... }
  8. valueClass := self allModelTypes entityNamed: #'Value'. valueVariables := valueClass withSubclassHierarchy

    flatCollectAsSet: #structuresWithDeclaredType. valueVariables select: [ :each | (('*', each name , ' != null*') match: each belongsTo sourceText) or: [ ('*', each name , ' == null*') match: each belongsTo sourceText ] ] Value value; ... if (value == null) { ... }
  9. valueMethods := valueClass withSubclassHierarchy flatCollectAsSet: #behavioursWithDeclaredType. valueMethods select: [:each |

    each comments anySatisfy: [:c | '*null*' match: c sourceText ] ] /** * The method can return null */ Value doSomething() { ... return value; }

More Decks by Tudor Girba

Other Decks in Technology