|Proposed by Benjamin Arezki (profile, biography)
How will I do that project
During this period, I will be on holiday so I have a lot of free time I can spend on that project.
In my opinion, it will be important to speak a lot with my mentors and the ESUG community in order to respect what they need. When tests will be green, I will show to my mentors what it looks like to discuss about it. In fact, I really want to create an easy to use tool, that's one of the reasons why I want it to be tested by a lot of people, to consider their opinion about it.
What methodologies will I use
I will use Test Driven Development, also by testing the algorithm on several Java sources. I want to make something functional quickly, effective with small files at first, and extend it then to support bigger files/projects. Moreover, I will measure its performances with benchmarks, in order to keep it fast. The aim is also to make a generic model which would be useful for the analysis.
Suggested timeline and milestones
1) Improve the grammar
2) Extract into a general model (Java/Smalltalk)
3) Have something functional on samples with a lot of tests and benchmarks.
4) Have separate models/importers for different versions
Where I see the risks
- The hardest thing is designing a model
- Different versions of Java / syntax can be different.
- Bad files of Java Code
- Risks when parsing big java projects
- Time to analyze Java code.
How the results will look like
The final result will be a library, written in smalltalk, along with tests. It will allow to design Java model I can also make a video "HowTo" to explain how to use the library.