1 Platforms and tools for Web Services and Mobile Applications FUTURE Bent Thomsen Aalborg University 3rd and 4th of June 2004.

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Welcome to Middleware Joseph Amrithraj
Java vs. .Net.
CSIS0402 System Architecture K.P. Chow University of Hong Kong.
Introduction to.NET Technology Marcello Benati Software Engineer.NET Architect.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
WebSphere Diego Leone. Summary Story and birth What is WebSphere?/Goals Main features Advantages/Disadvantages Conclusions.
Technical Architectures
J2ME Web Services Specification.  With the promise to ease interoperability and allow for large scale software collaboration over the Internet by offering.
A New Computing Paradigm. Overview of Web Services Over 66 percent of respondents to a 2001 InfoWorld magazine poll agreed that "Web services are likely.
Microsoft.Net Technology Sachin Shetty Vimal Amin Thomas Mullasaril Vinutna Pulavarti Software Engineering CS616 Instructor:Dr.Tappert.
J2ME Prepared by: - Gaery- Ronny - Alan- Andy. Why Technology for Mobile Devices? The nature of wireless devices is changing Old devices: All the software.
V1.00 © 2009 Research In Motion Limited Introduction to Mobile Device Web Development Trainer name Date.
The Architecture of Transaction Processing Systems
J2EE vs..NET Nigam Patel. Topics Background –Web Services, J2EE and.NET Similarities Differences Conclusion –Pros and Con (J2EE and.NET)
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
.net Microsofts ’ Platform for Web Services Naveed Arshad.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
SM3121 Software Technology Mark Green School of Creative Media.
VS.NET Course Introduction By Peter Huang. About Me Peter Huang –Microsoft Certified Solution Developer (MCSD) –Sun Certified Java 2 Programmer (SCJP)
Understanding and Managing WebSphere V5
Internet GIS. A vast network connecting computers throughout the world Computers on the Internet are physically connected Computers on the Internet use.
Enhanced Collaboration and other benefits of Sharepoint Technologies Kern Sutton Business Productivity Group Microsoft Corporation.
Microsoft.Net vs. J2EE Suresh Ramachandran Duke Energy.
Introduction SOAP History Technical Architecture SOAP in Industry Summary References.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
CIS 451: Web Services Dr. Ralph D. Westfall March, 2009.
IBSS Inc (International Business Software Solutions Inc.) Microsoft.NET.
Data Integration Problem How to access data across 22 different data systems, most operating on different hardware, using different software, and having.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
J2EE /.NET Liz Farricker Whitney Mayoras Patrick Bailey.
Introduction to .NET Rui Ye.
Powering the Enterprise with.NET Web Services David Stubbs Program Manager Enterprise Microsoft Services Hewlett-Packard Company.
Glink: GCOS e-business in an application server architecture Summit 2000, Jim Gallagher.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Presentation 11: SOAP on small devices. Ingeniørhøjskolen i Århus Slide 2 af 11 Outline Which small devices? What are the limitations and what kind of.
Small Devices on DBGlobe System George Samaras Chara Skouteli.
WebLogic Versus JBoss.
Framework and application bytecode size CLDC MIDP kXML parser Utility classes Graphics Logic (MIDlet) Application Data (XML file)
Fundamentals of Database Chapter 7 Database Technologies.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Lecture 15 Introduction to Web Services Web Service Applications.
Dynamic Content On Edge Cache Server (using Microsoft.NET) Name: Aparna Yeddula CS – 522 Semester Project Project URL: cs.uccs.edu/~ayeddula/project.html.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
DotNet Vs. J2EE Mosaad Alomery CIS Mosaad Alomery - CIS 764 the internet platform –Services Electronic commerce Communications ( , news, chat,
Microsoft.NET Norman White Stern School of Business.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Microsoft.NET; A vision for the next generation of XML Web Services. Steven Adler Product Manager Microsoft EMEA.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
CSIT 220 (Blum)1 Remote Procedure Calls Based on Chapter 38 in Computer Networks and Internets, Comer.
NBA 600: Session 25 IT and the General Manager New Technologies: Web Services 22 April 2003 Daniel Huttenlocher.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Microsoft.Net vs. J2EE. J2EE – Enterprise Java  J2EE: Java 2 Enterprise Edition  Superset of Java 2 Standard Edition (J2SE)  Adds enterprise features.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
Presentation 11: SOAP on small devices. Ingeniørhøjskolen i Århus Slide 2 af 10 Outline Which small devices? What are the limitations and what kind of.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Presentation 11: SOAP on small devices. Ingeniørhøjskolen i Århus Slide 2 af 10 Outline Which small devices? What are the limitations and what kind of.
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
Java Application Development Services on Different Platforms.
Suresh Ramachandran Duke Energy
WebSphere Diego Leone.
.NET Omid Darroudi.
What is WWW? The term WWW refers to the World Wide Web or simply the Web. The World Wide Web consists of all the public Web sites connected to the Internet.
DOTNET Technologies CHAPTER I
Outline SOAP and Web Services in relation to Distributed Objects
ApplinX Rod Carlson Senior Technical Lead.
Web Application Server 2001/3/27 Kang, Seungwoo. Web Application Server A class of middleware Speeding application development Strategic platform for.
Microsoft .NET Presentation
Presentation transcript:

1 Platforms and tools for Web Services and Mobile Applications FUTURE Bent Thomsen Aalborg University 3rd and 4th of June 2004

2 Services on Demand Vision Revolutionary new business methods Unlimited choice Individual is King + interactivity Cheap, Faster, Global Networking via Internet Cheap, Faster Processing Converged Networks / Broadcast Interactive Digital Content Array of Access Devices = But how to build this vision?

3 The Answer is: Web Services A Web service is like a Web site without a user interface, that serves programs instead of people. Instead of getting requests from browsers and returning web pages in response, a web service: –receives a request formatted in XML from an application, –performs a task, –and returns an XML-formatted response. Web Services are delivered using open industry standards –Services to be described in WSDL –Services to located via UDDI –Data to be exchanged via XML –Protocols are HTTP and SOAP BUT Back-end systems still need to be developed!

4 The basic problem... If you have software components and they shall work together in the same transaction... and they shall have the same security boundaries... and they shall share the same session state... and they shall be remotely accessible... and they shall not suffer from code overload Then you must have an infrastructure that hosts such components for secure remote and local access... an infrastructure that manages transactions... an infrastructure that hides infrastructure code The answer is: Applications on Application Servers Implemented in an Enterprise Solution Framework

5 Sun One Architecture Support major standards initiatives such as XML, SOAP, UDDI, WDSL and … to make it ready for developers who want to take advantage of the Services on Demand vision

6 Microsoft’s.NET Support major standards initiatives such as XML, SOAP, UDDI, WDSL and … to make it ready for developers who want to take advantage of the Services on Demand vision

7 What is Microsoft.Net? It is a vision –The platform for the digital future –‘.NET is Microsoft’s platform for a new computing model built around XML Web Services’ Microsoft Corporation Annual Report, 2001 It is a brand name –Applied to many things It is a set of products and technologies –Infrastructure –Tools –Servers –Services.Net is Microsoft’s core business Strategy

8.NET Technologies The.NET Framework –The CLR with support for XML Web services and more –Supporting Visual Basic.NET, C#, C++, and more The.Net development tools –Visual Studio.Net The.NET Enterprise Servers –BizTalk Server 2003, SQL Server 2003, Commerce Server 2003 and more The.Net Services –Passport, My Services, bCentral, expedia and more

9 What is Java? The Java programming language –Took the world by storm in 1995 when introduced with the HotJava web Browser –Quickly integrated with Netscape browser –Now in Version 1.4 –Coming soon Version 1.5 The Java Virtual Machine (JVM) –Now comes in many different flavours

10 J2EE – Enterprise Java J2EE: Java 2 Enterprise Edition –Superset of Java 2 Standard Edition (J2SE) –Adds enterprise features to Java Libraries Defined through the Java Community Process (JCP) –plus whatever Sun sees fit, Sun has last word –Sun writes almost all specs and other contribute –Submitters essentially surrender all rights to Sun Wholly owned property of Sun Microsystems –Licensing controlled by Sun, by Sun's rules –JCP Broadens Sun's architect's base

11 Enterprise Java J2EE (1.4+) is an infrastructure specification for: –Components ("Beans") –Data Source Connectivity –XML and Messaging –Web Pages and Web Services Implemented by: Sun, IBM, BEA, Oracle, etc. –IBM WebSphere (37% market share 2002/33% 2000) –BEA WebLogic (29% MS 2002/59% 2000) –SUN iPlanet (4% MS 2002/3% 2000) –Oracle Application Server 9i –Fujitsu Interstage –…–… All vendors implement core specification, but: –Some areas in J2EE are (intentionally) not specified –The more specific a functionality the more proprietary the implementation gets Numbers from the web, allegedly originally from Gartner DataQuest

12 A typical.NET Enterprise Solution SQL Server IIS on W2k Server.NET managed component ASP.NET Windows Client Browser

13 A typical J2EE Enterprise Solution DB Server Java App Server EJB Servlet JSP Java Client Browser

14 J2EE Solutions vs Microsoft.Net Solutions –Both multi-tiered, similar computing technologies –Both support “standards” –Both offer different tools & ways to achieve the same goal. –A lot of parallelism can be seen. –Very difficult to compare and qualify the comparison because each has its own advantages & disadvantages.

15 The TMC Petshop Performance Case Study Java Pet Store is Sun’s primary blueprint application for J2EE The.NET Petshop is a port of the J2EE Java Pet Store to.NET In the TMC Petshop Performance Case Study, The Middleware Company implemented both the Java Pet Store and the.Net Petshop First version showed.Net 28 times faster than J2EE Second version showed some J2EE implementation equal.Net Second version is a testimony to performance tuning

16 What do these comparisons tell us? It is very difficult to make such comparisons That.Net has gained maturity extremely fast That the two frameworks are very similar You will not be sacked for choosing the right J2EE application server ;-) The Devil is in the detail –C# is not Java –ADO.NET is not JDBC –CLR is not JVM

17 J2EE 1.5 J2EE (1.5) preview of –Focus on ease of development Generics and metadata as in J2SE 1.5 (more like C#) Java Studio Creator tool (in beta from April 2004) (more like Visual Studio.Net) –Timeframe To be discussed at JavaOne in June Finalized in approximately one year –IBM push for truly open source Java –Others hesitate (even Open Source JBoss)

18 What about mobile? Web Services are fine as n-tier applications with UI provided through browser, but … On mobile devices WAP hasn’t really caught on Even iMode hasn’t caught on in Europe xHTML is looking promising though Renewed Thin/Thick client discussion Java applications on Mobile devices are reasonably successful Now Microsoft is moving fast into the field with.Net Compact Framework

19 Two Devices Nokia 6600 Orange SPV E200

20 Two Devices Motorola V525 Motorola MPx200

21 Two Devices

22 Building Mobile Solutions is harder Mobile device –Software infrastructure, hardware requirements Communication technology –On-/Offline scenario –Wireless Wide Area Networks/ Wireless Local Area Networks –Communication protocol Application architecture scenario –Thin/fat client Data management –Synchronisation –On-/offline capabilities Security issues –Dangers for mobile devices –Threats of communication technology –Danger of exposing enterprise data

23 Therefore... Java 2 Micro Edition (J2ME) is not ONE Java edition An J2ME compliant application consists of –Configuration –Profile (e.g. Personal, Mobile Information Device Profile (MIDP)) –Application code –Vendor specific UI 3 Contenders to compare –Java 2 Micro Edition – Connected Device Configuration (CDC) –Java 2 Micro Edition – Connected Limited Device Configuration (CLDC) –Microsoft.NET Compact Framework The Java vs. Net discussion goes mobile

24 Student Project Group of Master Level Students (Hovedfag) –Bjørn D. Rasmussen – Casper S. Jensen – Jimmy Nielsen – Lasse Jensen Collaboration with DEIF Project Goals –Build end-to-end mobile client, wireless, webservices based application with back-end interface to SCADA –In Java (J2ME/J2EE) and in.Net –Compare the two solutions on a set of criteria

25 Basis of comparison Objective measurements Lines of code Development tools Documentation Infrastructure Performance Architectural pattern Security Price Development time Subjective measurements Developer satisfaction End-user satisfaction

26 DEIF M-Vision (SCADA up and running in 30 minutes)

27 SCADA on SmartPhones

28 Development tools and Documentation Server-side is well supported by both Java and.NET IDEs On the client-side.NET IDEs benefit from the fact that.NET CF is so close to.NET (With Java there are separate IDEs for desktop and mobile application development) Compatibility problems between Java vendors Java IDEs are slow! C# is a richer/more complex language than Java Both Java and.NET have well documented API Web service documentation –.NET - MSDN –Java – Google Support for encryption of web services –.Net CF: HTTPS and SOAP extensions –J2ME: HTTPS, but only in CDC & MIDP 2.0

29 Performance Server-side web service performance study with: –Microsoft Application Server (v. 5.1) –Sun ONE Application Server (v. 7.0) Tested for: –Throughput –Failure rate –Average response time

30 Performance - Throughput

31 Performance – Average response time

32 Performance – Failure rate

33 Development time Slow start-up when developing in Java –Jungle of web service implementations –IDE incompatibility problems Emulators kSOAP Trouble-free implementation in.NET

34 Subjective Measures Developer satisfaction –VS.NET integrates web service and mobile application development far better than any Java IDE –A subset of an API is a better solution for mobile devices instead of an entirely new API End-user satisfaction –DEIF would choose a.NET based solution since startup time is very important –DEIF only needs a limited number of IDE licenses –Extra price for a SmartPhone 2003 is insignificant compared to the value it gives –The SmartPhone 2003 is more ”fancy” than the Java phones

35 Students Conclusions We see.NET as a better designed framework because: –it eliminates the language barrier while also being platform independent –it makes only little distinction between desktop and mobile application development Sun’s application server performance is very poor compared to IIS. License fees for a Java based solution are cheaper but.NET might catch up when considering development time We tried a combined.NET and Java solution but this has shown to be very troublesome!

36 My conclusions The two worlds are becoming more and more similar –But it seems that you have to work harder in Java than in.Net –.Net is currently driving technology transfer from Research to Product Windows generation at University now Watch-out in the mobile world Vodafone to offer Microsoft Smart phones – –Fed-up with Nokia promoting own brand, rather than operator brand

37 To.Net or not to.Net Choosing between Java and.Net The ultimate choice usually depends not on technical superiority, but on: –cultural/”religious”/political preferences –Customer preference –Vendor relations –Skill set of your developers You are most likely to be developing in both environments for the foreseeable future Look out for “The third way” –Linux, Apache, MySQL, PhP, …

38 Beyond the short term Will somebody come up with a killer application? J2EE/J2ME or.Net/.Net CF are reasonably coherent, but maybe we will see a completely new platform Network operators seem reluctant to move to 3G And what about 4G?

39 An example: Ericsson roadmap to 4G Ericsson defines 4G very broadly as seamless mobility for the user + all possible new infrastructure technologies

40 The Internet IP backbone Billing VHE Signalling Gateway WAP Accounting UMTS Broadcast Networks (DAB, DVB-T) Satellite FES GSM / GPRS Context-aware information Centre IP-based micro-mobility Wireless LANs ISP SIP Proxy Server Inter-Working

41 We talk about 4G today because the future is open The term 3G was coined at academic conferences around Then 3G meant everything beyond GSM One (dropped) 3G vision was mobility by wireless, + personal phone-numbers, following the individual globally at closest fixed line Later the ”1G”, ”2G”, ”3G” terminology was captured by equipment vendors in the mid 90s for selling UMTS to the market and regulators Anybody remember the hype around 4G and 5G programming languages in the 80s ? Will anybody talk about ”4G ” in 2010? I’m sceptical

42 Issue: How and When should firms make the shift from the E-Business “S curve” to Mobile? Next Innovation “S – Curve” - Mobile Cascading S-Curves 80’s 90’s 00 Mainframe Minicomputer (30 years) Web E-commerce E-business (7+ years) Time % Adoption PC Client-Server (15 years) GROWTH MATURITY INNOVATION Mobile Solutions Web Services (?) 05

43 Business Value, ROI and Application Deployment Issues! Not Technology Selling mobile technology hype Selling unrealistic solutions e.g., m- commerce portals Enterprise Customer Focus Mobile Vendor Focus Vendors are ignoring customers demands: show me how to make or save money using mobile? The Tale of Two Perspectives

44 Future Dreams anno 1993