The Tao of SysML
SysML的道
Dr. Bruce “Zen Master” Douglass, Ph.D.
Chief Evangelist
IBM IoT
Bruce.Douglass@us.ibm.com
www.Bruce-Douglass.com
© 2018 IBM Corporation
The Eightfold Path Wisdom
Right
Views
Right Right
Focus Intention
Right SysML Right
Mental
Mindfulness
的道 Speech
Discipline
Right Right
Effort Action
Ethical
Right Conduct
Livelihood
© 2018 IBM Corporation
2
Ethical Conduct: Right Speech
▪ Precision Modeling (Drawing ≠ Modeling)
▪ Use Diagrams Correctly
▪ Subset SysML
© 2018 IBM Corporation
3
Ethical Conduct: Right Action
▪ Build Semantically Complete Models
▪ Manage Your Models
Simplicity is the key to
brilliance
- Bruce Lee
© 2018 IBM Corporation
4
Semantically Complete For Purpose
Ask – What information is necessary?
Abstraction level
System scope?
Subsystem scope?
Design element scope?
Functionality – input-output control/data transformation Ask – Who needs this information?
Structure Stakeholders?
Precision
Accuracy
Designers?
Fidelity Testers?
Behavior Managers?
Ask – What outcomes does
this information support?
© 2018 IBM Corporation
5
Ethical Conduct: Right Livelihood
▪ Model Organization
▪ Verify Model Content
© 2018 IBM Corporation
6
Canonical Model Organization
Subdivided into nested subject-
oriented packages to store
reusable software types and
classes
© 2018 IBM Corporation
7
Right Livelihood: Verify Your Models
Semantic Verification
• “correct” (compliance in meaning)
Performed by engineering personnel
Three basic techniques
• Semantic review (subject matter expert & peer) –
most common, weakest means
• Testing – requires executability of work products,
impossible to fully verify
• Formal methods – strongest but hard to do and
subject to invariant violation
Syntactic Semantic
Validation
Verification Verification
Syntactic Verification
– “well-formed” (compliance in form) Validation
Performed by quality assurance personnel
• Audits – work tasks are performed as per plan • “meets the stakeholder need”
and guidelines Performed by customer + engineering
• Syntactic review – work products conform to Some common techniques
standard for organization, structure and format • Review – (subject matter expert & customer) –
most common, weakest
• Simulation – show simulated input → outputs
• Sandbox – exploratory usage in constrained
environment
• Flight test – demonstration of system capabilities
• Deployment – early usage of system of partial
capability © 2018 IBM Corporation
8
Mental Discipline: Right Focus
▪ Define Model Purpose and Scope
▪ Define Model Precision
▪ Define Abstraction Levels
The successful warrior is
the average man, with
laser-like focus
- Bruce Lee
© 2018 IBM Corporation
9
Managing Diagrammatic Complexity
▪ This diagram has too many level of abstraction and mixes type and containment taxonomies
© 2018 IBM Corporation
10 10
Mission 1: Overall Subsystem Architecture
© 2018 IBM Corporation
11
Mission 2: Subsystem Internal Architecture
© 2018 IBM Corporation
12
Mission 3: Subsystem Block Type Taxonomy
Note that I can link
together relevant
diagrams with
navigation
hyperlinks
© 2018 IBM Corporation
13
Mission 4: Instance Specifications of Architecture
© 2018 IBM Corporation
14
Wisdom: Right Mindfulness
▪ Avoid Defects
▪ Maintain External Consistency
▪ Manage Traceability
▪ Focus on Models Goals and Objectives
Concentration is the
root of all the higher
abilities in man
© 2018 IBM Corporation
15
It is better to avoid defects than to fix defects
Safety, Reliability
Year
& Security
Practices
Verification
Project
month Management
Customer
Validation practices
hour
Continuous Iterative
Verification SE
Modeling
Specification
Trade
Studies Nanocycle
Customer Architecting
Liaison
Practices
Iteration
Quality
Assurance
Project Practices
© 2018 IBM Corporation
16
16
Mental Discipline: Right Effort
▪ Identify and Remove Model Defects
▪ Hypothesis-Driven Modeling
© 2018 IBM Corporation
17
Hypothesis-Driven Modeling
Understand your objective
• “I think you mean this …”
Cast the solution in terms of • “I think you need this …”
a testable hypothesis
• “I think the system should do this …”
Determine how the • Verification method of the Reject
hypothesis will be modelled hypothesis Accept
accepted or rejected • Acceptance criteria
Model the hypothesis
Apply verification • Learn from the rejection
method • Use this information to
formulate a new hypothesis
Accept or Reject the
Hypothesis
© 2018 IBM Corporation
18
Mental Discipline: Right Views
▪ Each diagram should have a mission
▪ Specification vs Design Models
© 2018 IBM Corporation
19
Wisdom: Right Intentions
▪ Type-Role-Instance Dichotomy
▪ Useful Descriptions
▪ Right Conceptualization
© 2018 IBM Corporation
20
What’s a role?
▪ A role is a usage of an instance of a type in a context
▪ A type is a specification of a thing. The type only exists at design-time.
▪ An instance is something that exists at run-time
▪ A role is a usage of an instance of a type in a context. A role exists at design time
but is fulfilled at run-time by an instance (part). A part is a role where the context is
the owning classifier.
© 2018 IBM Corporation
21
© 2018 IBM Corporation
22