Moose shepherd

Humane assessment is a method for making software engineering decisions. Assessing software systems to make decisions is a critical activity that needs to be approached explicitly during development. Read more about humane assessment in the free MiniBook.

The Moose shepherd course offers a complete introduction in the Moose analysis platform and extensive exercises on using it to practice humane assessment. You will learn how to extract information from the system to support decision making. Technically, you will learn about code navigation and querying techniques, code metrics, visualizations, introduction to scripting custom concerns, visualizations and browsers.

The course sessions are accompanied by hands-on exercises which can be based on case studies provided by the participants. Following this strategy, the lessons learnt can be applied directly in a productive context.

Modules

  1. (optional) Introduction to the Smalltalk syntax
  2. Moose Basics
    • Manipulating models: selection, navigation, introspection and presentation
    • Moose architecture
    • The (FAMIX) meta-model as an API
    • Exercises based on the case study system
  3. Visualizing graphs
    • Drawing views
    • Specifying interaction
    • Exercises based on the case study system
  4. Building custom browsers
    • The essence of building browsers
    • The visual notation
    • Expressing the navigation flow
    • Nesting browsers
    • Integration of visualizations
    • Exercises based on the case study system
  5. Creating custom reports
    • Defining custom reporting concerns
    • Integrating custom browsers in reports
    • Integrating with Jenkins/Hudson
    • Exercises based on the case study system
  6. Visualizing charts
    • Drawing charts
    • Exercises based on the case study system
  7. Parsing custom languages
    • The basic mechanisms of defining a grammar
    • Defining transformations to customize the output model
    • Testing the parser
    • Excersises
  8. Quick humane assessment hands-on
    • The role of assessment in the development process
    • The need for custom solutions for custom problems
    • An assessment exercise based on the case study system
  9. Extensive humane assessment hands-on
    • An assessment exercise based on a new dataset

Target audience

  • software engineers
  • architects

Prerequisites

  • object-oriented programming
  • followed the Humane assessment primer course, or read the Guide
  • (optional) some knowledge of programming using dynamic languages

Duration: 5 days