PAID Platform for Active Information Dissemination Client - - PowerPoint PPT Presentation

paid
SMART_READER_LITE
LIVE PREVIEW

PAID Platform for Active Information Dissemination Client - - PowerPoint PPT Presentation

PAID Platform for Active Information Dissemination Client Acceptance Test 10 December 1998 15-413 Software Engineering, Fall 1998 1 Agenda Purpose of Meeting To present and demonstrate the PAID system. Desired Outcome of Meeting


slide-1
SLIDE 1

15-413 Software Engineering, Fall 1998 10 December 1998 1

PAID

Client Acceptance Test

Platform for Active Information Dissemination

slide-2
SLIDE 2

15-413 Software Engineering, Fall 1998 10 December 1998 2

Agenda

  • Purpose of Meeting

– To present and demonstrate the PAID system.

  • Desired Outcome of Meeting

– Successful demonstration of test scenarios. – Client acceptance of the PAID project. – Minutes and VCR tape of the demonstration.

slide-3
SLIDE 3

15-413 Software Engineering, Fall 1998 10 December 1998 3

Presentation Outline

  • Introduction - David Garmire (5 min)
  • Project Overview - Andy Zimdars (15 min)
  • Network and Authentication (10 min)

– Presented by Anthony Watkins

  • Learning and Database (10 min)

– Presented by Rudy Setiawan

  • User Interface (15 min)

– Presented by Jonathan Hsieh – Visionary Scenario

slide-4
SLIDE 4

15-413 Software Engineering, Fall 1998 10 December 1998 4

Demonstration Outline

  • Demo Scenario III (5 min)

– James Lampe, Brian Woo, Jonathan Hsieh

  • Demo Scenario I (10 min)

– Pooja Saksena, Michael Smith, Kent Ma, Stephane Zermatten, Georgios Markakis, and Reynald Ong

  • Demo Scenario II (10 min)

– Will Ross, Rudy Setiawan, Andy Zimdars, Arnaldo Piccinelli, and Michael Smith

  • Wrap Up - Andy Zimdars (5 min)
  • Questions and Answers
slide-5
SLIDE 5

15-413 Software Engineering, Fall 1998 10 December 1998 5

System Architecture

Presenter: Architecture Team:

Andrew Zimdars Luis Alonso Kent Ma Georgios Markakis Michael Smith Anthony Watkins

slide-6
SLIDE 6

15-413 Software Engineering, Fall 1998 10 December 1998 6

Outline

  • Deliverables
  • Architecture Review
  • Scenarios Supported
  • Deferred Work
  • Future Directions
slide-7
SLIDE 7

15-413 Software Engineering, Fall 1998 10 December 1998 7

Deliverables

  • Requirements Analysis Document
  • Software Project Management Plan
  • System Design Document
  • Object Design Document
slide-8
SLIDE 8

15-413 Software Engineering, Fall 1998 10 December 1998 8

Architecture Review

  • Business Goals
  • Design Goals
  • Topology
  • System Decomposition
  • Conceptual Object Model
  • System Architecture
  • Deployment
slide-9
SLIDE 9

15-413 Software Engineering, Fall 1998 10 December 1998 9

Business Goals

  • Integration with StarNetwork

applications

  • Easy development of new applications
  • Low entry and administrative cost
  • Fast response time
  • Up-to-date information
  • Security
slide-10
SLIDE 10

15-413 Software Engineering, Fall 1998 10 December 1998 10

Review: Design Goals

  • Extensibility
  • Scalability
  • Location Transparency
  • Actuality
  • Reliability
  • Adaptability
slide-11
SLIDE 11

15-413 Software Engineering, Fall 1998 10 December 1998 11

PAID Topology

User Interface Network Database Event Service Authentication Learning

Software Bus

slide-12
SLIDE 12

15-413 Software Engineering, Fall 1998 10 December 1998 12

PAID Conceptual Object Model

User Interface Database All Other Subsystems * *

slide-13
SLIDE 13

15-413 Software Engineering, Fall 1998 10 December 1998 13

PAID System Architecture

IOU IOU COMET Server

COMET Server

IOU IOU COMET Server

COMET Server

Dealer Server

Dealer Server

IOU IOU Dealer Server

Dealer Server

IOU IOU

Client Client

STAR Network

IOU

Dealer Server COMET Server Client

IOU

slide-14
SLIDE 14

15-413 Software Engineering, Fall 1998 10 December 1998 14

PAID System Deployment

STAR Network

IOU

Dealer Server COMET Server Client

IOU

COMET Server Network Learning Database Event Service

JDBC

slide-15
SLIDE 15

15-413 Software Engineering, Fall 1998 10 December 1998 15

PAID System Deployment

STAR Network

IOU

Dealer Server COMET Server Client

IOU

Dealer’s Server Authentication Network Database

JDBC

Event Service

slide-16
SLIDE 16

15-413 Software Engineering, Fall 1998 10 December 1998 16

PAID System Deployment

STAR Network

IOU

Dealer Server COMET Server Client

IOU

Dealer’s Client Database Authentication UI

slide-17
SLIDE 17

15-413 Software Engineering, Fall 1998 10 December 1998 17

PAID System Deployment

Dealer’s Client Database Authentication UI

RMI

STAR Network COMET Server Network Learning Database Event Service

JDBC

Dealer’s Server Authentication Network Database

JDBC

Event Service

IOU

slide-18
SLIDE 18

15-413 Software Engineering, Fall 1998 10 December 1998 18

Scenarios Supported

  • Three demonstrations
  • Each demo presented will incorporate

aspects of several problem statement scenarios

slide-19
SLIDE 19

15-413 Software Engineering, Fall 1998 10 December 1998 19

Demo I

  • Problem Statement Scenario 2

– No service due to poor network performance

  • Problem Statement Scenario 3

– Dealer’s workshop at 8AM – Deferring scheduled downloads due to high traffic

  • Problem Statement Scenario 8

– Security by smart-card authentication

slide-20
SLIDE 20

15-413 Software Engineering, Fall 1998 10 December 1998 20

Demo II

  • Problem Statement Scenario 4

– Introduction of the M-Class in Germany – System performance improves in response to download patterns

  • Problem Statement Scenario 5

– Minimizing connection costs – Download recommendations change according to dealer connection

slide-21
SLIDE 21

15-413 Software Engineering, Fall 1998 10 December 1998 21

Demo III

  • Problem Statement Scenario 6

– Projected use of handheld device in mobile garage application – Use of handheld device with PAID to improve service

slide-22
SLIDE 22

15-413 Software Engineering, Fall 1998 10 December 1998 22

Major Design Challenges

  • Lack of sample data
  • Design for Java performance and

security

  • Routing by data location
  • Maintaining a sufficiently thin client

architecture

  • Learning subsystem topology
slide-23
SLIDE 23

15-413 Software Engineering, Fall 1998 10 December 1998 23

Deferred Work

  • Problem Statement Scenario 1

– Adding a dealer – Administrative interface limited

  • Problem Statement Scenario 7

– User billing – User-level information available, but not yet tracked

  • Non-affiliated Dealers

– Implementation for non-affiliated dealer exists – Custom proxy software not implemented; off- the-shelf solutions available

slide-24
SLIDE 24

15-413 Software Engineering, Fall 1998 10 December 1998 24

Authentication and Network Subsystems Overview

Presenter: Anthony Watkins Authentication Team: Network Team: Luis Alonso Barrett Trask Pooja Saksena Adam Phelps David Garmire Will Ross Qiang Rao Orly Canlas Arnaldo Piccinelli Anthony Watkins

slide-25
SLIDE 25

15-413 Software Engineering, Fall 1998 10 December 1998 25

Mission: Authentication

Provide a secure, smart-card based access to the PAID system for different types of users.

slide-26
SLIDE 26

15-413 Software Engineering, Fall 1998 10 December 1998 26

Functions Supported: Authentication

  • Encrypt/Decrypt using RSA
  • Employ Java-card as user identification tool
  • Identify all users and their corresponding access rights
  • Establish a secure connection over the network to the

comet server

  • Ensure secure data transmission over the network
  • Implement application-level security to all relevant

parts of the PAID system

slide-27
SLIDE 27

15-413 Software Engineering, Fall 1998 10 December 1998 27

Design: Authentication

User object Session object 1 1 contains Group object * 1

belongs to

slide-28
SLIDE 28

15-413 Software Engineering, Fall 1998 10 December 1998 28

Design Rationale: Authentication

  • Implement application-level security
  • Employ RSA as method of encryption/decryption
  • Proxy not implemented, but recommended
  • It is one of the strongest and most trusted encryption

algorithms in use today

  • It is relatively easy to implement
  • Can be used to block unauthorized users from

Daimler-Benz intranet

  • Is not implemented due to complexity and time

constraints

  • Secures access to all relevant parts of the PAID

system

  • Provides less overhead on database servers (as
  • pposed to database level access control)
  • Illustrates proof of concept for unaffiliated dealer
slide-29
SLIDE 29

15-413 Software Engineering, Fall 1998 10 December 1998 29

Implementation Status: Authentication

  • Interaction with network subsystem near complete

(encrypt/decrypt implemented, but not fully functional)

  • Java-card is functional
  • Interaction with user interface system complete
  • Interaction with database subsystem complete
slide-30
SLIDE 30

15-413 Software Engineering, Fall 1998 10 December 1998 30

Mission: Network

To provide an efficient, adaptive, selective, multicasting transport mechanism that deals with all kinds

  • f information within the PAID system.
slide-31
SLIDE 31

15-413 Software Engineering, Fall 1998 10 December 1998 31

Functions Supported: Network

  • Notification of network down
  • Request of remote data
  • Initiating connection with server
  • Killing the download
  • Report status of download
slide-32
SLIDE 32

15-413 Software Engineering, Fall 1998 10 December 1998 32

Design - Deployment Diagram: Network

<<processor>> dealer server <<processor>> comet server

<<network>> network subsystem

<<processor>> dealer server <<processor>> dealer server

RemoteQuery() KillDownload() MulticastMessage()

slide-33
SLIDE 33

15-413 Software Engineering, Fall 1998 10 December 1998 33

Design Rationale: Network

  • Use Voyager for RMI between the dealer server and

comet server

  • Encrypt/decrypt messages using a method provided

by the authentication subsystem

  • Break data sent over the network into packets
slide-34
SLIDE 34

15-413 Software Engineering, Fall 1998 10 December 1998 34

Implementation Status: Network

  • All functions in the Network API (NAPI) are fully

implemented and functional

  • Integration with database subsystem complete
  • Integration with authentication is complete
  • Code complete and ready for integration with UI

subsystem

slide-35
SLIDE 35

15-413 Software Engineering, Fall 1998 10 December 1998 35

Database, Learning, & Event Service Overview

Presenter: Rudy Setiawan Database Team: Georgios Markakis Richard Markwart Timothy Shirley Ivan Tumanov Learning & Event Service Team: Jonathan Hsieh James Lampe Yun Ching Lee Wing Ling Leung Rudy Setiawan Jonathan Wildstrom Andrew Zimdars

slide-36
SLIDE 36

15-413 Software Engineering, Fall 1998 10 December 1998 36

Database: Objective

  • Provide persistent storage and data

management

slide-37
SLIDE 37

15-413 Software Engineering, Fall 1998 10 December 1998 37

Database: Functionality

  • Access to after-sales database and

persistent storage

  • Replication of the database to client

systems

  • Management of subsets and integrity
  • f data
slide-38
SLIDE 38

15-413 Software Engineering, Fall 1998 10 December 1998 38

Database: Subsystem Design

  • Data Organization:

– Data divided into subsets – Each COMET and dealer server will store one or more subsets locally – Updates to a given subset are only sent to those servers which store that subset

STAR Data Comet 0 Comet X Dealer Server IOU

. . .

IOU IOU

slide-39
SLIDE 39

15-413 Software Engineering, Fall 1998 10 December 1998 39

Database: Subsystem Design (cont.)

  • Generic Data Storage:

– Persistent storage for other subsystems – Platform and implementation independent

slide-40
SLIDE 40

15-413 Software Engineering, Fall 1998 10 December 1998 40

Database: Design Rationale

  • JDBC used to provide data

abstraction to Java modules

  • Interbase as DBMS of choice for PAID

prototype

– native JDBC support – ease of use – robust

slide-41
SLIDE 41

15-413 Software Engineering, Fall 1998 10 December 1998 41

Database: Implementation Status

  • Integration with Authentication is

complete

  • Integration with Network is complete
  • Integration with UI and Learning is

partially complete

slide-42
SLIDE 42

15-413 Software Engineering, Fall 1998 10 December 1998 42

Learning: Objective

  • Optimize system performance through

learning about network and database usage

slide-43
SLIDE 43

15-413 Software Engineering, Fall 1998 10 December 1998 43

Learning: Functionality

  • Log information on network &

database activities

  • Develop learning models for

performance improvements

  • Recommend actions to other

subsystems for improving performance

slide-44
SLIDE 44

15-413 Software Engineering, Fall 1998 10 December 1998 44

Learning: Subsystem Design

Recommender Logger Data Miner Scheduler Learning Controller

asks for recommendation logs recommendation result starts gets Model from gets log from develops Model using
slide-45
SLIDE 45

15-413 Software Engineering, Fall 1998 10 December 1998 45

Learning: Object Diagram

Data Miner Algorithm ID3 Algorithm Naïve Bayes Algorithm Constant Algorithm Model ID3 Model Naïve Bayes Model Constant Model

1 * <<interface>> <<interface>>
slide-46
SLIDE 46

15-413 Software Engineering, Fall 1998 10 December 1998 46

Learning: Design Rationale

  • Dynamic learning algorithm selection

– extensible – faster implementation

  • One behavior model per learning task

– adequate for representing current learning tasks – simpler storage

slide-47
SLIDE 47

15-413 Software Engineering, Fall 1998 10 December 1998 47

Learning: Design Rationale (cont.)

  • Server-side learning

– capture more information – do not have to worry about replication

slide-48
SLIDE 48

15-413 Software Engineering, Fall 1998 10 December 1998 48

Learning: Implementation Status

  • Subsystem implementation is

complete

  • Testing has been done using data set

from public repository, not with data from STAR network

  • Integration with Database is partially

complete

slide-49
SLIDE 49

15-413 Software Engineering, Fall 1998 10 December 1998 49

Event Service

  • Provide notification mechanism for

asynchronous information

  • Uses Voyager’s Event mechanism
slide-50
SLIDE 50

15-413 Software Engineering, Fall 1998 10 December 1998 50

User Interface (UI)

Presenter: Jonathan Hsieh User Interface Team: Reynald Ong

Euijung Ra Brian Woo Stephane Zermatten

slide-51
SLIDE 51

15-413 Software Engineering, Fall 1998 10 December 1998 52

UI Team Mission

  • To assure the product is usable by the

end user.

– Displaying data simply and aesthetically – Handling data requests and processing – Supporting Multi-language/culture – Enabling disconnected and connected modes – Setting preferences

slide-52
SLIDE 52

15-413 Software Engineering, Fall 1998 10 December 1998 53

Design Considerations -- for whom?

  • For a wide range of people

– mechanics, administrators, sales personnel – novice and expert users – different languages and cultures

  • For varying environmental conditions

– garage – office – roadside mobile garage

slide-53
SLIDE 53

15-413 Software Engineering, Fall 1998 10 December 1998 54

  • For future applications

– acts as a style guide

  • For running on different platforms

– desktop PC – laptop PC – mobile and handheld devices

Design Considerations -- for what?

slide-54
SLIDE 54

15-413 Software Engineering, Fall 1998 10 December 1998 55

  • UI object follows the singleton pattern
  • Login and Logout
  • Part search
  • Customer search
  • Update status
  • Set preferences
  • Show Error

Subsystem Interface Design

slide-55
SLIDE 55

15-413 Software Engineering, Fall 1998 10 December 1998 56

Rationale: Look and Feel

  • Which look and feel to support?

– Resolution: Inherit platform’s look and feel.

  • faster development time
  • avoid confusing widgets
slide-56
SLIDE 56

15-413 Software Engineering, Fall 1998 10 December 1998 57

User Preferences

Linux screen shot Microsoft Windows screen shot

slide-57
SLIDE 57

15-413 Software Engineering, Fall 1998 10 December 1998 58

Rationale: Multilingual support

  • Which Languages to demonstrate?

– Resolution: English and Chinese

– development team has knowledge in both – demonstrates radically different languages.

slide-58
SLIDE 58

15-413 Software Engineering, Fall 1998 10 December 1998 59

  • Automatic versus Manual Updates?

– Resolution: 3 modes configured by user.

  • Automatic updates
  • Manual updates
  • Recommended updates

Rationale: Update implementation

slide-59
SLIDE 59

15-413 Software Engineering, Fall 1998 10 December 1998 60

Implementation status

  • Java Swing 1.1 based GUI
  • Full English and partial-Chinese

implementations

  • Fully Integrated with Authentication
  • Database integration in progress
  • Network integration in progress
slide-60
SLIDE 60

15-413 Software Engineering, Fall 1998 10 December 1998 61

Demo 3: Mobile Garage

Visionary Scenario

slide-61
SLIDE 61

15-413 Software Engineering, Fall 1998 10 December 1998 62

The Vision

  • Servicing the customer: Providing

vehicle repair at any time and at any place.

– Access to data/people – Ability to deal with a wide range of repair problems without having to return to a dealership

slide-62
SLIDE 62

Architecture

Mobile Unit Database Authentication UI

RMI

STAR Network Dealer’s Server Authentication Network Database

JDBC

PAID Server Network Learning Database Event Service

JDBC

Event Service

IOU

Customer (cellular connection and smartcard ) Roadside Assistance Dispatcher

slide-63
SLIDE 63

Mechanic greets Mr. Smith

slide-64
SLIDE 64
  • Mr. Smith points out the problem
slide-65
SLIDE 65

Mechanic checks out the car

slide-66
SLIDE 66

Mechanic connects for additional information

slide-67
SLIDE 67

Mechanic looks at wiring schematic

slide-68
SLIDE 68

Mechanic takes picture and connects with an expert technician

slide-69
SLIDE 69

Mechanic works with technical service representative

slide-70
SLIDE 70

Mechanic shows the customer what repair has been made

slide-71
SLIDE 71

Mechanic updates Mr. Smith’s smartcard

slide-72
SLIDE 72

15-413 Software Engineering, Fall 1998 10 December 1998 74

Requirements

  • The mobile garage

– Handheld/mobile computer – Digital camera – Headset for communication

  • Access to information

– Client information – Repair procedures – Expertise

slide-73
SLIDE 73

15-413 Software Engineering, Fall 1998 10 December 1998 75

Feasibility

  • Technology is available.
  • Usability issues.
slide-74
SLIDE 74

15-413 Software Engineering, Fall 1998 10 December 1998 76

Future Directions

  • CORBA-compliant software bus

– More robust system with fuller feature set required

  • Intelligent software routing

– Balance load across COMET servers without requiring full replication

  • Knowledge discovery in learning

– Learning subsystem as now implemented is largely “reactive” – Stronger predictive apparatus to prepare for user needs

slide-75
SLIDE 75

15-413 Software Engineering, Fall 1998 10 December 1998 77

Future Directions

  • Alternative client platforms

– Continuing maturation of handheld and wireless systems

  • Testbed Development
  • Integration of StarNetwork with PAID

– Focus of TUM user interface team

slide-76
SLIDE 76

15-413 Software Engineering, Fall 1998 10 December 1998 78

Transfer of Materials

  • Electronic copies of PAID deliverables

are available from the course web site

– Requirements Analysis Document – Software Project Management Plan – System Design Document – Object Design Documents (presentation)

  • CVS Root:

/ afs/ cs/ academic/ class/ 15413/ r epositor ies/ official/

slide-77
SLIDE 77

15-413 Software Engineering, Fall 1998 10 December 1998 79

Conclusion

  • Captures most objectives indicated by

problem statement

  • Provides extensible framework for

future iterations

– Continued work to address problem statement – Incorporation of newer or more robust technology

slide-78
SLIDE 78

15-413 Software Engineering, Fall 1998 10 December 1998 80

Conclusion

  • Client: Thanks for your informative

comments

  • Management: Thanks for maintaining

perspective even when we couldn’t

  • Students: We kick ass!
slide-79
SLIDE 79

15-413 Software Engineering, Fall 1998 10 December 1998 81

Questions