Trends in Global Application Development

Information about Trends in Global Application Development

Published on June 15, 2007

Author: funnyside

Source: authorstream.com

Content

Trends in Global Application Development:  Trends in Global Application Development Alberto Pace - January 2002 [email protected] http://cern.ch/alberto.pace The web as an application platform:  The web as an application platform The web as the backbone of distributed applications The vertical integration of E-commerce has shown its limits: A single company cannot do it all Production, Marketing, catalogue, web portal, Sales, Distribution, After sales support, etc Going back to the real segmented world: Companies do only what they are good at. This requires improvements and automation in the business-to-business (B2B) technology. What we have already:  What we have already The 'old' web was targeted to humans, not computers. We have a world-wide file system, read/write (webdav) XML seems to be 'the' way to represents information Automation of b2b relations is done only with expensive, custom, non-reusable, developments SOAP addresses these issues Goes well beyond the b2b case, several technologies can be leveraged for CERN needs Ideas behind SOAP :  Ideas behind SOAP The web as the backbone of distributed applications SOAP is a set of well defined XML schemas used for remote procedure calls, and Object Oriented programming Allows Method invocation, property modifications, event triggering, callback notifications, etc. By using HTTP/XML, it is possible to reach any OS (not only Windows and Unix) and any device (not only computers) SOAP:  SOAP Simple Object Access Protocol Fully based on HTTP (or Secure HTTP) Remote Procedure call (RPC) model inspired by CORBA Internet Inter Object Protocol (IIOP) Supported by W3C and by all major names in the computing industry (Compaq, HP, IBM, Microsoft, SAP Sun, Oracle, and other companies) http://www.w3.org/2000/xp/ SOAP Example:  SOAP Example POST /path/foo.pl HTTP/1.1 Content-Type: text/xml Content-Length: nnnn andlt;soap:Envelopeandgt; andlt;soap:Bodyandgt; andlt;Addandgt; andlt;arg1andgt;24andlt;/arg1andgt; andlt;arg2andgt;53.2andlt;/arg2andgt; andlt;/Addandgt; andlt;/soap:Bodyandgt; andlt;/soap:Envelopeandgt; 200 OK Content-Type: text/xml Content-Length: nnnn andlt;soap:Envelopeandgt; andlt;soap:Bodyandgt; andlt;Responseandgt; andlt;sumandgt;77.2andlt;/sumandgt; andlt;/Responseandgt; andlt;/soap:Bodyandgt; andlt;/soap:Envelopeandgt; (simplified) SOAP terminology:  SOAP terminology WebMethod The URL used to invoke a function implemented in a WebService A WebService can expose an unlimited number of WebMethods WebService (or SOAP interface) An URL (accessible using HTTP) that exposes a set of callable methods that conform to the SOAP XML schema A device on the network (internet), can expose an unlimited number of WebServices WSDL (Web Service Definition Language) Contract An XML document that describes the WebService for programmatical use. Every Web Service should expose a WSDL contract that allow the automated interface discovery by SOAP clients. Demo of SOAP:  Demo of SOAP Normally you never use telnet to connect to a Web server, unless you really want to see how http is implemented Similarly, you never use a web browser to connect to a webservice, unless you really want to see the XML that implements SOAP Web Service Standard SOAP (XML / HTTP) Web Browser Slides for the DEMO no 1:  Slides for the DEMO no 1 Demo of SOAP:  Demo of SOAP SOAP is used only for inter-object communications One or more objects implement the user interface. The user interface is in this example, based on HTML Web Application Web Browser Standard HTTP Web Service Standard SOAP (XML / HTTP) DEMO No 2:  DEMO No 2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim ws As New pcap5.Service1() ws.SetMagnetCurrent(TextBox1.Text) End Sub User interface:  Web Service Web Service User interface SOAP represents ONLY how objects communicates between them There is STRICTLY no implications on the user interface. Any SOAP agent can have a user interface and it can be a native Windows or Unix application Web Service SOAP (XML / HTTP) Web Service Web Service Web Service Web Service Custom User Interface User Interface Demo of SOAP:  Demo of SOAP The usage of web services is completely hidden to the user that cannot be aware that he is using the web Web Service Standard SOAP (XML / HTTP) Windows Application Native Win32 User interface Demo No 3:  Demo No 3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim ws As New pcap5.Service1() ws.SetMagnetCurrent( textbox1.Text) End Sub Security of SOAP:  Security of SOAP When running on the internet every object of your distributed application is accessible by anyone Security can be implemented at the web service level, but typically is done at the web server (Apache, IIS) level (see next slides). In a distributed application using SOAP, security must be thought from the beginning. Don’t implement everything without security and then expect the 'network administrator' to fix the security for you. Especially if you are planning to use SSL. Security and authentication:  Security and authentication On the Web, security has been traditionally been implemented at the '(web) server level' Local accounts, local password, local authentication, local authorization. A different account for every service you access on the internet Kerberos has been one technology that did not reach the web immediately Typically limited by the necessity of a web server to be able to forward authentication credentials to a database server Certificates have been effective to identify Computers (servers) but not people … but things are changing … Passport.com and Kerberos:  Passport.com and Kerberos 'Endorse' Kerberos and 'Extend' Solves 2 major problems 1) forwarding credentials between 'trusted servers' (ticket forwarding) 2) share user-defined 'profiles' among independent servers (hailstorm, myservices) But there is one additional issue Passport.com is owned by Microsoft World-Wide kerberos-based services:  World-Wide kerberos-based services Example: passport.com The login server checks the Site ID and return URL. They must match a server registration in the login server Slide19:  World-Wide kerberos-based services Example: passport.com If the user’s sign-in name and password match in the login database, the user is authenticated and the Passport Unique Identifier (PUID) and Passport Profile are extracted from the Passport database The user is redirected to the participating site, and the encrypted ticket and profile data are passed to the site as query string parameters Web Server Demo:  Demo Site with authentication using passport.com http://www.argosytech.com/ http://www.doristheflorist.com/ http://www.ebay.com/ http://www.edine.com/ http://www.expedia.com/ http://www.fye.com/ http://lastminute.com/ Slides for DEMO No 4:  Slides for DEMO No 4 Demo No 4 (missing profile):  Demo No 4 (missing profile) Passport.com owned by Microsoft:  Passport.com owned by Microsoft The technology is simple and works Anybody can setup an identical service: Passport.org is still free, anybody can take his chance … We have identical services already at CERN AIS login for EDH, HRT, BHT, PIE, … WinServices/WebServices authentication Missing 'SITE ID concept' that allows independent user authentication per site (with same login/password) – but straightforward to implement But there is more … Is the owner of passport.com an issue ?:  Is the owner of passport.com an issue ? The Passport.com ticket only guarantees you that the 'entity' who claims to be '[email protected]' has access to the '[email protected]' mailbox. In other words this means that the 'real authentication' of the user is DELEGATED to the mail administrator of the mycompany.com site. If you hack the mailbox, you hack the passport. Basically the passport initiative creates a worldwide web account repository based on email addresses where authentication is delegated to the existing mail servers and authorizarion is done by the web servers (based on email addresses) No need to have user certificates (nightmare to manage) Role of the WSDL interface:  Role of the WSDL interface Allows 'Discovery' of your webservices by other software (or human being). It always contains the XML formal definitions of all callable webmethods i.e. the programmatical interface can be discovered It can contain documentation in human-readable format (XML + DTD) i.e. functionalities can be discovered In the demos, we have seen how Visual Studio can, given the URL of a webservice, discover all its methods and their exact semantics The UDDI initiative:  The UDDI initiative UDDI = Universal Description Discovery and Integration – See http://www.uddi.org UBR (UDDI Business Registry), based on the WSDL contract It is a set of specifications to describe and discover WebServices Mainly targeted at the b2b communities Applications like Office and internet Explorer will be integrated within UDDI. Services can be plugged in your desktop effortless Great opportunities for services distributions, including application distributions, File and Web Storage, authentication, authorization, payment, … Basically almost all what we are doing in-house today Demo :  Demo A company makes Routers and Network devices http://www.linksys.com Creating SOAP applications:  Creating SOAP applications You don’t need to learn SOAP SOAP can be buried in your ORB product A 'CORBA version' using SOAP instead of IIOP Your existing object can use soap without modification SOAP can be buried in your Web Server Apache, ASP/ISAPI, JSP/Servlets The server maps SOAP calls into COM+, Corba, RMI, … SOAP can roll from your own components Written in any language (Java, Perl, Basic, C/C++/C#…) Can be automatically generated from your development environment Visual Studio .NET has built-in SOAP support. This includes Visual Basic, C++, C#. SOAP implementations (webservices):  SOAP implementations (webservices) Too many for a single page Links to some 'partial lists' http://www.soapware.org/directory/4/implementations http://www.soaplite.com/#TOOLKITS If you search on Google for 'SOAP+Linux+implementations' you get back 4300 pages Linux Magazine claims 'there are already more than 60 implementations of SOAP available for just about any programming language' Conclusion:  Conclusion Put the WEB at the 'core' of your computing services Understand security implications Tools exists to build distributed, global services and applications that can be targeted to any platform (virtually anything that can acces the internet, including mobile phones, webTv, etc …). Your applications will cross all firewalls It is no longer vaporware, but real implementations exist, are used and have real companies behind It has never been easier to build web applications using the current generation of tools We can even expect a migration of Win32 applications to the Web (as a platform) Slide31:  http://cern.ch/web http://cern.ch/win http://cern.ch/mail http://cern.ch/it-div-is-techmeet

Related presentations


Other presentations created by funnyside

HCM Luzern
18. 06. 2007
0 views

HCM Luzern

lecture12
12. 10. 2007
0 views

lecture12

basketball
01. 08. 2007
0 views

basketball

Atacama Large Millimeter Array
15. 06. 2007
0 views

Atacama Large Millimeter Array

gen mtgmar07 slides
18. 06. 2007
0 views

gen mtgmar07 slides

THAKKAR ANJALI artificial blood
16. 10. 2007
0 views

THAKKAR ANJALI artificial blood

20030815 RepICFA HN
27. 09. 2007
0 views

20030815 RepICFA HN

Owen
03. 10. 2007
0 views

Owen

14BBlackHoles
07. 10. 2007
0 views

14BBlackHoles

Noda06
09. 10. 2007
0 views

Noda06

reptile
10. 10. 2007
0 views

reptile

leskov
15. 10. 2007
0 views

leskov

461
17. 10. 2007
0 views

461

Europe Presentation
19. 10. 2007
0 views

Europe Presentation

RadOnc
22. 10. 2007
0 views

RadOnc

schnittsysteme
23. 10. 2007
0 views

schnittsysteme

ch1 10 part2
23. 10. 2007
0 views

ch1 10 part2

firma end Presentation
19. 10. 2007
0 views

firma end Presentation

sta291 5c
29. 10. 2007
0 views

sta291 5c

ACM India Studies 2005
26. 11. 2007
0 views

ACM India Studies 2005

Mirabel
01. 12. 2007
0 views

Mirabel

ghana
10. 12. 2007
0 views

ghana

DanishCitationEventJB final
15. 10. 2007
0 views

DanishCitationEventJB final

aleynikov
26. 10. 2007
0 views

aleynikov

ShortageChicago Seago 2
29. 10. 2007
0 views

ShortageChicago Seago 2

Daylight Saving Time
07. 11. 2007
0 views

Daylight Saving Time

unity
21. 08. 2007
0 views

unity

Fad Diets
21. 08. 2007
0 views

Fad Diets

NACADA Combined Workshop
21. 08. 2007
0 views

NACADA Combined Workshop

TeraGrid SC06 1
22. 10. 2007
0 views

TeraGrid SC06 1

plane parallel 2 1
24. 10. 2007
0 views

plane parallel 2 1

cronologia storia contemporanea
13. 11. 2007
0 views

cronologia storia contemporanea

IDitarod
16. 11. 2007
0 views

IDitarod

Axiome Von Neumann Morgenstern
19. 11. 2007
0 views

Axiome Von Neumann Morgenstern

Dog bite sepsis
19. 11. 2007
0 views

Dog bite sepsis

Girish
21. 11. 2007
0 views

Girish

EcoValidity
17. 12. 2007
0 views

EcoValidity

matthew
29. 12. 2007
0 views

matthew

Cyatheaceae Classification
02. 01. 2008
0 views

Cyatheaceae Classification

RFF Shinnecock
03. 01. 2008
0 views

RFF Shinnecock

AustralianPoetry
03. 01. 2008
0 views

AustralianPoetry

dbl dutch
22. 11. 2007
0 views

dbl dutch

Lecture10 overheads
21. 08. 2007
0 views

Lecture10 overheads

Deborah Russell Presentation
14. 11. 2007
0 views

Deborah Russell Presentation

AAPT v3
01. 08. 2007
0 views

AAPT v3

EScannapieco
15. 11. 2007
0 views

EScannapieco

Successful  Case  Studies
29. 09. 2007
0 views

Successful Case Studies

Interv Hajji
23. 10. 2007
0 views

Interv Hajji

khelif edson rep
09. 10. 2007
0 views

khelif edson rep

aadcrocodile
11. 10. 2007
0 views

aadcrocodile

matricole
16. 10. 2007
0 views

matricole

the three little pigs
14. 02. 2008
0 views

the three little pigs

Exon HKSB
30. 10. 2007
0 views

Exon HKSB

June06SPCCUpdateJVan voorhis
07. 11. 2007
0 views

June06SPCCUpdateJVan voorhis

cultural impact hispanics tn
24. 02. 2008
0 views

cultural impact hispanics tn

SE 05 Punctuation I
29. 02. 2008
0 views

SE 05 Punctuation I

GaryCorbett e
04. 03. 2008
0 views

GaryCorbett e

Radiation Hazards
06. 03. 2008
0 views

Radiation Hazards

Portoroz
04. 10. 2007
0 views

Portoroz

jdean c10
25. 03. 2008
0 views

jdean c10

SoS
25. 03. 2008
0 views

SoS

MVestergaard SantaFe06
29. 11. 2007
0 views

MVestergaard SantaFe06

PowerPointTour
02. 11. 2007
0 views

PowerPointTour

tal daly
10. 04. 2008
0 views

tal daly

matz011
16. 04. 2008
0 views

matz011

installaware faq
17. 04. 2008
0 views

installaware faq

ATMSELong
18. 04. 2008
0 views

ATMSELong

36329938
22. 04. 2008
0 views

36329938

ITCan
10. 03. 2008
0 views

ITCan

kejian4
11. 10. 2007
0 views

kejian4

061213 dialog north korea petrov
11. 10. 2007
0 views

061213 dialog north korea petrov

Session6 Adm Wilcocks
07. 11. 2007
0 views

Session6 Adm Wilcocks

high technology surgery
30. 04. 2008
0 views

high technology surgery

Robot Convoy final presentation
07. 01. 2008
0 views

Robot Convoy final presentation

harry truman
18. 06. 2007
0 views

harry truman

goldrush
18. 06. 2007
0 views

goldrush

GMK
18. 06. 2007
0 views

GMK

gatech
18. 06. 2007
0 views

gatech

fusion be
18. 06. 2007
0 views

fusion be

Fun Facts updated 3 05
18. 06. 2007
0 views

Fun Facts updated 3 05

Geomatic AAU 07032007 forkortet
18. 06. 2007
0 views

Geomatic AAU 07032007 forkortet

General Spring Intro
18. 06. 2007
0 views

General Spring Intro

intervento Ambrosi Legge125
18. 06. 2007
0 views

intervento Ambrosi Legge125

insostegno
18. 06. 2007
0 views

insostegno

Inhalts angabe
18. 06. 2007
0 views

Inhalts angabe

Implant Simulations
18. 06. 2007
0 views

Implant Simulations

implantate berlin
18. 06. 2007
0 views

implantate berlin

Imber stud
18. 06. 2007
0 views

Imber stud

hsm bend2
18. 06. 2007
0 views

hsm bend2

history mat storia dei diritti
18. 06. 2007
0 views

history mat storia dei diritti

headquarters structure
18. 06. 2007
0 views

headquarters structure

Department Of Conservation
23. 10. 2007
0 views

Department Of Conservation

Hippo
18. 07. 2008
0 views

Hippo

pa3 disare ppt
28. 09. 2007
0 views

pa3 disare ppt

Sudan Polio Update 03 05
21. 10. 2007
0 views

Sudan Polio Update 03 05

bradford ancer
21. 08. 2007
0 views

bradford ancer

Delaunay Triangulations
15. 06. 2007
0 views

Delaunay Triangulations

Bayesian analysis and problems
15. 06. 2007
0 views

Bayesian analysis and problems

Biofuels - Think Big
15. 06. 2007
0 views

Biofuels - Think Big

AVO  - Virtual Observatory
15. 06. 2007
0 views

AVO - Virtual Observatory

PHOBOS Collaboration
15. 06. 2007
0 views

PHOBOS Collaboration

gennaipm
18. 06. 2007
0 views

gennaipm

sigcse2003
07. 12. 2007
0 views

sigcse2003

Introductionto Kyrgyzstan
26. 11. 2007
0 views

Introductionto Kyrgyzstan

HIT SAN
18. 06. 2007
0 views

HIT SAN

Metzenbaum Shelley
23. 10. 2007
0 views

Metzenbaum Shelley

ppt CHAP018
24. 02. 2008
0 views

ppt CHAP018

lesson3 warm up
07. 04. 2008
0 views

lesson3 warm up

shelving with lcc
19. 02. 2008
0 views

shelving with lcc

25ConnectionsV5 p2
18. 10. 2007
0 views

25ConnectionsV5 p2

2506043
15. 11. 2007
0 views

2506043

TravelChapter7 3
27. 03. 2008
0 views

TravelChapter7 3

french rfp
18. 06. 2007
0 views

french rfp

BEFxii Coronado
09. 04. 2008
0 views

BEFxii Coronado

spectrumastrotalk
28. 11. 2007
0 views

spectrumastrotalk

metadata frames
05. 10. 2007
0 views

metadata frames

Dancefinal
27. 11. 2007
0 views

Dancefinal