neighborhood search via wap - tuhh neighborhood search via wap a project by vanda lehel kathrin...

12
1 Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler In cooperation with the Mikroelektronik Anwendungszentrum Hamburg GmbH (MAZ) The neighborhood search project The situation: A person wants to know where e.g. the nearest busstop, railway station or restaurant is. The solution: The person dials a service number and sends his/her request to the WML-Server. The WML-Server processes the inquiry by searching a database and returns the wanted information. Prerequisites: X-,Y-coordinates of the person inquiring are known to the server.

Upload: ngotuyen

Post on 20-Apr-2018

226 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

1

Neighborhood search via WAP

A project by Vanda Lehel Kathrin Lehmann

Francesco Morelli Youssef Tikerouine

Project care by Holm Wegner Helmut Adler

In cooperation with theMikroelektronik Anwendungszentrum Hamburg GmbH

(MAZ)

The neighborhood searchproject

• The situation: A person wants to know where e.g. the nearest busstop, railway station

or restaurant is.

• The solution: The person dials a service number and sends his/her request to the

WML-Server. The WML-Server processes the inquiry by searching a database and

returns the wanted information.

• Prerequisites: X-,Y-coordinates of the person inquiring are known to the server.

Page 2: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

2

Architectural Considerations

• Parallel processing• Multiuser capability• Distributed computing• Very thin client• 4-tier Architecture

Client-Server 4-tier Architecture

User Interface

Presentation

Application

Client

Server

Data BasesDB

Page 3: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

3

WAP Client

WAPProxy

CustomerDB

(EmulatedMobile Phone)

WMLClient

Web Server

NSService

(Servlet)

GeoDB

(Relational DB)

NS

Engine

Deployment Diagram

HTTPWAP

NS

Coordinate

Location Server

JDBC

Technological Considerations

• JDK 1.2, Java Servlet Extension (javax)• Web Server: IIS with JRun• Relational Database (Oracle 8)• JDBC• Ericsson Development Toolkit (WAP-WML)

Page 4: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

4

WAP Client

WAPProxy

CustomerDB

(EmulatedMobile Phone)

WMLClient

Web Server

NSService

(Servlet)

GeoDB

(Relational DB)

NS

Engine

Deployment Diagram (A)

HTTPWAP

NS

Coordinate

Location Server

JDBC

State Machine

goBack( ) select( )

goBack( ) select( )

CoordinatesOptions Menu list

Result list

Service Info

Active

Exit / after 30 min inactivity

Select „Restaurant“( )/ When „Restaurant“not already selected

Start( )

Page 5: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

5

Example of a WML document

Source: WapIDE Service Development Kit @1998 Ericsson Wireless Internet

Mobile Phone Display

21 3

54 6

Page 6: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

6

Mobile Phone Display (2)

87

9 10

WAP Client

WAPProxy

CustomerDB

(EmulatedMobile Phone)

WMLClient

Web Server

NSService

(Servlet)

GeoDB

(Relational DB)

NS

Engine

Deployment Diagram (B)

HTTPWAP

NS

Coordinate

Location Server

JDBC

Page 7: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

7

Package DiagramPackage Diagramjavax.servlet.http

GenericServlet<<abstract>>

ServletRequest<<interface>>

ServletResponse<<interface>>

HttpServlet<<abstract>>

HttpServletRequest<<interface>>

HttpServletResponse<<interface>>

javax.servlet

HttpSession<<interface>>

Class diagram of NSServiceHttpServlet

+doGet(request : HttpServletRequest, response : HttpServletResponse)+service(request : HttpServletRequest, response : HttpServletResponse)

HttpServletResponse

<<abstract>> +setContentType(type : String)<<abstract>> +setContentLength(len : int)<<abstract>> +getWriter() : PrintWriter

<<Interface>>HttpServletRequest

<<abstract>> +getSession(create : boolean) : HttpSess ion

<<Interface>>

Multiplicity 1

NSCoordinate

phoneCoordinate() : Coordinate

NSEngine

+searchService(loc : Coordinate, typeID : short) : NSSProviderList+searchMenu() : NSSTypeList

HttpSession

+getID() : String+getCreationTime() : long+getValue(name : String) : Object+putValue(name : String, value : Object)

<<Interface>>

PrintWriter

+println(s : String)

Response

11 11NSServlet

+getProvider(typeID : short) : NSSProviderList+getMenu() : NSSTypeList

*1

*1

NSSession Request*

1*

1

1 *1 *

Page 8: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

8

WAP Client

WAPProxy

CustomerDB

(EmulatedMobile Phone)

WMLClient

Web Server

NSService

(Servlet)

GeoDB

(Relational DB)

NS

Engine

Deployment Diagram (C)

HTTPWAP

NS

Coordinate

Location Server

JDBC

Class diagram of NSEngine

Multiplicity1..15

Coordinate-x : double-y : double

+convert(z1 : double, z2 : double) : Coordinate+getXCoordinate() : double+getYCoordinate() : double

Address-street : String-zipcode : int-state : String-country : String

+getStreet() : String+getZipcode() : int+getState() : String+getCountry() : String

NSSProvider-name : String-phoneNumber : String-openingHours : String

+getName() : String+getPhoneNumber() : String+getOpeningHours() : String

1

1

1

1 1

*

1

*

NSSType-description : String-serviceTypeID : short

+getDescription() : St ring+getServiceTypeID() : short+add(t : Type)+remove(t : Type)

1..*1

1..*1

SuperType

+add(t : Type)+remove(t : Type)

Type

<<abstract>> +add(t:Type)<<abstract>> +remove(t:Type)

0..1

*

0..1

*

NSSTypeList

+getSize() : int+getType(i : int) : NSSType 0..1 *0..1 *

NSEngine

+searchService(loc : Coordinate, typeID : short) : NSSProviderList+searchMenu() : NSSTypeList

1 *

NSSProviderList-size : int

+getSize() : int+getProvider(i : int) : NSSProvider+destroy()

0..1

*

0..1

*

1*

*1

*1

Thread

Page 9: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

9

: NSServletclient : MobilePhoneUser

: ServletEngine

Http request

: NSEngine

getMenu()

L=searchMenu()

Interaction diagram (1)

service(req,res)

L

Http response

: NSServletclient : MobilePhoneUser

: ServletEngine

Http request

: NSCoordinate : NSEngine

getProvider(typeID)

loc=phoneCoordinate( )

L =searchService(loc,typeID)

Interaction diagram (2)

service(req,res)

loc

L

Http response

Page 10: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

10

WAP Client

WAPProxy

CustomerDB

(EmulatedMobile Phone)

WMLClient

Web Server

NSService

(Servlet)

GeoDB

(Relational DB)

NS

Engine

Deployment Diagram (D)

HTTPWAP

NS

Coordinate

Location Server

JDBC

The GeoDB ER Diagram

ServiceProvider

Place

AddressName

ZIPCode

EmailAdress

ServiceProvider-ID

ServiceTypeDescription

ServiceType-Nr

ServiceType

SuperService

n1n 1

Phone-Nr

Fax-Nr

OpeningTime

XCoordinate

YCoordinate

ClosureDay

possesses

Page 11: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

11

The GeoDB Tables Diagram

Category NumberClassificatio Weight Sum rowInput information 1 simple 3 3Inquiries 1 simple 3 3

1 complex 6 6Output 1 simple 4 4

2 medium 5 101 complex 7 7

Database 1 simple 7 7Reference data 1 simple 5 5Sum of E1 45influence coeff.

1 Transaction rate (0-5) 42 processing logica arithm. operations (0-10) 2b method f. control/ check(0-5) 1c Exception handling (0-10) 53 Reusability (0-5) 34 Adaptability (0-5) 5

Sum 7 influencesE2 20E3 = E2 / 100 +0,7evaluated Fct.- 0,90Points: E1*E3 40,00

Function Point Method

Page 12: Neighborhood search via WAP - TUHH Neighborhood search via WAP A project by Vanda Lehel Kathrin Lehmann Francesco Morelli Youssef Tikerouine Project care by Holm Wegner Helmut Adler

12

Function Point Method

• 40 Fct. Points correspond to about 2 MM which is approx.44 working days.

• Working assumption:- we will work 2 days a week- being 4 people this makes 8 days a week- having 5 weeks for the implementation, we will finish in

40 work days.• Conclusion:

- we will finish in time, if everybody works 2,2 days a week.

Project Plan• Fr. 12/03 - Th. 12/09 -testing Interface WAPClient/ NSS-

servlet / -filling database with test data• Fr. 12/10 - Th. 12/16 -preparing communication NSS-servlet /

NSEngine / -implementing Database connection / -writing NSCoordinate- Component

• Fr. 12/17 - Th. 01/06 -Implementation NSS-servlet / NSEngine

• Fr. 01/07 - Th. 01/14 -Implementation NSS-servlet / NSEngine

• Fr. 01/15 - Th. 01/22 -Implementation, testing• Fr. 01/23 - Th. 01/29 -Preparing presentation (slides, demo)