Upload
jonas-fleming
View
213
Download
0
Tags:
Embed Size (px)
Citation preview
Modeling on theRight Side of the Brain
Leon Starr
M O D E L I N T E G R A T I O N
2 Copyright © 2001 Model Integration, LLC
?
Copyright © 2001 Model Integration, LLC3
Inspiration
Drawing on the Right Side of the Brain
by Betty Edwards
ISBN: 0874774241
Copyright © 2001 Model Integration, LLC4
Right vs. Left
Intuitive, Perceptive, Metaphorical
Logical, Symbolic, Sequential
RIGHT
LEFT
Copyright © 2001 Model Integration, LLC5
Left brain draws a face
Copyright © 2001 Model Integration, LLC6
Right brain draws a face
Copyright © 2001 Model Integration, LLC7
But…
Software development is an engineering process!
Isn’t this gooey intuitive, perceptive stuff just for user interface designers?
Copyright © 2001 Model Integration, LLC8
Right brain thinking is essential
Perception Observation Reflection Metaphorical thinking
Quality analysis depends upon right brain skills
Copyright © 2001 Model Integration, LLC9
But the left brain dominates
Model manipulation Pattern searching Half-brained abstraction
Alone, left brain thinking produces models that don’t quite match reality
10 Copyright © 2001 Model Integration, LLC
Why?
Copyright © 2001 Model Integration, LLC11
Opposing paths toward a system
Computer
Bottom Up
Application
Top Down
Copyright © 2001 Model Integration, LLC12
Bottom Up, Computer Centric
Computer
Assembly
Application
C
C++
JavaBooch
UNIX
PSOS
COM
class
array
protocol
header
pointer
The world of the
programmer Increasing levels
of abstraction
11001101
Copyright © 2001 Model Integration, LLC13
Computer Centric Activities
Package efficiently Use platform effectively Make best use of technology Invent cool mechanisms
Copyright © 2001 Model Integration, LLC14
Top Down, Application Centric
Computer
Application
Informal modelsreversethruster
landinggear
arm indicator
approach
procedure
engine
The world of the
analyst
Increasing levels
of executability
Text requirements
Executable models
Copyright © 2001 Model Integration, LLC15
Application Centric Activities
Specify requirements precisely Take detailed notes Interrogate subject matter experts Validate model against requirements Expose rules and policies
Executable UML encourages this - right?
Copyright © 2001 Model Integration, LLC16
Not necessarily…
Computer
Assembly
Application
C
C++ JavaBooch
UNIX
PSOS
COM
association
event
class
identifier
attribute
The world of the
XUML programmer Increasing levels
of abstraction
Executable UML
reversethruster
landinggear
arm indicator
approach
procedure
engine
11001101
Copyright © 2001 Model Integration, LLC17
To make matters worse…
You’re my best programmer, but we’re doing UML now. So start building models.
OK.
18 Copyright © 2001 Model Integration, LLC
Promoting the Right Brain
Copyright © 2001 Model Integration, LLC19
Solution
Look for analysis talent or potential Look separately for modeling skills Don’t assume that object-oriented
programmers are your best candidates
Copyright © 2001 Model Integration, LLC20
Insufficient basis for abstractionYeah, yeah, one of those linear pattern things. You just model it with an asymmetric reflexive, blah blah blah, and then we can inherit blah blah blah polymorphism blah blah. That little yellow guy sure is slow…
hypothesize
study
interview
data collection
whiteboard
Copyright © 2001 Model Integration, LLC21
Abstraction based on data
So that’s what’s really going on!
That blue guy’s such an idiot.
Copyright © 2001 Model Integration, LLC22
Half brained analysis
Lots of building blocks Lots of mechanisms Lots of implementation Casual attention to specific requirements
Copyright © 2001 Model Integration, LLC23
Negative consequences
No documentation Same meetings over and over Don’t see trouble until too late Models make implementation assumptions Unexpected changes to the models Models don’t extend easily Model hacking
Copyright © 2001 Model Integration, LLC24
Right brained talent required
Detailed perception Creative use of paradigms and metaphors Intuitive grasp of the big picture
Copyright © 2001 Model Integration, LLC25
Specific analysis tasks
Take detailed notes / illustrate constantly Collect data, re-organize data Present, get feedback, recycle Interrogate the experts Explore ideas before diving into model detail Create multiple solutions Recognize established theory - study
Copyright © 2001 Model Integration, LLC26
Testing for analysis talent
Model Hacker Test Technical Note Test Interrogation Test The Misleading Requirement Test Data Gathering Test Metaphor Comparison Test
Copyright © 2001 Model Integration, LLC27
Testing for modeling talent
Model a sequence or network Model an interaction/incident Find the normalization error Find the Function (disguised as a class) What’s this classes’s lifecycle? Express this “if-then rule” as an association Where’s the specification data?
Copyright © 2001 Model Integration, LLC28
Potential analysts
Application Experts GUI Developers Technical Writers Students Who knows? Leave no stone unturned!
Copyright © 2001 Model Integration, LLC29
Focus the talent
30 Copyright © 2001 Model Integration, LLC
Summary
Copyright © 2001 Model Integration, LLC31
Left-brained modelers go bottom up.
Complex, imprecise, unstable models.
Copyright © 2001 Model Integration, LLC32
The easiest route is top down.
But it requires ANALYSIS talent.
Copyright © 2001 Model Integration, LLC33
Model on the right side of the brain.
Focus on the analysis skills and tasks. Find and develop good analysts. Organize and focus the analysis effort. And the modeling will be EASY.