System Modeling Environment - Maged Elaasar - The...

Preview:

Citation preview

System  Modeling  Environment  Requirements,  Architecture  and  

Implementa<on  

Maged  Elaasar,  Ph.D.,P.Eng.  h1p://magedelaasar.com  

Simula  Research  Laboratory,  Norway  October,  2015  

References  •  Friedenthal,  S.,  Burkhart,  R.:  Evolving  SysML  and  the  System  Modeling  Environment  to  Support  MBSE.  DraE  March  30,  2015.  

•  Delp,  C.,  Lee,  C.Y.,  PieNe,  M.:  Model-­‐Based  Engineering  Environment  for  Model-­‐Based  Engineering,  Jet  Propulsion  Laboratory,  Caltech  Ins<tute  of  Technology.  (PPT)  

•  Karban,  R.,  Delp,  C.,  Elaasar,  M.:  Reference  Architecture  for  a  Model  Based  Engineering  Environment  (MBEE),  Jet  Propulsion  Laboratory,  Caltech  Ins<tute  of  Technology.  (PPT)  

Outline  

•  Background  •  Problem  statement  •  Requirements  •  Approach  •  Conclusion  

Model  Based  Systems  Engineering  

•  MBSE  is  a  systems  engineering  methodology  which  focuses  on  crea<ng  and  exploi<ng  models  as  the  primary  means  of  informa<on  exchange  between  engineers,  rather  than  on  document-­‐based  informa<on  exchange  

MBSE  Benefits  

•  Quality  improvements  by  reducing  downstream  design  errors  

•  Produc<vity  improvements  through  reuse  of  models  across  projects  and  throughout  the  lifecycle    

•  Ability  to  automate  tasks  like  change  impact  analysis  •  Auto-­‐generate  reports  and  documenta<on  with  increased  confidence  that  the  informa<on  is  valid,  complete,  and  consistent    

System  Model  

•  A  shared  view  of  the  system    •  The  authorita<ve  source  of  informa<on  •  A  baseline  for  integra<on  with  other  engineering  models  and  tools.    

Systems  Modeling  Language  

•  SysML  is  a  general-­‐purpose  graphical  modeling  language  for  specifying,  analyzing,  designing,  and  verifying  complex  systems  

•  SysML  models  hardware,  soEware,  informa<on,  personnel,  procedures,  and  facili<es  

•   SysML  provides  graphical  representa<ons  with  a  seman<c  founda<on  for  modeling  system  decomposi<on,  interfaces,  requirements,  behavior,  structure,  and  parametric  constraints.    

SysML  Tool  Integra<on  •  With  soEware  design  tools,  especially  for  soEware  developed  with  UML  models,  since  SysML  is  based  on  UML  

•  With  engineering  analysis  and  simula<on  tools    (e.g.,  Mathema<ca)  

•  With  requirements  management  tools  (e.g.,  DOORS)  

•  With  product  lifecycle  management  tools  (e.g.,  Teamcenter)  

•  With  hardware  design  tools  (e.g.,  MCAD)  

Challenges  of  MBSE  Adop<on  

•  Challenges  inherent  in  the  complexity  of  systems  and  systems  engineering  like  the  need  to  define  and  maintain  mul<ple  consistent  views  of  a  system  

•  Challenges  in  learning  a  formal  language  (SysML),  the  tools  to  build  and  maintain  models,  and  a  methodology  for  effec<ve  applica<on  of  the  language  and  tools  

Problem  Statement  

•  There  is  a  need  to  define  a  System  Modeling  Environment  (SME)  to  facilitate  performing  MBSE    

Use  Cases  for  SME    

•  BoNom  up  use  cases  – model  construc<on    – model  visualiza<on    – model  analysis    – model  management    – model  exchange  and  integra<on    

– Support  for  MBSE  collabora<on  and  workflow  

Measures  of  Effec<veness  of  SME  

•  Expressive:  Ability  to  express  the  system  concepts    •  Precise:  Representa<on  is  unambiguous  and  concise    •  PresentaJon/communicaJon:  Ability  to  effec<vely  communicate  

with  diverse  stakeholders    •  Model  construcJon:  Ability  to  efficiently  and  intui<vely  construct  

models    •  Interoperable:  Ability  to  exchange  and  transform  data  with  other  

models  and  structured  data    •  Manageable:  Ability  to  efficiently  manage  change  to  models    •  Usable:  Ability  for  stakeholders  to  efficiently  and  intui<vely  create,  

maintain,  and  use  the  model    •  Adaptable/Customizable:  Ability  to  extend  models  to  support  

domain-­‐specific  concepts  and  terminology    

Requirements  for  SME  

1.  Define  a  next  genera<on  modeling  language  that  expresses  the  core  systems  engineering  concepts  with  a  robust  data  model  –  Revisit/refine  the  original  System  Engineering  

Conceptual  Model  developed  by  INCOSE/OMG  in  light  of  what  has  been  learned  since  then  

Requirements  for  SME  

2.  Ensure  the  system  modeling  language  –  Have  precise  seman<cs  to  avoid  ambiguity  •  SysML  leverages  UML  as  its  seman<c  founda<on  

–  Enable  a  concise  representa<on  of  concepts  •  SysML  is  defined  as  a  profile  of  UML  

–  Support  analysis  and  model  checking  capabili<es  •  Validate  model  is  logically  consistent  •  Analyze  impact  of  change  to  requirements  or  design  •  Assess  how  failure  propagates  through  the  system  

Requirements  for  SME  

3.  Provide  rich  visualiza<on  and  repor<ng  capabili<es  to  support  different  stakeholders  –  SysML  includes  the  concepts  of  Viewpoint/View  –  Used  to  query  model  and  generate  documents  –  Extend  by  advanced  visualiza<on  techniques  •  Dynamic  zoom,  filtering,  traversal  of  rela<onships  and  

visualiza<on  of  dynamic  behavior  (like  simula<ons)  

–  Support  symbol  libraries  beyond  SysML  nota<on  –  Support  simplified  and  dynamic  viewpoints  

Requirements  for  SME  

4.  Enable  intui<ve  and  efficient  model  construc<on  –  Streamline  user  interfaces  to  reduce  <me  and  

effort  to  construct/maintain  model  (less  clicks)  –  Add  ability  to  repeat  common  modeling  paNerns  –  Add  ability  to  reduce  user  input  (e.g.,  table  entry)  

Requirements  for  SME  

5.  Support  MBSE  in  the  broader  context  of  Model  Based  Engineering  (MBE)  –  Integrate  models  and  tools  across  discipline-­‐

specific  engineering  tools  (hardware  and  soEware  design,  analysis  and  simula<on  and  verifica<on)  

Requirements  for  SME  

6.  Provide  a  standard  API  to  enable  dynamic  access  to  the  model  with  access  controls  –  Enable  integra<on  with  emerging  plaiorms  for  

management  of  model-­‐based  content  (e.g.,  OSLC)  –  Enable  integra<on  with  model  exchange    and  co-­‐

simula<on  (e.g.,  FMI)  –  Enable  model  query,  view  and  transforma<on  

Requirements  for  SME  

7.  Enable  management  of  models  in  a  heterogeneous  and  distributed  modeling  environment  –  Enable  branch/merge  capabili<es  on  models  –  Enable  compare  of  model  changes  by  mul<ple  

collabora<ng  users  –  Enable  versioning,  configura<on  and  variant  

management  on  models  

Requirements  for  SME  

8.  Enable  efficient  and  intui<ve  use  by  a  broad  range  of  users  with  diverse  skills  –  Enable  different  levels  of  details  for  model  

construc<on,  visualiza<on,  management,  etc.  –  Focus  on  usability  for  every  kind  of  user  

Requirements  for  SME  

9.  Enable  adaptability  and  customiza<on  to  mul<ple  applica<on  domains  –  Make  systems  modeling  language  extensible  to  

address  domain-­‐specific  concepts  –  Enable  construc<on,  analysis  and  visualiza<on  of  

domain-­‐specific  concepts  in  rigorous  ways  

Requirements  for  SME  

10. Enable  migra<on  of  exis<ng  models  with  minimum  informa<on  loss  –  Enable  the  retaining  of  models  in  neutral  formats  

Approach:  System  Modeling  Language  

•   Define  next  genera<on  systems  modeling  language  –  Choose  a  formalism  to  specify  the  concept  model  in  (M3)  

•  MOF,  UML  Profile,  OWL,  K,  etc.  –  Define  a  concept  model  for  the  language  (M2)  

•  Simplify,  streamline  and  consolidate  the  exis<ng  SysML  model  •  Several  aNempts  are  occurring  in  parallel  (e.g.,  JPL,  NoMagic,  etc.)  •  Coordinated  by  the  OMG  SysML  roadmap  working  group  

–  Define  domain-­‐specific  libraries  (M1)    •  Flight  systems,  ground  systems,  etc.  

–  Define  project/mission  specific  libraries  (M1)  •  Europa,  Mars2020,  etc.    

Approach:  System  Modeling  Environment  

•  Use  SysML  with  the  Object-­‐Oriented  System  Engineering  Methodology  (OOSEM)  to  specify  the  SME  architecture  – Domain  (System  Modeling  Domain)  

•  Includes  the  enterprise,  its  stakeholders,  and  any  thing  that  affects  it  like  corporate/project  rules  

–  Enterprise  (System  Modeling  Enterprise)  •  Includes  the  system  of  interest,  the  development  environment,  prac<ces  repository  and  external  systems  like  analysis  tools  

–  System  of  interest  (System  Modeling  Environment)  •  Includes  all  tools  to  be  developed  like  model  editors,  model  repository,  model  manager,  exchange  bus,  etc.  

System  Modeling  Domain  BDD  

SME  Domain  

SME  Enterprise  Stakeholder   Rules  

User   Reviewer   Sponsor  …..  

System  Modeling  Enterprise  BDD  

SME  Enterprise  

SME  Black  Box  

Stakeholder  

Developer  Development  Environment  

Prac<ces  Repository  

External  Tools  

Office  Tool  

Analysis  Tool  

Engineering  Tool  …..  

SME  Enterprise  Use  Cases  •  Architec<ng  •  Requirements  •  Analyzing  and  characteriza<on  the  design  •  Technical  resource  management  •  Defini<on  of  interfaces  •  Verifica<on  and  valida<on  •  Reviews  •  Risk  management  •  Change  management  and  impact  analysis  •  Task  management  

Example:  V&V  Use  Cases  SME  Enterprise  

Review  Requirements  

Create  V&V  Plan  

Create  Verifica<on  Ac<vi<es  

Define  Test  

Procedures  

Execute  V&V  Plan  

V&V  System  Engineer  

<include>  <include>  

V&V  Execu<on  Team  

Example:  Define  Test  Procedure  Ac<vity  acJvity  Define  Test  Procedure  

SME  Enterprise  

SME  

V&V  System  Engineer  

Request  Verifica<on  Ac<vity  

Get  Element  

Verifica<on  Ac<vity  id  

Specify  Test  Procedure  

:String  

element  

Verifica<on  Ac<vity  id  

Verifica<on  Ac<vity  

Submit  Test  Procedure  

Post  Element  

:Element  

Test  Procedure  

Test  Procedure  

:Test  Procedure   Test  Procedure  

System  Modeling  Environment  

•  A  black  box  interface  – Block  with  ports  typed  by  Interface  blocks  

•  A  white  box  concept  design  – Block  with  parts  specifying  logical  SME  tools  – Parts  are  connected  to  black  box  ports  

•  A  white  box  realiza<on  design  – Block  with  parts  specifying  physical  SME  tools  – Parts  are  connected  to  black  box  ports  – Physical  parts  are  allocated  to  concept  parts  

System  Modeling  Environment  BDD  

<Interface  Block>  Model  API  

Flow  Proper<es  <flow>  in  Id:  String  <flow>  inout  element:  Element  

SME  Black  Box  

Ports  :  Model  API  

SME  Concept   SME  Realiza<on  

System  Modeling  Domain  IBD  SME  Domain  

:SME  Enterprise  

:Rules  

:Sponsor  

:Reviewer  

:User  :SME  Black  Box  

:Analysis  Tool  

:Prac<ces  Repository  

:Developer  

:Development  Environment  

String  Element  Element  

:Model  API  

SME  Concept  BDD  SME  Concept  

Rich  Model  Editor  

Informa<on  Exchange  Mgr  

Web  Model  Editor  

Model  Editor   Model  Mgr   Model  Analyzer   Model  Repository  

Model  API  Library  

Model  Web  Service  

SME  Concept  IBD  SME  Concept  

:Informa<on  Exchange  Mgr  :Rich  Model  

Editor  

:Model  API  

:Web  Model  Editor  

:Modeling  Web  Service  

:Model  API  Library  

:Model  Mgr  

:Model  Repository  

Model  Analyzer  

Realiza<on  Example:  Open  MBEE*  •  Model  repository  

–  Implemented  using  an  enterprise  Content  Management  System  (CSM)  called  Alfresco  extended  with  Stanbol  seman<c  services  

–  Supports  access  control,  collabora<on,  no<fica<on,  versioning,  work  flow,  scalability  

–  The  system  modeling  language  is  defined  with  a  custom  content  model  in  Alfresco  

•  Model  Mgr  –  The  Model  Management  Service  (MMS)  provides  RESTful  APIs  (JSON  over  HTTP)  to  the  model  repository    

–  Supports  batch  as  well  as  interac<ve  model  API  •  Model  Web  Service  

–  The  Engineering  Model  Service  (EMS)  provides  RESTful  API  suppor<ng  the  View  Editor  web  applica<on  (which  provides  web-­‐based  document  interface  to  model  viewing/edi<ng)  

*  hNps://github.com/Open-­‐MBEE  

Realiza<on  Example:  Open  MBEE*  •  Rich  Model  Editor  

–  MagicDraw  (MD)  SysML  tool  –  Model  Development  Kit  (MDK)  plugin  that  is  able  to  synchronize  MD’s  models  with  repository  

•  Web  Model  Editor  –  View  Editor  which  provides  web-­‐based  document  interface  to  model  viewing/edi<ng  

–  Provides  the  ability  to  define  a  document  template  with  SysML  Viewpoints  framework  and  a  DocGen  profile  

–  Allows  non-­‐SysML  modelers  to  contribute  content  to  model  •  Model  Analyzer  

–  Various  tools  including:  Modelica,  SLIM,  Pellet  Reaonser,  etc.  

*  hNps://github.com/Open-­‐MBEE  

SME  Realiza<on  BDD  SME  Realiza<on  

MagicDraw  

Oracle  Service  Bus  

View  Editor  

Model  Editor   MMS   Modelica  

MMS  Java  API   EMS  

Alfresco  

SME  Realiza<on  IBD  SME  Realiza<on  

:Oracle  Service  Bus  :MagicDraw  

:Model  API  

:View  Editor   :EMS  

:Model  Management  

Library  

:Modelica  

:MDK  :MMS  

:Alfresco  

Summary  

•  MBSE  enables  the  use  of  model  for  SE  •  A  system  model  environment  (SME)  is  needed  to  facilitate  the  prac<ce  of  MBSE  –  Iden<fied  requirements  for  a  new  genera<on  of  system  modeling  language  or  tools  for  SME  

–  Rigorously  defined  the  architecture  of  SME  in  SysML  by  following  the  OOSEM  methodology  

•  Open  MBEE  is  one  realiza<on  of  SME  that  is  focused  on  web-­‐based  document  interface  to  system  models  

Recommended