the future of software development based on cloud & mobile computing

29
The Future of Software Development Based on Cloud & Mobile Computing Assoc.Prof. Dr. Thanachart Numnonda Director Software Park Thailand 18 November 2010

Upload: software-park-thailand

Post on 08-May-2015

2.967 views

Category:

Technology


0 download

DESCRIPTION

Presentation by Director of Software Park (Thailand) at Oracle Developer Day (Bangkok) 18 Nov

TRANSCRIPT

Page 1: The Future of Software Development Based on Cloud & Mobile Computing

The Future of Software Development Based on Cloud

& Mobile Computing

Assoc.Prof. Dr. Thanachart NumnondaDirectorSoftware Park Thailand18 November 2010

Page 2: The Future of Software Development Based on Cloud & Mobile Computing

Next Major Computing Cycle

Source: Morgan Stanley 2009

Page 3: The Future of Software Development Based on Cloud & Mobile Computing

Source: Morgan Stanley 2010

Page 4: The Future of Software Development Based on Cloud & Mobile Computing

Tablets

Page 5: The Future of Software Development Based on Cloud & Mobile Computing

SmartPhones

Page 6: The Future of Software Development Based on Cloud & Mobile Computing

New Trends

Web 2.0

Web as a Platform

OS/Device independence

Large scale computing

Software as a Service

Cloud Computing

Page 7: The Future of Software Development Based on Cloud & Mobile Computing

Gartner Trends 2011 Cloud computing

Mobile Applications and Media Tablets.

Social Communications and Collaboration.

Video.

Next Generation Analytics.

Social Analytics.

Context-Aware Computing.

Storage Class Memory.

Ubiquitous Computing.

Fabric-Based Infrastructure and Computers.

Page 8: The Future of Software Development Based on Cloud & Mobile Computing

Mobile Apps Industry Is HugeIt is currently estimated at $7 billion,

with expected increase to almost $17.5 billion in 2012

[GetJar]

Page 9: The Future of Software Development Based on Cloud & Mobile Computing

Fragmentation In The Mobile World

Different OS

Different Hardware

Different ScreenSize

Different Input Method

Page 10: The Future of Software Development Based on Cloud & Mobile Computing

Categorization of mobile app Developement

Low-end platforms– Sms, JavaCard

Mid-level phones platforms– Java ME

Smartphone platforms– iPhone, Android, Blackberry, Symbian

Source: Wilfred M. Mworia; Mobile BootCamp 2009

Page 11: The Future of Software Development Based on Cloud & Mobile Computing

iPhoneLanguage: Objective-C ; CocoaTouch frameworkDifficulty: Very steep learning curve but gets much easier after thatTools:

Hardware: Mac (pretty expensive)

Software: Xcode (free); iPhone SDK

Pros:

Very comprehensive APIs, very well documented

The iPhone is a great platform esp for consumer level apps

Ready online market place for your apps

Free tools (once you have the costly hardware)

Cons

Very different programming style

Expensive to get a handset to test on

You need specific hardware

Marketplace controlled by Apple; 70-30 revenue sharing; Apps have to be approved by Apple first

Source: Wilfred M. Mworia; Mobile BootCamp 2009

Page 12: The Future of Software Development Based on Cloud & Mobile Computing

Android

Source: Wilfred M. Mworia; Mobile BootCamp 2009

Language: JavaDifficulty: Intermediate to advanced Java & J2METools:Hardware: PC or MacSoftware: Eclipse is the editor of choice; Android SDK

Pros:Familiar programming modelVery comprehensive APIs, very well documentedReady online market place for your appsOpen source OSOpen Handset Alliance creates a strong backingFree tools

ConsThe platform is still young,

Page 13: The Future of Software Development Based on Cloud & Mobile Computing

Symbian

Source: Wilfred M. Mworia; Mobile BootCamp 2009

Language: Mainly Native Symbian C++; Java ME, Flash & Python RuntimesDifficulty: Challenging for C++; Java ME more familiar; more control with C++Tools:Hardware: PCSoftware: Symbian Application Development Toolkit (ADT); SDKs e.g. Nokia S60 SDK

Pros:Familiar programming modelVery comprehensive APIs, very well documentedReady online market place for your appsOpen source OSSymbian Foundation backs the development of SymbianHandsets are readily availableMany device types and manufacturers – Samsung, LG, NokiaFree tools

ConsNeeds some good experience with C++

Page 14: The Future of Software Development Based on Cloud & Mobile Computing

BlackBerry

Source: Wilfred M. Mworia; Mobile BootCamp 2009

Language: Several options: Java, .NET, Difficulty: For Java, if you are familiar with J2ME you’ll be great. .NET is by nature not so hardTools:Hardware: PCSoftware: For Java: Plugin for Eclipse, Blackberry JDE; For .NET: Plugin for VS; MDS Studio

Pros:Options for programming languages and toolsVery comprehensive APIs, very well documentedGood for enterprise appsHandsets are readily availableFree tools

ConsIMHO perhaps not the best for consumer appsWriting apps for different Blackberry devices can get tricky; have to pick the right version of tools for the right OS versionOnly one device manufacturer RIM

Page 15: The Future of Software Development Based on Cloud & Mobile Computing

General Guidance to Smartphone Development

Pick a platform

Learn a bit about the OS in general– Understand the environment in which your app will

run

– How the OS treats scenarios like multi-tasking

– Could help with things like performance tuning

Get the tools

Learn the APIs

Design is key for consumer apps

Source: Wilfred M. Mworia; Mobile BootCamp 2009

Page 16: The Future of Software Development Based on Cloud & Mobile Computing

Mobile App Stores

Page 17: The Future of Software Development Based on Cloud & Mobile Computing

Nokia has most paid apps

Page 18: The Future of Software Development Based on Cloud & Mobile Computing

Cloud Computing is Internet-based computing, whereby shared resources, software,

and information are provided to computers and other devices on demand, like the electricity grid.

Definition (Wikipedia)

Page 19: The Future of Software Development Based on Cloud & Mobile Computing

Xxx as a ServiceInfrastructure as a Service (IaaS)

Platform as a Service (PaaS)

Software as a Service (SaaS)

Page 20: The Future of Software Development Based on Cloud & Mobile Computing

Hosting Java web apps traditionally

Not so popular except enterprise

High rates as compared to PHP hosting

Shared Tomcat instance among users

Restrictions on any time deployments due to shared server

Dedicated hosts works fine but they are costly

Page 21: The Future of Software Development Based on Cloud & Mobile Computing

You end up with this

Page 22: The Future of Software Development Based on Cloud & Mobile Computing

Java in the Cloud

Amazon EC2 - freedom

Goolge AppEngine - restricted Java

Microsoft Azure - mainly for MS apps, Java support exists

Stax.

Page 23: The Future of Software Development Based on Cloud & Mobile Computing

Amazon EC2

Freedom

No limits, pay as you use

Many tools

Many softwares available for EC2

Page 24: The Future of Software Development Based on Cloud & Mobile Computing

Google AppEngine

Restrictions– Datastore with JPA, no DB,

– Java 5 and 6, sorry no JDK1.4

Not supported– EJB, JAX-WS, JDBC, JCA, JMS

Supported– Struts, Spring, JSP, Servlet

Java app quota limits

Page 25: The Future of Software Development Based on Cloud & Mobile Computing

Microsoft AzureSupports Java

Eclipse plug-in

Page 26: The Future of Software Development Based on Cloud & Mobile Computing

Stax

Based on Amazon EC2

Focused on Development/QA

Tools for monitoring, more to come

In Beta now

Tomcat only, plans to add new containers

Struts, Wicket, Spring, Hibernate, GWT, Flex and more.

EC2 tailored for Java apps

Page 27: The Future of Software Development Based on Cloud & Mobile Computing

Additional Tech Trends

91 percent anticipate cloud computing will overtake on-premise computing as the primary way organizations acquire IT over the next five years

Mobile and cloud computing are followed by social media, business analytics and industry-specific technologies as the hottest IT career opportunities beginning in 2011

Page 28: The Future of Software Development Based on Cloud & Mobile Computing

Techology Trends 2011

One Day Free Seminar

16 December 2010 : 9.00 - 16.30

Software Park (Thailand)

Top Technology Trends:

Cloud Computing : How it effect the software industry?

Mobile Applications : Which Platform?

Social Communication & Collaboration

Page 29: The Future of Software Development Based on Cloud & Mobile Computing

Thank you

[email protected]/thanachartwww.facebook.com/thanachartwww.swpark.or.th