Real-Time and Embedded Forum and TOGAF (19 Oct 2009) G. Edward Roberts Elparazim...
-
Upload
byron-blair -
Category
Documents
-
view
215 -
download
0
Transcript of Real-Time and Embedded Forum and TOGAF (19 Oct 2009) G. Edward Roberts Elparazim...
2
What is the Problem?
WorkproductProducer
BusinessVisionary
Descriptive
Prescriptive
Traceable?
Complete Process for Multiple Domains
Toolable
…
…process
If one removed that Business Goal would the workproduct stop?
Workproduct
BusinessGoal
3
Broader Picture of Tool
Enterprise Tool
TechnicalArchitecture
BusinessGoals
Governance
OrganizationBusinessRequirements
Influencers
ADL-Plus Tool
QualityV&V
<<uses>>
Three Areas
• (Area 1) Expand TOGAF to include Real-time and Embedded concepts
• (Area 2) Integrate TOGAF with a much more prescriptive process such as RUP (Rational Unified Process) or openUp, for a complete Enterprise to working code approach to Real-time and Embedded projects
• (Area 3) Identify techniques and specifications that could be incorporated into the process to support Real-time and Embedded needs
(Area 1) Model TOGAF
Model TOGAF in SPEM2 and use SPEM2’s generic ability to extend/replace the description as a way to let The Open Group’s various working groups publish their extensions independent of TOGAF.
Also the use of SBVR looks promising to remove some of the ambiguity of statements in the standard.
Discussion of Area 1• Discussion of Wednesday Morning meeting at The
Open Group’s Toronto Meeting• Microkernel Kind of Architecture• This was not just a RTESF problem• Many groups wanted to extend TOGAF• Example: Why do we have a SOA chapter in
TOGAF itself?• Need a “add-in” concept that is formal, and can
be “mechanically combined”
17
Area 2 – Integrate Processes
Descriptive
Prescriptive
TOGAF Realm
e.g. RUP or openUP Realm
touchpoints
workproducts<<flow>>
<<produce>>
<<reference>>
openUP SPEM 2 Model
TOGAF SPEM 2 Model
Reference
• See http://www.aprocessgroup.com/products/product_02_010402.asp
20
(Area 3) Techniques
TOGAF
SysML
AADL
AcceleoADL-Plus Specification
UML2
RT Java 5With Annotations
ATL
ATL
System
Enterprise
“Electronics”
Software
ImplementationsADLPlus Runtime
Phase D
SysA Metamodels of Interest
• SAEM (Software Assurance Evidence Metamodel)
• ARM (Argumentational Metamodel)
These two meta-models could allow descriptions to be made of what would constitute Assuredness/dependiblity in a real-time system
22
Updated SAEM 0809
artifacts
Statements
‘Leaf’ Statements
Things/Relations
Claims & Arguments
(ARM)
Evidence
Inferential support between
statements
Assurance Case
ISO 15026
Propositions are based on a particular
ontology
Leaf Claims require non-inferential
support
Who did What Whenontology/vocabulary
Evidence documentadministrative
Evidence element
from ARM
fact model
Claims and subclaims
23
ExampleClaim: “Dan Brown is a distinguished writer”
Subclaim: “Dan Brown published many books”
“A distinguished writer is one who published many books by reputable publishers andreceived favorable reviews by reputable criticsOr one of whose books was selected as the basis for a movie script”
Subclaim: “All books by Dan Brown were published by reputable publishers”
Subclaim: “Two books by Dan Brown were selected for movie scripts”
What: “a letter from Library of Congress listing all books published by Dan Brown”
“Dan Brown is an individual who wrote the book “DaVinci Code”
Fact: “Dan Brown wrote 7 books”
Who: “Library of Congress staff”
When: “15-09-2009”
Content: “Dan Brown wrote “DaVinci Code” “Dan Brown wrote “Angels and Demons”
Source: “Library of Congress content”
AcquisitionMethod: “Letter of request”
24
Example (1)Project(
EvidenceFact(id06, ”Bob had Enhanced clearance from 01-10-1999 until 01-10-2000”,”clearance.owl”,”Person has Clearance”) (
EvidenceRole(id06,”Person”,id01), EvidenceRole(id06,”Clearance”,id04), StartTime(id06,”01-10-1999”), EndTime(id06,”01-10-2000”),
Compliance(d01,true), CollectedBy(d01,id01), ApprovedBy(d01,id03), ProducedBy(id01,t01), AcquiredBy(id01,m01)
), EvidenceObject(id01,”personnel.owl”,”Person”,“Bob”), EvidenceObject(id03,”personnel.owl”,”Person”,“John”), EvidenceObject(id04,”clearance.owl”,”Clearance”,”Enhanced clearance”), EvidenceObject(id05,”clearance.owl”,”Clearance”,”Secret clearance”),
Tool(t01,”xyz”), Method(m01,”dfdf asf sdfads fasdf asdfasdf”))
Next Steps• “drink our own champagne”, Architect TOGAF
(perhaps with a modification of our own methods)[some work done here]
• Model TOGAF 9 in SPEM2, using Micro-Kernel concepts
• See if SBVR could be used to make statements unambiguous
• Study SAEM and ARM metamodels (description of certification)
• Do some prototyping
TasksTask 1: Adjust TOGAF for extension (Model TOGAF – SPEM2, SBVR)
Task 2: Go Through TOGAF and Note RTESF Differences/Additions
Task 3: Work out how one Certifies RTES (includes SAEM and ARM)
In Parallel
Task 4: Work out how Technical Architecture Process
Task 5: Work out how Technical Architecture Methodology (SysML, AADL,UML)
Backup
28
29
Technology and Standards Influences
Framework Development
Local Node Realtime
Distributed Node Realtime
Infrastructure:- Eclipse- Modelbus
Modeling Standards:- SysML- UML2- OCL
Modeling Profiles:- MARTE- AADL-User Defined
Modeling Tools:- Papyrus UML- TOPCASED- ATL
MDA:- Acceleo- OSATE
Languages:- Eclipse IDE Support- Java5- Annotations- AspectJ- Others
Unit Test:- JUnit- TTCN-3
Insitu Testing:-TPTP- AspectJ Loadtime Weaving- CBE (Common Base Event)
All Open Source
30
TTCN-3Code
Mock Objects
UML 2.0 With OCL Agent Code
Testing Environment
Implementation Phase
Analysis Phase
Testing Phase
TTCN-3 Engine
MDA Tool
Annotations
XML
JVMInstrumentation
Rules,Viewer, and Diagnosis
JMX
JMX
Patterns
MARTE
AnnotationsJava Code
ADL Plus Architecture
SysML
AADL
31
Designer Roles
INNOVATIONS
uc Specifications
System
Framework Designer
Para Functional Specification
Designer
Modeler
Java Programmer
System Designer
Component Designer
Design Framework
Design Para Functional
Specification
Design System
Design Component
Framework
Para Functional
Specification
System
Component
Model
Java Code
Tester
32
Development Framework Workproducts and Components
UML 2.0Profiles (and Patterns)
DiagnosisCode
Per
Fea
ture
Para FunctionalSpecificationDesigner
UML 2.0Design
Java InterfaceWith Annotations
SystemDesigner
ComponentDesigner
Component
Tester
Test Framework
<<uses>>
<<uses>>
MDA
Basic Flow
33
UML Profile
<<stereotype>>
UML Model
ExecuteWithin
A
<<ExecuteWithin>> foo (a :int) pre: a < 3
OCL
@interface ExecuteWithin
Java AnnotationMDA
public class A {@NameList({“a”})@OCL({“pre: a < 3”})@ExecuteWithin(3000)public void foo(int a) {..}
@Around(@ExecuteWith *..*(..))public void instrumentation()
AspectJ
//CBE Statements
WeavedTPTP
MDA
34
ExecuteWithin is a stereotype that is created by a para-functional designer in a UML2 Profile. It indicates that the Operation it marks should execute within the given nanoseconds.
Para-FunctionalSpecificationDesigner
Note: it is markedWith a stereotype of AnnotationCapture
35
SystemDesigner
Operation bar in class C ismarked with the para-functionalStereotype ExecuteWithin
36
Code that is automatically generated from UML Design. This code is used by the Component Designer to add in the behavior part of the code.
ComponentDesigner
37
Choosing to use Open Innovations Profiling
Tester
The Code from the component designer is executed in the tool
38
Problem is Here
Indication of a constraint @ExecuteWithin violation
Tester
The Tester can immediately see in the tool where the constraint violations happened and in which code.