Differences between revisions 11 and 12
Revision 11 as of 2009-12-16 16:47:34
Size: 2936
Editor: 24-183-238-75
Comment:
Revision 12 as of 2009-12-17 16:32:26
Size: 2934
Editor: 24-183-238-75
Comment:
Deletions are marked like this. Additions are marked like this.
Line 31: Line 31:

Programming the Object Model

The next few sections discuss the overall approach to programming the database interface, business objects and back end systems. For a second iteration, we are considering the following technologies to clean up the implementation:

Visual Design Elements

We are using Windows Forms to create an interface with Menus and multiple layers of embedded tabbed panels. Until we have time to add to this section, look at the design for more info.

Object to Database Integration Model

We are building a Model View Controller (MVC) application.

Our model is contained in a Dataset object ArchDataset.xsd along with the ancillary host of helper objects. Although these are very complex, they are standard elements and perform in expected ways. We will not cover them in detail. To find out more information about this particular model, see the ArchaeologyProject/DataModel.

The view is contained in [Name]Controls.cs and Forms files. These are organized under the directories Forms, FormControls, and Controls. These hold the visual components that display data and contain visual elements that allows the user to interact with that data. Currently we are using windows forms. In the future we would like to move to WPF.

The controller components glue the underlying model to the views and make extensive use of the Dataset paradigm to speed the development process. This is the most complicated part to be programmed. And deserves the greatest attention. In a moment of weakness these were seen to work more with the model than the view and are organized under the Data folder.

Controller

The controller interacts with both the Model and the View in the following ways: Creating new forms, Loading Filled Forms and Saving Changes to forms.

Creating New Locus Forms

New forms are created by menu selection while viewing a square. The menu creates a LocusDataEarth, LocusDataArchitecture or LocusDataInstallation object. These are controller objects. The tab control is acquired and a tab page added with the appropriate labels. Then the controller object provides a ctrlPannel that is placed on the Tab. The control pannel provided by the controller object is linked in such a way that interaction with it, is reflected in the controller object and as needed back to the database.

ArchaeologyProject/ObjectModel (last edited 2010-04-06 21:47:57 by 24-183-238-75)