SlideShare une entreprise Scribd logo
1  sur  116
In 1954, Steve Sasson invented the digital camera.



                                             There was no Facebook
                                                   No Twitter
                                                  No YouTube




  At the time, this was a very cool thing.
In 2012, Eastman Kodak
                     filed for Chapter 11



                     Mobile devices cited
                     as a leading cause.

In 1954, Steve Sasson worked for Kodak
Mobile Enterprise
Increasing number of enterprise tablets and smartphones


                 CIOs Surveyed on Tablet Usage




                                                                                “
                                                                                  ...fastest
                                                                            ramping mobile
  2011
              Not Allowed
                                 Employee-
                                  owned
                                                  Purchased for Employees
                                                                               device ever.
                                                                                               ”
  2010




 Morgan Stanley, “Tablet Demand and Disruption”, February 14, 2011.
Social Revolution: Facebook Eats the Web


                                                              Top Internet Uses
                                                                                                    22%
                                                                                                    internet
                                                                                                    time is
                                                                                                    social




             2006                                                                          Search
                                     2007
                                                       2008
                                                                  2009
                                                                                  2010
                                                                                         2011

Sources: Nielsen Wire, January, 2011.
Morgan Stanley Internet Mobile Report, December 2009
“The traditional model for enterprise application
   distribution and deployment is quickly being obsoleted
             by the cloud PaaS/app store model”




IDC Predictions 2012: Competing for 2020
Build the Social Enterprise - Today




                           site.com
Cloud App Platforms Eliminate Servers


                            Cloud App Platform



                          App                                  Directory
    Database                                Messaging
                         Server                                Services



                             Virtualization & IaaS


               Compute            Storage            Network
What Are the Most Common Apps Built on the Platform?


      Critical                    Social Front                  Social                   Social
     Processes                       Ends                      Websites                Engagement




Cut inefficiency with the   Extend the the value of your      Accelerate your      Connect to customers the
  power of the cloud.                backoffice            marketing to the pace   way they expect it - social
                                                           the market moves at.     and mobile, all the time.
Critical Processes
 Increase efficiency with the Cloud



                                              Streamline multi-step processes
                                              Replace manual and inefficient workflow
                                              Integrated collaboration and content
                                              Can be built by Business or IT



                     Platform Services
         Visual Workflow          Content
         Programmatic Logic       Analytics
         Chatter                  Mobile


Customers Include:
Social Front Ends
 Create A Layer of Agility Around Legacy Systems

                         Employees    Partner



                                                               ERP, Warehouses, Mainframes
         Collaboration                          Social Media   Instant access for any employee
                                                               Proven user adoption
                                                               Rapid deployment, Instant scale
                                                               Integrated collaboration



                         Platform Services
        Open API                     Analytics
        Data Modeler                 Mobile
        Customizable UI              Open Languages


Customers Include:
Marketing Websites
Build A Web Presence In Days



                                              Launch powerful websites in days
                                              Empower business users to make edits
                                              Create forms with just a few clicks
                                              Deliver relevant content to web visitors
                                              Ensure blazing fast load times
            Platform Services

   Content mgt system   Website caching
   Web design studio    Authentication
   Site hosting         Integrated database
Engage Customers
 With Interactive Social Apps



                                                    Engage customers in new ways
                                                    Use multimedia and new interfaces
                                                    Design real-time interactive apps
                                                    Instantly scale for millions of users
                                                    Choice of modern development languages
                     Platform Services

         Open-language         Instant Scale
         Git Deployment        Erosion Resistance
         Relational DB         Seamless Force.com
         NoSQL DB              Add-on Catalog


Customers Include:
Your applications, everywhere

 On the Go                   In the Office         On the Road




 Mobile Marketing             Heavy data entry         Customer Facing
  Calls & Alerts             Document creation         Record browsing
 Live Event Feed               Administration           Light data entry
     Calendar                 Full web access                Notes
       Apps


                    NATIVE        HYBRID         WEB
Collaboration Makes Every App More Productive




Records      Files

                                     Approvals




   Collaboration on               Customer
                      Approvals    Groups    Triggers & Apex   Connect API   Messenger
       Records
Rapidly Built Apps With Reusable Services



     AppExchange            Reusable        Heroku Add-ons
                           Components
Open Choice of Developer Environments



       Visual Design                    Any Language
Massive and Transparent Scalability
                                      45 Billion
                                      Transactions in Q4
                                      FY12
Proven Business Results


 Deliver More Apps          Less Resources              Make Changes Faster                     Lower Cost

   3x More Apps              94% Fewer                          4.5x Faster                      54% Lower
     Per Year              Developer Hours                       Updates                           TCO




    Automatic                   Prebuilt                      Ideal for Agile                      Multi-tenant
     Upgrades                  Application                    Development                            PaaS
                              Components


         Source: 2009 IDC Study, “Force.com Cloud Platform Drives Huge Time to Market and Cost Savings”
“80% of new commercial enterprise apps will
         be deployed on cloud platforms in 2012”




IDC Predictions 2012: Competing for 2020
Now it‟s your turn!
Declarative App Building
Safe Harbor
 Safe harbor statement under the Private Securities Litigation Reform Act of 1995:

 This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any
 such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc.
 could differ materially from the results expressed or implied by the forward-looking statements we make. All
 statements other than statements of historical fact could be deemed forward-looking, including any projections of
 product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements
 regarding strategies or plans of management for future operations, statements of belief, any statements concerning
 new, planned, or upgraded services or technology developments and customer contracts or use of our services.

 The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and
 delivering new functionality for our service, new products and services, our new business model, our past operating
 losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web
 hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any
 possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating
 history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
 service and successful customer deployment, our limited history reselling non-salesforce.com products, and
 utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
 financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year
 ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July
 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of
 the Investor Information section of our Web site.

 Any unreleased services or features referenced in this or other presentations, press releases or public statements
 are not currently available and may not be delivered on time or at all. Customers who purchase our services should
 make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no
 obligation and does not intend to update these forward-looking statements.
Easily create a data structure driven by business logic, without
using any programmatic or database administration tools.
Declarative App Building
Allows for the creation of data models and business logic
without adding programmatic logic
Custom Objects
Custom Fields
Validation Rules
Workflows
Approvals
Warehouse Application Requirements
• To have a system which allows tracking of
  price, and inventory on hand for all
  merchandise
• To have a system which allows the creation
  of invoices containing one more merchandise
  items as a line item on the invoice
• To have an invoice which presents total
  invoice amount and current shipping status


    What are the nouns in our requirements?
Warehouse Application Requirements
• To have a system which allows tracking of
  price, and inventory on hand for all
  merchandise
• To have a system which allows the creation
  of invoices containing one more merchandise
  items as a line item on the invoice
• To have an invoice which presents total
  invoice amount and current shipping status
Warehouse Application Requirements
• To have a system which allows tracking of
  price, and inventory on hand for all
  merchandise
• To have a system which allows the creation
  of invoices containing one more merchandise
  items as a line item on the invoice
• To have an invoice which presents total
  invoice amount and current shipping status
Warehouse App Data Model

                           Invoice
    Number        Status             Count        Total
     INV-01       Shipped             16         $370
     INV-02        New                20         $200




                   Invoice Line Items                                         Merchandise
Invoice   Line    Merchandise          Units   Unit       Value    Name          Price      Inventory
                                       Sold    Price
                                                                    Pinot         $20          15
INV-01        1       Pinot                1    15        $20
                                                                  Cabernet        $30          10
INV-01        2     Cabernet               5    10        $150
                                                                  Malbec          $20          20
INV-01        3      Malbec             10      20        $200
                                                                  Zinfandel       $10          50
INV-02        1       Pinot             20      50        $200
Declarative Business Logic
Functions in Formulas
• „Pre-packaged‟ operations for performing common logic

• Support for commons functions
   – Math
   – Text
   – Date & Time
   – Logical

• Can chain functions together
   AND ( OR (
      ISPICKVAL(StageName, "Closed Won"),
      ISPICKVAL(StageName, "Negotiation/Review")),
      ISBLANK(Delivery_Date__c) )
Formulas can to define business logic


                  Validation rules


                  Workflow rules


                  Approvals
New Requirement:



• A user can not buy more items than are in
  stock




     Look for assertions.
If          Then              Error




Implied on     Formula evals     Return error
record save.   true (error) or    message
                 false (save)    (UI or API)
New requirement:



     When                              Why

• Every time a line item is added to an open
  invoice we need to update inventory stock
  counts.

                        What

  Look for time-based queues.
Workflow & Approvals




                     Update    Outbound
Email      Task       Field    Message
When




Why


What
New Requirement:


• Every time an order greater than $1000 is
  placed a manager needs to sign off on it.



          Human (role) interaction
Approvals allow


             Single/Multi/Skip step processes



             Route based on roles, or queues



             Approval via emails



             Automation of manual processes
Define Actions




Track Approval History
Formulas, Workflows and Approvals


             Enforce consistency regardless on
             how you access Force.com

             Leverage spreadsheet-like logic


             Automate manual processes


             Keep data (and compliance) clean
Chatter
Safe Harbor
 Safe harbor statement under the Private Securities Litigation Reform Act of 1995:

 This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any
 such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc.
 could differ materially from the results expressed or implied by the forward-looking statements we make. All
 statements other than statements of historical fact could be deemed forward-looking, including any projections of
 product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements
 regarding strategies or plans of management for future operations, statements of belief, any statements concerning
 new, planned, or upgraded services or technology developments and customer contracts or use of our services.

 The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and
 delivering new functionality for our service, new products and services, our new business model, our past operating
 losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web
 hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any
 possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating
 history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
 service and successful customer deployment, our limited history reselling non-salesforce.com products, and
 utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
 financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year
 ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July
 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of
 the Investor Information section of our Web site.

 Any unreleased services or features referenced in this or other presentations, press releases or public statements
 are not currently available and may not be delivered on time or at all. Customers who purchase our services should
 make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no
 obligation and does not intend to update these forward-looking statements.
Have data communicate with our users and allow our users to
discuss work and share relevant files, all in real time.
Chatter
An enterprise collaboration tool based on social
frameworks
Data Feeds
Groups
Comments, Likes, Mentions
File Sharing
URL Sharing
Follow
Share
Discuss
Privacy and Security

     Home Tab / Profile Page        Record Detail Page




                                      Only users with
 Every internal user can see what   “Read” access to the
             you post               record can see what
                                          you post
Chatter Goes Mobile
Tap into mobile success with Chatter
Chatter Components




                      chatter:follow
                     chatter:newsfeed
                       chatter:feed
                     chatter:followers
               chatter:feedAndFollowers
Chatter Triggers




  if(feed_text == „promote‟) {
         rec.status__c = “Approved”
         addToEmailPromotion(rec);
         FeedItem post = new FeedItem();
         post.ParentId = rec.Id;
         post.Body = „Record added to promotion‟;
         feedsToInsert.addITem(post);
  }
Chatter API
Create third party integrations using the RESTful Chatter API




       https://rhatter.heroku.com
Chatter Hands On Tutorial
Apex and Visualforce
Safe Harbor
 Safe harbor statement under the Private Securities Litigation Reform Act of 1995:

 This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any
 such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc.
 could differ materially from the results expressed or implied by the forward-looking statements we make. All
 statements other than statements of historical fact could be deemed forward-looking, including any projections of
 product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements
 regarding strategies or plans of management for future operations, statements of belief, any statements concerning
 new, planned, or upgraded services or technology developments and customer contracts or use of our services.

 The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and
 delivering new functionality for our service, new products and services, our new business model, our past operating
 losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web
 hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any
 possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating
 history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
 service and successful customer deployment, our limited history reselling non-salesforce.com products, and
 utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
 financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year
 ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July
 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of
 the Investor Information section of our Web site.

 Any unreleased services or features referenced in this or other presentations, press releases or public statements
 are not currently available and may not be delivered on time or at all. Customers who purchase our services should
 make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no
 obligation and does not intend to update these forward-looking statements.
Create a custom mobile interface for warehouse employees to track
inventory from mobile phones
Salesforce Mobile
No additional development, admin configured and controlled




Mobile HTML Application
Web development skills required, easily made for multiple devices
and screens




Mobile SDK Development
Offers access to device functionality and can
create the most fast performing applications
Create a custom mobile interface for warehouse employees to track
inventory from mobile phones
Create a data driven web page that is designed
for mobile devices




 Mobile HTML Application
 Web development skills required, easily made for multiple devices
 and screens




 Mobile SDK Development
 Offers access to device functionality and can
 create the most fast performing applications
Model View Controller (MVC) Pattern
    Model                             Controller




                        View
Model View Controller (MVC) Pattern
  Your Data                           Your Logic




                     Your Interface
Model View Controller (MVC) Pattern
 Custom Objects                       Apex




                      Visualforce
Create a custom mobile interface for warehouse employees to track
inventory from mobile phones
Apex
cloud-based programmatic language with direct access to
Force.com data
Java like syntax supporting interfaces, scoping and annotations
Directly accesses and manipulates data via SOQL and DML
Can be scheduled, run asynchronously, or set in batch mode
Can send, receive and parse emails, HTTP callouts, SOAP, and JSON
Can be exposed as a web service or REST endpoint
Apex Class Anatomy                                   Class and Interface based

public with sharing class myControllerExtension {

    private final Account acct;                         Scoped Variables
    public Contact newContact {get; set;}
    public myControllerExtension(ApexPages.StandardController stdController) {
           this.acct = (Account)stdController.getRecord();
    }

    public PageReference associateNewContact(Id cid) {
      newContact = [SELECT Id, Account from Contact WHERE Id =: cid LIMIT 1];
      newContact.Account = acct;                    Inline SOQL
      update newContact;
    }                                               Inline DML
}
What can you do with Apex?




    Controllers          Custom API and    Inbound/Outbound
                          HTTP Callouts      Email Services




         Database Triggers      Scheduled and Batched Tasks
The Developer Console
Dealing with Traffic
Apex
cloud-based programmatic language with direct access to
Force.com data
Governor limits enforces neighborly behavior
75% Unit Testing maintains production level integrity
Sandbox environments allow for safe development
Unit tests, pre-release environments and pilots aid three release cycle
Create a custom mobile interface for warehouse employees to track
inventory from mobile phones
Visualforce
A component based framework for building user interfaces
with web standards like HTML, CSS and JavaScript

Bind logic with Controllers
Associate data directly with Components
Create custom Components and Templates
Utilize popular web technologies like jQuery and Flash
Binding Logic

         Inherit CRUD Operations                       Extended functionality




<apex:page standardController=“Merchandise__c” extensions=“checkUser,logVisit” >




                         Standard or Custom Object
Binding Logic

                                                        Extended functionality




   <apex:page controller=“InventoryController” extensions=“checkUser,logVisit” >




                       Completely Custom Logic
Component Anatomy



apex, chatter, social or c prefix        Bind data directly on the page




          <apex:inputField value=“{Contact.FirstName}” >




                       Attributes specify further
                              functionality
http://bit.ly/bigcloudrealty
Big Cloud Realty
Mobile Visualforce Tutorial
Mobile SDK Demo
Site.com
Safe Harbor
 Safe harbor statement under the Private Securities Litigation Reform Act of 1995:

 This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any
 such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc.
 could differ materially from the results expressed or implied by the forward-looking statements we make. All
 statements other than statements of historical fact could be deemed forward-looking, including any projections of
 product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements
 regarding strategies or plans of management for future operations, statements of belief, any statements concerning
 new, planned, or upgraded services or technology developments and customer contracts or use of our services.

 The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and
 delivering new functionality for our service, new products and services, our new business model, our past operating
 losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web
 hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any
 possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating
 history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
 service and successful customer deployment, our limited history reselling non-salesforce.com products, and
 utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
 financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year
 ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July
 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of
 the Investor Information section of our Web site.

 Any unreleased services or features referenced in this or other presentations, press releases or public statements
 are not currently available and may not be delivered on time or at all. Customers who purchase our services should
 make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no
 obligation and does not intend to update these forward-looking statements.
Create a website to market our products that is easily
maintainable even without technical support.
Site.com
A visual design studio for creating public websites
with 100% uptime
Graphic Design Tools
WYSIWYG Editing
Content Management System
Content Publishing Controls
Site.com
Build, Manage, and Publish Your Websites




 Websites       Landing Pages     Mobile Sites   Social Pages
Data Driven Content
Database without Code                           Data Repeater
Leverage existing Salesforce data and extend    Quickly create lists and tables that publish any
database to manage any structured web content   data in real-time. Apply filters, sorting, and limits




       Records in Salesforce                                   Data on website
Form Driven Data
Web Forms without Code                             Records in Salesforce
Drag & Drop to create a form to capture data for   Capture web form results in any object:
any object.                                        leads, registrations, complaints, etc.




            Web Form                                         Records in Salesforce
Publish Websites with Confidence
                    The same trusted infrastructure that
                     already powers 30,000 websites

                  Preview
                  Stage sites to share with colleagues for feedback and
                  cross-browser testing


                  Publish
                  Map your domains to your sites, and publish finished
                  sites to the Force.com cloud.

                  No Planned Downtime
                  Web requests are processed in real-time, and Global
                  Server Load Balancing ensures that websites function
                  even during Salesforce.com maintenance windows.

                  High Performance
                  Integrated Akamai CDN (Content Delivery Network)
                  uses a global network of caching servers to deliver
                  optimum performance as your traffic grows.
HP on Site.com

    “…gave me the agility to add pages and change
    content at the speed of Twitter.”
                               Manvir Sandhu
                               Director of Marketing, HP




  3000 unique landing pages
    30% increase in sign-ups
    $200M demand generation
             Instant changes
FICO on Site.com
                                            Created stand-alone website to drive
                                            registration for annual conference

                                            Site was built in Site.com in 4 days
                                            vs weeks on corporate SharePoint site

                                            Marketers now update event details
                                            and speakers bios without IT help

                                            On track to triple registration

                                            Now able to build custom landing
                                            pages for target segments


   “… gave us the freedom to make the
   website I‟ve wanted for years.”
           Jamie Nelson
           FICO
           Senior Mgr, Web Publishing and Governance
http://www.salesforcefoundation.org/
Salesforce Foundation on Site.com
Site.com Tutorial
API Integration with
   Heroku Java
Safe Harbor
 Safe harbor statement under the Private Securities Litigation Reform Act of 1995:

 This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any
 such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc.
 could differ materially from the results expressed or implied by the forward-looking statements we make. All
 statements other than statements of historical fact could be deemed forward-looking, including any projections of
 product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements
 regarding strategies or plans of management for future operations, statements of belief, any statements concerning
 new, planned, or upgraded services or technology developments and customer contracts or use of our services.

 The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and
 delivering new functionality for our service, new products and services, our new business model, our past operating
 losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web
 hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any
 possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating
 history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
 service and successful customer deployment, our limited history reselling non-salesforce.com products, and
 utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
 financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year
 ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July
 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of
 the Investor Information section of our Web site.

 Any unreleased services or features referenced in this or other presentations, press releases or public statements
 are not currently available and may not be delivered on time or at all. Customers who purchase our services should
 make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no
 obligation and does not intend to update these forward-looking statements.
Create an external Java-based endpoint with
authenticated, bi-directional communication to process
invoice fulfillments
Notify on Closed Invoice



                         Send Order Confirmation ID




                    Relay Updated Invoice Info



   Force.com Warehouse                           Fulfillment System



Create an external Java-based endpoint with bi-directional
communication to process invoice fulfillments
Create an external Java-based endpoint with authenticated,
bi-directional communication to process invoice fulfillments
Polyglot framework
PaaS architecture which allows for multiple
language to be deployed
Github Repo                             Heroku



     Pull / Push                      Push Deployments
Development Changes                   Monitor Application

                      Local Repo



  $ git push heroku master
  Counting objects: 67, done.
  Delta compression using up to 4 threads.
  Compressing objects: 100% (53/53), done.
  Writing objects: 100% (67/67), 26.33 KiB, done.
  Total 67 (delta 5), reused 0 (delta 0)
Create an external Java-based endpoint with
authenticated, bi-directional communication to process
invoice fulfillments
OAuth
OAuth
An industry standard method of validating user
credentials while avoiding password anti-patterns.
OAuth2 Flow
                Sends App Credentials

                       User logs in
                   Token sent to Callback

   Remote                                    Force.com
  Application   Confirms token                Platform

                         Send access token



                    Maintain session with
                       refresh token
Create an external Java-based endpoint with authenticated,
bi-directional communication to process invoice fulfillments
curl https://na1.salesforce.com/services/data/v20.0/query/?q=SELECT+name+from+Account -H
"Authorization: OAuth token" -H "X-PrettyPrint:1"


                               {
                                  "done" : true,
      REST API                    "totalSize" : 14,
                                  "records" :
                                  [
                                     {
                                        "attributes" :
                                        {
                                           "type" : "Account",
                                           "url" :
                               "/services/data/v20.0/sobjects/Account/001D00
                               0000IRFmaIAH"
                                        },
                                        "Name" : "Test 1"
                                     },
                                     {
                                        "attributes" :
Representational State Transfer
A stateless data transport based on standard HTTP
methods for delivering as JSON or XML
Apex REST
Apex REST
Annotations allow developers to develop custom
endpoints for the REST API
Overview of Force.com API Services
                Apex REST       Apex SOAP    REST API        SOAP API      Bulk API        Streaming
                                                                                              API


   Protocol       REST          SOAP/WS        REST           SOAP/          REST          CometD
                                  DL                          WSDL
Data Format     JSON/XM           XML        JSON/X            XML        CSV/XML           JSON
                   L                           ML
       Client     HTTP          SOAP/WS        HTTP          SOAP/WS      HTTP client      CometD
   libraries/     client        DL library     client        DL library    (lightweight)   JQuery
        tools   (lightweight)                (lightweight)

Data Volume      Medium          Medium      Medium            Large      Very Large        Small-
                                                                                            Large
 Sync/Async       Sync            Sync         Sync            Sync          Async          Stream
Bulk API
Asynchronous API for handling large amounts of
XML based data
Extract Transform Load (ETL)
A type of toolset which allows for the easy migration and
manipulation of data between different systems
Streaming API
A Bayeux implementation to provide real-time data
updates to clients
Use Case Quiz

Implement a third party .Net server by creating classes via a
WSDL file
                       SOAP

Create a lightweight API for a mobile native client

                       REST

Insert or update 50,000 records daily from a .csv file

                       BULK

Create a web page which will automatically notify the user
when new cases arrive, without reloading

                    STREAMING
Integration with Heroku Java Tutorial

Contenu connexe

Tendances

2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and Strategy2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and StrategyAnna O'Neal
 
20110916 social business agenda
20110916 social business agenda20110916 social business agenda
20110916 social business agendaFlávio Mendes
 
2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and Strategy2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and StrategyAnna O'Neal
 
Business Gets Social, BGS2012, Sofia
Business Gets Social, BGS2012, SofiaBusiness Gets Social, BGS2012, Sofia
Business Gets Social, BGS2012, SofiaIBS Bulgaria
 
Sybase SUP Mobil Uygulama Geliştirme Genel Bilgilendirme
Sybase SUP Mobil Uygulama Geliştirme Genel BilgilendirmeSybase SUP Mobil Uygulama Geliştirme Genel Bilgilendirme
Sybase SUP Mobil Uygulama Geliştirme Genel BilgilendirmeSybase Türkiye
 
IBM Rational Solution for mobile
IBM Rational Solution for mobileIBM Rational Solution for mobile
IBM Rational Solution for mobileEric Cattoir
 
The Case for Business Apps
The Case for Business AppsThe Case for Business Apps
The Case for Business AppsLandscape
 
4 Steps To Creating A Mobile Strategy
4 Steps To Creating A Mobile Strategy4 Steps To Creating A Mobile Strategy
4 Steps To Creating A Mobile Strategyrickross
 
4 steps to creating a mobile development strategy - White Paper - Appcelerator
4 steps to creating a mobile development strategy - White Paper - Appcelerator4 steps to creating a mobile development strategy - White Paper - Appcelerator
4 steps to creating a mobile development strategy - White Paper - AppceleratorRomain Fonnier
 
Share point survey 2012 slideshare
Share point survey 2012 slideshareShare point survey 2012 slideshare
Share point survey 2012 slideshareJohn Rymer
 
Microsoft SharePoint 2013 Preview
Microsoft SharePoint 2013 PreviewMicrosoft SharePoint 2013 Preview
Microsoft SharePoint 2013 PreviewIntergen
 
Dreamforce 2011 Social Enterprise Marc Benioff Keynote
Dreamforce 2011 Social Enterprise   Marc Benioff KeynoteDreamforce 2011 Social Enterprise   Marc Benioff Keynote
Dreamforce 2011 Social Enterprise Marc Benioff KeynoteNAES Corporation
 
ID301 - What’s Coming in IBM Connections
ID301 - What’s Coming in IBM ConnectionsID301 - What’s Coming in IBM Connections
ID301 - What’s Coming in IBM ConnectionsLuis Benitez
 
Enterprise Appstore webinar FEB13
Enterprise Appstore webinar FEB13Enterprise Appstore webinar FEB13
Enterprise Appstore webinar FEB13Peter J. Melander
 
Reply Enterprise 2.0 - TamTamy
Reply Enterprise 2.0 - TamTamyReply Enterprise 2.0 - TamTamy
Reply Enterprise 2.0 - TamTamyreply
 
Reply Web20 University
Reply Web20 UniversityReply Web20 University
Reply Web20 Universityreply
 
The Future of Enterprise SW and Social Media
The Future of Enterprise SW and Social MediaThe Future of Enterprise SW and Social Media
The Future of Enterprise SW and Social Mediaguestd63a
 
Digital hour presentation BB10
Digital hour presentation BB10Digital hour presentation BB10
Digital hour presentation BB10Industree spa
 

Tendances (20)

2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and Strategy2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and Strategy
 
20110916 social business agenda
20110916 social business agenda20110916 social business agenda
20110916 social business agenda
 
2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and Strategy2011 IBM Collaboration Solutions Directions and Strategy
2011 IBM Collaboration Solutions Directions and Strategy
 
Business Gets Social, BGS2012, Sofia
Business Gets Social, BGS2012, SofiaBusiness Gets Social, BGS2012, Sofia
Business Gets Social, BGS2012, Sofia
 
Sybase SUP Mobil Uygulama Geliştirme Genel Bilgilendirme
Sybase SUP Mobil Uygulama Geliştirme Genel BilgilendirmeSybase SUP Mobil Uygulama Geliştirme Genel Bilgilendirme
Sybase SUP Mobil Uygulama Geliştirme Genel Bilgilendirme
 
IBM Rational Solution for mobile
IBM Rational Solution for mobileIBM Rational Solution for mobile
IBM Rational Solution for mobile
 
The Case for Business Apps
The Case for Business AppsThe Case for Business Apps
The Case for Business Apps
 
4 Steps To Creating A Mobile Strategy
4 Steps To Creating A Mobile Strategy4 Steps To Creating A Mobile Strategy
4 Steps To Creating A Mobile Strategy
 
4 steps to creating a mobile development strategy - White Paper - Appcelerator
4 steps to creating a mobile development strategy - White Paper - Appcelerator4 steps to creating a mobile development strategy - White Paper - Appcelerator
4 steps to creating a mobile development strategy - White Paper - Appcelerator
 
Share point survey 2012 slideshare
Share point survey 2012 slideshareShare point survey 2012 slideshare
Share point survey 2012 slideshare
 
Lotusphere 2012 - What's new in ibm connections
Lotusphere 2012 - What's new in ibm connectionsLotusphere 2012 - What's new in ibm connections
Lotusphere 2012 - What's new in ibm connections
 
Microsoft SharePoint 2013 Preview
Microsoft SharePoint 2013 PreviewMicrosoft SharePoint 2013 Preview
Microsoft SharePoint 2013 Preview
 
Dreamforce 2011 Social Enterprise Marc Benioff Keynote
Dreamforce 2011 Social Enterprise   Marc Benioff KeynoteDreamforce 2011 Social Enterprise   Marc Benioff Keynote
Dreamforce 2011 Social Enterprise Marc Benioff Keynote
 
ID301 - What’s Coming in IBM Connections
ID301 - What’s Coming in IBM ConnectionsID301 - What’s Coming in IBM Connections
ID301 - What’s Coming in IBM Connections
 
Enterprise Appstore webinar FEB13
Enterprise Appstore webinar FEB13Enterprise Appstore webinar FEB13
Enterprise Appstore webinar FEB13
 
Reply Enterprise 2.0 - TamTamy
Reply Enterprise 2.0 - TamTamyReply Enterprise 2.0 - TamTamy
Reply Enterprise 2.0 - TamTamy
 
Buzzient Oem Program
Buzzient Oem ProgramBuzzient Oem Program
Buzzient Oem Program
 
Reply Web20 University
Reply Web20 UniversityReply Web20 University
Reply Web20 University
 
The Future of Enterprise SW and Social Media
The Future of Enterprise SW and Social MediaThe Future of Enterprise SW and Social Media
The Future of Enterprise SW and Social Media
 
Digital hour presentation BB10
Digital hour presentation BB10Digital hour presentation BB10
Digital hour presentation BB10
 

En vedette

Indeisgn tuturial my own
Indeisgn tuturial my ownIndeisgn tuturial my own
Indeisgn tuturial my owndebbie14
 
MLM Making sense of the numbers
MLM Making sense of the numbersMLM Making sense of the numbers
MLM Making sense of the numbersDeon van Zyl
 
Primero corporate presentation january
Primero corporate presentation januaryPrimero corporate presentation january
Primero corporate presentation januaryprimero_mining
 
Corporate Presentation - PDAC 2015
Corporate Presentation - PDAC 2015Corporate Presentation - PDAC 2015
Corporate Presentation - PDAC 2015primero_mining
 
Assignment 12
Assignment 12Assignment 12
Assignment 12debbie14
 
FATCA - Foreign Accounts Tax Compliance Acts - bachir el nakib-
FATCA - Foreign Accounts Tax Compliance Acts -  bachir el nakib-FATCA - Foreign Accounts Tax Compliance Acts -  bachir el nakib-
FATCA - Foreign Accounts Tax Compliance Acts - bachir el nakib-Bachir El-Nakib, CAMS
 
Evaluation q6
Evaluation q6Evaluation q6
Evaluation q6chaggarg1
 
Light-up-your-out-of-the-box LightSwitch Application
Light-up-your-out-of-the-box LightSwitch ApplicationLight-up-your-out-of-the-box LightSwitch Application
Light-up-your-out-of-the-box LightSwitch ApplicationBoulos Dib
 
Primero td mining_presentation_january_25__2012_print
Primero td mining_presentation_january_25__2012_printPrimero td mining_presentation_january_25__2012_print
Primero td mining_presentation_january_25__2012_printprimero_mining
 
ndep.org - A WordPress Case Study
ndep.org - A WordPress Case Studyndep.org - A WordPress Case Study
ndep.org - A WordPress Case Studykeithdevon
 
Warm up and warm down22
Warm up and warm down22Warm up and warm down22
Warm up and warm down22nmcquade
 
Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...
Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...
Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...Sylvester Saragih
 

En vedette (20)

Indeisgn tuturial my own
Indeisgn tuturial my ownIndeisgn tuturial my own
Indeisgn tuturial my own
 
MLM Making sense of the numbers
MLM Making sense of the numbersMLM Making sense of the numbers
MLM Making sense of the numbers
 
Primero corporate presentation january
Primero corporate presentation januaryPrimero corporate presentation january
Primero corporate presentation january
 
Corporate Presentation - PDAC 2015
Corporate Presentation - PDAC 2015Corporate Presentation - PDAC 2015
Corporate Presentation - PDAC 2015
 
Assignment 12
Assignment 12Assignment 12
Assignment 12
 
Prezentacione vestine
Prezentacione vestinePrezentacione vestine
Prezentacione vestine
 
FATCA - Foreign Accounts Tax Compliance Acts - bachir el nakib-
FATCA - Foreign Accounts Tax Compliance Acts -  bachir el nakib-FATCA - Foreign Accounts Tax Compliance Acts -  bachir el nakib-
FATCA - Foreign Accounts Tax Compliance Acts - bachir el nakib-
 
Evaluation q6
Evaluation q6Evaluation q6
Evaluation q6
 
Light-up-your-out-of-the-box LightSwitch Application
Light-up-your-out-of-the-box LightSwitch ApplicationLight-up-your-out-of-the-box LightSwitch Application
Light-up-your-out-of-the-box LightSwitch Application
 
User guide
User guideUser guide
User guide
 
Ict kuis
Ict kuisIct kuis
Ict kuis
 
00141
0014100141
00141
 
Primero td mining_presentation_january_25__2012_print
Primero td mining_presentation_january_25__2012_printPrimero td mining_presentation_january_25__2012_print
Primero td mining_presentation_january_25__2012_print
 
Hukum perburuhan
Hukum perburuhanHukum perburuhan
Hukum perburuhan
 
Makalah ilmu alamiah dasar
Makalah ilmu alamiah dasarMakalah ilmu alamiah dasar
Makalah ilmu alamiah dasar
 
O Dialogo nº 197
O Dialogo nº 197O Dialogo nº 197
O Dialogo nº 197
 
ndep.org - A WordPress Case Study
ndep.org - A WordPress Case Studyndep.org - A WordPress Case Study
ndep.org - A WordPress Case Study
 
Warm up and warm down22
Warm up and warm down22Warm up and warm down22
Warm up and warm down22
 
Benchmark Group Of Companies Business Profiles
Benchmark Group Of Companies Business ProfilesBenchmark Group Of Companies Business Profiles
Benchmark Group Of Companies Business Profiles
 
Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...
Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...
Tugas mata kuliah manjemen kurikulum dan program pendidikan ( membuat soal la...
 

Similaire à Workshop slides

Salesforce.com Partner Meetup - Atlanta -10/31/12
Salesforce.com Partner Meetup - Atlanta -10/31/12Salesforce.com Partner Meetup - Atlanta -10/31/12
Salesforce.com Partner Meetup - Atlanta -10/31/12Salesforce Partners
 
The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...
The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...
The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...Matthias Zeller
 
Sfdc df2001-platformkeynotedavenorris
Sfdc df2001-platformkeynotedavenorrisSfdc df2001-platformkeynotedavenorris
Sfdc df2001-platformkeynotedavenorrissuyashawasthi
 
AppExchange Partner Program Keynote - Dreamforce 2012- 9/18
AppExchange Partner Program Keynote - Dreamforce 2012- 9/18AppExchange Partner Program Keynote - Dreamforce 2012- 9/18
AppExchange Partner Program Keynote - Dreamforce 2012- 9/18Salesforce Partners
 
Linux in a Private Cloud with Social Business on System z
Linux in a Private Cloud with Social Business on System zLinux in a Private Cloud with Social Business on System z
Linux in a Private Cloud with Social Business on System zIBM India Smarter Computing
 
IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...
IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...
IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...John Head
 
Cloud Computing and CRM for Real Estate - remarkto #14 - June 4th 2012
Cloud Computing and CRM for Real Estate - remarkto #14 -  June 4th 2012Cloud Computing and CRM for Real Estate - remarkto #14 -  June 4th 2012
Cloud Computing and CRM for Real Estate - remarkto #14 - June 4th 2012George O'Neill
 
From Valleys to Clouds
From Valleys to CloudsFrom Valleys to Clouds
From Valleys to CloudsPeter Coffee
 
Salesforce.com Partner Meetup - New York -10/18/12
Salesforce.com Partner Meetup - New York -10/18/12 Salesforce.com Partner Meetup - New York -10/18/12
Salesforce.com Partner Meetup - New York -10/18/12 Salesforce Partners
 
What's New in IBM Connections 4.0
What's New in IBM Connections 4.0What's New in IBM Connections 4.0
What's New in IBM Connections 4.0Luis Benitez
 
Servion Presentation 20 April 2011
Servion Presentation 20 April 2011Servion Presentation 20 April 2011
Servion Presentation 20 April 2011Peter Borup Jakobsen
 
The Future of Enterprise SW & Social Media
The Future of Enterprise SW & Social MediaThe Future of Enterprise SW & Social Media
The Future of Enterprise SW & Social MediaMichael Fauscette
 
UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...
UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...
UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...John Head
 
IBM Software Day 2013. A mobile strategy is essential
IBM Software Day 2013. A mobile strategy is essentialIBM Software Day 2013. A mobile strategy is essential
IBM Software Day 2013. A mobile strategy is essentialIBM (Middle East and Africa)
 
Sean Poulley Social Business in the Cloud
Sean Poulley   Social Business in the CloudSean Poulley   Social Business in the Cloud
Sean Poulley Social Business in the CloudMauricio Godoy
 
Customer Experience Suite Townsville
Customer Experience Suite   TownsvilleCustomer Experience Suite   Townsville
Customer Experience Suite TownsvilleMike Handes
 
Customer experience suite townsville
Customer experience suite   townsvilleCustomer experience suite   townsville
Customer experience suite townsvilleMike Handes
 
The Notes/Domino Application Development Competitive Advantage - IamLUG
The Notes/Domino Application Development Competitive Advantage - IamLUGThe Notes/Domino Application Development Competitive Advantage - IamLUG
The Notes/Domino Application Development Competitive Advantage - IamLUGJohn Head
 

Similaire à Workshop slides (20)

Salesforce.com Partner Meetup - Atlanta -10/31/12
Salesforce.com Partner Meetup - Atlanta -10/31/12Salesforce.com Partner Meetup - Atlanta -10/31/12
Salesforce.com Partner Meetup - Atlanta -10/31/12
 
Innovate Sdp 2294 Final
Innovate  Sdp 2294 FinalInnovate  Sdp 2294 Final
Innovate Sdp 2294 Final
 
The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...
The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...
The Future of your Desktop - Trends in Enterprise Mash-Up, Collaboration and ...
 
Sfdc df2001-platformkeynotedavenorris
Sfdc df2001-platformkeynotedavenorrisSfdc df2001-platformkeynotedavenorris
Sfdc df2001-platformkeynotedavenorris
 
AppExchange Partner Program Keynote - Dreamforce 2012- 9/18
AppExchange Partner Program Keynote - Dreamforce 2012- 9/18AppExchange Partner Program Keynote - Dreamforce 2012- 9/18
AppExchange Partner Program Keynote - Dreamforce 2012- 9/18
 
Linux in a Private Cloud with Social Business on System z
Linux in a Private Cloud with Social Business on System zLinux in a Private Cloud with Social Business on System z
Linux in a Private Cloud with Social Business on System z
 
IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...
IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...
IBM Lotus Notes/Domino Application Development Competitive Advantage : The So...
 
Cloud Computing and CRM for Real Estate - remarkto #14 - June 4th 2012
Cloud Computing and CRM for Real Estate - remarkto #14 -  June 4th 2012Cloud Computing and CRM for Real Estate - remarkto #14 -  June 4th 2012
Cloud Computing and CRM for Real Estate - remarkto #14 - June 4th 2012
 
From Valleys to Clouds
From Valleys to CloudsFrom Valleys to Clouds
From Valleys to Clouds
 
Salesforce.com Partner Meetup - New York -10/18/12
Salesforce.com Partner Meetup - New York -10/18/12 Salesforce.com Partner Meetup - New York -10/18/12
Salesforce.com Partner Meetup - New York -10/18/12
 
What's New in IBM Connections 4.0
What's New in IBM Connections 4.0What's New in IBM Connections 4.0
What's New in IBM Connections 4.0
 
Servion Presentation 20 April 2011
Servion Presentation 20 April 2011Servion Presentation 20 April 2011
Servion Presentation 20 April 2011
 
The Future of Enterprise SW & Social Media
The Future of Enterprise SW & Social MediaThe Future of Enterprise SW & Social Media
The Future of Enterprise SW & Social Media
 
UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...
UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...
UKLUG - IBM Lotus Notes/Domino Application Development Competitive Advantage ...
 
IBM Software Day 2013. A mobile strategy is essential
IBM Software Day 2013. A mobile strategy is essentialIBM Software Day 2013. A mobile strategy is essential
IBM Software Day 2013. A mobile strategy is essential
 
Sean Poulley Social Business in the Cloud
Sean Poulley   Social Business in the CloudSean Poulley   Social Business in the Cloud
Sean Poulley Social Business in the Cloud
 
1109 siit jfriedrich v02
1109 siit jfriedrich v021109 siit jfriedrich v02
1109 siit jfriedrich v02
 
Customer Experience Suite Townsville
Customer Experience Suite   TownsvilleCustomer Experience Suite   Townsville
Customer Experience Suite Townsville
 
Customer experience suite townsville
Customer experience suite   townsvilleCustomer experience suite   townsville
Customer experience suite townsville
 
The Notes/Domino Application Development Competitive Advantage - IamLUG
The Notes/Domino Application Development Competitive Advantage - IamLUGThe Notes/Domino Application Development Competitive Advantage - IamLUG
The Notes/Domino Application Development Competitive Advantage - IamLUG
 

Plus de Joshua Birk

Detroit ELEVATE Track 2
Detroit ELEVATE Track 2Detroit ELEVATE Track 2
Detroit ELEVATE Track 2Joshua Birk
 
Detroit ELEVATE Track 1
Detroit ELEVATE Track 1Detroit ELEVATE Track 1
Detroit ELEVATE Track 1Joshua Birk
 
Seattle Dev Garage
Seattle Dev GarageSeattle Dev Garage
Seattle Dev GarageJoshua Birk
 
ELEVATE Advanced Workshop
ELEVATE Advanced WorkshopELEVATE Advanced Workshop
ELEVATE Advanced WorkshopJoshua Birk
 
Platform integration
Platform integrationPlatform integration
Platform integrationJoshua Birk
 
Sao Paolo Workshop
Sao Paolo WorkshopSao Paolo Workshop
Sao Paolo WorkshopJoshua Birk
 
Mobile SDK + Cordova
Mobile SDK + CordovaMobile SDK + Cordova
Mobile SDK + CordovaJoshua Birk
 

Plus de Joshua Birk (9)

Detroit ELEVATE Track 2
Detroit ELEVATE Track 2Detroit ELEVATE Track 2
Detroit ELEVATE Track 2
 
Detroit ELEVATE Track 1
Detroit ELEVATE Track 1Detroit ELEVATE Track 1
Detroit ELEVATE Track 1
 
Seattle Dev Garage
Seattle Dev GarageSeattle Dev Garage
Seattle Dev Garage
 
ELEVATE Advanced Workshop
ELEVATE Advanced WorkshopELEVATE Advanced Workshop
ELEVATE Advanced Workshop
 
Platform integration
Platform integrationPlatform integration
Platform integration
 
Brasil Roadshow
Brasil RoadshowBrasil Roadshow
Brasil Roadshow
 
Sao Paolo Workshop
Sao Paolo WorkshopSao Paolo Workshop
Sao Paolo Workshop
 
Mobile SDK + Cordova
Mobile SDK + CordovaMobile SDK + Cordova
Mobile SDK + Cordova
 
Blue converter
Blue converterBlue converter
Blue converter
 

Workshop slides

  • 1.
  • 2.
  • 3. In 1954, Steve Sasson invented the digital camera. There was no Facebook No Twitter No YouTube At the time, this was a very cool thing.
  • 4. In 2012, Eastman Kodak filed for Chapter 11 Mobile devices cited as a leading cause. In 1954, Steve Sasson worked for Kodak
  • 5. Mobile Enterprise Increasing number of enterprise tablets and smartphones CIOs Surveyed on Tablet Usage “ ...fastest ramping mobile 2011 Not Allowed Employee- owned Purchased for Employees device ever. ” 2010 Morgan Stanley, “Tablet Demand and Disruption”, February 14, 2011.
  • 6. Social Revolution: Facebook Eats the Web Top Internet Uses 22% internet time is social 2006 Search 2007 2008 2009 2010 2011 Sources: Nielsen Wire, January, 2011. Morgan Stanley Internet Mobile Report, December 2009
  • 7. “The traditional model for enterprise application distribution and deployment is quickly being obsoleted by the cloud PaaS/app store model” IDC Predictions 2012: Competing for 2020
  • 8. Build the Social Enterprise - Today site.com
  • 9. Cloud App Platforms Eliminate Servers Cloud App Platform App Directory Database Messaging Server Services Virtualization & IaaS Compute Storage Network
  • 10. What Are the Most Common Apps Built on the Platform? Critical Social Front Social Social Processes Ends Websites Engagement Cut inefficiency with the Extend the the value of your Accelerate your Connect to customers the power of the cloud. backoffice marketing to the pace way they expect it - social the market moves at. and mobile, all the time.
  • 11. Critical Processes Increase efficiency with the Cloud Streamline multi-step processes Replace manual and inefficient workflow Integrated collaboration and content Can be built by Business or IT Platform Services Visual Workflow Content Programmatic Logic Analytics Chatter Mobile Customers Include:
  • 12. Social Front Ends Create A Layer of Agility Around Legacy Systems Employees Partner ERP, Warehouses, Mainframes Collaboration Social Media Instant access for any employee Proven user adoption Rapid deployment, Instant scale Integrated collaboration Platform Services Open API Analytics Data Modeler Mobile Customizable UI Open Languages Customers Include:
  • 13. Marketing Websites Build A Web Presence In Days Launch powerful websites in days Empower business users to make edits Create forms with just a few clicks Deliver relevant content to web visitors Ensure blazing fast load times Platform Services Content mgt system Website caching Web design studio Authentication Site hosting Integrated database
  • 14. Engage Customers With Interactive Social Apps Engage customers in new ways Use multimedia and new interfaces Design real-time interactive apps Instantly scale for millions of users Choice of modern development languages Platform Services Open-language Instant Scale Git Deployment Erosion Resistance Relational DB Seamless Force.com NoSQL DB Add-on Catalog Customers Include:
  • 15. Your applications, everywhere On the Go In the Office On the Road Mobile Marketing Heavy data entry Customer Facing Calls & Alerts Document creation Record browsing Live Event Feed Administration Light data entry Calendar Full web access Notes Apps NATIVE HYBRID WEB
  • 16. Collaboration Makes Every App More Productive Records Files Approvals Collaboration on Customer Approvals Groups Triggers & Apex Connect API Messenger Records
  • 17. Rapidly Built Apps With Reusable Services AppExchange Reusable Heroku Add-ons Components
  • 18. Open Choice of Developer Environments Visual Design Any Language
  • 19. Massive and Transparent Scalability 45 Billion Transactions in Q4 FY12
  • 20. Proven Business Results Deliver More Apps Less Resources Make Changes Faster Lower Cost 3x More Apps 94% Fewer 4.5x Faster 54% Lower Per Year Developer Hours Updates TCO Automatic Prebuilt Ideal for Agile Multi-tenant Upgrades Application Development PaaS Components Source: 2009 IDC Study, “Force.com Cloud Platform Drives Huge Time to Market and Cost Savings”
  • 21. “80% of new commercial enterprise apps will be deployed on cloud platforms in 2012” IDC Predictions 2012: Competing for 2020
  • 24. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 25. Easily create a data structure driven by business logic, without using any programmatic or database administration tools.
  • 26. Declarative App Building Allows for the creation of data models and business logic without adding programmatic logic Custom Objects Custom Fields Validation Rules Workflows Approvals
  • 27. Warehouse Application Requirements • To have a system which allows tracking of price, and inventory on hand for all merchandise • To have a system which allows the creation of invoices containing one more merchandise items as a line item on the invoice • To have an invoice which presents total invoice amount and current shipping status What are the nouns in our requirements?
  • 28. Warehouse Application Requirements • To have a system which allows tracking of price, and inventory on hand for all merchandise • To have a system which allows the creation of invoices containing one more merchandise items as a line item on the invoice • To have an invoice which presents total invoice amount and current shipping status
  • 29. Warehouse Application Requirements • To have a system which allows tracking of price, and inventory on hand for all merchandise • To have a system which allows the creation of invoices containing one more merchandise items as a line item on the invoice • To have an invoice which presents total invoice amount and current shipping status
  • 30. Warehouse App Data Model Invoice Number Status Count Total INV-01 Shipped 16 $370 INV-02 New 20 $200 Invoice Line Items Merchandise Invoice Line Merchandise Units Unit Value Name Price Inventory Sold Price Pinot $20 15 INV-01 1 Pinot 1 15 $20 Cabernet $30 10 INV-01 2 Cabernet 5 10 $150 Malbec $20 20 INV-01 3 Malbec 10 20 $200 Zinfandel $10 50 INV-02 1 Pinot 20 50 $200
  • 32. Functions in Formulas • „Pre-packaged‟ operations for performing common logic • Support for commons functions – Math – Text – Date & Time – Logical • Can chain functions together AND ( OR ( ISPICKVAL(StageName, "Closed Won"), ISPICKVAL(StageName, "Negotiation/Review")), ISBLANK(Delivery_Date__c) )
  • 33. Formulas can to define business logic Validation rules Workflow rules Approvals
  • 34. New Requirement: • A user can not buy more items than are in stock Look for assertions.
  • 35. If Then Error Implied on Formula evals Return error record save. true (error) or message false (save) (UI or API)
  • 36. New requirement: When Why • Every time a line item is added to an open invoice we need to update inventory stock counts. What Look for time-based queues.
  • 37. Workflow & Approvals Update Outbound Email Task Field Message
  • 39. New Requirement: • Every time an order greater than $1000 is placed a manager needs to sign off on it. Human (role) interaction
  • 40. Approvals allow Single/Multi/Skip step processes Route based on roles, or queues Approval via emails Automation of manual processes
  • 42. Formulas, Workflows and Approvals Enforce consistency regardless on how you access Force.com Leverage spreadsheet-like logic Automate manual processes Keep data (and compliance) clean
  • 44. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 45. Have data communicate with our users and allow our users to discuss work and share relevant files, all in real time.
  • 46. Chatter An enterprise collaboration tool based on social frameworks Data Feeds Groups Comments, Likes, Mentions File Sharing URL Sharing
  • 48. Share
  • 50. Privacy and Security Home Tab / Profile Page Record Detail Page Only users with Every internal user can see what “Read” access to the you post record can see what you post
  • 51. Chatter Goes Mobile Tap into mobile success with Chatter
  • 52. Chatter Components chatter:follow chatter:newsfeed chatter:feed chatter:followers chatter:feedAndFollowers
  • 53. Chatter Triggers if(feed_text == „promote‟) { rec.status__c = “Approved” addToEmailPromotion(rec); FeedItem post = new FeedItem(); post.ParentId = rec.Id; post.Body = „Record added to promotion‟; feedsToInsert.addITem(post); }
  • 54. Chatter API Create third party integrations using the RESTful Chatter API https://rhatter.heroku.com
  • 55. Chatter Hands On Tutorial
  • 57. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 58. Create a custom mobile interface for warehouse employees to track inventory from mobile phones
  • 59. Salesforce Mobile No additional development, admin configured and controlled Mobile HTML Application Web development skills required, easily made for multiple devices and screens Mobile SDK Development Offers access to device functionality and can create the most fast performing applications
  • 60. Create a custom mobile interface for warehouse employees to track inventory from mobile phones
  • 61. Create a data driven web page that is designed for mobile devices Mobile HTML Application Web development skills required, easily made for multiple devices and screens Mobile SDK Development Offers access to device functionality and can create the most fast performing applications
  • 62.
  • 63. Model View Controller (MVC) Pattern Model Controller View
  • 64. Model View Controller (MVC) Pattern Your Data Your Logic Your Interface
  • 65. Model View Controller (MVC) Pattern Custom Objects Apex Visualforce
  • 66. Create a custom mobile interface for warehouse employees to track inventory from mobile phones
  • 67. Apex cloud-based programmatic language with direct access to Force.com data Java like syntax supporting interfaces, scoping and annotations Directly accesses and manipulates data via SOQL and DML Can be scheduled, run asynchronously, or set in batch mode Can send, receive and parse emails, HTTP callouts, SOAP, and JSON Can be exposed as a web service or REST endpoint
  • 68. Apex Class Anatomy Class and Interface based public with sharing class myControllerExtension { private final Account acct; Scoped Variables public Contact newContact {get; set;} public myControllerExtension(ApexPages.StandardController stdController) { this.acct = (Account)stdController.getRecord(); } public PageReference associateNewContact(Id cid) { newContact = [SELECT Id, Account from Contact WHERE Id =: cid LIMIT 1]; newContact.Account = acct; Inline SOQL update newContact; } Inline DML }
  • 69. What can you do with Apex? Controllers Custom API and Inbound/Outbound HTTP Callouts Email Services Database Triggers Scheduled and Batched Tasks
  • 72. Apex cloud-based programmatic language with direct access to Force.com data Governor limits enforces neighborly behavior 75% Unit Testing maintains production level integrity Sandbox environments allow for safe development Unit tests, pre-release environments and pilots aid three release cycle
  • 73. Create a custom mobile interface for warehouse employees to track inventory from mobile phones
  • 74. Visualforce A component based framework for building user interfaces with web standards like HTML, CSS and JavaScript Bind logic with Controllers Associate data directly with Components Create custom Components and Templates Utilize popular web technologies like jQuery and Flash
  • 75. Binding Logic Inherit CRUD Operations Extended functionality <apex:page standardController=“Merchandise__c” extensions=“checkUser,logVisit” > Standard or Custom Object
  • 76. Binding Logic Extended functionality <apex:page controller=“InventoryController” extensions=“checkUser,logVisit” > Completely Custom Logic
  • 77. Component Anatomy apex, chatter, social or c prefix Bind data directly on the page <apex:inputField value=“{Contact.FirstName}” > Attributes specify further functionality
  • 82. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 83. Create a website to market our products that is easily maintainable even without technical support.
  • 84. Site.com A visual design studio for creating public websites with 100% uptime Graphic Design Tools WYSIWYG Editing Content Management System Content Publishing Controls
  • 85. Site.com Build, Manage, and Publish Your Websites Websites Landing Pages Mobile Sites Social Pages
  • 86. Data Driven Content Database without Code Data Repeater Leverage existing Salesforce data and extend Quickly create lists and tables that publish any database to manage any structured web content data in real-time. Apply filters, sorting, and limits Records in Salesforce Data on website
  • 87. Form Driven Data Web Forms without Code Records in Salesforce Drag & Drop to create a form to capture data for Capture web form results in any object: any object. leads, registrations, complaints, etc. Web Form Records in Salesforce
  • 88. Publish Websites with Confidence The same trusted infrastructure that already powers 30,000 websites Preview Stage sites to share with colleagues for feedback and cross-browser testing Publish Map your domains to your sites, and publish finished sites to the Force.com cloud. No Planned Downtime Web requests are processed in real-time, and Global Server Load Balancing ensures that websites function even during Salesforce.com maintenance windows. High Performance Integrated Akamai CDN (Content Delivery Network) uses a global network of caching servers to deliver optimum performance as your traffic grows.
  • 89. HP on Site.com “…gave me the agility to add pages and change content at the speed of Twitter.” Manvir Sandhu Director of Marketing, HP 3000 unique landing pages 30% increase in sign-ups $200M demand generation Instant changes
  • 90. FICO on Site.com Created stand-alone website to drive registration for annual conference Site was built in Site.com in 4 days vs weeks on corporate SharePoint site Marketers now update event details and speakers bios without IT help On track to triple registration Now able to build custom landing pages for target segments “… gave us the freedom to make the website I‟ve wanted for years.” Jamie Nelson FICO Senior Mgr, Web Publishing and Governance
  • 93. API Integration with Heroku Java
  • 94. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2011 and in our quarterly report on Form 10-Q for the most recent fiscal quarter ended July 31, 2011. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 95. Create an external Java-based endpoint with authenticated, bi-directional communication to process invoice fulfillments
  • 96. Notify on Closed Invoice Send Order Confirmation ID Relay Updated Invoice Info Force.com Warehouse Fulfillment System Create an external Java-based endpoint with bi-directional communication to process invoice fulfillments
  • 97. Create an external Java-based endpoint with authenticated, bi-directional communication to process invoice fulfillments
  • 98.
  • 99. Polyglot framework PaaS architecture which allows for multiple language to be deployed
  • 100.
  • 101. Github Repo Heroku Pull / Push Push Deployments Development Changes Monitor Application Local Repo $ git push heroku master Counting objects: 67, done. Delta compression using up to 4 threads. Compressing objects: 100% (53/53), done. Writing objects: 100% (67/67), 26.33 KiB, done. Total 67 (delta 5), reused 0 (delta 0)
  • 102. Create an external Java-based endpoint with authenticated, bi-directional communication to process invoice fulfillments
  • 103. OAuth
  • 104. OAuth An industry standard method of validating user credentials while avoiding password anti-patterns.
  • 105. OAuth2 Flow Sends App Credentials User logs in Token sent to Callback Remote Force.com Application Confirms token Platform Send access token Maintain session with refresh token
  • 106. Create an external Java-based endpoint with authenticated, bi-directional communication to process invoice fulfillments
  • 107. curl https://na1.salesforce.com/services/data/v20.0/query/?q=SELECT+name+from+Account -H "Authorization: OAuth token" -H "X-PrettyPrint:1" { "done" : true, REST API "totalSize" : 14, "records" : [ { "attributes" : { "type" : "Account", "url" : "/services/data/v20.0/sobjects/Account/001D00 0000IRFmaIAH" }, "Name" : "Test 1" }, { "attributes" :
  • 108. Representational State Transfer A stateless data transport based on standard HTTP methods for delivering as JSON or XML
  • 110. Apex REST Annotations allow developers to develop custom endpoints for the REST API
  • 111. Overview of Force.com API Services Apex REST Apex SOAP REST API SOAP API Bulk API Streaming API Protocol REST SOAP/WS REST SOAP/ REST CometD DL WSDL Data Format JSON/XM XML JSON/X XML CSV/XML JSON L ML Client HTTP SOAP/WS HTTP SOAP/WS HTTP client CometD libraries/ client DL library client DL library (lightweight) JQuery tools (lightweight) (lightweight) Data Volume Medium Medium Medium Large Very Large Small- Large Sync/Async Sync Sync Sync Sync Async Stream
  • 112. Bulk API Asynchronous API for handling large amounts of XML based data
  • 113. Extract Transform Load (ETL) A type of toolset which allows for the easy migration and manipulation of data between different systems
  • 114. Streaming API A Bayeux implementation to provide real-time data updates to clients
  • 115. Use Case Quiz Implement a third party .Net server by creating classes via a WSDL file SOAP Create a lightweight API for a mobile native client REST Insert or update 50,000 records daily from a .csv file BULK Create a web page which will automatically notify the user when new cases arrive, without reloading STREAMING
  • 116. Integration with Heroku Java Tutorial

Notes de l'éditeur

  1. Based on Platform First Call deck
  2. Our industry is constantly shifting, and that shift continues today.We have seen the industry change from mainframe computing and mini-computing in the 60’s and 70’s, to client server and desktop cloud computing in the 80’s and 90’s. In the 2000’s, Steve Jobs led the shift with iPhones and iPads to mobile cloud computing.Now we’re in the middle of a major shift in computing. We call it the Social Revolution.Visionaries like Mark Zuckerberg at Facebook and Jack Dorsey at Twitter are leading this shift to social. The enterprise computing world needs to change and transform as well.
  3. This is (musician). In 2003, United Airlines broke his guitar while handling luggage. He wrote a very funny song about it, and posted it to YouTube.
  4. I want to tell you about Steve. In 1954, Steve did a very cool thing – he invented the digital camera. Everyone who has a camera on their phone to snap pics can thank Steve, at least partially. When the digital camera was invented, there was no Internet to upload files to, there was no Facebook or twitter to share pictures with. It was just a very cool change to the way people did things.We’ll get back to Steve in a bit.
  5. Let’s get back to Steve. This is how fast and disruptive technology changes can be – if you aren’t ready for them, if you aren’t equipped to deal with them. Kodak should have been in a better position than anyone to deal with rise of digital, but they didn’t change and adapt fast enough.
  6. So as you can see, not all of these change are easy for the enterprise. They can be very disruptive. Not long ago, most CIO’s said they wouldn’t by their workforce a tablet for corporate use. Now most of them have. It’s time to start thinking about the kinds of tools your users and customers will require to be successful in this new mobile, social age.
  7. Fast forward – social media dominates the web, we spend more time on Facebook and YouTube now than we ever did doing what was traditionally the ‘net’s big use – searches.
  8. The Social Revolution is also about this incredible shift in mobility. There will be over 1.8 billion mobile devices by 2014 while desktops and laptops are remaining stagnant.Analysts predict Apple will ship fifty-six million iPads shipping this year. Tablets and mobile -- we&apos;re in the post-PC revolution now.
  9. In the consumer space, Cloud platforms are already innovating the world of consumer apps.
  10. Enterprise cloud app platforms are becoming a standard requirement for IT. IDC predicts up to 80% of all new commercial applications will be deployed on cloud platforms in 2012. Cloud platforms are rapidly becoming an IT “must have” for delivering innovation into the business. With the ability to build and deploy a new class of business applications that are mobile, social and realtime at far faster speed and that ever before, Cloud app platforms promise to change the IT landscape forever.Additional notes from the IDC report:(http://www.idc.com/getdoc.jsp?containerId=prUS23177411)“last year we predicted that 80% of new applications developed in 2012 would be developed for the cloud. We predict that in 2012, that number will go even higher. The traditional model for enterprise application distribution and deployment is quickly being obsoleted by the cloud PaaS/app store model, which is far less complex and costly for developers. The eventual dominance of cloud distribution and deployment of solutions”
  11. Today we’ll look at four major areas of the Salesforce Platform:Force.com is the cloud platform for building innovative and customized business apps quickly and easily.Custom Force.com apps are more social, mobile and user-friendly. As a result, businesses develop new and innovative best practices, automate old processes, and increase employee collaboration and productivity.For maximum flexibility and choice, Force.com offers both a declarative programming model for business users – which provides visual tools for rapidly build apps without code – and a programmatic interface for developers to write custom business logic in the cloud.Heroku is the polyglot cloud platform for building social, mobile and real-time apps to engage with customers in entirely new ways. The appetite for cloud apps has never been greater, and Heroku allows companies to deliver the cutting-edge brand (and app) experience that consumers have come to expect.Chatter Site.com is for building public websites. Its the world’s first and only cloud content management system built for the social enterprise. It allows companies to market at the speed of social.Site.com changes the game for marketers, providing a comprehensive studio and visual tools that allow users to create content once and publish in seconds across a company’s corporate sites, mobile sites and public social networks.Heroku lets app developers spend 100% of their time on their application code, using their choice of the most popular languages and frameworks, to create that optimal end-user experience. Heroku takes care of everything else
  12. The first step is defining what a cloud platform is. Today, it seems every technology company has attached a “cloud” brand to its product line. But not all cloud platforms are the same. The first question to ask is whether your cloud platform requires you to install, manage, or upgrade any type of server. If the answer is yes, you are not dealing with a true cloud platform. Let me explain:The average IT budget of a med to large enterprise is spends about 20-30% on hardware; physical servers and boxes that must be procured and upgrades every 3-5 years. Technologies like virtualization, infrastructure as a service, and hosting address this issue. They can save a company 10-20% by abstracting away the cost and complexity of physical hardware. This is a good cost cutting strategy that most enterprises have already accomplished. The real hidden costs is the massive, layered house of cards of software companies have to install, patch, maintain, and worse of all…upgrade. It’s the DB servers, app servers, messaging servers, directory servers that equal millions of lines of code that must be maintained in order to work together that eat up over 70% of the IT budget. And its not the licensing cost of the software itself. It’s the labor costs to maintain it. As the CIO of Symantec expressed “I spend 90% of my IT budget just keeping the lights on”. This leaves virtually no room for IT innovation. And every year it gets worse. The Salesforce platform provides an alternative. The Salesforce Platform is a true Platform as a Service. It removes the complexity and cost of both the hardware and the software infrastructure stack allowing IT departments to focus much more of their time and resources towards delivering innovation and value directly back to the business. With Salesforce there are absolutely no hardware or software servers to buy, install, manage, or upgrade. The result is a platform for business transformation. A platform that finally changes the economics of IT forever.
  13. Cost cutting is not enough. Business are looking for new ways to drive top line growth. They want to engage customers, employees, and partners in fresh and innovative ways that increase productivity, open new revenue channels, and improve cross selling and up selling. Cloud app platforms allow companies to build app they did not think possible just six months ago. Modern apps have three defining characteristics:SOCIAL: New social apps that increase internal collaboration, run on public social networks, and engage customers in exciting new ways. Customer examples: GE, Belkin, Kelly Services, Kimberly ClarkMOBILE: Every business application today must run on a growing list of mobile devices including smart phones and tablets. Apps must intuitively understand which devices they are being displayed on and resize automatically. They must be able to use the native services of the device like the GPS, camera to create new benefits for mobile workers. Customer examples: Zimmer, Genentech, RehabCare, ServiceMaxREAL TIME: Business is moving faster than ever before. Applications must deliver information in real-time, as it happens. Its not longer enough to see what happened yesterday. Business leaders must see what happens instantly and be able to respond at a moments notice. The Salesforce platform is a modern cloud platform so, like consumer platforms Facebook and Twitter, it is designed to always operate in real-time with live feeds, event notifications, and real-time dashboards and reports. Customer examples: Avon, ASICs, Groupon
  14. We have rebuilt our whole architecture to create a social enterprise architecture and it is powered by the Salesforce Platform.We built Database.com, which was the first socially enabled database as a cloud service, right on the internet itself.Data.com makes sure that the data in your databases is as clean and as clear and as consistent as possible and that you&apos;re following the global data policies and having the compliance in the world. So, you have the data you need to be successful. Heroku allows you to build customer social apps for the social enterprise.We built Force.com to build employee social applications for the social enterprise. All of this is wrapped with Chatter, enterprise collaboration for the social enterprise.On top of that is our sales cloud, our service cloud, or marketing cloud, and our work applications.This is our core architecture and this came from this transformational work with Toyota. Amazing! That is amazing.
  15. What are the most common apps built on the platform? We break them down into four major use cases:First is automating critical business processes. A critical process is one that directly adds value back to a company. Good examples are employee recruiting and onboarding, franchise management, or even digital marketing. Often these critical processes are being managed with inefficient paper based solutions, excel, or even an outdated technology like Lotus Notes or Access databases. Often these processes can be stand alone but sometimes they are integrated. The second major use case is what we call “Social Front Ends”. Social Front Ends are applications that extend the value of legacy data or systems such as ERP, Data Warehouses, or even Mainframes. Social Front Ends are one of the most popular use cases for the platform. They help companies maximize their investments from their legacy systems by allowing them to build a layer of agility around them using a cloud platform. As at the apps become more focused on the customers, Social Websites are a major use case for our platform. Customers can rapidly build external customer, partner, mobile and micro sites with the Salesforce Platform that are preintegrated with their salesforce data and require no additional hardware or software servers. Finally, is one of the most exciting and innovative use cases for the platform. Customer Social Engagement. Today companies are looking for fresh new ways to engage and interact with their customers. They are trying to reach them where they spend most of their time in social networks like Facebook. Social Engagement Apps allow companies to build applications that engage customers in realtime across new social channels. Lets take a look at a few customers each use case:
  16. One of our most important goals is to create a seamless experience across the range of devices that you might use in a normal workday.It’s not uncommon for someone to work in different modes – at a customer’s location, while traveling, or away from your desk in a meeting room at your office.In a typical user’s day, youmight start your day on your mobile device checking your dashboards and calendar in Salesforce while standing in line for coffee.Next, you might spend an hour or two at your cubicle using a laptop or desktop to do tasks in Salesforce that require heavier data entry like creating a presentation or drafting a document.Finally, you might hit the road for sales appointments, taking only your tablet, which allows you to travel light and still do everything you need to do, like sharing presentations and updating account information.You’re interacting with Salesforce at every point in yourday through a range of devices, but the look and feel remain consistent providing continuity in a seamless computing experience.
  17. With the Salesforce platform, you can make every process social. Since Chatter is an integrated function of the platform, every application and process is automatically collaborative and social. Every application includes live feeds, social profiles, integrated content mgt, and custom logic. The Chatter API means you can easily integrate events and feeds from external systems into your app to keep an enterprise view of the process. The result is the ability to work together across traditional organizational barriers such geographies and multiple departments.
  18. One of the ways we make sure app development is as easy and quick as possible is providing a full suite of reusable services. The first place to go before building your custom app is the AppExchange. It is filled with over 1000 third party apps built by our platform ecosystem. In many cases, customers can find a prebuilt app available for free or a small charge that will eliminate the need to build it themselves. http://appexchange.salesforce.com/homeWhen building apps in the Force.com environment, there are services for Uis, dashboards, mobile devices, globalization, collaboration, content, and integration. The reusable services in the Force environment make it the fastest way to build business apps. For professional developers using Heroku, there is a full library of development plug-ins that allow you to add powerful functionality to your apps with ease.https://addons.heroku.com/
  19. The Salesforce platform give customers the choice of how they want to build applications. Business analysts can rapidly build applications in the native Force.com environment. Anyone who can understand how to do a macro in excel can build enterprise class business applications in only days. For professional developers, the Heroku service allows them to write code in their choice of language. Whether its Ruby on Rails, Clojure, or PHP, developers now have the ability to write their code, then deploy it instantly, without the need for software or hardware servers.
  20. With a subscriber base that has grown in the past 12 years to serve well over 100,000businesses and millions of users, the Salesforce Platform has proven its ability to scale. The Platform now processes more than 40 billion transactions per quarter, more than half of which are through the API.Why traditional software doesn’t scaleWith traditional software, developers make assumptions about how the application will be used, especially about how people will organize their data. When all those assumptions prove to be true, the application tends to perform well. If those assumptions don’t hold true (or if the developer doesn’t make assumptions but only provides a set of configuration options), the app needs to be “tuned.”The tuning is never done by the original developers, however, because that approach doesn’t scale. Instead, customers usually hire consultants, who conduct a lengthy evaluation and education process and then do their best to tune the app. Over time, the way the customer uses the app changes, requiring more tuning.How our multitenant platform delivers scaleIn a multitenant, cloud computing environment, there is effectively one platform that serves the needs of all customers. The developers who originally wrote the code can constantly tune the platform and even re-architect it based on real-world usage data. Compare this approach to on-premises software, where the developers never know how the platform is actually used.We constantly monitor for performance issues related to such things as database queries and search. If there is an issue, our performance team evaluates it and then sends it directly to the development team. Frequently, the issue is addressed before customers even know it exists.Because the development team is intimately aware of the app’s real-world performance, we can significantly re-architect major subsystems to provide dramatic performance improvements. For example, in the last 12 months, we have sped performance time from an average of 300ms to 250ms while exponentially growing the amount and complexity of the apps running on the platform - 10 Billion requests/quarter to over 40 billion requests/quarter over the last 2 years.
  21. The results are clear. The Salesforce Platform is an IT transformation engine. It gives IT the power to build more innovative apps. Each application takes fewer resources to build and maintain. Perhaps most importantly, companies can make changes instantly creating a level of business agility never before possible. And finally the total cost of ownership for a cloud based application is less than half the cost of an on premise application. Its is no surprise that every successful IT strategy now includes a cloud platform option. IT departments of all sizes are standardizing on the Salesforce platform as their platform for innovation. Enterprise application development has been forever transformed. Traditional on premise platforms are proving too complex, too slow, and too expensive fortodays social world. A new model based on the three major disruptions in IT, cloud, social, and mobile, has emerged to address these problems. The Salesforce Platform is the product of over 12 years of unwavering focus and dedication to delivering the world standard for enterprise application development.
  22. Enterprise cloud app platforms are becoming a standard requirement for IT. IDC predicts up to 80% of all new commercial applications will be deployed on cloud platforms in 2012. Cloud platforms are rapidly becoming an IT “must have” for delivering innovation into the business. With the ability to build and deploy a new class of business applications that are mobile, social and realtime at far faster speed and that ever before, Cloud app platforms promise to change the IT landscape forever.Additional notes from the IDC report:(http://www.idc.com/getdoc.jsp?containerId=prUS23177411)“last year we predicted that 80% of new applications developed in 2012 would be developed for the cloud. We predict that in 2012, that number will go even higher. The traditional model for enterprise application distribution and deployment is quickly being obsoleted by the cloud PaaS/app store model, which is far less complex and costly for developers. The eventual dominance of cloud distribution and deployment of solutions”
  23. Safe Harbor, yadayada
  24. Let’s start with our core requirement: we need to be able to create an application on a platform that lets us get up and running quickly and easily…
  25. What do we mean when we say “declarative” apps – what kind of functionality falls under this?
  26. Let’s have an exercise in requirements gathering. Here is some of the core needs for our Warehouse application. What nouns here should we be looking at to model our data with?
  27. These nouns are going to drive our objects – the backbone of our data model, even the relationship.
  28. These describe the kinds of fields we will need to track.
  29. Here is an overview of what our data model will look like. Recommended: Break into a demo of building data in the browser, either custom object wizard or schema builder depending on audience/workbooks
  30. So that’s how easy it is to model your data in the cloud – but what about adding logic?
  31. Formula fields work like formulas work in Excel spreadsheets.The formula here insists that a delivery date is needed for these stages.
  32. Formulas are the building blocks of creating our business logic declaratively, and you’ll see them appear again throughout the day.
  33. Let’s go back to our requirements.What makes this a great candidate for a validation rule?CLICK: The presence of an assertion. The result of our rule must satisfy this assertion – effectively a TRUE or FALSE result.Sometimes you need to look for positive assertions. Eg: a user can only buy more items than are in stock. And why are assertions (and validation rules good) – they enforce data quality (at the data level)
  34. Validation rules are always in 3 parts IF-&gt;then-ERROR.Let’s have a look how this is implemented in Force.com - flip to the app now and check out the check_inventory rule on LineItem
  35. Let’s go back to our requirements.What makes this a great candidate for a workflows? ASK AUDiENCECLICK: The presence of time. A great way to construct your workflow is to use the WHEN-&gt;WHY-&gt;WHAT method. CLICKCLICK
  36. Automated, time based processes that can integrate into backend systemsGreat for consistency, and removing human involvementEg:
  37. When you build your app, you will see in the workbook, the Force.com UI for creating workflows mirrors this idea of when why what.
  38. The tutorial for this section is either:Schema Builder TutorialForce.comWorkbok #1, #2 and #3
  39. What is Chatter and what are some of the features it provides?
  40. Let’s follow a common user flow for leveraging Chatter. First, you need some things to follow. Could people, groups, files or even records you have access to.
  41. Ready to collaborate? Have that new presentation you need feedback on? Find a newsworthy article? Share it with your team.
  42. Now you leverage a real discussion to get your job done.
  43. How does privacy work with Chatter? Can you accidentally share a record I’m not supposed to see?
  44. A lot can happen when you leave the office. With Chatter for iPhone and BlackBerry®, you’ll stay on top of late-breaking updates and keep co-workers informed of your activities from the road. Know immediately when records you’re following are updated, respond to posts on your wall, and poll the group for fast answers to customer question.
  45. We’re going to look at Visualforce later, but let’s have a bit of a preview here. Visualforce is our user interface framework in the cloud, and it knows all about Chatter.
  46. Want to make Chatter smarter? You can extend it with Apex Triggers to associate highly custom behaviors. Here if someone adds a hash tag “promote”, Apex will automatically add it to the promotion and even update the record to let everyone know it just did that. We’ll also be doing a deeper dive into Apex and triggers today as well.
  47. We were talking about powerful API’s in the intro. Chatter is no stranger to that either.
  48. Let’s talk about anatomy, specifically the anatomy of an application. If you are going to build something which is easy to maintain in an enterprise setting, how would you do it? What would be the bones, muscle and skin of your application?
  49. The MVC pattern is one of the most commonly used design paradigms to create enterprise web applications. It neatly divides and conquers the application into distinct components to solve specific problems.
  50. Specifically it keeps your data, your logic and your interfaces distinct while allowing them to interoperate. Think of your data like the bones of an animal – it defines the structure of what that animal will be, but it doesn’t need to know how to move around. Logic, your muscle, will do that for it. But Logic isn’t worried about appearances – that’s what your interfaces … the skin of your application … is for.
  51. On the Force.com platform, we give all the tools to get this done. You’ve already seen custom objects, now let’s look into what makes that work with Apex and Visualforce to give your applications logic and a UI.
  52. Hiding these slides to keep the overall time down, but they’re here if someone is confused about SOQL.First – how should we access our data? If you are going ask a question like “I need the last fifteen records that I modified” – you need a structured way to ask that question to the system.
  53. Let’s take a look at how SOQL is structured to create queries.
  54. Or specifically, how can we find our Smiths?
  55. You can also add child relationships
  56. So we know how to get our data. What can we do with it? With Apex, it might be easier to ask what you can’t do with it.
  57. For those unfamiliar with OO, here’s what a simple class structure looks like.NOTE: If you’re using this slide deck for a very technical audience, breeze through this section and get to meatier features of Apex.
  58. For those unfamiliar with OO, here’s what a simple class structure looks like.NOTE: If you’re using this slide deck for a very technical audience, breeze through this section and get to meatier features of Apex.
  59. Define the class itself, this will identify the code for the system so that it can be easily be found and used.
  60. Set a couple variables.
  61. Define a method and the parameters it will accept.
  62. And then roll in your logic. Now, two things here –1 … I can use SOQL directly within Apex. Remember when we said it had direct access?2 … I can modify it directly.
  63. How about security and sharing? Anyone want to guess what this will do?
  64. Let’s have a look at what Apex looks like. We are going to build the worlds most simple Apex Class, HelloContacts. This is a great example for seeing how we can use the new Developer console within Force.com to code completely in the cloud. Much of the workbook will talk about use the Force.com IDE, an eclipse-based development environment. For today however, we are going to use the developer console. Talk through dev console with the repository view, highlight SOQL (we are going to need that to achieve our requirements) then execute the class and show how to use the log viewer to see execution time etc.
  65. OK. We can do all of this powerful logic, right in our cloud – right from your web browser. It seems just too easy, right?There’s a catch. Think about an airport, and all the planes that are flying in the airspace and their trajectories and where they are heading and where they are going. Imagine being a pilot in that situation trying to land without an air traffic control tower.Force.com is an enterprise class multitenant architecture. We have a lot of planes in the air, and they all have places to go – but we get them where they are going, we do it safely and securely, and we’re doing it faster and faster with every release. We do this with some pretty excellent technology, but we also put some limits on what some of the our technologies like Apex can do. This makes sure someone isn’t able to fly a big, huge jet really quickly right through the middle of everyone’s path.
  66. So what are some of those things?
  67. OK, we have our bones and our muscle – what about our skin?
  68. Specifying a standard controller allows you to inherit standard crud operations such as save(), delete(), update() etc. You can also choose StandardListController to work with a collection of records. If you want to just use a custom controller, simply say controller=“myobject”Standard or custom objects are supportedExtensions are your friend. You can still leverage the standard controller operations, but add your own functions, extensions etc. Best practice is to use multiple extensions and encapsulate your functionality into indiv classes. This uses the Chain of Responsibility pattern.
  69. Specifying a standard controller allows you to inherit standard crud operations such as save(), delete(), update() etc. You can also choose StandardListController to work with a collection of records. If you want to just use a custom controller, simply say controller=“myobject”Standard or custom objects are supportedExtensions are your friend. You can still leverage the standard controller operations, but add your own functions, extensions etc. Best practice is to use multiple extensions and encapsulate your functionality into indiv classes. This uses the Chain of Responsibility pattern.
  70. Similar syntax to JSP and other tag libraries.Standard components include partial refresh with ajaxCommon components = datatables, forms, repeaters, etc.
  71. Let’s take a look at what happens when you put all this together.Note the mobile link, seque to…
  72. Publish data like: Products Partners Locations Events Press releases Job listings Anything!
  73. Publish data like: Products Partners Locations Events Press releases Job listings Anything!
  74. Recommended Demo: Show them how to turn Site.com on, create a quick site and modify some assets. It’s simple – but it will speed them along for the tutorial.
  75. “An external design team provided the PSD files and a style guide, but we were able to implement the site in-house. We are using repeaters to publish info from standard and custom objects in our Foundation instance as well as the forms integration”For this, I’d just jump to the full version in the browser. It’s a great example of a “baked cake”.