The re-factor covers the whole OFBiz code base so we need a simple approach that makes it easy for people to pick up, re-factor and improve an area. This means that we probably wont be able to run it as a traditional linear project. Instead we will look to highlight areas of work where the community can help.
Main Approach
- Identify a list of 5 possible key re-factoring areas
- Ask the Community for volunteers to help re-factor in these 5 selected areas
- As one area is completed, we will top up the list of with another area so that the total will remain at 5
- Use of JIRA for tracking work (e.g open a master issue for each area identified and include individual sub-tasks)
Reasoning
- A short list of 5 is good number to highlight the key areas
- A list will help focus the community
- As one area is finished we can easily move to another
- Over time the initial re-factoring will make further re-factoring easier
Current Top 5 Re-factoring Focus Areas
The table below includes the list of the 5 areas we currently want to re-factor.
If you are interested in working (or are in the process of working) on any of these areas then please add your name in the column below.
AREA | REASON FOR RE-FACTOR | STATUS | WHO IS WORKING ON IT? | JIRA MASTER ISSUE LINK | COMMENTS | |
---|---|---|---|---|---|---|
1 | EntitySaxReader | EntitySaxReader implements javolution interfaces and looks hideous | ||||
2 | HtmlFormRenderer | HtmlFormRenderer is 3000 lines of code and the interfaces it implements are also huge | ||||
3 | XmlFormRenderer | XmlFormRenderer does not implement more than half of the methods | ||||
4 | Dependencies on Deprecated Classes / Constructors | Lots of dependencies on deprecated classes / constructors (e.g. HtmlScreenRenderer, FoScreenRenderer) | ||||
5 | Start.java | This has some problems which I'm trying to tackle in JIRA: OFBIZ-6783 | In Progress | Taher Alkhateeb | OFBIZ-6783 |