====== IK0901 iPhone Applications ====== ===== People ===== Supervisor: [[king@cse.cuhk.edu.hk|Prof. KING Kuo Chin, Irwin]] Student: [[hktsang8@cse.cuhk.edu.hk|Tsang Ho Kwan]], [[cctang8@cse.cuhk.edu.hk|Tang Chi Chiu]] ==== Progress ==== | Common features | Progress | ^ Save & Load | 100% | ^ View manipulation - scroll, zoom, rotate | 100% | ^ Free manipulation of nodes | 100% | ^ Undo/Redo | 50% | ^ Thumbnail overview | 100% | ^ Quick text input | 100% | ^ Exportation - normally image/email/certain custom format | 0% | ^ Visual style - color/border/shape customization | 50% | | Advanced features | Progress | ^ Navigation helper | 100% | ^ Auto-alignment | 50% | ^ Auto-resize dimension | 50% | ^ Alternate list view of nodes | 50% | ^ Cut/Copy/Paste | 0% | ^ Media content - Audio/Video/Images | 33% | ^ Expand/collapse node | 0% | ^ Attach icons to nodes | 50% | ^ Canvas setting | 0% | ===== Proposal ===== - [[fyp:ik0901|Mind map]] *Most mind maps applications have their own short comes, and they're not as flexible as drawing on papers. This application is aimed to enhance the user experience of creating mind maps on an iPhone/iPod touch, and to discover new features which we couldn't do by the traditional way. - Lecture Gadget *This application is aimed to help students in learning during and after lectures. With this application, students can enjoy a whole new way of notes taking when attending lectures. They will be able to organize their personal notes and hi-lights in the "attach-on-slide way". - [[fyp:ik0901:integrated_learning_platform|Integrated Learning Platform]] *A time saving and user-friendly platform that providing course related material and information. - CU Freshmen App *The main idea is to tell freshmen the mechanism of “how to get the information” in order to "survive" for the rest of their University life. \\ Detailed reference:{{fyp:ik0901:general_ideas.doc}} ===== Project Description ===== ==== Proposal selection ==== 1. Mind map ==== Abstract ==== This application is aimed to help students in learning during and after lectures. With this application, students can enjoy a whole new way of notes taking when attending lectures. They will be able to organize their personal notes and hi-lights in the "attach-on-slide way". ==== Application name ==== MindBlowing ==== Target user ==== Focus on students in our development. ==== Uses ==== Mind maps have many applications in personal, family, educational, and business situations, including notetaking, brainstorming (wherein ideas are inserted into the map radially around the center node, without the implicit prioritization that comes from hierarchy or sequential arrangements, and wherein grouping and organizing is reserved for later stages), summarizing, revising, and general clarifying of thoughts. One could listen to a lecture, for example, and take down notes using mind maps for the most important points or keywords. One can also use mind maps as a mnemonic technique or to sort out a complicated idea. Mind maps are also promoted as a way to collaborate in color pen creativity sessions. Mind maps can be used for: * Problem Solving * Outline / Framework Design * Anonymous collaboration. * Marriage of words and visuals. * Individual expression of creativity. * Condensing material into a concise and memorable format. * Team building or synergy creating activity. * Enhancing work morale. ==== Features ==== * Colorized nodes * Drawing/Image attachments * Text/Links attachments * Audio/Video attachments * Updates/Modification notifications * Geo-tagging for mind maps ==== Specification_v2 - Semester 1 ==== [[fyp:ik0901:spec_v1|spec_v1]] === Node === * Ordinary node with text title * Text/Audio/Video/Image node * Drawing node * Tag enable * Simple text description * Preview * Re-size temporary disable * Different shape === Linkage === * Non-directional * Using straight line in this phase * Only one link between the same two nodes is possible * No loop back(v1 -> v1) * Tag enable === Tag === * Different shape * Coloring * Text description === Save/Load === * Not yet decide since there is implementation issue, need further study to decide * Text base (xml or custom form) * Using CoreData? === Control === * Single tap on the background to scroll the whole view vertically and horizontally * Single tap on the node and drag it to move around * Single tap on the node to display preview * Single tap on the node and hold for 0.75 sec to enter link creation. After entering the link creation phase, a single tap on another node to create linkage * A thumb view for node type selection * Double tap on the background to create node * Double tap on the node to display the detail view * Double tap on the node with deletion on to delete node * Pinch to zoom in/out * Create nodes by double click with the help of UI (choosing between different kind of nodes) * Delete nodes by double click with the help of UI ==== Use-Case Diagram ==== {{ fyp:ik0901:usecase.jpg }} ==== Sequence Diagram ==== {{ fyp:ik0901:sequence.jpg?700 }} ==== Limitations ==== | ^ Minimum ^ Maximum ^ ^ Number of Mindmaps | 0 | constrained by amount of memory | ^ Number of nodes per mindmaps | 0 | 50(Limited by the canvas size) | ^ Length of an audio node | 0 | constrained by amount of memory | ^ Length of a video node | 0 | constrained by amount of memory | ^ Zoom level | 0.5x | 4x | ^ Link between 2 nodes | 0 | 1 | ^ Looking link(single link loop back) | 0 | 0 | ==== Side by Side Comparison ==== | Features ^ Ours ^ SimpleMindX ^ ^ Overview and managing Mindmaps ||| ^ Search by keyword | In Progress | | ^ Filter by tag/folder | In Progress | | ^ Thumbnail preview | | X | ^ Custom sorting criteria | In Progress | | ^ Custom arrangement | | X | ^ Mindmap Details ||| ^ Colourized nodes | In Progress | X | ^ Moving nodes | X | X | ^ Connecting nodes | X | X | ^ Apply visual styles | | X | ^ Collapse/Expand nodes | In Progress | | ^ Audio nodes | In Progress | | ^ Video nodes | In Progress | | ^ Image nodes | In Progress | | ^ Zoom | X | X | ^ Scroll | X | X | ^ Rotate | In Progress | X | ^ Nodes descriptions | In Progress | | ^ List view of nodes | In Progress | | ^ Node preview | X | | ^ Other Options ||| ^ Export to SimpleMind | | X | ^ Cut | | X | ^ Paste | | X | ^ Export to email | In Progress | | ^ Export to Camera roll | | X | ^ Undo/Redo | | X | ===== Screenshots ===== ^ Week 3 ^ | {{fyp:ik0901:week_3_sc1.png?202x385}} | | Single node creation | ^ Week 4 ^ | {{fyp:ik0901:week_4_sc1.png?202x385}} | | Able to zoom in/out | ^ Week 5 ^ | {{fyp:ik0901:week_5_sc1.png?202x385}} | | Multiple nodes creation and zooming | ^ Week 6 ^ | {{fyp:ik0901:week_6_sc1.png?202x385}} {{fyp:ik0901:week_6_sc2.png?202x385}} {{fyp:ik0901:week_6_sc3.png?202x385}} {{fyp:ik0901:week_7_menu1.png?202x385}} {{fyp:ik0901:week_7_menu2.png?202x385}} | | Creation of different kinds of node and detail view framework; Creation of maps with prdefined values | ^ Week 7 ^ | {{fyp:ik0901:week_7_sc1.png?202x385}} {{fyp:ik0901:week_7_sc2.png?202x385}} {{fyp:ik0901:week_7_sc3.png?202x385}} {{fyp:ik0901:week_7_menu3.png?202x385}} {{fyp:ik0901:week_7_menu4.png?202x385}} | | Scrollable and zoom enable background, thumb view for node type selection; Deletion of maps | ^ Week 8 ^ | {{fyp:ik0901:week_8_sc1.png?202x385}}{{fyp:ik0901:week_8_sc2.png?202x385}}{{fyp:ik0901:week_8_sc3.png?202x385}}{{fyp:ik0901:week_8_sc4.png?202x385}}{{fyp:ik0901:week_8_sc5.png?202x385}}{{fyp:ik0901:week_8_sc6.png?202x385}}{{fyp:ik0901:week_8_menu1.png?202x385}} {{fyp:ik0901:week_8_menu3.png?202x385}}{{fyp:ik0901:week_8_menu4.png?202x385}} | | Link creation, node and link deletion, some UI and control refinement; Map detail view, map editing view | ^ Week 9 ^ | {{fyp:ik0901:week_9_sc1.png?202x385}}{{fyp:ik0901:week_9_sc2.png?202x385}} | | Add, delete refinement | ^ Week 10 ^ | {{fyp:ik0901:week_10_sc1.png?202x385}}{{fyp:ik0901:week_10_sc2.png?202x385}} | | Zoom scale slider, overview | ===== Log ===== ^ Week 01(08-09-09) | - General meeting | ^ Week 02(15-09-09) | - General meeting \\ - {{fyp:ik0901:general_ideas.doc|Ideas brainstorming}} | ^ Week 03(22-09-09) | - Proposal selection \\ - {{fyp:ik0901:usecasediagram.jpg?linkonly|Use case study}} \\ - Define system features \\ - General meeting| ^ Week 04(29-09-09) | - Abandon last proposal selection and select a new one \\ - Redefine system features again \\ - General meeting | ^ Week 05(06-10-09) | - Specification \\ - {{fyp:ik0901:sequence.jpg?linkonly|Program flow}} \\ - {{fyp:ik0901:usecase.jpg?linkonly|Use case}} \\ - Basic UI design (Partial) \\ - Multi-Nodes creation \\ - Node Manipulation (Partial: Move around, zoom in/out) \\ - General meeting | ^ Week 06(13-10-09) | - Creation of different kind of nodes \\ - Preview framework \\ - Detail View of each node framework \\ - General meeting \\ - Creation of mindmaps in menu | ^ Week 07(20-10-09) | - Thumb view for selecting node and link type \\ - Actual Deploy of preview \\ - Scrollable background \\ - Overall zooming(individual node zooming is temporary disable) \\ - Deletion of mindmaps in menu | ^ Week 08(27-10-09) | - Deletion of node \\ - Linkage between nodes \\ - Some UI refinement and enhanced usability(control modification) \\ - Detail view of mindmap \\ - Editing/Add view of mindmap | ^ Week 09(03-11-09) | - Side by Side Comparison with SimpleMindX \\ - General Meeting \\ - Refinement of creating and deleting nodes \\ - Zoom scale slider | ^ Week 10(10-11-09) | - General Meeting \\ - Overview of the mind map | ^ Week 11(17-11-09) | - Navigate by using overview \\ - Usage sample cases \\ - Writing report \\ - General meeting | ^ Week 12(24-11-09) | - Integration of our works \\ - Writing report \\ - General meeting | ^ Week 13(01-12-09) | - Writing report | ==== Reference ==== http://en.wikipedia.org/wiki/Mind_map