Accounts Service
@Overview: This service handles maintaining, creating, adding, and supplying customer account information to the appropriate clients.

CreateAccount()
@Overview: Add a new Account for New User
@Parameters: n/a
@Returns: n/a
@Exception: Account already exists with similar information (i.e. for that phone number), user would be asked if he wants existing password/username details emailed.

Incorrect/invalid input provided in creation details, user would be notified of error, and asked re-enter information.

AddAccount()
@Overview: Add an account to an already existing user
@Parameters: n/a
@Returns: n/a
@Exception: Account already exists with similar information (i.e. for that phone number), user would be asked if he wants existing password/username details emailed.

Incorrect/invalid input provided in creation details, user would be notified of error, and asked re-enter information.

DeleteAccount()

@Overview: Delete a specific Account
@Parameters: n/a
@Returns: n/a
@Exception: Database exception, ???
(assuming user logged in, cannot modify cell # etc. ??? )

EditAccount()
@Overview: Edit a specific Account
@Parameters: n/a
@Returns: n/a
@Exception: Database exception, account information not found/corrupted

Incorrect/invalid input provided in creation details, user would be notified of error, and asked re-enter information.
(assuming user logged in, cannot modify cell # etc. ??? )

ViewAccount()
@Overview: View Account Information
@Parameters: n/a
@Returns: n/a
@Exception: Database exception, account information not found/corrupted
(assuming user logged in, cannot modify cell # etc. ??? )

AuthenticateClient()
@Overview: Authenticates User
@Parameters: n/a
@Returns: n/a
@Exception: would throw an exception if user entered invalid/wrong data that does not match what is present in the database. User would be informed of the error and asked to re-enter the information.

CustomerServiceReport Service
@Overview: This service provides all the functionality to handle maintaining, adding, and supplying the history of a customer's service reports to the appropriate clients.

ViewCSR()

@Overview: View Complete Trouble Reports
(Might need a thumbview version function)
@Parameters: n/a
@Returns: n/a
@Exception: CSR already being viewed (DB access exception, require some sort of blocking mechanism in Services Server)

CSR formatted incorrectly/not found (DB Exception)

InsertCSR()
@Overview: Add Problem Report
@Parameters: n/a
@Returns: n/a
@Exception: invalid input entered (incorrect format, too long)

DB access error

AppendCSR()
@Overview: Add Problem or Solution to Original Problem Report
@Parameters: n/a
@Returns: n/a
@Exception: Invalid input entered (incorrect format, too long)

DB access error

Web Server
@Overview: The webserver serves as the middleman between the client  and the actual services. The webserver brings all the services together to provide front-in web interface to the backend services.

CreateAccount()
AddAccount()
ViewAccount()
DeleteAccount()
EditAccount()
AuthenticateClient()
ViewCSR()
InsertCSR()
AppendCSR()

      

 

Servers

ACCOUNT SERVER

CreateAccount()
AddAccount()
DeleteAccount()
EditAccount()
ViewAccount()
AuthenticateClient()

CSR SERVER

ViewCSR()
InsertCSR()
AppendCSR()

WEBSERVER SERVER

CreateAccount()
AddAccount()
DeleteAccount()
EditAccount()
ViewAccount()
AuthenticateClient()
ViewCSR()
InsertCSR()
AppendCSR()
Server Attributes
Account Server
  • No. of Ongoing Transaction

    CSR Server

  • No. of Ongoing Transactions

    WebServer Server

  • No. of Connected Users

  • No. of Ongoing Transactions

  • ?????

  •  
    Databases

    ACCOUNT DATABASE

     GeneralAccount Table
     first_name
     mi_name
     last_name
     area_code
     telephone_no
     customerID
     SSN
     login
     password
     active
    AccountRate Table
    table_id
    customerID
    rate_plan
    contract_startDate
    contract_length
    creationDate
    createbyID
    startDate
    endDate
    ESN
    groupPlan
    phone_number
    active

    CSR DATABASE

     
    CustomerServiceReport Table
    table_id
    report_no
    report_type
    customerID
    createdbyID
    creationDate
    ESN
    text 
    active