About Me …

Embed Size (px)

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

Text of About Me …

  • *About MeMy call Name: HemaMy company: IBM India What I do: IBM Certified SOA Solution Designer and Application ArchitectPrior Roles:Application Architect for Application on Demand Technologies (AoDT) team,Technology Eminence Manager IBM IndiaAbout 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.

  • *ObjectiveCan 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 ?

  • *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 searchJava 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 languageInternet 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.

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

  • *The Journey1995 - Java was released by Sun Microsystems1991 James Gosling names new language Oak1993 Public Internet1995 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.

  • *The invention of WWW started a meteoric change in IT application developmentIt caught everyone by surprise: technology vendors, businesses, developersRemember $150 per hour HTML developers: &*@# !!!.Remember cgi-bin:Remember the end of brick-and-mortar companiesRemember the stock marketSun 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

  • *Write once, run anywhere Simple, object-oriented, and familiar C/C++ like notationRobust and secureNo pointers, automatic garbage collectionArchitecture-neutral and portableByte code running on virtual machineHigh performanceNative code when possibleInterpreted, threaded, and dynamicClass librariesJ2EEFrameworks galoreJBoss HibernateSpring SourceJSRs galore Servlets, JSP, etc.Development tools galoreRuntime containers (app servers) galoreNew programming languages Groovy/Grails, JRuby, Scala

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

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

  • *The future of Java depends on how well the platform meets the changing needs of business and ITWe cant keep up with the changes.How do we redesign our web application?The business doesnt 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.

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

    QualityWhat it meansExperienceUsers perceptions of the usefulness, usability, and desirability of the applicationAvailabilityThe readiness of an application to perform its functions when neededPerformanceThe speed with which an application performs a function to meet business and user expectationsSecuritySupports the security properties of confidentiality, integrity, authentication, authorization, and non repudiationEconomyMinimize the cost to build, operate, and change an application without comprising its business valueScalabilityHandle increasing or decreasing volumes of transactions, services, and dataAdaptabilityThe ease with which an application can be changed or extended

  • *Old ways havent been working so well

    32% of projects succeeded44% were challenged24% failed

  • *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 acceleratorsPlatform-as-a-service

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

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

  • *What do we need for an Enterprise

  • *

  • *A combination of tools and platforms is necessary

  • *A combination of tools and platforms is necessary

  • *The mandate is for SMART WAYS to enterprise application development!!

  • *SOA Value Proposition Value for ITIT Aspects why should you care about SOA?

    RevenueCreate new routes to market, new value from existing systemsFlexibility Develop flexible business models enabled by increased granularity of processes (services) SpeedCombine and reuse pre-built service components for rapid application development and deployment in response to market changeEfficiencyIntegrate historically separate systems, facilitate mergers and acquisitions of enterprisesReduce cycle times and costs for external business partners by moving from manual to automated transactionsServiceOffer new services to customers without having to worry about the underlying IT infrastructureCostEliminate duplicate systems, build once and leverageRiskImprove visibility into business operations

  • *A Services Oriented Architecture (SOA) - Expose key IT capabilities and make them available in new waysand breaks them down into services These services can be integrated and used to build new capabilitiesA service-oriented architecture (SOA) is an architectural framework that takes business applicationssupporting new functionality from within your current portfolio or from your extended value chain.that can be made available for use independent of the applications and the computing platforms on which they run.

    Servicesor repeatable business task e.g., open new account, check credit historyNew CapabilitiesHybrid Credit Product System(new)WebCredit Portal Access(new)Partner ServiceSOA = Agility + Governance = Competitive Advantage

  • *Cloud is:A new consumption and delivery modelCloud addresses:Cost reductionScaleUtilizationSelf-serviceIT agility, flexibility and delivery of valueCloud represents:The industrialization of delivery for IT supported servicesCloud includes:Deployment models: public, private, hybridDelivery models: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS) and Business Process as a ServiceFocus on the End user self service deliveryCloud is a shift in the consumption and delivery of IT with the goal of simplifying to manage complexity more effectively.

  • *

  • *

  • *

  • *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 eventsDynamic 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, dont make Java the automatic default for custom-developed apps .Instead create a Should this be a Java app? checklist.

  • *Thank you..!!Questions ??

    *sDeveloper Notes:

    This is a standard introductory slide. As a time-saving and more interesting alternative, introductions can be abbreviated here, with more details woven into subsequent exercises.Remember that pictures are good to use as it enables the participants to put a face to the virtual voice.Web cams can substitute for pictures as well

    **So, yes, the world continues to get flatter. And yes, it continues to get smaller and more interconnected.

    But something is happening that holds even greater potential.

    In a word, our planet is becoming smarter.

    This isn't just a metaphor.

    And I'm not talking about the Knowledge Economyor even the fact that hundreds of millions of people from developing nations are gaining the education and skills to enter the global workforce.

    I mean the infusion of intelligence into the way the world literally worksth