Viewer Stories

On the Project Ideas page I’ve listed a number of suggestions for extending the Naked Objects framework. Some of the larger projects are around building a generic viewer OOUI in various technologies (Android, JavaFX, GWT, etc).

To help understand what it takes to develop such a viewer, here’s a list of user stories / features. I’ve ordered them in the probable order of implementation.

0001 Set up dev env
0002 Representation of application (menu) services/repositories

0003 Display no-arg actions for domain services

0004 Invoke no-arg application service action returning a domain object

0005 Render domain entity title
0006 Render domain entity icon

0007 Render domain entity properties
- read-only
- treat all properties as strings

0008 Handle additional basic property types
- integer, string, date, boolean

0009 Handle references properties
- eg Customer Address

0010 Navigate to object referenced within a property

0011 Render domain entity collections
- read-only

0012 Navigate to object referenced within a collection

0013 Render no-arg actions of entity

0014 Invoke a no-arg action of an entity returning a single object
0015 Invoke a no-arg service action returning a (standalone) collection
0016 Invoke a no-arg action returning a scalar
0017 Invoke a no-arg action returning void

0018 Navigate to object referenced within a standalone action

[0019-0025] technology specific stories, eg handling reorientation of a tablet.

0026 Invoke application service action taking simple datatypes
- strings, int, date, boolean

0027 Invoke entity action taking simple datatypes
- strings, int, date, boolean

0028 Invoke application service action taking reference to other object
- with choices drop-down
0029 Invoke application service action taking reference to other object
- with autocomplete drop-down

0030 Validate action arguments
0031 Choices for action arguments
0032 Defaults for action arguments

0033 Editable entity properties taking simple datatypes
- “save-as-you-go”, single properties
- strings, int, date, boolean

0034 Choices for entity properties

0035 Editable entity properties with references to other objects

0036 Validate entity properties
0037 Disable entity properties

0038 Updating multiple properties of an entity
- in single request

0039 User authentication

0040 Error handling of optimistic locking failure
0041 Error handling of stale reference to deleted object
0042 Error handling of error thrown by application

0043 Extensibility: register new renderers for properties
0044 Extensibility: register new renderers for properties and action params
0045 Extensibility: register new renderers for standalone collections
0046 Extensibility: register new renderers for parented collections
0047 Extensibility: register new renderers for entities

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 242 other followers