salesforce cloud database by ryan melvin. outline introduction introduction advantages of cloud...

Download Salesforce Cloud Database By Ryan Melvin. Outline Introduction Introduction Advantages of Cloud Computing Advantages of Cloud Computing Major Techniques

Post on 16-Dec-2015

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Slide 1
  • Salesforce Cloud Database By Ryan Melvin
  • Slide 2
  • Outline Introduction Introduction Advantages of Cloud Computing Advantages of Cloud Computing Major Techniques Major Techniques System Architecture System Architecture System Design System Design Implementation Implementation What I learned What I learned Demo Demo
  • Slide 3
  • Introduction What is Salesforce? What is Salesforce? - Salesforce is a cloud-computing infrastructure that enables businesses and users to use software and applications over the internet - Salesforce is a cloud-computing infrastructure that enables businesses and users to use software and applications over the internet - Rather than running software and applications on local machines, everything is accessed over the internet through the Cloud-based vendors website (e.g., salesforce.com) - Rather than running software and applications on local machines, everything is accessed over the internet through the Cloud-based vendors website (e.g., salesforce.com) - With cloud computing, computing is delivered as a service rather than as a product. - With cloud computing, computing is delivered as a service rather than as a product.
  • Slide 4
  • Advantages of Cloud Computing Software does not have to be installed and maintained Software does not have to be installed and maintained All upgrades are automatic All upgrades are automatic Servers are not needed Servers are not needed Manual Backups are not needed Manual Backups are not needed Software and hardware is maintained by the Cloud-based vendor (e.g., Salesforce.com) Software and hardware is maintained by the Cloud-based vendor (e.g., Salesforce.com) You only pay for the resources you use You only pay for the resources you use
  • Slide 5
  • Major Techniques Transaction Support: Transaction Support: Transaction support is built into Salesforce, so it does not need to be implemented by the DBA; changes to the database are only committed when the the apex code in the controller and on the visualforce page have finished executing. Either all of the changes are made or no changes are made to the database. Transaction support is built into Salesforce, so it does not need to be implemented by the DBA; changes to the database are only committed when the the apex code in the controller and on the visualforce page have finished executing. Either all of the changes are made or no changes are made to the database.
  • Slide 6
  • Salesforce also provides constructs for manually creating savepoints, and manually rolling back the state of the database to its state at the time the savepoint is created Salesforce also provides constructs for manually creating savepoints, and manually rolling back the state of the database to its state at the time the savepoint is created Savepoint sp = Database.setSavepoint(); Savepoint sp = Database.setSavepoint(); Database.rollback(sp); Database.rollback(sp);
  • Slide 7
  • Security Security - Salesforce provides extensive security measures - Every user on Salesforce belongs to a certain profile (regular user, staff member, etc) - Permissions are controlled by setting access rights for each profile (what tables can be read/modified, etc)
  • Slide 8
  • Permissions for Staff members
  • Slide 9
  • Rather than creating views to restrict access to fields, access to fields can be directly set for each profile Rather than creating views to restrict access to fields, access to fields can be directly set for each profile
  • Slide 10
  • Field Access
  • Slide 11
  • System Architecture Salesforce uses the MVC(Model-View- Controller) architecture Salesforce uses the MVC(Model-View- Controller) architecture Database tables are models Database tables are models Visualforce pages are the user interface and view Visualforce pages are the user interface and view Apex classes are the controllers Apex classes are the controllers
  • Slide 12
  • The controller is the middle-man between the model (database) and view (Visualforce page) The controller is the middle-man between the model (database) and view (Visualforce page) The controller (an Apex class) receives user input submitted from the view (Visualforce page), which invokes actions on the model (database) (e.g. retrieve records) The controller (an Apex class) receives user input submitted from the view (Visualforce page), which invokes actions on the model (database) (e.g. retrieve records) After the controller retrieves the data from the model (database), it then communicates the data with the view, where it is displayed After the controller retrieves the data from the model (database), it then communicates the data with the view, where it is displayed
  • Slide 13
  • System Design Three levels of users: users, staff, and management Three levels of users: users, staff, and management Users can: Users can: Buy products from the storefront website Buy products from the storefront website Leave feedback Leave feedback Request an account by filling out the registration form (A staff member must create the account for them) Request an account by filling out the registration form (A staff member must create the account for them)
  • Slide 14
  • Staff can: Staff can: Process customer orders Process customer orders Add/edit/remove merchandise (e.g., change quantity, etc) Add/edit/remove merchandise (e.g., change quantity, etc) View all staff information except salary View all staff information except salary View all departments View all departments View customer feedback View customer feedback Process requests for accounts from users Process requests for accounts from users Act as users and purchase products from the storefront Act as users and purchase products from the storefront
  • Slide 15
  • Management can: Management can: Add/edit/remove staff members (e.g. hire/fire) Add/edit/remove staff members (e.g. hire/fire) Add/edit/remove departments Add/edit/remove departments View all staff information (including salary) View all staff information (including salary) Do everything staff and users can do Do everything staff and users can do
  • Slide 16
  • Tables for Staff management: Tables for Staff management: Staff(fields: Staff ID (PK), first name, last name, department ID (FK), age, sex, DOB, position, salary) Staff(fields: Staff ID (PK), first name, last name, department ID (FK), age, sex, DOB, position, salary) Department(Fields: department ID (PK), department name, department phone number) Department(Fields: department ID (PK), department name, department phone number)
  • Slide 17
  • Tables for Warehouse: Tables for Warehouse: Merchandise(fields: Merchandise Name(PK), Description, Price, Total Inventory) Merchandise(fields: Merchandise Name(PK), Description, Price, Total Inventory) Invoice Statement(fields: invoice number(PK), status, invoice value) Invoice Statement(fields: invoice number(PK), status, invoice value) Line Item(fields: item number (PK), Invoice Statement (PK, FK), Merchandise (FK), Unit Price, Units Sold, Value) Line Item(fields: item number (PK), Invoice Statement (PK, FK), Merchandise (FK), Unit Price, Units Sold, Value)
  • Slide 18
  • Tables for User Management: Tables for User Management: PaymentInformation (fields: email(PK), first name, last name, telephone number, billing address, shipping address, credit card number, City, State, Zip Code, Country) PaymentInformation (fields: email(PK), first name, last name, telephone number, billing address, shipping address, credit card number, City, State, Zip Code, Country) Feedback(fields: email(PK), comments(PK), Date) Feedback(fields: email(PK), comments(PK), Date) Registrationrequest(fields: email(PK), First Name, Last Name, Community Nickname) Registrationrequest(fields: email(PK), First Name, Last Name, Community Nickname)
  • Slide 19
  • Implementation Example: The model, view, and controller for displaying the merchandise on the storefront page Example: The model, view, and controller for displaying the merchandise on the storefront page
  • Slide 20
  • The Model
  • Slide 21
  • Slide 22
  • The Controller
  • Slide 23
  • The Model
  • Slide 24
  • The View
  • Slide 25
  • Slide 26
  • Slide 27
  • What I learned How to create database tables, Apex classes (controllers), and Visualforce pages How to create database tables, Apex classes (controllers), and Visualforce pages More about the MVC model and how it is applied on the Salesforce Cloud More about the MVC model and how it is applied on the Salesforce Cloud How to create profiles (user groups) How to create profiles (user groups) How to set permission rights and field access on Salesforce How to set permission rights and field access on Salesforce
  • Slide 28
  • What I learned (Contd) How to read/insert/update/delete database records using tabs within applications How to read/insert/update/delete database records using tabs within applications Some of the Apex programming language Some of the Apex programming language How to build a storefront on the Salesforce cloud How to build a storefront on the Salesforce cloud The benefits of using a cloud database The benefits of using a cloud database
  • Slide 29
  • Demo
  • Slide 30
  • Creating

Recommended

View more >