Home
.. Links
.. Search
.. Plugins
.. Help
.. Irc Faq

Projects
.. Platform/Faq
.. JDT/Faq/Plan
.. PDE/Faq
.. SWT/Faq
.. RCP/Faq

Tools Projects
.. CDT/Faq
.. GEF/Faq
.. EMF/Faq

Wiki Tutorials

Hosted Projects
.. MTJ
.. Google Summer Of Code 2007
.. Update Manager 2.0
.. EasyEclipse
.. Stylebase for Eclipse

Archives

Conceptual Architecture Description


Note!  All images on this page where created by using the STAR UML open source modelling tool.  Please find the source file as an attachement.

 

Structural View

 

Stylebase for Eclipse consist of three plug-ins. The below shows how the main plugin implements a model-view-controller pattern.  In order to increase the level of modularity, the main components - model, view and controller - communicate with each other via predefined interfaces.  The dependent plugins use a predefined extension point to attach themselves to the main plugin.

Conceptual2.jpg


 

The view is responsible for providing a graphical user interface.   A controller is responsible for mapping GUI events to application response.  A model contains the core functionality of the application.  It is divided into two subcomponents: container holds pattern data during programs execution and admin encapsulates methods that manipulate it.  Model attaches to database which servers are a permanent storage for the pattern data.

 
The Requirement Specification determines  that Stylebase for Eclipse must provide access and extension points for downstream plug-ins. They are described ithe tables below.

 
The access points provided by the Stylebase for Eclipse

Controller

The interface provides access to the control component.  It lets users associate the functions of Stylebase for Eclipse with the GUI of another plug-in.

Model

The interface gives access to the model component. It provides a set of methods for retrieving and updating essential data in the Stylebase. 

Database

The interface provides SQL-level access to the underlying database. It helps in implementing specific functionality not provided by the model interface.

 

The extension points provided by the Stylebase for Eclipe

Database (a.k.a ModelAdmin) Extension Point

The extension points provides a means for adding support to new database management systems

GUI Extension
Point

The extension point provides the means of customizing the user interface of the Stylebase for Eclipse. It allows users to add their own views and/or menu items to the main view of the Stylebase for Eclipse. The controller component is extended respectively.

 

  

Behavioral View

 

The below figure illustrates the communications between the main components.

behavioural.jpg


The view component attaches to a model and shows its contents on the display. The model notifies the view when its contents have changed and then the view redraws the affected part of the image to reflect these changes. The view detects GUI events (e.g. mouse click, button press) and sends them to the controller.   A controller receives events from the view and then instructs the admin part of the model(s) to perform actions based on the input. The model admin updates data both in  the model container and the remote database. Upon initialization of the program, the model admin reads data from database and fills the container.

 

Deployment View

 

The below figure illustrates how the Stylebase for Eclipse is deployed.

  Deployment.jpg

 


 

The Stylebase for Eclipse is an extension to the Eclipse IDE  which is always deployed on the client machine. The Stylebase for Eclipse includes two third-party subcomponents: JDBC Driver and an XML Object Model.   JDBC Driver is a client-side program which sends and receives requests to/from  DBMS.  An XML object model is a programming interface for processing XML Documents with Java.  It includes a separate component which does the actual parsing.  Database server is typically deployed on server machine.  If desired, one computer can act both as a server and a client, in which case, all applications are installed on the same physical machine. In any case, a client-server type connection is established between the database server and the client libraries.

 

Development View

 

The Stylebase for Eclipse project is by no means on isolated island – it is dependent on various tools developed by other open source communities.  Figure 9 shows the selected technologies and their providers.

 

 development2.jpg


 

 

MySQL DBMS  and the associated JDBC Driver, namely MySQL J/Connector, are provided by the company called MySQL Ab and the FLOSS community it supports. HSQL Database is also developed by a FLOSS  community with a similar name. Eclipse Platform and Eclipse Plug-in Development Environment (PDE) are developed by respective communities under the official Eclipse project.  The development of Standard Widgets Toolkit  is managed by the Eclipse platform community, but new widgets originate from the Nebula project which is a source of supplemental SWT widgets and an “incubator” for SWT.


NameVersionSizeDateUser
StylebaseStarUML.zip12244169/18/07 3:03 AMkatjah



Last Modified 9/18/07 2:24 AM

Hide Tools