[[BackLinksMenu]] [[TicketQuery(summary=GROUP_RESOURCE_MODEL_REDESIGN_R0, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|)]] = Analysis = == Overview == The current model and resources design does not support the needed functionality for changes manipulation. This task's main goal is to present a complete redesign of the internal concepts for resources and sophie 2 model. This will result in a major refactoring of the base and main model modules. == Task requirements == * Complete and stable design which supports all needed functionality. * Decomposing of this task to smaller weekly tasks. * Providing a schedule with deadlines for their completion. * Provide the other developers with a prototype of the new model as soon as possible because they are blocked by this task. == Task result == The result will be prototype source code and detailed documentation of the new design. == Implementation idea == * Use the design draft posted by milo in http://pastebin.asteasolutions.net/f444cc8f1. * Create a new module for the new resources that separates the new logic so that the old one is working until a full implementation. == Related == ^(Add links to related tasks that could be useful or helpful.)^ == How to demo == This task is mainly redesign and its result is mainly documentation of the new design. There will be major quantity of tests provided. = Design = * Keys * Children * Composite * Root * Simple * Templated * Meta, Security * [diagram: todo] * Accesses * App * Memory * Root * Top * Inner * [diagram] * File, Server * Changes * Model * Draft Notes: || ResourceAccess.open(..) || || X || '''Top Mem Access''' || '''Root Mem Access''' || '''Inner Mem Access''' || || '''Top Resource''' || delegate to root || return existing / throw exception || delegate to root || || '''Inner resource''' || create, remember || throw exception || delegate to top || = Implementation = ^(Describe and link the implementation results here (from the wiki or the repository).)^ = Testing = ^(Place the testing results here.)^ = Comments = ^(Write comments for this or later revisions here.)