Top Banner
ARISTOTLE UNIVERSITY OF THESSALONIKI INFORMATICS DEPT. ENASE 2010 JULY 23 rd , 2010 A SEMI-AUTOMATED PROCESS FOR OPEN SOURCE CODE REUSE APOSTOLOS KRITIKOS GEORGE KAKARONTZAS IOANNIS STAMELOS PARTIALLY FUNDED BY THE EUROPEAN COMMISSION IN THE CONTEXT OF THE OPEN-SME PROJECT
38

Code Reuse Presentation @ ENASE 2010

Nov 01, 2014

Download

Technology

The presentation of my publication "A semi-automated process for open source code reuse" presented at the Evaluation of Novel Approaches to Software Engineering (ENASE) 2010 conference.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 1. ARISTOTLE UNIVERSITY OF THESSALONIKI INFORMATICS DEPT. ENASE 2010 JULY 23 rd , 2010 A SEMI-AUTOMATED PROCESS FOR OPEN SOURCE CODE REUSE APOSTOLOS KRITIKOS GEORGE KAKARONTZAS IOANNIS STAMELOS PARTIALLY FUNDED BY THE EUROPEAN COMMISSION IN THE CONTEXT OF THE OPEN-SME PROJECT
  • 2. Who is reusing code ?
  • 3. Individual developers
  • 4. hobbyists
  • 5. freelancers
  • 6. and... Software COmpanies
  • 7. Why ?
  • 8. To avoid reinventing the wheel
  • 9. Most classic components are out there (www) ( reuse of floss code ) code createD can be used as a base to Future project requests ( reuse of legacy code )
  • 10. Free / Libre Open Source Software ( FLOSS )
  • 11. Model of COLLABORATIVE DEVELOPMENT ( software ) made AVAILABLE ON-LINE and for FREE Many lines of code Let users Download this code Use / alter / even commercialize The derived work
  • 12. WWW
  • 13. WWW POOL OF REUSABLE CODE
  • 14. How do i reuse ? Any known recipes ? Do they actually exist?
  • 15. We need one anyway
  • 16. A methodology or...
  • 17. Maybe A process
  • 18. But...
  • 19. reusers
  • 20. reusers WHAT DO THEY WANT ?
  • 21. REUSE CODE ADAPTING THE RETRIEVED CODE TO THE SYSTEM UNDER DEVELOPMENT ADAPTING THE SYSTEM UNDER DEVELOPMENT TO THE RETRIEVED CODE
  • 22. reusers
  • 23. reusers WHO ARE THEY ?
  • 24. CAN BE Any DEVELOPER - IF A SYSTEMATIC REUSE PROCESS IS ABSENT - AN ACTUAL ENGINEER ASIGNED WITH THE TASK OF ADAPTING REUSABLE COMPONENTS - IN MORE SYSTEMATIC REUSE APPROACHES -
  • 25. REUSE PROCESS & SOFTWARE PRODUCT'S LIFECYCLE
  • 26. 1. CONCEPT 2. DEVELOPMENT 3. PRODUCTION 4. UTILIZATION 5. RETIREMENT ISO/IEC 15288, 2002 SOFTWARE PRODUCT'S LIFECYCLE PHASES
  • 27. 1. CONCEPT 2. DEVELOPMENT 3. PRODUCTION 4. UTILIZATION 5. RETIREMENT ISO/IEC 15288, 2002 SOFTWARE PRODUCT'S LIFECYCLE PHASES
  • 28. Reuse & floss components Component decomposition based on the requirements Requirement / component tree Possible alternation of the tree
  • 29. A process for Open source code reuse
  • 30.
  • 31. Search types Search forges: e.g. sourceforge Search for trivial code: source code search engines (krugle) or classical search engines (google)
  • 32. Do i have to reuse?
  • 33. And if i do...
  • 34. CONCLUSIONS
  • 35. A FIRST ATTEMPT TO PROVIDE A structured way of implementing reuse engineering Currently our model requires the presence of an expert for various decisions
  • 36. FUTURE WORK
  • 37. A FULLY AUTOMATED PROCESS WHERE NO EXPERT WILL BE NEEDED TRY MEASURING THE FITNESS OF A REUSABLE COMPONENT WITH THE REST OF THE SYSTEM UNDER DEVELOPMENT
  • 38. THANK YOU! [email_address] krap.gr/research (academic profile) @akritiko (twitter) ARISTOTLE UNIVERSITY OF THESSALONIKI INFORMATICS DEPT. ENASE 2010 JULY 23 rd , 2010