Version 19 (modified by pavlina, 17 years ago) (diff) |
---|
Analysis
Overview
Decomposition to plug-ins of Sophie 2 is one of the most important things to do for the project. There should be base modules and integration of the existing code with JPF library. Keep in mind that modules and plug-ins are the same thing in this case.
Task requirements
- think about initial plug-in decomposition
- decompose to base modules and in which each class goes
- integrate the JPF library in the project so it can run through JPF which activate the current plug-ins
Task result
New project structure, boot.properties file
Implementation idea
- make base and core modules, other things can remain in messy module
- make new run configuration using Run configuration option in Eclipse
Related
Use:
- componentDiagram.vpp
- work breakdown structure file to decompose the modules
- Maven JPF Plugin
How to demo
Show the project with the new plug-ins which runs using JPF library.
Design
- decompose the project in three modules (now we have only messy module which is not plug-in)
- base
- core
- messy
- see componentDiagram.vpp (Revision 17)
- see work breakdown structure file
- use the gathered information to allocate the classes to the modules
- make new run configuration to run the project using JPF
- make boot.properties file.
Implementation
- The project was decomposed in six modules:
- author
- base
- core
- messy
- base.dialogs
- core.modularity
- We decide to use Felix(OSGi implementation) instead of JPF because the difficulties during integration of the source with JPF. That's why the implementation has differences with the design phase. See http://felix.apache.org/site/documentation.html for more info.
- The project has fake launch now which don't run the plug-in framework.
- Felix runs when executing the Maven built jar. Implementation for this is the Activator class.
The decomposed modules in repository.
Activator using Felix source code
Testing
Log
- Analyzing : Deyan, Pacitu - 45 min
- Analyzing Refactor : Pavlina - 45 mins
- Review: 3.5 by Tanya - 30 min
- Designing : Pavlina - 60 mins
- Review: 3 by Tanya - 10 min
- Implementing : Pavlina - 7d
- Review : Peko - 4 - 10 mins 3.5 because of the fast switching from JPF to Apache Felix
- Testing :