[ http://mifosforge.jira.com/browse/MIFOS-4261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
keithwoodlock resolved MIFOS-4261. ---------------------------------- Resolution: Fixed Fix Version/s: Elsie F Assignee: mifosqa (was: keithwoodlock) The purpose of the spike was to see if it was possible to create another module and pull out code from the monolithic application module into savings module. Why? At present we are creating service facades (application services) which at present are used by the presentation layer but which we also want to expose for use by tests and in future a data migration module. At present this is not possible becuase code from application is released as class files within a WAR archive. We would like the services to be exposed within a JAR so people could use its dependency and launch an application context with platform services running. Findings: The top down approach (extracting service facades) is ongoing but just doing service facades will mean they are still not reuseable. 1) Tried bottom up approach extracting out base classes and refactoring where possible to decouple for other dependencies in an attempt to bring in 'savings' related classes and dependencies. The level of coupling was too much so no surprise there. 2) Spent a bit of time concentrating on removing 'persitence' dependencies from core domain classes like 'AccountBO'. Taking this middle-up approach was successful enough but the level of refactoring required is just too much. Conclusion The only feasible way at present to make services releasable/reuseable from a JAR file is to pull out all non ui/mvc related code from application and put into another module that products a JAR that application will depend on. This will allow use to use services as we implement them and we can focus on untangling the 'tight coupling' in a top down incremental manner. > SPIKE: Create savings module to leverage work done on savings services > ---------------------------------------------------------------------- > > Key: MIFOS-4261 > URL: http://mifosforge.jira.com/browse/MIFOS-4261 > Project: mifos > Issue Type: Story > Components: Savings Account > Affects Versions: Elsie F > Reporter: keithwoodlock > Assignee: mifosqa > Priority: Major > Fix For: Elsie F > > > The purpose is to create a module which will allow for delivery of a jar that > contains services applicable to savings so we can get re-use from them. > e.g. web client uses savings jar > data migration can use savings jar to inject data. > tests can use savings jar to inject data into database -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://mifosforge.jira.com/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------------ Increase Visibility of Your 3D Game App & Earn a Chance To Win $500! Tap into the largest installed PC base & get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev _______________________________________________ Mifos-issues mailing list Mifos-issues@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mifos-issues