Analysis
Overview
The concept of different types of frames is changed. Now we don't have text frame, movie frame, audio frame and so on. We just have a frame with a content. This frame content can be text, movie, audio and so on which means that the frame content contains a resource and tells how this resource is going to be visualized. Frame has one-to-one association with its content. But the frame content has many-to-many association with a resource in the book.
- Frame Content Concept
- Each frame has style and content.
- Each frame has at most one content at a time.
- The content of a frame is replaceable. For example if a frame has movie content then the same frame can change its content with image content.
- Different kinds of content:
- Text content
- Audio content
- Movie content
- Image content
- Browser content
- Flash content
- Pdf content
- Comment content
- Frame content can be non-defined or unsupported. The content is unsupported if it is created with non-present plug-in for example.
Task requirements
- Create the basic hierarchy of the frame content.
- The basic hierarchy should be in org.sophie2.base.model.book
- Functionality and properties of frame content that the hierarchy should provide:
- Frame content could be non-defined and unsupported.
- (Optional)Unsupported
- (Optional)If the frame content is created with non-present plug-in for example then it is unsupported.
- (Optional)Unsupported
- Provide that Frame content should be:
- replaceable
- The user should be able to insert a frame without content and add it afterward or can change the content when he decides.
- various kinds(text, audio, video, image, other)
- replaceable
- Frame content could be non-defined and unsupported.
- Make basic implementation of the frame content hierarchy (unit tests included).
Task Result
- The result should be source code.
Implementation idea
- Basic hierarchy could be implemented with composition of the frame content in the frame.
- Write source code.
Related
-
How to demo
- Show source code and run application.
- Show unit tests and run them.
- Answer if there are any questions.
Design
- Basic hierarchy
- Base Frame content class
- (Optional if there is time)Derived classes for all the concrete contents. In this iteration at least for TextFrameContent and HtmlFrameContent.
- Frame Content could have no more than one main resource and many secondary resources.
- Class Frame composed with Frame Content.
- The content should be value property of the Frame with default value - null. This is supposed to be non-defined frame content at least for now.
- Base Frame content class
Implementation
- It is barely impossible to link the changes but the classes that should be reviewed are:
- org.sophie2.base.model.book.FrameContent
- org.sophie2.base.model.book.Frame
- org.sophie2.base.model.book.FrameContentDemo
- org.sophie2.base.model.book.FrameContentUnitTest
Testing
Log
Analyzing: Pav(done: 10m)
Review: 1.5 by Pap. I don't think that we should spend half of the effort for the whole task in just a wiki page with diagrams. The overview should be more informative. Requirements should be shhorter and better structured.
Analysis2: Tanya - done - 4h
Review: 3.5 by Pap.
Design: Tanya -done - 15m - The design was reused from the previous iteration.
Review: 2 by Pap. No tests are provided. I find it a bit vague.
Implementation:
Testing:
Comments: