Last modified 16 years ago
Last modified on 01/29/09 17:23:18
Analysis
Overview
The aim of this task is to revise the code of the Storage class - the intermediate format for saving Sophie2 books.
Task requirements
- Refactor the code of the Storage class and all related classes so that it is working.
- Move things to the base.persistence module.
- Provide class/dependency diagrams with the new structure.
- Ensure the existing unit tests pass and provide new if necessary.
Task result
The result of this task should be :
- Source code
- Class/dependency diagrams
- Working unit tests
Implementation idea
- Review the code in main.model.persist* packages
- Run the existing unit tests and see where they fail.
- Run the application and try loading/saving books. Mark the exceptions you get.
- Fix the errors - ensured by passing unit tests and ability to load/save.
- Move to the new module and refactor. Test again
Related
How to demo
- Show the new classes and describe their relations.
- Run unit tests.
- Open Sophie2 and demonstrate loading/saving.
Design
- The Storage class will be moved to module org.sophie2.base.persistence as a part of BASE_PERSISTENCE_COMMONS_R0.
- See BASE_PERSISTENCE_COMMONS_R0 for design diagrams of the class structure.
- Unit tests will be linked in the implementation since they are not moved to their new location yet.
- Rest of the task includes refactoring of code (the Storage class and related to it) - it will be done in conjunction with the BASE_PERSISTENCE_COMMONS_R0 task.
Implementation
(Implementation results should be described and linked here (from the wiki or the repository))
Testing
Comments
- All important wiki content should be put in the corresponding section of a wiki page => BASE_PERSISTENCE