The	  Rela(onship	  between	  Development	  Problems	  and	  Use	  of	   So:ware	  Engineering	  Prac(ces	  in	      Compu...
Introduc$on	  •  SoFware	  is	  used	  to:	      –  Avoid	  dangerous/expensive	  experiments	      –  Process	  large	  a...
Previous	  Survey 	  	  •  How	  much	  SE	  knowledge	  exists	  in	  the	  CSE	     Community?	  •  92%	  of	  responden...
Previous	  Survey	  •  Research	  vs	  Produc$on	  •  Relevance	  (almost)	  always	  higher	  than	  use	  •  Top	  3	  M...
Why	  perform	  a	  new	  survey?	  •  Did	  the	  respondents	  define	  the	  prac$ces	  the	     same	  way	  we	  did?	...
Survey	  Respondents	  •  Target	  Audience:	     –  Broad	  subset	  of	  the	  CSE	  community	     –  Mailing	  lists	 ...
Defini$ons	                                  No	                                  5%	  Respondents	  overwhelmingly	  agree...
Programming	  Languages	      C++	  Fortran	                           C++	  most	  common,	  not	  Fortran	          C	  ...
Self	  ra$ng	  of	  SE	  Knowledge	  vs	              Familiarity	  with	  SE	  topics	  45%	  40%	  35%	  30%	           ...
Rework	  •  Most	  frequent	  problem	  •  What	  would	  help?	  •  Research	  developers:	  low-­‐medium	  level	  •  Pr...
Rework	                Research	                               Produc(on	  35%	                                        35%...
Performance	  •  Least	  severe	  problem	  •  What	  can	  help?	  •  Research	  Developers:	  low-­‐medium	  •  Produc$o...
Performance	                 Research	                                 Produc(on	  40%	                                   ...
Regression	  Errors	  •  More	  important	  to	  produc$on	  than	  research	     developers	  •  What	  can	  help?	  •  ...
Regression	  Errors	              Research	                               Produc(on	  50%	                                ...
Forgedng	  to	  Fix	  Bugs	  •  Least	  frequent,	  but	  most	  severe	  •  What	  can	  help?	  •    Unit	  Tes$ng:	  ev...
Forgedng	  to	  Fix	  Bugs	            Research	                               Produc(on	  30%	                           ...
Conclusion	  •  Produc$on	  developers	     –  More	  likely	  to	  view	  a	  problem	  as	  severe	  and	        frequen...
The	  Rela(onship	  between	  Development	  Problems	  and	  Use	  of	   So:ware	  Engineering	  Prac(ces	  in	      Compu...
Upcoming SlideShare
Loading in...5
×

The Relationship Between Development Problems and Use of Software Engineering Practices in Computational Science

559

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
559
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

The Relationship Between Development Problems and Use of Software Engineering Practices in Computational Science

  1. 1. The  Rela(onship  between  Development  Problems  and  Use  of   So:ware  Engineering  Prac(ces  in   Computa(onal  Science  &   Engineering   Dus$n  Heaton,  Jeffrey  C.  Carver,  Roscoe   Bartle8,  Kimberly  Oakes,  and  Lorin  Hochstein   dwheaton@crimson.ua.edu,  carver@cs.ua.edu   Maintainable  SoFware  Prac$ces  in                         e-­‐Science   e-­‐Science  2012  
  2. 2. Introduc$on  •  SoFware  is  used  to:   –  Avoid  dangerous/expensive  experiments   –  Process  large  amounts  of  data  •  Why  not  have  soFware  engineers  develop  the   code?   2  
  3. 3. Previous  Survey    •  How  much  SE  knowledge  exists  in  the  CSE   Community?  •  92%  of  respondents  claim  they  have  sufficient   knowledge  of  SE.  •  63%  claim  the  CSE  community  has  sufficient   knowledge  •  Specific  Topics   3  
  4. 4. Previous  Survey  •  Research  vs  Produc$on  •  Relevance  (almost)  always  higher  than  use  •  Top  3  Most  Relevant  Prac$ces:   –  Version  Control   –  Documenta$on   –  Verifica$on  &  Valida$on   4  
  5. 5. Why  perform  a  new  survey?  •  Did  the  respondents  define  the  prac$ces  the   same  way  we  did?  •  What  programming  languages  did  the   respondents  use?  •  Respondents  repeated  4  problems   –  Rework   –  Performance  issues   –  Regression  errors   –  Forgedng  to  fix  bugs  that  were  not  tracked   5  
  6. 6. Survey  Respondents  •  Target  Audience:   –  Broad  subset  of  the  CSE  community   –  Mailing  lists  from  mul$ple  na$onal  laboratories,   numerical  analysis,  and  other,  more  focused,  CSE   development  lists  •  151  responses   6  
  7. 7. Defini$ons   No   5%  Respondents  overwhelmingly  agreed  with  our  defini$ons   Yes   95%   7  
  8. 8. Programming  Languages   C++  Fortran   C++  most  common,  not  Fortran   C  Matlab  Python   Perl   Other   0%   10%   20%   30%   40%   50%   60%   70%   8  
  9. 9. Self  ra$ng  of  SE  Knowledge  vs   Familiarity  with  SE  topics  45%  40%  35%  30%   None  25%   Low  20%   Medium  15%   High  10%   Very  High   Most  people  had  a  medium  knowledge  of  SE  topics   5%   0%   Somewhat   Moderately   Mostly   Fully  Sufficient   Sufficient   Sufficient   Sufficient   9  
  10. 10. Rework  •  Most  frequent  problem  •  What  would  help?  •  Research  developers:  low-­‐medium  level  •  Produc$on  developers:  high  level   10  
  11. 11. Rework   Research   Produc(on  35%   35%  30%   30%  25%   25%  20%   20%  15%   Use   15%   Use  10%   Relevance   10%   Relevance   5%   5%   High  Relevance  and  Use  from  Produc$on  Developers   0%   0%   11  
  12. 12. Performance  •  Least  severe  problem  •  What  can  help?  •  Research  Developers:  low-­‐medium  •  Produc$on  Developers:  high   12  
  13. 13. Performance   Research   Produc(on  40%   40%  35%   35%  30%   30%  25%   25%  20%   20%  15%   Use   15%   Use   Relevance   Relevance  10%   10%   5%   5%   High  Relevance  comes  from  Produc$on  Developers   0%   0%   13  
  14. 14. Regression  Errors  •  More  important  to  produc$on  than  research   developers  •  What  can  help?  •  Research  developers:  random  •  Produc$on  developers:  very  high   14  
  15. 15. Regression  Errors   Research   Produc(on  50%   50%  45%   45%  40%   40%  35%   35%  30%   30%  25%   25%  20%   Use   20%   Use  15%   Relevance   15%   Relevance  10%   10%   5%   5%  High  Use  and  Relevance  among  Produc$on  developers   0%   0%   15  
  16. 16. Forgedng  to  Fix  Bugs  •  Least  frequent,  but  most  severe  •  What  can  help?  •  Unit  Tes$ng:  everybody  uses  it  •  Code  Reviews:  moderate  usage  •  Issue/Bug  Tracking  soFware:  Produc$on  •  Test-­‐driven  Development:  Research   16  
  17. 17. Forgedng  to  Fix  Bugs   Research   Produc(on  30%   30%  25%   25%  20%   20%  15%   15%   Use   Use  10%   10%   Relevance   Relevance   5%   5%   0%   High  Relevance,  medium-­‐low  use   0%   17  
  18. 18. Conclusion  •  Produc$on  developers   –  More  likely  to  view  a  problem  as  severe  and   frequent   –  More  likely  to  use  prac$ces  •  Many  prac$ces  have  not  been  adopted   –  Respondents  did  not  know  how  to  use  the   prac$ce  or  more  basic  prac$ces   18  
  19. 19. The  Rela(onship  between  Development  Problems  and  Use  of   So:ware  Engineering  Prac(ces  in   Computa(onal  Science  &   Engineering   Dus$n  Heaton,  Jeffrey  C.  Carver,  Roscoe   Bartle8,  Kimberly  Oakes,  and  Lorin  Hochstein   dwheaton@crimson.ua.edu,  carver@cs.ua.edu   Maintainable  SoFware  Prac$ces  in                         e-­‐Science   e-­‐Science  2012  
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×