enterprise development for mars and other alien places€¦ · enterprise development for mars and...

Post on 01-Jun-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Enterprise Development for Marsand Other Alien PlacesBEA eWorld 2004 ConferenceMoscone Center, San FranciscoKeynote Address, May 26, 2004

Ronald MakUniversity Affiliated Research Center (UARC)University of California at Santa CruzNASA Ames Research Center

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 2

Presentation Agenda

Mission OverviewThe Collaborative Information PortalMiddleware Architecture

The Ten Martian Principlesof Enterprise Development

Conclusion

Mission Overview

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 4

Mars Exploration Rovers MissionTwin robot geologists search for past liquid water.

Launched: June 10 and July 7, 2003Landed: January 3 and 24, 2004Duration: 90+ days(extended mission could runthrough September 2004)

Mission Center:Jet Propulsion Laboratory Pasadena, CA

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 5

The mission has been a great success …

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 6

Key scientific discoveries

Scientists now believe that liquid waterdid indeed cover parts of the surface of Mars in the past.

More discoveries are being written up in prestigious scientific journals …

The Collaborative Information Portal

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 10

Daily ProcessDaily process for each rover team

Receive downlink of data from a roverProcess and analyze resultsPlan tomorrow’s activitiesConstruct rover command sequenceSend uplink of command sequence to rover

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 11

Mission Needs

Time management

Data management

Personnelmanagement

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 12

Schedule viewer

Event horizon

Broadcast messages

Clocks

Tool tabs

The Collaborative Information Portal (CIP)

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 13

ClocksTick-over at top-of-minute

UTC shown in Day of Year

Local time

Time at DSN location

Time atcollaborator’slocation

Mars timedisplayedin Sols

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 14

Schedule Viewer

Multiple time scales

Unified schedules

Schedule update indicator

“Now” bar

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 15

Data Product Navigator

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 16

New Files

Duration

Icons

Files

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 17

CIP is a Mission–Critical Application

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 18

CIP is used everywhere …

… inside mission control

… in the science labs

… in homes and offices

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 19

Three–Tiered Enterprise Architecture

ClientJava application (Swing)

Middleware ServerWeb services, Enterprise JavaBeans,Java Message Service

Data RepositoryDatabase (Oracle)File monitor (Java application)Data loader (Java application)

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 20

Architecture Overview

CIP Middleware

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 22

Middleware “bilities”

AccessibilityScalabilityExtensibilityReliabilityAdjustabilityAdaptabilityMaintainabilitySecurity–bility

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 23

But the bottom line for middleware is …

Make the client applications look good.

Remain invisible to the users.

“What server?”

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 24

CIP Middleware ServicesUser management

Metadata

Schedules

Mars and Earth time

File and directory

Message

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 25

Middleware Technologies

Enterprise JavaBeans (EJBs) to achieve reliability, scalabilty, security, platform independence, and standards.

Stateless session beansStateful session beansMessage–driven beans

Web services to expose the remote methods of the Service Provider EJBs to the client applications.

Java Message Service (JMS) for synchronous and asynchronous messaging.

BEA WebLogic application server.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 26

Middleware ArchitectureFIREWALL

FIREWALL

HTTPS

HTTPS

• Web Servicesexpose the remote methods of the Service Provider beans.

WebLogic Application Server

SOAPProcessor

Service ProviderRemote Stateless

Session EJBWeb

ServiceClient Stub

WebService

Client Stub

SOAPProcessor

Service ProviderRemote Stateless

Session EJB

WebService

Client StubHTTPS

• Stateless session beans are the Service Providers.

ApplicationJava

ApplicationJava

ApplicationC++

HTTPS

• HTTPS encrypts the transmissions and gets them through the firewall.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 27

FIREWALL

FIREWALL

Caching Data

HTTPS

Cache Registry

• Stateful session beans cache data in memory.

JDBC

JDBC

JDBC

DatabaseSOAP

Processor

DataLocal Stateful Session EJB

DataLocal Stateful Session EJB

DataLocal Stateful Session EJB

Service ProviderRemote Stateless

Session EJB

WebLogic Application Server

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 28

FIREWALL

FIREWALL

File MonitorApplication

Event Notification

“A new pancamimage filehas just been downloadedfrom Mars!”

• Publish-subscribe model with topics

JMS Server

WebLogic Application Server

SchedulesTopic

HTTPSSOAP

Processor

Service ProviderRemote Stateless

Session EJB

MessageConverter

JMSConsumer

User ProxyLocal Stateful Session EJB

MonitorTopicResources

Topic

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 29

FIREWALL

FIREWALL

Broadcast Message Service

• Message–driven bean (MDB) archives broadcast messages to persistent storage for later retrieval.

MessageArchive

JMS Server

WebLogic Application Server

JDBC

JDBC

SOAPProcessor

Service ProviderRemote Stateless

Session EJB

PublisherLocal Stateless

Session EJB

DelegateLocal Stateless

Session EJB

ArchivistMDB

MessageConverter

User ProxyLocal Stateful Session EJB

JMSConsumer

HTTPS

Broadcast MessagesTopic

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 30

Middleware Utility

Real-time monitoringof the middleware

Memory usageNumber of users

Cache performanceFile downloadsDatabase response time

Server response timeCurrent server uptime

Expose the invisible

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 31

Stress TestingSimulate users performing interactive operations

Can the server handle a heavy load?

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 32

Middleware Performance

Enterprise JavaBeans and WebLogicReliable: continuous server uptime of over 46 days

Scalable: handle heavy loads well

Good performance: average response time ~0.1 second

Flexible: plug–in, hot–redeployable services

Web servicesGood interface between clients and EJBsEasy for clients to connect and request servicesGood performance: ~100 MB per hour throughput

Language independent: Java and C++ client applications

The Ten Martian Principles of Enterprise Development

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 34

Martian Principle #1

The real challenge of enterprise developmentis not in the coding.

It’s in the integration.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 35

Martian Principle #2

A software architecture is only as goodas its implementation.

If there are multiple implementations,then the architecture is only as good asits worst implementation.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 36

Martian Principle #3

Software architecture is all about the 5 D’s:

DesignDevelopmentDebuggingDeploymentDmaintenance

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 37

Martian Principle #4

Adhere to industry standards.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 38

Martian Principle #5

Use commercial off–the–shelf toolswhenever possible.

Don’t reinvent the wheel.Purchase tech support contracts.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 39

Martian Principle #6

Keep your services independent of each other.

Be able to swap services in and outas needed.Use hot deployment.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 40

Martian Principle #7

Make each service dynamically configurable.

Use property files.Implement a read properties request.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 41

Martian Principle #8

Put in hooks for run–time, real–time monitoring.

Log everything!Expose the invisible.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 42

Martian Principle #9

Do lots of stress testing.

If you don’t find the limits of your application, your users will …… at the most inopportune moments.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 43

Martian Principle #10

Keep it simple!

Enterprise development is hard enoughas it is …… whether on Mars or on Earth.

Conclusion

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 45

Summary

The Collaborative Information Portalis a key component of theMars Exploration Rovers mission.

CIP is a successful integration of Java technologies, web services, and theBEA WebLogic application server.

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 46

CIP Development Team

Roy BrittenLouise ChanSanjay DesaiMatt D’OrtenzioGlen Elliott (JPL)Bob FilmanDennis HeherKim HubbardSandra JohanLeslie Keely

Carson LittleVish MagapuRonald MakQuit NguyenTarang PatelJohn SchreinerElias SindersonJoan WaltonBob Wing (JPL)

Keynote Address, May 26, 2004 BEA eWorld 2004 Conference 47

Contact information

rmak@mail.arc.nasa.govMonitored government mail server

ron@apropos-logic.com

rmak@ix.netcom.comPersonal e–mail addresseswww.apropos-logic.com

top related