j2ee struts ui architecture and ui design

15
Asmira UI Architect ure UI Design, Architecture and Presentation by Ben Martinka, iAsia DigitalWorks, Inc., 2004

Upload: benedict-j-martinka

Post on 25-May-2015

1.530 views

Category:

Documents


9 download

DESCRIPTION

J2EE Struts UI Architecture and UI Design

TRANSCRIPT

Page 1: J2EE Struts UI Architecture and UI Design

Asmira UI Architecture

UI Design, Architecture and Presentation by Ben Martinka, iAsia DigitalWorks, Inc., 2004

Page 2: J2EE Struts UI Architecture and UI Design

Forms

Actions

Tiles

Pages

Struts Framework

Page 3: J2EE Struts UI Architecture and UI Design

Forms• Fields• Field Groups• Data Collection• Data Display

Page 4: J2EE Struts UI Architecture and UI Design

Actions• Buttons, Links• Menus, Tabs• Commands, Icons• All Navigation

Page 5: J2EE Struts UI Architecture and UI Design

Tiles• Screen Layers• Building Blocks• Reusability• Consistency

Page 6: J2EE Struts UI Architecture and UI Design

Pages• Tile Assemblies• Action Targets• Application Flow• Task-Oriented

Page 7: J2EE Struts UI Architecture and UI Design

Forms

Actions

Tiles

Pages

Struts Framework

XMLconfig files,JSP code

pages

____________

____________

Tiles-def.xml

DefinesTiles &Pages

____________

____________

Struts-cfg.xml

DefinesForms &Actions

____________

____________

Web Page JSPs

HTML &Java forDisplayLogic

____________

____________

Action Classes

Java forProcess& FlowLogic

Page 8: J2EE Struts UI Architecture and UI Design

____________

____________

Tiles-def.xml

____________

____________

Struts-cfg.xml

____________

____________

Web Page JSPs

____________

____________

Action ClassesStruts Framework

Forms

Actions

Tiles

Pages

XMLconfig files,JSP code

pages

Tiles-def.xml

____________

____________

____________

____________

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

____________

Hand-coding of XML, JSP pages, Java classesgrows proportionally to UI requirements

Page 9: J2EE Struts UI Architecture and UI Design

UC Form Models:• Create• View• Edit• Search• List

____________

____________

Tiles-def.xml (Hand-coded, Map-assisted)

____________

____________

Struts-cfg.xml (Map-generated)

____________

____________

Web Page JSP Templates

____________

____________

Action ClassesStruts Frameworksupplemented by “Form Models” &XML-Generating “Content Maps”

____________

____________

____________

____________

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

____________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

_______________

_________

____________

Hand-coding reduced, consistency, security, maintainability added

Forms-def.xml(Map-generated)

Code-GeneratingUI Specs/ImplementationModel (Content Map.xls)

____________________________________ ____________________________________________________

____________________________________ ____________________________________________________

Field-level Access Control

(Manual)

____________

____________

Custom Pages

____________

____________

(Auto)(Auto)

(Specify)

Page 10: J2EE Struts UI Architecture and UI Design

Search Form Model

Page 11: J2EE Struts UI Architecture and UI Design

List Form Model

Page 12: J2EE Struts UI Architecture and UI Design

Entity View/Confirm Form Model

Page 13: J2EE Struts UI Architecture and UI Design

Entity Create/Edit Form Model

Page 14: J2EE Struts UI Architecture and UI Design

Additional UI Building Block Components

Reusable“Field Cluster”Tiles for commonattribute sets

EnumeratedDatatype Lists

Custom & Standardized Edit Control Tiles for facilitated Data Entry

CSS Stylesheet for Look & Feel Control Javascript Libraryfor Interactivity

Label & Message Repository(Internationalization-ready)

Images

Page 15: J2EE Struts UI Architecture and UI Design

UI Task FlowClient Requirements Docs:

• Data Field Matrices• Report Formats

• Use Cases

Build Data Dictionary:• Identify Enumerated Datatypes & Values• Identify Data Transfer Business Objects• Identify Data Attributes & Datatypes

Build Label & Message Repository:• ID/Store Form & Table Labels for all fields• ID/Store Group, Form & Page Headings• ID/Store User Notices, Errors & Tooltips

Produce UI Code:• Program Action Classes in Java, per Form• Generate XML Form Structures & Configs• Add Access Rights by Field, Role, Activity• Create any one-off custom pages needed• Integrate and Test components

Build Common Components:• Edit Control & Cluster Tiles & JSPs• Form & Page Model Tiles & JSPs• Navigation Tiles & Functionality• Framework Java shared by Actions• Javascript Library• CSS Stylesheet

Extra Development Requirements:• Build Field-level Security Console• Spec & Program Scanner Interfaces• PDA and/or SMS Requirements?• Other Custom Use Case Handling?

Build Content Map (per Submodule):• Identify & Structure ea. Search & List Form• Identify & Structure ea. Detail & Lookup Form• Identify Display & Validation Requirements• Identify each Page, Action, & flow between• Identify Tab Hierarchies & code into Tiles• Build Site Map Diagram