About Me …

27
© 2011 IBM Corporation 06/10/22

description

About Me …. My call Name: Hema My company: IBM India What I do: IBM Certified SOA Solution Designer and Application Architect Prior Roles: Application Architect for Application on Demand Technologies (AoDT) team, Technology Eminence Manager – IBM India About Me: - PowerPoint PPT Presentation

Transcript of About Me …

Page 1: About Me …

© 2011 IBM Corporation04/21/23

Page 2: About Me …

2

About Me…

My call Name: Hema

My company: IBM India

What I do:

IBM Certified SOA Solution Designer and Application Architect

Prior Roles:

Application Architect for Application on Demand Technologies (AoDT) team,

Technology Eminence Manager – IBM India

About Me:

Core member at the IBM India Technical Experts Council (TEC) and also lead the Women in Technology (WIT) at IBM

A doting Mom, fitness freak and Yoga enthusiast.

Page 3: About Me …

3

Objective

Can the power of Java be leveraged in the Enterprise ?

What are the needs of enterprise-wide computing and how does Java support ?

What is a Java-based Enterprise System architecture like ?

Page 4: About Me …

4

What is Java ?

Java - The new programming language developed by Sun Microsystems in 1991.

Originally called Oak by James Gosling, one of the inventors of the Java Language.

Java -The name that survived a patent search

Java Authors: James , Arthur Van , and others

Java is really “C++ -- ++ “

Originally created for consumer electronics (TV, VCR, Freeze, Washing Machine, Mobile Phone).

Java - CPU Independent language

Internet and Web was just emerging, so Sun turned it into a language of Internet Programming.

It allows you to publish a webpage with Java code in it.

Page 5: About Me …

5

Java (and .NET) is extraordinarily popular . . .. . . especially for medium-size and large firms.

Page 6: About Me …

6

The Journey… 1995 - Java was released by Sun Microsystems

1991 –James Gosling names new language ‘Oak’

1993 –Public Internet

1995 –Name changes from Oak to Java.

1996 –First JavaOne Developer Conference.

1999 –J2EE beta software is released.

2002 –J2EE SDK downloads reach 2 million.

2005 –~4.5 million developers use Java technology.

2006 –Most of Java is released under open source.

2010 –Oracle completes acquisition of Sun Microsystems.

Page 7: About Me …

7

The invention of WWW started a meteoric change in IT application development

It caught everyone by surprise: technology vendors, businesses, developers

– Remember $150 per hour HTML developers: “&*@# !!!.”

– Remember cgi-bin:

– Remember the end of brick-and-mortar companies

– Remember the stock market

Sun Microsystems moved quickly to take advantage by selling servers and offering Java as the platform for Web development.

– Most other software vendors, such as Microsoft, were caught off guard, and Java became the de facto Internet development standard for enterprise Web application development. Along with supporting technologies such as HTML and JavaScript.

Other vendors followed with alternative technology such as Adobe ColdFusion, Microsoft Active Server Pages (ASP), and others

Page 8: About Me …

8

Write once, run anywhere …

Simple, object-oriented, and familiar C/C++ like notation

Robust and secure

No pointers, automatic garbage collection

Architecture-neutral and portable

Byte code running on virtual machine

High performance

Native code when possible

Interpreted, threaded, and dynamic

Class libraries

J2EE– Frameworks galore– JBoss Hibernate– Spring Source– JSRs galore Servlets, JSP,

etc.

Development tools galore

Runtime containers (app servers) galore

– New programming languages Groovy/Grails, JRuby, Scala

Page 9: About Me …

9

Enterprises develop business applications to enable business capabilities and serve customers directly

Page 10: About Me …

10

Does popularity of Java, mean it is the best choice for business application development in 2011 and beyond?

Page 11: About Me …

11

The future of Java depends on how well the platform meets the changing needs of business and IT

“We can’t keep up with the changes.”

“How do we redesign our web application?”

“The business doesn’t know what it wants.”

“The business keeps changing its mind.”

“Will our architecture support the business requirements?”

“Results have improved after we adopted Agile methods, but not enough.”

“We have to improve the user experience.”

“Change is continuous.”

Page 12: About Me …

12

Wildly desirable business applications must strike the right balance among these seven qualities

Quality What it meansExperience Users’ perceptions of the usefulness, usability, and desirability of the application

Availability The readiness of an application to perform its functions when needed

Performance The speed with which an application performs a function to meet business and user expectations

Security Supports the security properties of confidentiality, integrity, authentication, authorization, and non repudiation

Economy Minimize the cost to build, operate, and change an application without comprising its business value

Scalability Handle increasing or decreasing volumes of transactions, services, and data

Adaptability The ease with which an application can be changed or extended

Page 13: About Me …

13

Old ways haven’t been working so well…

32% of projects succeeded

44% were challenged

24% failed

Standish Group

CHAOS Summary

2009 report states …

Two-thirds (68%) of projects failed

or

were challenged in some way.

Page 14: About Me …

14

A programming language cannot make it all…!!

Programming languages are not the only way to develop business applications. – Business process management (BPM)– Business rules management systems (BRMS)– Business intelligence (BI)– Business event processing (complex event processing CEP*)– Content management and collaboration accelerators– Platform-as-a-service

Newer programming languages are designed to make certain apps easier.– Ruby on Rails, web2py, and many others– Many of these alternatives are built on-top of Java platform -cool

Excellent productivity-focused app dev tools have existed for years.– 4GLs– Many new players such as salesforce.com, WaveMaker Software, and many, many

others

Page 15: About Me …

15

What do we need for an Enterprise

Page 16: About Me …

16

Page 17: About Me …

17

A combination of tools and platforms is necessary

Page 18: About Me …

18

A combination of tools and platforms is necessary

Page 19: About Me …

19

The mandate is for SMART WAYS to enterprise application development…!!

Our world is becoming

INSTRUMENTED

Our world is becoming

INTERCONNECTED

Virtually all things, processes and waysof working are becoming

INTELLIGENT

GREEN AND BEYOND

SMART WORK

NEW INTELLIGENCE

DYNAMIC INFRASTRUCTURE

Page 20: About Me …

20

SOA Value Proposition – Value for IT

Revenue Create new routes to market, new value from existing systems

Flexibility Develop flexible business models enabled by increased granularity of processes (“services”)

Speed Combine and reuse pre-built service components for rapid application development and deployment in response to market change

Efficiency Integrate historically separate systems, facilitate mergers and acquisitions of enterprisesReduce cycle times and costs for external business partners by moving from manual to automated transactions

Service Offer new services to customers without having to worry about the underlying IT infrastructure

Cost Eliminate duplicate systems, build once and leverage

Risk Improve visibility into business operations

IT Aspects – why should you care about SOA?

Page 21: About Me …

21

A Services Oriented Architecture (SOA) - Expose key IT capabilities and make them available in new ways

…and breaks them down into services…

These services can be integrated and used to build new capabilities…

A service-oriented architecture (SOA) is an architectural framework that takes business applications…

…supporting new functionality from within your current portfolio or from your extended value chain.

Business ApplicationsFixed Rate Mortgage System

Adjustable Rate

Mortgage System

Unsecured Loan

System

Integrated Statement Processor

Mainframe/Legacy

.NETCustomJ2EEPackages

…that can be made available for use independent of the applications and the computing platforms on which they run.

Services

Request Answer

Service

…or repeatable business task – e.g., open new account, check credit history

New CapabilitiesHybrid Credit

Product System(new)

WebCredit Portal Access

(new)

Partner Service

SOA = Agility + Governance = Competitive Advantage

Page 22: About Me …

22

Cloud is:

– A new consumption and delivery model

Cloud addresses:

– Cost reduction

– Scale

– Utilization

– Self-service

– IT agility, flexibility and delivery of value

Cloud represents:

– The industrialization of delivery for IT supported services

Cloud includes:

– Deployment models: public, private, hybrid

– Delivery models: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS) and Business Process as a Service

– Focus on the End user – self service delivery

Cloud is a shift in the consumption and delivery of IT with the goal of

simplifying to manage complexity more effectively.

Page 23: About Me …

23

Page 24: About Me …

24

Page 25: About Me …

25

Page 26: About Me …

26

Recommendations

If you are using Java successfully, then there is no reason to abandon the ship.

Investigate every alternative platform and how you can use them to get faster and better satisfy both the business and users.

You can continue to be largely a Java shop but start to bolt on other platforms such as BPM to deliver on new requirements.

Set an architectural path toward more productive application development tools.

Start by identifying the fastest-changing apps.– Choose platforms that will fulfill that change faster, for example. Rapid application

development tools such as application development productivity platforms (ADPP)– Business process management, business rules, business events– Dynamic Web frameworks

Do not think how you can develop Java applications faster. Instead, think how you can develop applications faster. This opens your mind to look outside Java to these alternatives.

There is no one solution that will satisfy all your use cases. But, don’t make Java the automatic default for custom-developed apps .

– Instead create a “Should this be a Java app?” checklist.

Page 27: About Me …

27

Thank you..!!

Questions ??