Last modified 16 years ago
Last modified on 10/21/08 14:26:34
Analysis
Overview
- The Model-View-Controller(MVC) pattern will be used in the development process of Sophie 2. All the necessary rules about MVC in the development process should be defined.
Task requirements
- Create a document which provides:
- General rules about MVC.
- List of the base classes needed.(class diagrams can be made)
- Docs and tutorials about implementing MVC (especially in Sophie 2).
- Rules to check whether the code complies to the pattern.
- Divide MVC by two parts: library part and concrete implementation.
- Review the whole MVC and revise it.
Task Result
- The result of this task should be a wiki page where all of the rules are written.
- Code resulted from refactored things and separated library part and implementation part.
Implementation idea
- Old wiki can be useful.
- http://asteasolutions.net/mediawiki/index.php/Sophie-JR-MVC-Pattern Sophie-JR-MVC-Pattern
- http://asteasolutions.net/mediawiki/index.php/Sophie-JR-MVC-Refactoring Sophie-JR-MVC-Refactoring
- http://asteasolutions.net/mediawiki/index.php/Sophie-JR-MVC-Design Sophie-JR-MVC-Design
- http://asteasolutions.net/mediawiki/index.php/Veda-Design-Refactor2#MVC Veda-Design-Refactor2#MVC
Related
-
How to demo
- Open the wiki page where the rules are written (it can be called "CORE_MVC_BASE" for example).
- Look if all of the analysis points are took into consideration.
- Make sure that nothing important is dropped.
Design
- Be sure you understand MVC and Singleton. Since these will be the patterns used for the base design and implementation of the MVC.
- see http://en.wikipedia.org/wiki/Model-view-controller - MVC Pattern.
- see http://en.wikipedia.org/wiki/Singleton_pattern - Singleton Pattern.
- see http://en.wikipedia.org/wiki/Model-view-controller - MVC Pattern.
- MVC:
- explanations
- diagrams
- links to source code.
- Logic as part of the MVC - singleton. Should be explained in the wiki page.
- Move Logic class to the core module.
- create a mvc package and a logic package inside it. Move Logic inside the logic package.
- create packages for the unit tests accordingly in the src/test/...
Implementation
The implementation is based upon the requirements. List of the base classes and their class diagrams are added. We don't need complecated rules to implement the MVC since it is relatively simple at this point. Though rules about its usage will be provided. See the following wiki page for details about current MVC. The changes about the MVC are described in the wiki page as well.
Testing
Comments
Log