What is the purpose of a prototype?
"...you often don't really understand the problem until after
the first time you implement a solution. The second time, maybe you
know enough to do it right."
Eric Raymond, The Cathedral and the Bazaar
Overview: Project Model and Timeline
|
Time
|
Action
|
|
Week 1
|
Plan of architecture and investigation of technologies
|
|
Week 2
|
Obtaining and configuring application server and WAP gateway
|
|
Week 3
|
Coding EJBs, deploying and constructing servlet portion of
prototype
|
|
Week 4
|
Coding example WML pages and connecting with Nokia 7110s
|
|
Week 5
|
Using LDAP for user authentication, and assembling the
application
|
|
Week 6
|
Interface rethink and presentational issues
|
|
Week 7
|
Redesign of content delivery to use XML started; session
management and request leasing considered
|
|
Week 8
|
Security issues addressed and development of further prototypes
started
|
The Types of Tool Considered
There were many tools that we needed to select for our
task - and of course, many different choices for each tool.
The required tools were:
Ø A web server
Ø An application server
Ø A WAP gateway
Ø The fundamental distributed
architecture:
i. CORBA
ii. COM
iii. EJB
Ø The programming tool
Ø Other tools:
i. Database
ii. Directory server
iii. WAP phone
The Products Chosen
When we had considered all the options, the final choices we
made were:
Software Development Tools
Ø Nokia WAP server 1.0
Ø Nokia WAP toolkit 1.3
beta.
Ø Weblogic 4.51 application
server and provided web server
Ø Netscape Directory Server
4.1 (LDAP)
Ø Microsoft SQL Server
7.0
Ø Sun Java Development Kit
1.2.2; JNDI 1.2; JSDK 2.1; J2SDKEE 1.2
Reasons for Product Choices
We made our product choices under a number of differing demands
and influences:
Ø We needed to adopt tools
that were available in the marketplace at the time the project
commenced
Ø We needed to conform to the
security requirements that represented an acceptable level of risk
to the bank
Ø We preferred tools that
were familiar to the assembled development team in order to
facilitate rapid adoption and immediate productivity
Ø We needed to integrate with
the bank's existing technological infrastructure
Choice of Mobile Device
The Nokia 7110 - one of the first WAP-enabled phones
available to the UK mass market - was chosen as the initial
device for deployment of our pilot application.
Server Setup
For the purpose of developing the prototype, we decided to
install the web server, Java application server, database,
directory server and WAP gateway on a single machine.
The server machine specification was NT Server 4.0, service pack
5, running on a Pentium III 500MHz with 256Mb RAM. The server was
initially specified to handle at most five concurrent users for the
first phase of the prototype.
Nokia WAP Gateway Server
We chose the Nokia WAP gateway, since it was clear it would work
with the Nokia 7110 handsets, the WAP device chosen for the pilot
phase rollout. Another critical reason for the choice of Nokia was
that at the time the project started, it was one of the few WAP
gateways commercially available that could be securely installed
within an intranet environment - unlike the Phone.com
offering, for example.
No problems were experienced with installing and configuring the
gateway, which has proven to be robust. The gateway server is
responsible for encoding and compressing the WML that is sent to
the mobile device.
See http://www.nokia.com for information on downloading the
server and toolkit.
Nokia Toolkit
The Nokia toolkit provides emulation of the Nokia 7110. Although
there is no debugger for WML syntax errors (and very little help
from the error messages), the simulator for the 7110 does provide a
realistic and accurate environment.