| <!-- |
| This document is provided as a template along with some guidance for creating |
| your project proposal. This is just a template. Feel free to change it as |
| you see fit (add sections, remove section). We feel, however, that the |
| suggestions represented in this document represent the reasonable minimum |
| amount of information to move forward. |
| |
| Please keep the formatting in this document simple. Please do not edit |
| this document in Microsoft Word as it adds huge piles of markup that make |
| it difficult to restyle. |
| |
| More information is available here: |
| |
| http://wiki.eclipse.org/Development_Resources/HOWTO/Pre-Proposal_Phase |
| |
| Direct any questions about this template to emo@eclipse.org |
| --> |
| |
| <html> |
| <head> |
| |
| <!-- |
| Include the title here. We will parse it out of here and include it on the |
| rendered webpage. Do not duplicate the title within the text of your page. |
| --> |
| |
| <title>Remus Information Management</title> |
| </head> |
| |
| <body> |
| <p>The Remus project is a proposed open source project under the <a |
| href="http://www.eclipse.org/projects/project_summary.php?projectid=technology">Technology</a> |
| parent project.</p> |
| |
| <p>This proposal is in the Project Proposal Phase (as defined in the |
| Eclipse Development Process) and is written to declare its intent and |
| scope. We solicit additional participation and input from the Eclipse |
| community. Please send all feedback to the <a |
| href="http://www.eclipse.org/forums/eclipse.remus">Remus Eclipse |
| forum</a> or <a |
| href="http://www.eclipse.org/newsportal/thread.php?group=eclipse.remus">Remus</a> |
| newsgroup.</p> |
| |
| <h2>Background</h2> |
| <p>With today's information technologies, the amount of information |
| we consume daily is enormous. Efficient management and fast access to |
| frequently used information has become more important than ever. The |
| fact that we use a wide range of applications and digital mediums makes |
| the aggregation of information, search and retrieval even more |
| difficult. Managing a huge amount of information successfully requires |
| an intelligent tool that enables users to file, categorize and visualize |
| such diverse types of data as information units in a single application. |
| </p> |
| <!-- |
| Optionally provide the background that has lead you to creating this project. |
| --> |
| |
| <h2>Scope</h2> |
| The objectives of the Remus project are: |
| <h3>Management and visualization of typed information</h3> |
| <p>The application provides a rich interface to create, edit and |
| view single information units with a type-specific information |
| representation. The local data is browsable through a hierarchical or |
| semantical structure.</p> |
| <p> |
| <div style="text-align: center"><img src="figure_1.png" border="0"></div> |
| </p> |
| <p>Every information can be opened in a separate editor that |
| generally will have at least one tab for a viewing-optimized |
| representation of the information unit and other tabs for editing. All |
| information units can be linked with each other and can have events |
| attached. Events are visualized in a separate view, which is similar to |
| the calendar view known from other applications like Microsoft Outlook |
| or Thunderbird Lightning.</p> |
| <p> |
| <div style="text-align: center"><img src="figure_2.png" border="0"></div> |
| </p> |
| <h3>Searchability of all data based on different criteria.</h3> |
| <p>The application uses Apache's Lucene Technology to create a |
| searchable index of all information units. Thus, the application |
| provides a search view to initiate a search, a view for the search |
| results and an extra information type for saving search queries. Users |
| can save search queries, called 'Favorite Searches', and subsequently |
| use these Favorites to execute regular search requests against a growing |
| and dynamically changing information pool.</p> |
| <p> |
| <div style="text-align: center"><img src="figure_3.png" border="0"></div> |
| </p> |
| <p>Search ranking mechanisms are injected by a declarative |
| OSGi-Service and can be changed easily.</p> |
| <h3>Desktop Integration</h3> |
| <p>Remus provides a customizable desktop-panel which enables rapic |
| access to often-used operations without having the entire application on |
| the screen. For a screencast on how to use the panel, see <a |
| href="http://www.remus-software.org/user-documentation/7-dektop-integration/14-the-desktop-panel">http://www.remus-software.org/user-documentation/7-dektop-integration/14-the-desktop-panel</a>. |
| </p> |
| <p> |
| <div style="text-align: center"><img src="figure_4.png" border="0"></div> |
| </p> |
| <p>The most critical point in information management is the easy and |
| fast creation and transfer of data into another application. Remus uses |
| a rule engine that makes it very easy to drag'n' drop (or copy/paste) |
| relevant information into the system. Specific rules allow you to create |
| complex information structures from, for example, unstructured text with |
| a single drag'n'drop operation.</p> |
| <h3>Synchronization with external information pools</h3> |
| <p>Today's information management landscape already offers a great |
| number of excellent platforms for handling specific information types. |
| Typical examples of such platforms, especially for user-generated |
| content, are Youtube, Delicious or Flickr. They all share the same goal: |
| providing an application structure for the management of one specific |
| type of information (Youtube -> videos, Flickr -> images, ...). The goal |
| of Remus is not to compete against these applications, but to facilitate |
| and enhance your local information management by providing |
| functionalities to browse through these remote information repositories |
| and to synchronize your data in Remus with the information in other |
| repositories. The advantages in a nutshell: |
| <ol> |
| <li>Synchronized data is available offline.</li> |
| <li>No need for using the platforms website, all synchronization, |
| adding, removing and viewing items can be done with your local Remus |
| client. One application and one user interface for all platforms.</li> |
| <li>Moving data between repositories: Just one drag'n'drop to move |
| data from one remote repository to another (e.g. moving a photo from a |
| flickr account to a picasa account</li> |
| <li>High-performing, fast offline search through synchronized data</li> |
| <li>Editing of synchronized data without a connection to the |
| repository</li> |
| <li>Creation of links between information units in different |
| remote repositories. For example, Remus allows users to create an |
| ontological connection between a YouTube video and a Flickr photo.</li> |
| <li>Automatic notifications for new or updated data.</li> |
| </ol> |
| </p> |
| <p> |
| <div style="text-align: center"><img src="figure_5.png" border="0"></div> |
| </p> |
| <!-- |
| All projects must have a well-defined scope. Describe, concisely, what |
| is in-scope and (optionally) what is out-of-scope. An Eclipse project |
| cannot have an open-ended scope. |
| --> |
| |
| <h2>Description</h2> |
| Remus Information Management is an Eclipse RCP based application for the |
| daily management of information the user needs for his or her daily |
| work. Development started in summer 2008 and the application has reached |
| Alpha status: The current project state including available |
| documentation and source code can be found on the current project |
| website http://remus-software.org. The decisive factor for developing |
| Remus was the growing demand for a tool which makes often needed |
| information rapidly accessible online and also available offline. |
| Another key requirement was the easy transfer of information and data |
| from other applications or remote information pools. This will be |
| resolved with a rule engine for dropping or cutting/pasting data into |
| the application and a framework for synchronizing with remote |
| information pools. The application should be as open as possible: |
| Third-party vendors can develop their own information structures and |
| plug them into the application. Remus is available as a stand-alone RCP |
| application or as a set of bundles which can be installed into another |
| Eclipse instance. |
| |
| <!-- |
| Describe the project here. Be concise, but provide enough information that |
| somebody who doesn't already know very much about your project idea or domain |
| has at least a fighting chance of understanding its purpose. |
| --> |
| |
| <h2>Framework</h2> |
| <p>These are the most important capabilities of the Remus Framework: |
| <ol> |
| <li>Information structure injection: With a structure definition |
| in place, any third parties can contribute their own UI for creating |
| and editing information structures. After defining an EMF based |
| structure description and an UI for editing the structure, you are able |
| to build an application for viewing and editing this specific |
| information structure (including navigation, copy/paste, undo/redo, |
| ...)</li> |
| <li>Remote repository: Remus provides a synchronization mechanism |
| for updating, uploading and downloading information units from a remote |
| repository. So third parties can add their own repository |
| implementation via extension points. This implementation has to |
| transform the repository-specific object structure into a |
| Remus-specific structure. Change dectection and automatic |
| synchronization is done by the framework. Updating an information unit |
| fragment is also possible (this is important if the local information |
| unit has more properties that can be changed than are provided by the |
| remote object.)</li> |
| <li>Contributing to existing information structures: Remus is an |
| flexible open platform that will offer many possibilities to extend |
| functionalities, such as adding your own desktop panel sections, |
| contributing your own rule set execution routines, defining new actions |
| for existing information units, adding your own search providers, ...</li> |
| </ol> |
| </p> |
| |
| <h2>Integration of other Eclipse projects</h2> |
| <p>The current development stage already integrates other Eclipse |
| projects. There is full integration of BIRT Runtime and BIRT Designer, |
| see |
| <a href="http://www.richclient2.eu/2009_11_23/building-reports-of-your-local-information-pool-with-birt-and-remus/">http://www.richclient2.eu/2009_11_23/building-reports-of-your-local-information-pool-with-birt-and-remus/</a>. |
| The framework provides various possibilities for a seamless integration |
| of other UI Elements like editors, viewers or even perspectives. Another |
| example of third-party integration is Xtext |
| (<a href="http://www.richclient2.eu/2009_09_01/extending-rim-with-xtext/">http://www.richclient2.eu/2009_09_01/extending-rim-with-xtext/</a>) or |
| XMind (for a screenshot see |
| <a href="http://remus-software.org/images/stories/screenshots/general/6/mindmap.png">http://remus-software.org/images/stories/screenshots/general/6/mindmap.png</a>). |
| </p> |
| |
| <!-- |
| Describe any existing code that will be contributed to the project. |
| --> |
| |
| <h2>Legal Issues</h2> |
| <p>Remus and all its contributions are currently licensed under the |
| terms of the Eclipse Public License. Third-Party Libraries must be |
| compatible to the EPL. There are currently just a few drawbacks:</p> |
| <ol> |
| <li>The icons (except the application logo and splash screen) are |
| part of Incors' Iconexperience icon set, a commercial set of icons, |
| which will have to be replaced.</li> |
| <li>The connector to Microsoft Outlook uses a commercial |
| third-party library and is not included in the initial download but can |
| be installed via the Eclipse update mechanism.</li> |
| </ol> |
| |
| <h2>Developer Community</h2> |
| <p>The developer community is expected to grow as the need arises to |
| integrate further specific information types or remote repositories.</p> |
| |
| <h2>User Community</h2> |
| <p>The user community will primarily consist of people working in an |
| IT based or academic environment. In view of the connectors to social |
| platforms, it cannot be ruled out that the application will also be used |
| for private purposes. Remus already has a small user community who is |
| using the current nightly build.</p> |
| |
| <!-- |
| Please describe any potential legal issues in this section. Does somebody else |
| own the trademark to the project name? Is there some issue that prevents you |
| from licensing the project under the Eclipse Public License? Are parts of the |
| code available under some other license? Are there any LGPL/GPL bits that you |
| absolutely require? |
| --> |
| |
| <h2>Committers</h2> |
| <p>The initial committer will focus primarily on the core |
| functionalities of the underlying framework. An important requirement |
| for the committers is to provide the necessary documentation and tools |
| which will make easy it for interested parties to use the application as |
| a framework for information management and to extend the application by |
| integrating their own business-specific information structures or by |
| connecting to their own proprietary remote information pools.</p> |
| <!-- |
| List any initial committers that should be provisioned along with the |
| new project. Include affiliation, but do not include email addresses at |
| this point. |
| --> |
| |
| <p>The following individuals are proposed as initial committers to |
| the project:</p> |
| |
| <ul> |
| <li>Tom Seidel (proposed project lead)</li> |
| <li>Andreas Deinlein</li> |
| </ul> |
| |
| |
| <h2>Mentors</h2> |
| |
| <!-- |
| New Eclipse projects require a minimum of two mentors from the Architecture |
| Council. You need to identify two mentors before the project is created. The |
| proposal can be posted before this section is filled in (it's a little easier |
| to find a mentor when the proposal itself is public). |
| --> |
| |
| <p>The following Architecture Council members will mentor this |
| project:</p> |
| |
| <ul> |
| <li>Ed Merks</li> |
| <li>Tom Schindl</li> |
| </ul> |
| |
| <h2>Interested Parties</h2> |
| |
| <!-- |
| Provide a list of individuals, organisations, companies, and other Eclipse |
| projects that are interested in this project. This list will provide some |
| insight into who your project's community will ultimately include. Where |
| possible, include affiliations. Do not include email addresses. |
| --> |
| |
| <p>The following individuals, organisations, companies and projects |
| have expressed interest in this project:</p> |
| |
| <ul> |
| <li>Benjamin Muskalla, EclipseSource</li> |
| <li>Wayne Beaton, Eclipse Foundation</li> |
| </ul> |
| |
| <h2>Project Scheduling</h2> |
| <p>The first official release is scheduled for Q1 2010. The goal of |
| this release is to meet the key requirements and to provide a basic set |
| of information types and remote repository connectors.</p> |
| |
| <!-- |
| Describe, in rough terms, what the basic scheduling of the project will |
| be. You might, for example, include an indication of when an initial contribution |
| should be expected, when your first build will be ready, etc. Exact |
| dates are not required. |
| --> |
| |
| <h2>Changes to this Document</h2> |
| |
| <!-- |
| List any changes that have occurred in the document here. |
| You only need to document changes that have occurred after the document |
| has been posted live for the community to view and comment. |
| --> |
| |
| <table> |
| <tr> |
| <th>Date</th> |
| <th>Change</th> |
| </tr> |
| <tr> |
| <td>22-Jan-2010</td> |
| <td>Document created</td> |
| </tr> |
| </table> |
| </body> |
| </html> |