Companies are unable to find software that really support their activities. Instead they use standard applications that are not designed for their specific company, nor capable of adapt to changes within the company.
During my Thesis project I tried to find a way to simplify the development process, to be able to develop usable and adaptable business software.
The company TE Johnston was used as a use-case to test if a solution could be developed to fit their specific company.
Advantages of Hiring UIUX Design Service Providers for Your Business
Graduation Project: Usable and Adaptable Business Software
1. Usable and Adaptable
Business Software
How the customer What the customer
explained it really needed
Leon van der Ree 08-10-2008
2. General Problem
Companies are unable to find
software that really support their activities
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 2/42
3. Cause
Software development is complex
Business Support Software is designed to
fit a generic company
Business Support Software is not designed
to adapt to a changing company
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 3/42
4. Question
Is it possible to
simplify the development of
business software,
without being restricted in possibilities,
to be able to create
custom business software that is
usable and adaptable?
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 4/42
5. How?
User centered design
Establish requirements
Find development tools that:
Reduce development time
Improve maintainability of implementation
Testing with real users
Frequent iterations
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 5/42
6. Establish Requirements
Literature Survey
Experience at several companies
T.E. Johnston & Co (Holland) b.v.
General Requirements:
Manage entities
Support work process
Manage overviews
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 6/42
7. T.E. Johnston & Co
Holland b.v.
Supervising surveys of transshipments of
edible oils
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 7/42
8. Clients
Survey
Survey Reports Invoice
Assignment
T.E. Johnston
Request
ETA
Receive
ETA
Results Results
Assignment
Agent
Assignment
Surveyor Laboratory
Attends on ship
Oil
Sample
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 8/42
9. Problem
Unique business
No standard software available
Custom software prohibitively expensive
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 9/42
10. Task Analysis
Held interviews
Analysed documents:
Assignments
Reports
Overviews
Worked at T.E. Johnston
Observed activities at the office
Observed transshipment in the harbour
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 10/42
10/42
11. Current Support
Currently different disconnected documents
are used to support tasks:
Overviews:
on paper
several different electronic versions
Assignments and Reports:
again different electronic versions
This requires many repetitive tasks
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 11/42
11/42
12. Main Entities
Client
Parcel
Survey
Assignment
Voyage
Parcel
Client
Survey
Assignment
Client
Survey
Assignment Parcel
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 12/42
12/42
13. Workflow Analysis
Resulted in several detailed overviews
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 13/42
13/42
14. New/Update
assignment
Agent Surveyor Courier
Client
search and
call clients call call
send
BL
incoming incoming phone
(Pura) list incoming
fax call
e-mail e-mail
(history)
Yes
Contains
hints about
assignment?
Contains
No
assignment?
Yes
No
Check
with “Viezeboek” Exists Got new
if it already information
exists
Yes update information
Update
Viezeboek
PC when
New canceled
Yes
Is assignment
cancelled
no
Update
Add to Krant
Add to
Viezeboek Create
Krant
hardcopy Physical Yes
Folder from Assignment
experience idle
Yes
from client
Is Agent known?
Print assignment No
Call Update
No Terminal Agent found? Krant
Yes
Terminal
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 14/42
14/42
15. New/Update
assignment
Client Agent Surveyor Courier
search and
call clients call call send
BL
incoming incoming phone
(Pura) list incoming call
fax
e-mail e-mail
(history)
Yes
Contains
hints about
assignment?
Contains
No
assignment?
Assignments are not always
Yes
introduced by the client
themselves
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 15/42
15/42
16. Requirements
One System
Manage all their data
Usable
Provide easy access to all their data
Support their workflow
Support their communication
Adaptable
Allow for iterative development
Allow support of changing requirements
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 16/42
16/42
17. Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 17/42
17/42
18. Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 18/42
18/42
19. Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 19/42
19/42
21. Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 21/42
21/42
22. Development Tools
Improve maintainability of implementation
Support iterative development
Reduce development time
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 22/42
22/42
23. Model-View-Controller
pattern
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 23/42
23/42
24. Exploit Patterns
Define entities with their relations:
In the database
In the development environment
⁎ In the user interface
Techniques that support this:
Object Relational Mapping
⁎ Administration Generation
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 24/42
24/42
25. Object Relational Mapping
Maps interface of database to
OO-environment
No more need to maintain both database
and model-layer
Supports basic CRUD procedures
Generated Model-code is extendible
Improves security
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 25/42
25/42
26. Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 26/42
26/42
27. Data Model
One
⧫ City to M ⧫ Parcel
any
Name Subject
Man
y to ⧫ Country ⧫ Product
One
Name Weight
Abbreviation ...
Report
⧫ Assignment
Subject
⧫ Client
...
⧫ Voyage
⧫ Vessel
⧫ ETA
...
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 27/42
27/42
28. Defining
# countries
country:
id:
name:
type: varchar
size: 150
required: true
abbreviation:
type: varchar(4)
required: false
# cities country_id:
city: type: integer
id: required: true
country_id: index: true
name: foreignTable: country
type: varchar(150) foreignReference: id
required: true onDelete: RESTRICT
onUpdate: CASCADE
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 28/42
28/42
29. Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 29/42
29/42
30. Administration Generation
Create user interface based on
the data model and a configuration
Generated code can be customised and
extended
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 30/42
30/42
31. Modified
Available generator modified to:
Improve configurability
Allow to define foreign values
Enhance interactivity
Return dynamic JavaScript Objects instead of
static HTML
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 31/42
31/42
32. Open Source
Released as an open source plugin
community did:
testing
provided feedback
improved code
extended functionality
motivated
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 32/42
32/42
34. Defining
generator:
class: sfExtjsPropelAdminGenerator
param:
model_class: City
theme: extjs
fields:
country_id/name:
name: Country
list:
display: [=name, country_id/name]
edit:
newtitle: quot;New cityquot;
title: quot;Edit city <b>%%name%%</b>quot;
display: [name, country_id/name]
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 34/42
34/42
35. Demo
How do these views for cities look?
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 35/42
35/42
36. Reduced Complexity
Generator Generated Code
# files LOC WC # files LOC WC Ratio LOC Ratio WC
City Module 1 18 27 44 2757 6589 153,17 244,04
Voyage Module 4 151 310 49 3449 8267 22,84 26,67
Maintaining code with the generator is
easier
This has already proven itself during
development
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 36/42
36/42
37. Demo
Lets see how this all supports
T.E. Johnston
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 37/42
37/42
38. Testing
Before implementation:
Mockups
During implementation:
Live demoing alternatives
“After” implementation:
In field scenario testing
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 38/42
38/42
39. Results
Concept of voyages got approved
Replaced grouped grid by plain table-
overview
Moved invoices from parcels to
assignments
Opening assignments by double clicking
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 39/42
39/42
40. Conclusions
Simplifying the development process is
possible
Adaptability has already proven itself
Usability looks promising, but has to proof
itself after real use
Plugin already used at several companies
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 40/42
40/42
41. Conclusions
Simplifying the development process is
possible
Adaptability has already proven itself
Usability looks promising, but has to proof
itself after real use
Plugin already used at several companies
TEJ has confidence in final application and
wants to continue development
Leon van der Ree - Usable and Adaptable Business Software 08/10/2008 41/42
41/42