code reuse presentation @ enase 2010
DESCRIPTION
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.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