A Conceptual Overview Presentation: 60 minutes Q&A: 30 minutes
Jan 16, 2016
A Conceptual Overview
Presentation: 60 minutesQ&A: 30 minutes
Why this Presentation?
– To update on progress – To obtain feedback– Facilitate the next phase of development
What This Presentation Covers
• Outlines issues with the current development process
• How EpioDesigner proposes to tackle these issues
• The EpioDesigner set of tools• Testing our methodology: the PR
application• Refining the development process• Open Q&A session
The Problem – ‘Language barrier’
• Difficult to capture requirements and manage expectations
• Assumptions and information gaps
• Information loss• Hard to capture and
track all information• Inefficient and
inaccurate prototyping
• More information loss
• Repetition and lack of reuse
• Lengthy implementation time
The Solution – Common information pool
• Structured information capture
• Information is centralised and integrated
• More efficiency, consistency and reuse
• Provides a mechanism to speak the same language
So What Is Epiodesigner?
• It’s a set of tools…– Manages the solution lifecycle via a
common information pool• Co-ordinates multidisciplinary teams• Captures requirements and system design• Facilitates prototyping process• Produces template applications
• …and a process– Structures and co-ordinates the current
software lifecycle– Not restricted to building web applications
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The current solution processROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
PROBLEMS
• Inefficient analysis and design methodology
• Insufficient time spent prototyping
• Long implementation time• Insufficient testing• Deployment difficulties
Client UsersBusiness Analysis Design Development
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
Project Analysis & Design Prototyping Development Testing Support
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
System Design
Project Analysis & Design Prototyping Development Testing Support
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
System Design
Proto- typing
User Testing
Project Analysis & Design Prototyping Development Testing Support
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
System Design
Proto- typing
User Testing
Implementation
PrototypingProject Analysis & Design Development Testing Support
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
System Design
Proto- typing
User Testing
Implementation
PrototypingProject Analysis & Design Support
Testing
Development Testing
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
System Design
Proto- typing
User Testing
Implementation
PrototypingProject Analysis & Design
Testing
Development SupportTesting
RequirementsAnalysis
RequirementsAnalysis
System Design
Proto- typing
User Testing
Implementation Testing Deployment
The EpioDesigner solutionROLES
SOLUTION PROCESS
RequirementsAnalysis
RequirementsAnalysis
SOLUTION TOOLS
SOLUTION METADATA
Client UsersBusiness Analysis Design Development
System Design
Proto- typing
User Testing
Implementation Testing Deployment
PrototypingProject Analysis & Design SupportDevelopment Testing
The Metadata LayerEntities Patterns Styler
Data Modeling
Specifications
documentsProject Reports
Framework-typeapplications
Epiowaveapplications
Prototypes
Business Analysis implications
• Integration of relevant CAM components
• Structured scripts and questionnaires to get the accurate information from the client including…– Role Control Diagrams– Process Diagrams
• Increased client satisfaction• Less guesswork and less meetings
The Epiodesigner set of tools
• Project Manager• Role Manager• Entity Manager• Navigation Manager• Workspace Manager• Pattern Manager• Styler• Usability Tester
Entity Manager
• An Entity:– is unique to other objects in the system– is managed by an application– contains more than one piece of
information – has properties and actions
• An Entity is not:– a role in the system– a collection of properties that are captured
elsewhere in other entities
[ ]
Entity Manager
• Associated entity and pattern
• General or specific• Display options• Validation
• Associated entities• Display options• Pattern behaviours• Interface controls• Validation• Data Model
• Siblings• Parent to child
RolesRelationships
Properties Actions
[ ]
Entity examples
• These entities are from the PR application, our test-case in-house application
SIBLINGContributionContribution Press ReleasePress Release
CommentComment
Digital RecordDigital Record
CommentComment
Digital RecordDigital Record
PARENT TO CHILD PARENT TO CHILD
PARENT TO CHILD PARENT TO CHILD
Entity Manager -Relationships
Entity Manager - Properties
Entity Manager - Properties
Entity Manager - Properties
Entity Manager - Actions
Entity Manager - Actions
Entity Manager - Actions
Entity Reuse
• Default preset properties and actions • Categorised entity library for reuse• Functionality templates
– Groupings of default actions– Extensible and scalable
• Import and export via standard formats (UML, E-R…)
• On-sell potential– Client subscription to libraries– Client submission to libraries
Navigation Manager
• Adds to entity information • Transforms entity actions into navigation
structures• Manages navigation hierarchy, appearance
and behaviour
[ ]
WORKSPACE
Workspace Manager
• Link between patterns and navigation• Library of workspaces for reuse and
consistencyNAVIGATION
PATTERN
PATTERN PATTERN
[ ]
[ ] [ ]
Pattern Manager
• A pattern is:– a way of visualising and interacting with data
– a predefined managed piece of functionality– applied to none or more entities, which it then
controls and visualises• Patterns have options that affect their behaviours • A pattern can be applied to specified properties of an
entity• A Pattern is not like a transform, it is metadata
required to produce both prototypes and applications
Pattern Manager
• Patterns are mainly based on Epiowave V2 design standards
Pattern Manager
• List– List – Simple– List – Select Single– List – Select Multiple– List – Categorised
• Confirm– Confirm/Report
• Details– Details – View– Details – Edit– Details – Enter
• Others– Reorder– Tree-view
• There are four groups of patterns:
Pattern Manager
• List pattern types
Simple ListList – Select SingleList – Select MultipleList - Categorised
Pattern Manager
• List pattern types
Simple ListList – Select SingleList – Select MultipleList - Categorised
Pattern Manager
• List pattern types
Simple ListList – Select SingleList – Select MultipleList - Categorised
Pattern Manager
• List pattern types
Simple ListList – Select SingleList – Select MultipleList - Categorised
Pattern Manager
• Details pattern types
Details – ViewDetails – EditDetails – Enter
Pattern Manager
• Details pattern types
Details – ViewDetails – EditDetails – Enter
Pattern Manager
• Details pattern types
Details – ViewDetails – EditDetails – Enter
Pattern Manager
• Confirm pattern type
Confirm and Report
Pattern Manager
• Reorder pattern type
Reorder
Pattern Manager
• Tree-view pattern type
Tree-View
Pattern Manager
• Using pattern options (some examples)
LinksPropertiesNumeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
LinksPropertiesNumeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links PropertiesNumeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links Properties Numeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links Properties Numeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd Icon Alphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links Properties Numeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links PropertiesNumeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links PropertiesNumeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Pattern Manager
• Using pattern options (some examples)
Links PropertiesNumeric PagingPage CountingSimple SearchDisplay QuantitySort ByAdd IconAlphabetical Filtering
Builder
• Creates and links workspaces, patterns and navigation from the entity metadata
[ ]
Exporting the prototype
• Prototypes are disposable• Prototypes are exported in different
modes, for different disciplines– Client– Developer illustration– User-testing– Role-specific exports
• Prototype metadata is refined iteratively, then re-exported Build
Styler
• Customise colour skins, icons and corporate branding
Usability Tester
• Prototypes can be exported in user-testing mode
• Interactive evaluation forms • Highlight areas with a high density of
functionality for testing
A Better Result
Design Development
• Prototype driven:
P
SOLUTION METADATA
• Metadata driven:
Design Development
P
???
A Better Result
Design Development
• Prototype driven:
P
SOLUTION METADATA
• Metadata driven:
Design Development
P
???
Further Thoughts
• ‘Flight-check’ process – Identifies weak or missing metadata– Rates/checks the project against best-practice, and
for conflicts and usability issues
• Clients can check current status of their project
Summary
• EpioDesigner:– is the bridge to better integrate software
development teams– centralises all information during the
development process– Provides formalised requirements analysis
and specification structure– produces more accurate and realistic
prototypes– automatically code-generates entire
applications
Deployment
Summary
Metadata
EntityManager
PatternManager
NavigationManager
WorkspaceManager
Styler
UsabilityTester
ExportBusinessAnalysis
The EpioDesigner process is not linear…
Summary
BusinessAnalysis
DeploymentMetadata
EntityManager
PatternManager
NavigationManager
WorkspaceManager
Styler
UsabilityTester
Export
…but circular and iterative…
Summary
BusinessAnalysis
DeploymentMetadata
…integrates various disciplines…
Summary
… Leading to More efficiency, consistency and reuse
Questions & answers