Webinar: Coding in the App Cloud Matthew DeTroia - Platform Sales Ryan Hallman - Director, Platform Solution Engineering Farhan Tahir- Director, Platform Product Management
Interactive Apex Debugging Ryan Hallman Director, Platform Solution Engineering @ryanhallman
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 and in our quarterly report on Form 10-Q for the most recent fiscal quarter. 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.
Debugging on the Platform
History of Debugging Tools on the Platform • 2007: System Log – Raw Text Output • 2010: Apex CSI (Developer Console) – Formatted debug output, integrated with source • 2012: Checkpoints – Inspect the state at a checkpoint – Run SOQL and Apex Code
Developer Console Heap DumpsDebug Logs
Event Monitoring Support Provide better, data-driven support for your end users Audit Improve the security of your data Optimize Fine-tune your application portfolio and business process
Debugging Today Demonstration
Dream for Debugging on the Platform
And now…
Apex Interactive Debugger • Set breakpoints in classes and triggers • View variables – sObject types – Collections – Apex System types • View call stack – Transaction entry point – Triggers due to DML – Method-to-method calls – View variables at all points in the stack • Standard debugging actions – Step in / over / out – Run to breakpoint • Debug output to Console window
Apex Debugger Demonstration
What Took You So Long? TWO KEY PROBLEMS TRUST AFFINITY
A Trust Problem • Service Protection is Critical • Multitenancy – “Plays Well With Others” • Apex Lives in the Transaction
Debugging in the Cloud
Apex Interactive Debugger Details • Only One Debugging Session Per Org • 3 Stopped Debugged Requests • Sandbox Only – Enabled for dev boxes, GS0, and sandbox instances (in prod, blitz, etc…) • Managed Code & Variables Removed – Planned – ISV / Subscriber mode •Debug API internal only for now (coming to customers and partners soon) • There Are Be Cut-Off Points • There is an additional fee for Debugger Sessions (Contact your AE)
Application Lifecycle Management (ALM) for the App Cloud Farhan Tahir Director, Platform Product Management
What is Application Lifecycle Management? Requirements Management Environments Integrated Development Environments Version Control Continuous Integration Release Management
Development environments for agile app development Develop x x x x QA x x x x Integration Test x x Batch Data Test x x Training x x UAT x x Performance and Load Testing x developer developer pro partial copy full copy Sandbox Environments
Sandbox Environments Faster Data Copy Improved Queuing Copy Progress Sandstorm has Arrived! GA Summer ‘15
Sandbox Environments More Control over the Creation of Sandboxes • API for Create, Activate Refresh, Delete • Increased Dev Sandboxes in each Edition • Reduced Refresh Intervals for Full Sandboxes • Post Copy Scripting to get your sandbox ready for use
Release Management Tools Production Environment Sandbox Environment Migrate & Deploy Changes Release Management Change Sets • Point and Click Development • Small Number of Teams and Projects Ant Migration Tool • Multiple Projects and Teams • Automation • External Tool Integration
ALM with Change Sets Production Environment Development Environment Release Management Staging Environment Development Environment Change Set Developer Sandbox Full Sandbox
Agile ALM with Ant and External Tooling Version Control System Development Environment ANT MIGRATION TOOL Version Control Continuous Integration Continuous Integration System Staging CI Build Environment SANDBOX Development Environment Release Management
Metadata & Deployment Tools Scalability Control Tests Quick Deploy
Metadata & Deployment Tools More Control, better Workflows, and API Consistency • Reduce Deployment Test Requirements • More Control over Test Execution • Deploy Multiple Packages at one time • Consistent behavior across API Entities • Increase Performance and Scalability
End State Release Process Production STAGE Dev 01Dev 02Dev 03Dev 04 UAT TEST Project CProject BProject A DEV Arrows show Perforce copy/merge direction Release Path SUSTAIN TRUST Source Control Integrated Environments Development
Coding in the App Cloud
Coding in the App Cloud

Coding in the App Cloud

  • 1.
    Webinar: Coding inthe App Cloud Matthew DeTroia - Platform Sales Ryan Hallman - Director, Platform Solution Engineering Farhan Tahir- Director, Platform Product Management
  • 2.
    Interactive Apex Debugging RyanHallman Director, Platform Solution Engineering @ryanhallman
  • 3.
    Safe Harbor Safe harborstatement 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 and in our quarterly report on Form 10-Q for the most recent fiscal quarter. 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.
  • 5.
  • 6.
    History of DebuggingTools on the Platform • 2007: System Log – Raw Text Output • 2010: Apex CSI (Developer Console) – Formatted debug output, integrated with source • 2012: Checkpoints – Inspect the state at a checkpoint – Run SOQL and Apex Code
  • 7.
  • 8.
    Event Monitoring Support Provide better,data-driven support for your end users Audit Improve the security of your data Optimize Fine-tune your application portfolio and business process
  • 9.
  • 10.
    Dream for Debuggingon the Platform
  • 11.
  • 12.
    Apex Interactive Debugger •Set breakpoints in classes and triggers • View variables – sObject types – Collections – Apex System types • View call stack – Transaction entry point – Triggers due to DML – Method-to-method calls – View variables at all points in the stack • Standard debugging actions – Step in / over / out – Run to breakpoint • Debug output to Console window
  • 13.
  • 14.
    What Took YouSo Long? TWO KEY PROBLEMS TRUST AFFINITY
  • 15.
    A Trust Problem •Service Protection is Critical • Multitenancy – “Plays Well With Others” • Apex Lives in the Transaction
  • 16.
  • 17.
    Apex Interactive DebuggerDetails • Only One Debugging Session Per Org • 3 Stopped Debugged Requests • Sandbox Only – Enabled for dev boxes, GS0, and sandbox instances (in prod, blitz, etc…) • Managed Code & Variables Removed – Planned – ISV / Subscriber mode •Debug API internal only for now (coming to customers and partners soon) • There Are Be Cut-Off Points • There is an additional fee for Debugger Sessions (Contact your AE)
  • 19.
    Application Lifecycle Management(ALM) for the App Cloud Farhan Tahir Director, Platform Product Management
  • 20.
    What is ApplicationLifecycle Management? Requirements Management Environments Integrated Development Environments Version Control Continuous Integration Release Management
  • 21.
    Development environments foragile app development Develop x x x x QA x x x x Integration Test x x Batch Data Test x x Training x x UAT x x Performance and Load Testing x developer developer pro partial copy full copy Sandbox Environments
  • 22.
    Sandbox Environments Faster DataCopy Improved Queuing Copy Progress Sandstorm has Arrived! GA Summer ‘15
  • 23.
    Sandbox Environments More Controlover the Creation of Sandboxes • API for Create, Activate Refresh, Delete • Increased Dev Sandboxes in each Edition • Reduced Refresh Intervals for Full Sandboxes • Post Copy Scripting to get your sandbox ready for use
  • 24.
    Release Management Tools Production Environment Sandbox EnvironmentMigrate & Deploy Changes Release Management Change Sets • Point and Click Development • Small Number of Teams and Projects Ant Migration Tool • Multiple Projects and Teams • Automation • External Tool Integration
  • 25.
    ALM with ChangeSets Production Environment Development Environment Release Management Staging Environment Development Environment Change Set Developer Sandbox Full Sandbox
  • 26.
    Agile ALM withAnt and External Tooling Version Control System Development Environment ANT MIGRATION TOOL Version Control Continuous Integration Continuous Integration System Staging CI Build Environment SANDBOX Development Environment Release Management
  • 27.
    Metadata & DeploymentTools Scalability Control Tests Quick Deploy
  • 28.
    Metadata & DeploymentTools More Control, better Workflows, and API Consistency • Reduce Deployment Test Requirements • More Control over Test Execution • Deploy Multiple Packages at one time • Consistent behavior across API Entities • Increase Performance and Scalability
  • 29.
    End State ReleaseProcess Production STAGE Dev 01Dev 02Dev 03Dev 04 UAT TEST Project CProject BProject A DEV Arrows show Perforce copy/merge direction Release Path SUSTAIN TRUST Source Control Integrated Environments Development