Environment & Release Management
Upcoming SlideShare
Loading in...5
×
 

Environment & Release Management

on

  • 2,241 views

 

Statistics

Views

Total Views
2,241
Views on SlideShare
2,241
Embed Views
0

Actions

Likes
0
Downloads
61
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Environment & Release Management Environment & Release Management Presentation Transcript

  • Environment & Release Management May 2008
  • Safe Harbor Statement
    • “ Safe harbor” statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements the achievement of which involves risks, uncertainties and assumptions. If any such risks or uncertainties materialize or if any of the assumptions proves incorrect, our results 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 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 the integration of Sendia Corporation’s technology, operations, infrastructure and personnel with ours; unexpected costs or delays incurred in integrating Sendia with salesforce.com, which could adversely affect our operating results and rate of growth; any unknown errors or limitations in the Sendia technology; any third party intellectual property claims arising from the Sendia technology; customer and partner acceptance and deployment of the AppExchange and AppExchange Mobile platforms; interruptions or delays in our service or our Web hosting; our new business model; breach of our security measures; possible fluctuations in our operating results and rate of growth; the emerging market in which we operate; our relatively limited operating history; our ability to hire, retain and motivate our employees and manage our growth; competition; our ability to continue to release and gain customer acceptance of new and improved versions of our CRM service; unanticipated changes in our effective tax rate; fluctuations in the number of shares outstanding; the price of such shares; foreign currency exchange rates and interest rates.
    • Further information on these and other factors that could affect our financial results is included in the reports on Forms 10-K, 10-Q and 8-K and in other filings we make with the Securities and Exchange Commission from time to time, including our Form 10-K for the fiscal year ended January 31, 2006. These documents are available on the SEC Filings section of the Investor Information section of our website at www.salesforce.com/investor .
    • Any unreleased services or features referenced in this or other 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 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, except as required by law.
  • Agenda
    • Environment and Release Management
  • Refreshable Sandbox Environment: The Technology Development Training Testing
  • Environment Capability Sandbox Sandbox with Data
    • Production Copy - Full Configuration and Data can be promoted to Sandbox for testing and/or training
    • Support – Sandbox receives the same world-class support as the Production environment. Salesforce.com is available to address all customer issues associated with Sandbox
    • Sandbox Refreshment - Sandbox refresh is a batch process, similar to the customer experience of loading leads, accounts or contacts. The customer will receive an automated email when their refresh request has been processed. Actually processing time will vary depending on the size of the customer’s production environment.
    • Separate Hardware - Sandboxes exist on a completely separate set of Web, database, application, API, cache, and search servers in order to minimize any negative impact on the live production instances.
    • Restricted End-User Access - To prevent users from inadvertently logging into or receiving email notifications from the sandbox environment, usernames and email addresses on those servers are automatically modified (with the exception of the user who requested the sandbox copy). Administrators can open up access to additional users if desired after the copy is made.
    Sandbox Config Only
    • Config Only – With Summer 07 release, our UE customers are now able to have up to 5 configuration only sandboxes. The config only sandboxes are limited to 500MB storage
  • Single Click Force.com Sandbox
  • Move Your Apps’ Configuration and Code from Sandbox to Production Multiple Sandbox Environments Production Deployment Develop Test Train Version Control IDE CVS
  • Refreshable Sandbox Environment: The Process
    • Refresh Sandboxes
    • Parallel Development in Config Only Dev Orgs
    4. User Testing in Full UAT Sandbox
    • Updated Production Configuration
    Source Control One-Click Refresh CVS
  • Environment Architecture - Example
  • Environment Architecture – Example
  • Environment Considerations Environment Considerations
    • QA/UAT Environment Considerations
    • Data – Transactional and Reference data need to be refreshed regularly for test cycles
    • Users - Will require 1 test login per role to test functionality
    • Interfaces - Environment will need to interface with legacy environments
    • Performance Testing - Full data loads and interface testing are required
    • Middleware integration - Multiple middleware environments to interface with for testing
    • Bug/fixes - Will need to be promoted from Development to Test
    • Training Environment Considerations
    • Training Data - Unique / controlled data set is required
    • Refresh Strategy - Data will need to be refreshed after every training session
    • Users - Approximately 30 training logins will be required
    • Interfaces - Environment will not need to interface with legacy environment
    • Phased Training - Training will continue after users are live on system
    • Foundation Environment Considerations
    • Data – Data will need to be manually loaded as appropriate for unit testing purposes
    • Interfaces - Environment will need to interface with legacy environments
    • Configuration Synchronization – changes made to the development environment for Pilot or Fast Track items must be kept in sync with foundation instance
    • Development Environment Considerations
    • Data – Data will need to be manually loaded as appropriate for unit testing purposes
    • Unit Testing – Environment will need to interface with legacy environment is unit testing must include this
  • Traditional SDLC Process * Dates to be determined after completion of BRD FRD Sign-Off <xx/xx> IT Analysis <xx/xx> Execute Commit <xx/xx> TARGET In-Production Date <xx/xx> Concept Commit <xx/xx> Sign-Off Use Case <xx/xx> FRD Complete<xx/xx> Bus. Case Suite Complete <xx/xx> * Business Acceptance Test Sign-Off * UAT & Readiness Review (Business & IT) User Enablement Engagement <xx/xx> Traditional SDLC process is primarily driven by IT, with input and sign-off from the business Analyze Design Develop Test Train & Deploy Sample SDLC 1 Business Case Suite Completed 2 Project Plan and Roadmap defined 3 Inter-Program coordination points & dependencies identified 4 Business and IT resources, requirements and efforts coordinated 5 Value Case Updated 6 Global x-functional team in place 7 Quantitative & qualitative metrics defined
  • On-Demand supports existing SDLC processes, but allows for flexibility to deploy more quickly Business Responsibilities Daily Changes
    • Reports
    • Dashboards
    • List View Management
    • Documentation Management
    • User Administration
    • Solution Management
    • Communication Templates
    • Email Templates
    IT Responsibilities Monthly Changes
    • Minor Release : Simple configuration changes that do not impact day to day business or require training.
    • As Required (Target Monthly)
    • Major Release : New Initiatives and other changes that require training or testing.
    • Dates determined by Steering Committee
    • (Target Quarterly)
  • Release Definitions For consistent implementation and support, investment requests should be categorized as immediate, minor or major based on level of effort Release Type Activities Examples Level Of Effort Immediate Release
    • Small changes that can be implemented in a short time span and directly in the production environment as needed
    • Changes can be configured, tested and deployed with minimal impact within a single business unit
    • DOES NOT HAVE TO GO THROUGH CHANGE CONTROL PROCESS
    • New dashboards and reports
    • Field positioning
    • New related lists
    • New roles
    • Data Loads
    • Territory Alignments
    • LOW
    • No additional training required
    • None or minimal impact to integration
    • Potential candidate for Business Administrators
    Minor (Monthly) Release
    • Medium level changes that can be implemented with minor impact to the production environment
    • Changes can be configured, tested and deployed with minor impact to one business unit
    • New Fields
    • New page layouts
    • New custom Objects
    • New org or sub-org in role or territory hierarchy
    • MEDIUM
    • < 1 day of additional training required
    • < 1 week of configuration development
    • IT involvement
    Major Release
    • Large changes that have major impacts to the business or environment
    • Changes requiring a significant interface update, data migration and/or integration impact
    • Major releases should be tracked by a standard naming convention for items such as: Role Hierarchy, Profiles, Page Layouts, Record Types, Sales and Support Processes, sControls
    • Items that do not need to follow naming convention: Fields, Custom Objects, Reports, Dashboards
    • New AppExchange app
    • Process-impacting configuration changes
    • Data migration impact
    • Integration changes
    • Impacts to multiple business units
    • HIGH
    • 1 day of additional training required
    • > 1 week of configuration development
    • > 1 week of integration development
    • IT lead
  • Release Definitions Security Reviews Many Few Simple Difficult Level of Effort Source: Faulkner 2006 Immediate Releases Minor Releases Major Releases
    • Implement immediate changes
    • Owned by individual sub-group
    • Minimal impact to the production floor
    • Minor changes impacting two or more groups
    • Thrice as often as a Major Release
    • Minor impact to training and production
    • Major impact on production and integration
    • Significant changes such as AppExchange development
    • Ali d with alpha / beta platform releases
    • Impact across than one business unit
  • Release Management Scope
    • 5. Application Administration
    • Reports
    • Dashboards
    • Letterhead Templates
    • Email Templates
    • Mail Merge Templates
    • Documents (e.g. images, links)
    • Product Catalog
    • 3. Standard Configuration
    • i. Data Model
    • Custom Objects
      • Properties
    • Custom Fields
      • Picklist Values
      • Field Dependencies
      • Validation Formulas
      • Audit Trail
    • Record Type / Processes
    • Translation Workbench
    • ii. User Interface
    • Home Page Components
    • Tab Names & Label
    • Page Layouts
      • Properties
      • Fields Assignment
      • Related List Assignment
      • Custom Links / SControls Assignment
    • Custom Applications / Tabs
    • Custom Buttons / Links
    • Custom Report Types
    • Search Layout
    • 4. Customization
    • Apex Triggers
    • Apex Classes / Scripts
    • Apex Classes / Email Services
    • S-Controls
    • Visual Force (Pre Release Only)
    • Code reference to specific record id’s
    • 2. Business Rules Automation
    • Workflow Rules
    • Approval Processes
    • Assignment Rules
    • Validation Rules
    • Territory Rules
    • Case Escalations Rules
    • 1. Security & Visibility
    • Security Settings (including SSO)
    • Organization Wide Defaults
    • Sharing Rules
    • User records
    • Profile settings
    • Field Level Security
    • Role Hierarchy
    • Territory Hierarchy
    • Folder Permissions
    • Public Groups
    • Queues
    • Page Layout to Profile Assignment
    • Mobile Administration
  • Deployment Options - Comparison Tables 1. Security & Visibility  = major release / high impact  = within release cycle  = frequent updates Items Pre Production Data Integration ApplicationPackage Meta Data API Calls Third Party Tools (Snapshot) Mercury Script Manual Security Settings   Organization Wide Defaults   Sharing Rules   User records   Profile settings  new only  partial   Field Level Security   Role Hierarchy   Territory Hierarchy   Folder Permission  partial  new only   Public Groups    Queues   Page Layout to Profile Assignment  Mobile Administration  Post Production Sandbox Refresh             
  • Deployment Options - Comparison Tables 2. Business Rules Automation  = major release / high impact  = within release cycle  = frequent updates Items Pre Production Data Integration ApplicationPackage Meta Data API Calls Third Party Tools (Snapshot) Mercury Script Manual Worflow Rules  new only   Workflow Alerts  new only   Workflow Outbound Messages  new only   Workflow Tasks  new only   Approval Processes   Assignment Rules   Validation Rules   Territory Rules    Case Escalations  new only   Post Production Sandbox Refresh         
  • Deployment Options - Comparison Tables 3. Standard Configuration / i. Data Model  = major release / high impact  = within release cycle  = frequent updates *** : Frequent updates for picklist values only. Items Pre Production Data Integration ApplicationPackage Meta Data API Calls Third Party Tools (Snapshot) Mercury Script Manual Custom Object Definitions  new only     Custom Object Properties   Custom Field Definitions  new only  new only    Picklist Values  new only  new only    Field Dependencies  w/ edits  Validation Formulas   Audit Trail  w/ edits  Record Types   Object Processes   Translation Workbench  new only  w/ edits  *** Post Production Sandbox Refresh          
  • Deployment Options - Comparison Tables 3. Standard Configuration / ii. User Interface  = major release / high impact  = within release cycle  = frequent updates Items Pre Production Data Integration ApplicationPackage Meta Data API Calls Third Party Tools (Snapshot) Mercury Script Manual Home Page Components  new only  w/ edits  Tab Names & Labels   Page Layouts  Properties  Field Assignments  Related List Assignments  Custom Links Assignments  S-Controls Assignments  Custom Applications  new only   Custom Tabs  new only   Custom Buttons / Links  new only   Custom Report Types  new only   Search Layouts   Post Production Sandbox Refresh             
  • Deployment Options - Comparison Tables 4. Customization  = major release / high impact  = within release cycle  = frequent updates Items Pre Production Data Integration ApplicationPackage Meta Data API Calls Third Party Tools (Snapshot) Mercury Script Manual Apex Triggers  new only    Apex Classes / Scripts  new only    S-Controls   new only    Code Ref to Record Id’s   Email Services   Visual Force (pre-release only)  new only    Post Production Sandbox Refresh      
  • Deployment Options - Comparison Tables 5. Application Administration  = major release / high impact  = within release cycle  = frequent updates *** : Only for Sandbox Full Copy. Items Pre Production Data Integration ApplicationPackage Meta Data API Calls Third Party Tools (Snapshot) Mercury Script Manual Reports    Dashboards    Letterhead Templates    Email Templates     Mail Merge Templates   w/ edits  Documents (e.g. images, links)    w/ edits  Product Catalog    Post Production Sandbox Refresh       ***  ***
  • Estimated Level of Effort – Comparison Table Deployment Options Dev QA/UAT Prod Training Activities Data Integration Data Load + 0-8hrs Automated Automated Data Load + 0-8hrs
    • After initial setup: Users, Roles, Territories and Public Groups will be uploaded automatically via Role Mgmt Integration.
    Application Package 1-5 minutes per item 1-5 minutes per item 1-5 minutes per item 1-5 minutes per item
    • Create Package by selecting each item
    • Upload Package, Validate Log, Run Snapshot Diff
    Meta Data API Calls n/a 1-5 minutes per item 1-5 minutes per item 1-5 minutes per item
    • Using tools such as Eclipse, drag and drop objects and fields definition from one environment to another.
    Third Party Tools /Snapshot n/a Automated + 0-8hrs Automated + 0-8hrs Automated + 0-8hrs
    • Click of a button transfer of Configuration
    • Validate Log, Run Snapshot Diff
    Mercury Script n/a Automated + 0-8hrs Automated + 0-8hrs Automated + 0-8hrs
    • Recording in Dev, transfer to QA/UAT, Prod
    • Certain items need Mercury script manual edits.
    Manual Entry 5-20 minutes per item 5-20 minutes per item 5-20 minutes per item 5-20 minutes per item
    • Manual Entry from one environment to another
    • *** Estimated level of effort calculated using an average time of configuration by item in minutes. This estimate is only for a comparison basis and subject to change.
    Sandbox Refresh (Post Production Only) 15min to 12hrs*** 15min to 12hrs*** 15min to 12hrs*** 15min to 12hrs***
    • Enter Sandbox Refresh Request
    • ***Depending on number of records and sandbox refresh requests received by SFDC at that time (e.g. TL CRM average time is 30 minutes).
  • Release Management Roadmap - Example
    • Key Activities:
    • Project Team create prototype in cm, sfa or tlcrm sandbox.
    • Project Team run Snapshot Diff to export implementation items.
    • Project Team add design items to PM Org and generate initial design document.
    • Project Team complete design document and submit for approval.
    • Once approved, Release Manager upload implementation items per PM Org.
    • - Release Manager determine deployment strategy.
    Key Activities: - Release manager applies package or run script to Prod. - Release manager coordinates data migration and integration items. - Release manager completes manual tasks. - Release manager run Snapshot Diff to ensure that all configuration are included. - Additional validation via Mercury Testing Tool can be added.
    • Key Activities:
    • Release manager prepares one or many packages or Mercury scripts from Dev and apply them in QA/UAT.
    • Release manager coordinates data migration and integration items.
    • Release manager completes manual tasks.
    • Release manager run Snapshot Diff to ensure that all configuration are included.
    • Additional validation via Mercury Testing Tool can be added.
    Step 1 Step 2 Step 3 Development Cycle Quality Assurance Cycle Deployment Cycle
  • What’s available in the Metadata API?
    • Spring ’08 (152)
    • Planned for Summer ’08 (154)
    • Custom fields
    • Custom objects
    • Apex classes
    • Apex triggers
    • Apex components
    • Visualforce pages
    • S-controls
    • RecordTypes
    • Profiles
    • Field level security
    • Custom applications (tabsets)
    • Custom tabs
    • Documents
    • Folders
    • Package
    • Weblink
    • Email template
    • Letterhead
    • Picklist / RecordType map
    • Custom buttons
    • Static resources
    • Custom links
    • Workflows
    • Page layouts
    • Page layout assignments
    • Home page components
    • Home page layouts
    • Validation rules
    • Approval processes
    • Custom report types
    • Tab and field renaming
    • Button overrides
    • Field dependencies
    • Picklists
    • Dashboards
    • Reports
    • List views
    • Queues
    • Public groups
    • Email attachments
    • Translation
    Other Enhancements to our MetaData API are planned for the future as well