Transcript

Modeling  in  the  Italian  industry  

Federico  Tomasse6  f.tomasse)@polito.it  

Eclipse and Modeling

The survey

Conclusions

Some data

2009  Eclipse  Community  Survey  

14.6%  

24.9%  

27.9%   16.7%  

15%  

0.9%  

IDE  for  Java  

IDE  for  many  languages  

Pla=orm  for  integrated  development  tools  

Collec@on  of  open  source  projects  that  can  be  used  to  build  soCware  Community  collabora@ng  on  building  interes@ng  technology  

Other  

Which  statement  best  reflects  your  percep@on  of  Eclipse?  (Choose  one)  Percep0on  of  Eclipse    

2011  Eclipse  Community  Survey  

42.50%  

16.30%  

11.00%  

20.20%  

No  Other  modeling  Inves@ga@ng  Yes  

Eclipse  Modeling    

e4:  EMF  technology  for  Eclipse  development    

Eclipse  4  has  the  target  to  solve  some  of  the  pain  points  of  Eclipse  3.x  development.  The  major  enhancements  in  Eclipse  4.x  compared  to  Eclipse  3.x  are:  •  The  Eclipse  applica0on  is  available  as  a  dynamic  model  at  development  and  run0me.  

•  Eclipse  4  supports  dependency  injec@on.  •  Eclipse  widgets  can  be  styled  via  external  CSS  files,  similar  to  webpages.  

•  The  applica0on  model  is  decoupled  from  its  presenta0on,  e.g.  different  user  interface  toolkits,  e.g.  SWT  or  JavaFX,  can  be  used  to  render  the  model.  

hUp://www.vogella.com/ar@cles/Eclipse4RCP/ar@cle.html  

Eclipse and Modeling

The survey

Conclusions

Some data

What  is  a  model  and  what  is  not  a  model?  

What  is  modeling  and  what  is  not?  For  us:  -­‐  to  draw  some  UML  diagrams  for  documenta@on  is  a  (limited)  form  of  modeling  …create  a  DSL  with  Xtext  or  GMF  is  modeling  

What  is  model-­‐driven  development  and  what  is  not?  For  us  MDD  is  using  one  of  this:  -­‐  Automa@c  M2M  transforma@ons  -­‐  Code  genera@on  -­‐  Run-­‐@me  model  interpreta@on/execu@on  

…but  it  is  complex  to  define  borders  and  our  ques0ons  tried  to  be  as  general  as  possible  

The  sample  

Total:  155  companies  and  professionals  

Eclipse and Modeling

The survey

Conclusions

Some data

How  frequently  modeling  is  used  

105  out  of  155  use  some  modeling  

Languages  used  

Textual  (11%)  

Graphical  (5%)  

Both  (6%)  

76%  

21%  

Profiles  (8%)  

0  

2  

4  

6  

8  

10  

12  

14  

1-­‐10%   11-­‐20%   21-­‐30%   31-­‐40%   41-­‐50%   51-­‐60%   61-­‐70%   71-­‐80%   81-­‐90%  91-­‐100%  Generated  code  per  module  

 

Techniques  used:  code  genera0on  44%*  

*  among  the  adopters  of  modeling  

Techniques  used:  code  genera0on  44%*  

*  among  the  adopters  of  modeling  

Half  the  sample  generate  1-­‐2  parts,  one  third  generates  all  the  parts  

Techniques  used:  code  genera0on  

Techniques  used  

CODE  GENERATION  

MODEL  INTERPRETATION  

M2M  

30   3  

0  

16%  of  the  adopters  of  modeling  have  created  tools  (17  users).                The  most  used  technologies  for  developing  these  tools  are:    •  GMF  (6  users)  •  Xtext  (4  users)    

Techniques  used:  toolsmithing  

Who  write  the  models?  

Just  Developers   25  Just  PM/Architects   23  Just  Experts   0  Developers  AND  PM/Architects   45  Developers  AND  Experts   0  PM/Architects  AND  Experts   6  Developers  AND  PM/Architects  AND  Experts  

6  

“Experts  do  not  write  models,  they  validate  them”?  Debasish  Ghosh  (maybe)  

Eclipse and Modeling

The survey

Conclusions

Some data

Modeling  in  Italy  

It  is  relevant  (68%  uses  some  form  of  modeling).    

     There  is  a  certain  dissa0sfac0on  about  MD*  tools:  respondents  believe  that  available  tools  don’t  fit  today’s  industry  needs  (35%  reported  at  least  one  problem  with  tools).    Maturity  does  not  seem  so  high:  many  use  modeling  just  for  documenta0on  or  to  generate  stubs  and  many  do  not  use  versioning.      

How  to  improve  the  maturity?  

Standardized   languages   are   the   key   to   the   diffusion   of   MD*  approaches;  UML  and  BPMN  are  posi@ve  examples  but  are  not  sufficient   because   they   do   not   cover   all   the   relevant   aspects  (e.g.  interac@ons  and  systems  communica@on).      

MD*   usage   requires   integrated   toolsets   suppor@ng   the   full  development   process.   From   a   process   perspec@ve,   there   is   a  need   for   customized   processes   that   include   not   only   the  genera@on   but   also,   release   management,   versioning,   and  deployment.  

 From  a  more  general  perspec@ve,  focus  on  quan@ta@ve  aspects  of  soCware  produc@on  does  not  incen@ve  use  of  models,  which  can  be  exploited  when  quality  is  considered.    

Eclipse  Day  Florence  2012  

Federico  Tomasseb,  Marco  Torchiano  

Alessandro  Tiso,  Filippo  Ricca,  Gianna  Reggio  

Thank  you!  

top related