Analysing the PLM reference model

Download Report

Transcript Analysing the PLM reference model

Analysing the PLM reference
model
V0.3
Gray Bachelor
OSLC PLM Workgroup
1
What’s in this document ?
• This is the working material used to identify key
areas in the PLM Reference Model
– Pose questions
– Show examples
• Utilising the Draft OSLC PLM Reference Model
based upon the OMG Hybrid SUV model with
extensions
• Helps identify example of the SysML and STEP
elements and constructs of relevance to the
analysis
OSLC PLM Workgroup
2
Invitation
• Readers are invited to comment and
contribute through the OSLC PLM
Workgroup or directly to the author
– Do additional examples exist ?
– Any feedback on comments ?
– Any answers to the open questions ?
OSLC PLM Workgroup
3
Working topics
•
•
•
•
•
STEP file
Naming conventions
Requirements
System
Other not addressed
– Organisation
– Activity
OSLC PLM Workgroup
4
STEP file
• STEP text files (ISO-10303-Part21)
•
•
•
•
•
•
“HEADER”
REQUIREMENT
CLASSIFICATION_ASSIGNMENT
SYSTEM
SYSTEM BREAKDOWN
SYSTEM ELEMENT
• ORGANIZATION
• APPLIED_ACTIVITY_ASSIGNMENT
OSLC PLM Workgroup
5
What is the context of the naming
conventions ?
•
The container
–
Filename, description
•
•
Rules about its content
FILE_SCHEMA (('AP233_SYSTEMS_ENGINEERING_ARM_LF'));
•
•
Description of the overall “view”
#1=VIEW_DEFINITION_CONTEXT('Requirements_Analysis_Process','Concept_stage','');
•
•
The owning org
#12=ORGANIZATION('GM','GM');
•
•
How the data was produced
#20=ACTIVITY_METHOD('XSLT_Extract','XSLT Extract of STEP Part 21 Data File from Topcased SysML XMI','','For initial creation of
dataset');
•
•
When the file was produced
Date, time
•
Specific terms adopted from a consumable (include-able source)
•
#34=EXTERNAL_CLASS_LIBRARY('http://www.ap
233.org/ap233-public-information/ap233-referencedata/ap233_basic_library','Library of basic concept values from AP233');
#36=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysML-profile#DeriveReqt','DeriveReqt','The "derive requirement"
relationship relates a derived requirement to its source requirement.',#34);
#38=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysML-profile#Refine','Refine','The refine requirement relationship
can be used to describe how a model element or set of elements can be used to further refine a requirement.',#34);
#40=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysML-profile#Satisfy','Satisfy','The satisfy relationship describes
how a design or implementation model satisfies one or more requirements.',#34);
#42=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysML-profile#Verify','Verify','The verify relationship defines how a
test case or other model element verifies a requirement.',#34);
•
•
•
•
OSLC PLM Workgroup
6
PLM Reference Model:
Additional relationships enabling classification
#34=EXTERNAL_CLASS_LIBRARY('http://www.ap233.org/ap233-publicinformation/ap233-reference-data/ap233_basic_library','Library of basic
concept values from AP233');
#36=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysMLprofile#DeriveReqt','DeriveReqt','The "derive requirement" relationship
relates a derived requirement to its source requirement.',#34);
#38=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysMLprofile#Refine','Refine','The refine requirement relationship can be used to
describe how a model element or set of elements can be used to further
refine a requirement.',#34);
#40=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysMLprofile#Satisfy','Satisfy','The satisfy relationship describes how a design or
implementation model satisfies one or more requirements.',#34);
#42=EXTERNAL_CLASS('http://www.omg.org/spec/SysML/Current/SysMLprofile#Verify','Verify','The verify relationship defines how a test case or
other model element verifies a requirement.',#34);
OSLC PLM Workgroup
7
Requirements
OSLC PLM Workgroup
8
Types of Requirement in the PLM
Reference Model
• Main
• Derived
• Refinement for HSUV Acceleration
OSLC PLM Workgroup
9
PLM Reference Model
SysML Requirements Diagram
OSLC PLM Workgroup
10
• In SysML 1.1 the version is a property
– In topcased this property is not visible “on the
diagram”
OSLC PLM Workgroup
11
One requirement
Assume this is
the id
What is the
origin of this ?
#800=REQUIREMENT('R1.0','HSUV Specification','HSUV Specification Requirement')
#810=REQUIREMENT_VERSION('1','',#800);
#820=REQUIREMENT_VIEW_DEFINITION('1','HSUV Specification Requirement View
Definition','',#1,(),#810);
Is this
#1 in the
OSLC PLM Workgroup
stp file or what ?
What does the
“1” signify ?
12
A related requirement
#4500=REQUIREMENT('R1.1','Performan
ce','Performance Requirement');
#4510=REQUIREMENT_VERSION('1','Th
e Hybrid SUV shall have the braking,
acceleration, and offroad capability of
a typical SUV, but have dramatically
better fuel economy.',#4500);
#4520=REQUIREMENT_VIEW_DEFINITI
ON('1','Performance Requirement
View Definition','',#1,(),#4510);
OSLC PLM Workgroup
13
Requirement relationship isComposedOf
#4530=REQUIREMENT_COLLECTION_R
ELATIONSHIP('','isComposedOf','',#82
0,#4520);
Just a string ?
Does SysML
prescribe ?
No text – any
significance ?
OSLC PLM Workgroup
Why Collection instead
of
REQUIREMENT_VIEW_
DEFINITION_RELATIO
14
NSHIP
Another related requirement
#1300=REQUIREMENT('R1.2','EcoFriendliness','Eco-Friendliness
Requirement');
#1310=REQUIREMENT_VERSION('1','
',#1300);
#1320=REQUIREMENT_VIEW_DEFIN
ITION('1','Eco-Friendliness
Requirement View
Definition','',#1,(),#1310)
#1330=REQUIREMENT_COLLECTIO
N_RELATIONSHIP('','isComposed
Of','',#820,#1320);
OSLC PLM Workgroup
15
#1800=REQUIREMENT('R1.2.1','Emissions','Emissions Requirement');
New construct to
add a sequence of
versions
#1810=REQUIREMENT_VERSION('1','The vehicle shall meet Ultra-Low
Emissions Vehicle standards.',#1800)
#1820=REQUIREMENT_VIEW_DEFINITION('1','Emissions Requirement
View Definition','',#1,(),#1810);
#1830=REQUIREMENT_COLLECTION_RELATIONSHIP('','isComposedOf',''
,#1320,#1820);
#2700=REQUIREMENT('R1.2.1','Emissions','Emissions Requirement');
#2710=REQUIREMENT_VERSION('2','The vehicle shall meet Revised 2016
Ultra-Low Emissions Vehicle standards.',#2700);
#2712=PRODUCT_VERSION_RELATIONSHIP('sequence','Version
Sequence',#1810,#2710);
#2720=REQUIREMENT_VIEW_DEFINITION('2','Emissions Requirement
View Definition','',#1,(),#2710);
#2730=REQUIREMENT_COLLECTION_RELATIONSHIP('','isComposedOf',''
,#1320,#2720);
#3600=REQUIREMENT('R1.2.1','Emissions','Emissions Requirement');
#3610=REQUIREMENT_VERSION('2','The vehicle shall meet Revised 2016
Ultra-Low Emissions Vehicle standards.',#3600);
Why is derivation
used here ?
All 3 versions
relate to #1320
#3612=PRODUCT_VERSION_RELATIONSHIP('sequence','Version
Sequence',#1810,#3610);
#3614=PRODUCT_VERSION_RELATIONSHIP('derivation','Version
Derivation',#2710,#3610);
#3620=REQUIREMENT_VIEW_DEFINITION('2','Emissions Requirement
View Definition','',#1,(),#3610);
#3630=REQUIREMENT_COLLECTION_RELATIONSHIP('','isComposedOf',''
,#1320,#3620);
OSLC PLM Workgroup
16
Alt layout to clarify
sequence
derivation
sequence
OSLC PLM Workgroup
17
PLM Reference Model:
STEP content examples
Gathered examples
Requirements
OSLC PLM Workgroup
18
PLM Reference Model:
Requirement and it’s relationships
#1200=REQUIREMENT('R1.2','Eco-Friendliness','Eco-Friendliness
Requirement');
#1210=REQUIREMENT_VERSION('1','',#1200);
#1220=REQUIREMENT_VIEW_DEFINITION('1','Eco-Friendliness
Requirement View Definition','',#1,(),#1210);
#1230=REQUIREMENT_COLLECTION_RELATIONSHIP('','isCompos
edOf','',#720,#1220);
#10700=REQUIREMENT_VIEW_DEFINITION_RELATION
SHIP('10700','DeriveReqt','DeriveReqt1',#3220,#8720);
OSLC PLM Workgroup
19
PLM Reference Model:
Requirements
•
•
•
#1700=REQUIREMENT('R1.2.1','Emissions','Emissions Requirement');
#1710=REQUIREMENT_VERSION('1','The vehicle shall
meet Ultra-Low Emissions Vehicle standards.',#1700);
#1720=REQUIREMENT_VIEW_DEFINITION('1','Emissions
Requirement View Definition','',#1,(),#1710);
•
#1730=REQUIREMENT_COLLECTION_RELATIONSHIP('','isCompos
edOf','',#1220,#1720);
•
•
#2210=REQUIREMENT_VERSION('2','The vehicle shall
meet Revised 2016 Ultra-Low Emissions Vehicle standards.',#1700);
#2220=REQUIREMENT_VIEW_DEFINITION('2','Emissions
Requirement View Definition','',#1,(),#2210);
•
#2230=REQUIREMENT_COLLECTION_RELATIONSHIP('','isCompos
edOf','',#1220,#2220);
OSLC PLM Workgroup
20
PLM Reference Model:
Requirements
#2700=REQUIREMENT('R1.2.1','Emissions','Emissions Requirement');
#2710=REQUIREMENT_VERSION('2','The vehicle shall meet
Revised 2016 Ultra-Low Emissions Vehicle standards.',#2700);
#2712=PRODUCT_VERSION_RELATIONSHIP('sequence','Version
Sequence',#1810,#2710);
#2720=REQUIREMENT_VIEW_DEFINITION('2','Emissions
Requirement View Definition','',#1,(),#2710);
#2730=REQUIREMENT_COLLECTION_RELATIONSHIP('','isCompos
edOf','',#1320,#2720);
#3600=REQUIREMENT('R1.2.1','Emissions','Emissions
Requirement');
#3610=REQUIREMENT_VERSION('2','The vehicle shall meet
Revised 2016 Ultra-Low Emissions Vehicle standards.',#3600);
OSLC PLM Workgroup
21
PLM Reference Model:
Requirement Assignment
• #114700=REQUIREMENT_ASSIGNMENT('1147
00','Satisfy3',#1820,#30120);
•
#114800=REQUIREMENT_ASSIGNMENT('
114800','Satisfy4',#2720,#69420);
•
#115100=REQUIREMENT_ASSIGNMENT('
115100','Satisfy1',#11520,#30120);
•
#115200=REQUIREMENT_ASSIGNMENT('
115200','Satisfy2',#3620,#84420);
OSLC PLM Workgroup
22
PLM Reference Model:
Classification Assignment
• #50=CLASSIFICATION_ASSIGNMENT(#
36,(#10700,#10800,#10900,#11000,#1110
0,#11200,#11300,#11400,#11500),'Derive
Reqt');
• Certain requirements are classified as type
“DeriveReqt” (#36 above
OSLC PLM Workgroup
23
System
OSLC PLM Workgroup
24
• Overall
• Power Control Unit system structure
(architecture
OSLC PLM Workgroup
25
OSLC PLM Workgroup
26
No. occurring in the
assembly
#23600=SYSTEM('23600','HybridSU
V','HybridSUV System');
#23610=SYSTEM_VERSION('1','Hy
bridSUV System Element
Version',#23600);
#23620=SYSTEM_VIEW_DEFINITI
ON('1','HybridSUV System View
Definition','',#1,(),#23610);
#23640=VALUE_WITH_UNIT(#2,1);
No. occurring in the
assembly
What is the origin ?
There is no #2 in
the file
OSLC PLM Workgroup
27
A related System element
#30100=SYSTEM('30100','PowerSubsyste
m','PowerSubsystem System');
#30110=SYSTEM_VERSION('1','PowerSu
bsystem System Element
Version',#30100);
#30120=SYSTEM_VIEW_DEFINITION('1','
PowerSubsystem System View
Definition','',#1,(),#30110);
#30130=NEXT_ASSEMBLY_USAGE(#236
20,#30120,'',#30140);
#30140=VALUE_WITH_UNIT(#2,1);
Origin ?
Why NEXT ?
OSLC PLM Workgroup
28
OSLC PLM Workgroup
29
OSLC PLM Workgroup
30
1:1
Arbitrary ? Or is it
based on the
External Class ?
#114700=REQUIREMENT_ASSIGNMENT('114700','Satisfy3',#1820,#30120);
#114800=REQUIREMENT_ASSIGNMENT('114800','Satisfy4',#2720,#69420);
#115100=REQUIREMENT_ASSIGNMENT('115100','Satisfy1',#11520,#30120);
#115200=REQUIREMENT_ASSIGNMENT('115200','Satisfy2',#3620,#84420);
OSLC PLM Workgroup
How are other
interdepencies
represented in
SysML
3 of 4 here
31
PLM Reference Model:
STEP content examples
Gathered examples
System
OSLC PLM Workgroup
32
PLM Reference Model:
SYSTEM
#21780=SYSTEM('21800','HybridSUV','HybridSUV System');
#21782=SYSTEM_VERSION('1','HybridSUV System Element
Version',#21800);
#21784=SYSTEM_VIEW_DEFINITION('1','HybridSUV System View
Definition','',#1,(),#21782);
#21786=SYSTEM_BREAKDOWN('21800','HybridSUV','HybridSUV System
Breakdown');
#21788=SYSTEM_BREAKDOWN_VERSION('1','HybridSUV System
Breakdown Version',#21786);
#21790=BREAKDOWN_OF('1','HybridSUV','HybridSUV
Breakdown',#21788,#21784);
#21792=SYSTEM_BREAKDOWN_CONTEXT('1','HybridSUV','HybridSUV
Breakdown Context',#21788,#21820);
#21810=SYSTEM_ELEMENT_VERSION('1','HybridSUV System Element
Version',#21800);
#21820=SYSTEM_ELEMENT_DEFINITION('1','HybridSUV System Element
Definition','',#1,(),#21810);
OSLC PLM Workgroup
33
PLM Reference Model:
System element and its
relationships
#26900=SYSTEM_ELEMENT('26900','Fuel','Fuel
System Element');
#26910=SYSTEM_ELEMENT_VERSION('1','Fuel
System Element Version',#26900);
#26920=SYSTEM_ELEMENT_DEFINITION('1','Fu
el System Element Definition','',#1,(),#26910);
#26930=SYSTEM_ELEMENT_USAGE('1','','Fuel
System Element Usage',#21820,#26920,'Fuel');
OSLC PLM Workgroup
34
PLM Reference Model:
Additional relationships
REQUIREMENT_VIEW_DEFINITION to
SYSTEM_ELEMENT_DEFINITION
#94700=REQUIREMENT_ASSIGNMENT('9
4700','Satisfy3',#1720,#27820);
#94800=REQUIREMENT_ASSIGNMENT('9
4800','Satisfy4',#2220,#67120);
#95100=REQUIREMENT_ASSIGNMENT('9
5100','Satisfy1',#9720,#27820);
OSLC PLM Workgroup
35
Other
OSLC PLM Workgroup
36
PLM Reference Model:
ACTIVITY performed
• #90=APPLIED_ACTIVITY_ASSIGNMENT
(#22,(#700,#710,#720,
– XMI extract from TOPcased
OSLC PLM Workgroup
37
PLM Reference Model:
ORGANISATIONAL ownership
• #80=ORGANIZATION_OR_PERSON_IN_
ORGANIZATION_ASSIGNMENT(#16,'cre
ator',(#700,#710,#720,
OSLC PLM Workgroup
38
Changes
• V0.1
Used during Gray/Ian working
session
• V0.2/0.3 Consolidate to post
OSLC PLM Workgroup
39