SlideShare a Scribd company logo
Customer Contact Database System Development Report
Milestone Five
Group D
Brent Renius; Sukhwinder Singh; Nicholai Stevens; Aaron Stroud; Ulysses Vazquez; Daniel Woolworth
Page | 2
Table of Contents
Part I: Planning
System Request……………………………………………………………………………………1
Proposed Solution…………………………………………………………………………………1
UML Tools………………………………………………………………………………………..1
Part II: Analysis
System Requirements
Functional………………………………………………………………………………….1
Nonfunctional……………………………………………………………………………...2
Use Cases……………………………………………………………………………………..…5-8
Use Case Diagram…………………………………………………………………………………8
Part III: Design
CRC Cards……………………………………………………………………………………..9-10
Sequence Diagrams………………………………………………………………………...…10-11
Class Diagram…………………………………………………………………………………….11
Class Relationships Table………………………………………………………………………...12
Page | 3
System Request:
Create a contact management application for the expanding customer list.
ProposedSolution:
We propose to create a database system that will provide an efficient and effective solution to meet
all of the needs of the ACME Warehouse contact management as its customer base continues to grow. This
system will allow ACME Warehouse to easily organize, search, update, and access contact information. It
will also be able to be integrated into the purchase records database to allow for more effective customer
service and marketing.
UML tool:
We will be using the Visio UML tool to facilitate the creation and presentation of this solution. We
chose Visio because it is a fairly simple program to understand and use, and it will allow us to create quality
diagrams which will aid in the planning and management of this project.
System Requirements:
Functional Requirements
1. Manage Customer Accounts
1.1. User enters customer information.
1.1.1. Customer Name (Last, First, MI).
1.1.2. Customer Address (Street, City, State, Zip, Other).
1.1.3. Customer Phone Number(s) (Home, Office, Cell).
1.1.4. Customer E-mail.
1.1.5. Customer Title.
1.1.6. Customer Last Contact Date (DD/MM/YYYY).
1.1.7. Customer Notes (Additional useful information).
1.2. User edits customer information.
1.2.1. All items under 1.1.
2. User Logins
2.1. Sales staff.
2.2. Shipping staff.
2.3. Administrative staff.
3. Search Functions
3.1. User searches for customer account
3.1.1. Search via last name and Phone number.
3.1.2. Search via customer number.
3.1.3. Search via customer E-mail
3.1.4. Search via customer location.
Page | 4
Nonfunctional Requirements
1. Operational Requirements
1.1. The system will be accessible through web browsers.
1.1.1. Internet Explorer
1.1.2. Safari
1.1.3. Chrome
1.1.4. Firefox
1.2. The system should automatically back up at end of business each day.
1.3. The customer accounts will be linked to other business systems.
1.3.1. Purchase records (for customer service and sales purposes).
1.3.2. E-mail system (For marketing purposes).
1.4. The system will operate in Windows environment.
1.5. The system should be accessible by multiple users simultaneously.
2. Performance Requirements
2.1. The Customer accounts will update immediately.
2.2. The system should retrieve a customer account in two seconds or less.
3. Security Requirements
3.1. Only ACME staff will have access to the system.
3.1.1. Users will log-in with employee number and password.
3.1.2. Users will be able to change their password.
3.2. Users will be logged out after thirty minutes of inactivity.
4. Cultural and Political Requirements
4.1. No special cultural and political requirements are anticipated.
Page | 5
Use Cases:
Use Case Name: Sign-in ID: 1 Importance Level: High
Primary Actor: User Use Case Type: Detail, Essential
Stakeholders and
Interests:
User – wants to sign in to access customer contact system
Brief Description: This use case describes how we sign in to access the database
Trigger: User has a need to acquire or update information from database
Type: External
Relationships: Association:
Include:
Extend:
Generalization:
User
(included in) Manage Contacts
Normal Flow of
Events:
1. User opens browser and navigate to application web address
2. The user enters username and password
3. The information is verified by the application
4. Present application to the user
a. If applicable execute S-1Change Password subflow
SubFlows: S-1: Change Password
1. The user navigates to the change password button and clicks
on it
2. The form is presented to the user where the current password
is entered for verification
3. User enters new password conforming to requirements e.g.
policy like should have a special character etc.
4. User re-enters new password in second field to confirm it
5. System verifies that new password complies with security
protocols
6. The user is then presented with change password button on the
form
Alternate /
Exceptional Flows:
NF, 3a1: The user is not authorized to access the data,re-enter password. If still
unsuccessful execute Forgot Password subflow.
S-1, 5a1: Password entered does not meet security standards; go back to S-1 step 3.
Page | 6
Use Case Name: Search Contacts ID: 2 Importance Level: High
Primary Actor: User Use Case Type: Detail, Essential
Stakeholders and
Interests:
User – wants to access existing customer file
clients – want their information to be secure
Brief Description: This use case describes how a user signs into the contact management system
Trigger: Customer needs to be added, updated, or referenced
Type: External
Relationships: Association:
Include:
Extend:
Generalization:
User
(included in) Update Contact
Manage Contacts
Normal Flow of
Events:
1. User opens browser and navigate to application web address
2. The user Signs In by entering username and password
a. Execute Sign In use case
3. User selects Search Contacts button
4. The user enters a search term e.g. email address, last name
5. Customer record is displayed
6. User selects contact file
SubFlows: S-1: Sign In
1. The user enters username and password
2. The information is verified by the application
3. Present application to the user
Alternate /
Exceptional Flows:
NF, 5a1: If multiple records are found, display additional information for each of
the records e.g. last name, first name, company, email address, etc., User
then chooses the specific contact to display
S-1, 2a2: The Patient chooses one of the proposed times or decides not to make an
appointment
Page | 7
Use Case Name: Add New Contact ID: 3 Importance Level: High
Primary Actor: User Use Case Type: Detail, Essential
Stakeholders and
Interests:
User – wants to make sale and/or store customer info for future sales.
Customer – wants to ensure orders are processed in a timely manner.
Brief Description: This use case describes how we add a new customer contact into our system.
Trigger: New customer places an order or wishes to receive promotional information.
Type: External
Relationships: Association:
Include:
Extend:
Generalization:
User
Manage Contacts
Normal Flow of
Events:
1. New customer places an order or enrolls in promotion.
2. User opens browser and navigates to application web address
3. User Signs In by entering username and password
a. Execute Sign In use case
4. Open New Customer Contact form
5. Enter customer’s information into appropriate fields.
a. Name (Last,First, MI)
b. Address (Street, City, State, Zip, Other).
c. Phone Number.
d. E-mail
e. Title (If corporate customer)
f. Last Contact Date
g. Notes
6. Customer confirms all information is correct.
7. Complete Customer Transaction
a. If customer is making a purchase, the S-1: Complete Sale subflow is
performed.
b. If the customer is signing up for promotional purposes, the S-2 Promotions
subflow is performed.
SubFlows: S-1: Sign In
5. The user enters username and password
6. The information is verified by the application
7. Present application to the user
S-2: Complete Sale
8. The Sales rep confirms the order.
9. The Sales rep processes payment.
10. Sales rep makes additional notes if necessary.
11. Sales rep performs the S-2 Promotions subflow.
S-3: Promotions
1. Sales rep asks what types of promotions customer wants to receive (e-
mail, mail).
2. Sales rep checks appropriate boxes.
3. Sales rep saves and exits customer file.
Alternate /
Exceptional Flows:
NF, 6a1: Customer identifies mistakes; sales rep makes corrections, proceeds to
next step.
S-1, 2a1: Payment method is unsuccessful; new payment is processed; once
payment is successful,proceed to next step.
Page | 8
Use Case Name: Update Contact ID: 4 Importance Level: High
Primary Actor: User Use Case Type: Detail, Essential
Stakeholders and
Interests:
User – wants to update existing contact information
Brief Description: This use case describes how we update contact information.
Trigger: User has a need to change existing contact information.
Type: External
Relationships: Association:
Include:
Extend:
Generalization:
User
Search Contacts
Manage Contacts
Normal Flow of
Events:
8. User opens browser and navigate to application web address
9. The user Signs In by entering username and password
a. Execute Sign In use case
10. Search for contact that requires update
a. Execute Search Contact use case
11. The information in the record is updated by the user
12. The user confirms updated information
13. The information in the record is saved by the user
SubFlows: S-1: Sign In
12. The user enters username and password
13. The information is verified by the application
14. Present application to the user
S-2: Search Contact
4. User selects Search Contacts button
5. The user enters a search term e.g. email address, last name
6. Customer record is displayed
7. User selects contact file
Alternate /
Exceptional Flows:
S-1, 2a1: The user is not authorized to access the application
S-2, 2a1: No records are found matching the search terms; User executes Add New
Contact use case.
Use Case Diagram:
Add New Contact Search Contacts
Update Contact
Sign In
Manage Contacts
Add Note
<<extend>>
Customer Contact System
User
<<include>>
<<include>>
Page | 9
CRC Cards:
Front:
Class Name: User ID: 1 Type: Concrete
Description: This class contains information about employees Associated Use Cases: 4
Responsibilities: Collaborators:
Store user information
Add user information
Edit user information
Delete user information
Back:
Attributes:
Last Name (text) Title (text)
First Name (text) Department (text)
Access Level(text)
Email Address (text)
Relationships:
Generalization (a-kind-of): Person
Aggregation (has-parts):
Other Associations: Search,Contacts, Customer
Front:
Class Name: Search ID: 2 Type: Abstract
Description: This class facilitates locating existing customer
information
Associated Use Cases: 2
Responsibilities: Collaborators:
Search via last name Contacts
Search via customer number Contacts
Search via phone number Contacts
Search via location Contacts
Back:
Attributes:
Last Name (text)
Customer Number (text)
Phone Number (custom text)
Location (text)
Relationships:
Generalization (a-kind-of):
Aggregation (has-parts):
Other Associations: User,Contacts, Customer
Page | 10
Front:
Class Name: Contacts ID: 3 Type: Concrete
Description: This class facilitates the management of contact
information
Associated Use Cases:
3,4
Responsibilities: Collaborators:
Store contact information
Add contact information
Edit contact information Search
Delete contact information Search
Back:
Attributes:
Last Name (text) Title (text)
First Name (text) Phone Number (custom text)
Last Contact Date (date) Location (text)
Email Address (text)
Relationships:
Generalization (a-kind-of): Person
Aggregation (has-parts):
Other Associations: Search,User,Customer
Sequence Diagrams:
User Sign In
SystemAccessReq()
System
AccessResponse()
ChangePW()
TITLE
Sign In Sequence
PWChanged()
x
ValidUser?()
AccessResponse()
MeetsCriteria?()
Page | 11
User Sign In
SystemAccessReq()
Contacts
AccessResponse()
CreateNewContact()
TITLE
Add New Contact Sequence
Customer
SaveNewContact()
ConfirmInfo()
InfoConfirmed()
x
System
ValidUser?()
AccessResponse()
User Sign In
SystemAccessReq()
Contacts
AccessResponse()
TITLE
Edit Contact Sequence
Customer
SaveContact()
ConfirmInfo()
InfoConfirmed()
Search
SearchContact()
Contact(s)Found()
UpdateContact()
DeleteContact()
x
RetrieveMatches()
Matches()
System
ValidUser?()
AccessResponse()
Page | 12
Class Diagram:
User
-Password
Person
Contacts
+Customer E-mail
+Customer Address
+Customer Phone
+Last Contact Date
+Notes
Search
+Last Name ()
+Customer E-mail ()
+Customer Number ()
+Customer Location ()
+Number
+First Name
+Title
+Add Contact ()
+Edit Contact ()
+Delete Contact ()
+Last Name
+Access Level
+Department
+Add User ()
+Edit User ()
+Delete User ()
0..* 0..*
0..*
1 1
0..*
1 0..*
11
Class Relationships:
Class Relationships Cardinality
Person
Is relatedtoUser 1 to 0..*
Is relatedtoContacts 1 to 0..*
User
Is a Person. 1 to 0..*
Uses Search. 1 to 1
Is relatedtocontacts 0..* to 0..*
Contacts
Is a Person 1 to 0..*
Is relatedtouser 0..* to 0..*
Search
Is relatedtoContacts 1 to 0..*
Is usedbyuser 1 to 1
*This report does not contain any explanations pertaining to the reasoning behind the final deliverables. The
reason for this is that we felt it would clutter the report. The explanations will be present in the form of notes
in the final presentation.

More Related Content

PDF
Fault tolerance
PPTX
Regression testing
PPTX
Function Point Counting Practices
PPT
Formal Specification in Software Engineering SE9
PPTX
Language and Processors for Requirements Specification
PDF
Rayleigh model
PPTX
Walkthrough and inspection (Walkthrough)
PPTX
software maintenance
Fault tolerance
Regression testing
Function Point Counting Practices
Formal Specification in Software Engineering SE9
Language and Processors for Requirements Specification
Rayleigh model
Walkthrough and inspection (Walkthrough)
software maintenance

What's hot (20)

PDF
UNIT 1- RELATIONAL DATABASE DESIGN USING PLSQL.pdf
PPTX
Modules and modularization criteria
ODP
Production system in ai
PDF
Software requirements
PPTX
unit testing and debugging
PPTX
Insulin pump overview
PPTX
Estimating Software Maintenance Costs
PDF
Software Cost Estimation Techniques
PPTX
Turing Machine
PPTX
Some Size factors in software engineering
PPTX
Unit 2 data link control
PPT
Groupware
PPTX
Software Measurement and Metrics.pptx
PPTX
Real time and distributed design
PPTX
Chapter 1 2 - some size factors
PDF
Advanced Comuter Architecture Ch6 Problem Solutions
DOCX
System testing
PPT
Selective repeat protocol
PPTX
System testing
PPTX
Unit -I Toc.pptx
UNIT 1- RELATIONAL DATABASE DESIGN USING PLSQL.pdf
Modules and modularization criteria
Production system in ai
Software requirements
unit testing and debugging
Insulin pump overview
Estimating Software Maintenance Costs
Software Cost Estimation Techniques
Turing Machine
Some Size factors in software engineering
Unit 2 data link control
Groupware
Software Measurement and Metrics.pptx
Real time and distributed design
Chapter 1 2 - some size factors
Advanced Comuter Architecture Ch6 Problem Solutions
System testing
Selective repeat protocol
System testing
Unit -I Toc.pptx
Ad

Similar to Customer Contact DB Development Project (20)

PPTX
E-commerce (System Analysis and Design)
DOCX
ValidityUseCases
PPT
Use case diagram with example of illustration
PPT
lecture 04 use cases unified modelling language
DOCX
Software Requirements ElicitationRequirements specify a set of f.docx
PPTX
02-use_cases in Unified modeling languages
DOCX
Deliverable 2
DOCX
Tour guidance srs (Software Requirements Specification)
DOCX
Design Implementation ProposalDesign Implementation Proposal.docx
DOCX
Protectourwater.ie SRS
PPTX
Event Management System Document
PPTX
Complaint Management system for township.pptx
PDF
DOC
Loan Approval Management Java project
PDF
SE_Lec 03_Requirements Analysis and Specification
TXT
Usecase
DOCX
main project doument
DOCX
Project of IT243Customer Service For Electroni.docx
PDF
Online computer shop 111 35-181
DOCX
RISK REPORTING SYSTEM IN IT ORGANIZATIONSCPT PAPERName Vi.docx
E-commerce (System Analysis and Design)
ValidityUseCases
Use case diagram with example of illustration
lecture 04 use cases unified modelling language
Software Requirements ElicitationRequirements specify a set of f.docx
02-use_cases in Unified modeling languages
Deliverable 2
Tour guidance srs (Software Requirements Specification)
Design Implementation ProposalDesign Implementation Proposal.docx
Protectourwater.ie SRS
Event Management System Document
Complaint Management system for township.pptx
Loan Approval Management Java project
SE_Lec 03_Requirements Analysis and Specification
Usecase
main project doument
Project of IT243Customer Service For Electroni.docx
Online computer shop 111 35-181
RISK REPORTING SYSTEM IN IT ORGANIZATIONSCPT PAPERName Vi.docx
Ad

Customer Contact DB Development Project

  • 1. Customer Contact Database System Development Report Milestone Five Group D Brent Renius; Sukhwinder Singh; Nicholai Stevens; Aaron Stroud; Ulysses Vazquez; Daniel Woolworth
  • 2. Page | 2 Table of Contents Part I: Planning System Request……………………………………………………………………………………1 Proposed Solution…………………………………………………………………………………1 UML Tools………………………………………………………………………………………..1 Part II: Analysis System Requirements Functional………………………………………………………………………………….1 Nonfunctional……………………………………………………………………………...2 Use Cases……………………………………………………………………………………..…5-8 Use Case Diagram…………………………………………………………………………………8 Part III: Design CRC Cards……………………………………………………………………………………..9-10 Sequence Diagrams………………………………………………………………………...…10-11 Class Diagram…………………………………………………………………………………….11 Class Relationships Table………………………………………………………………………...12
  • 3. Page | 3 System Request: Create a contact management application for the expanding customer list. ProposedSolution: We propose to create a database system that will provide an efficient and effective solution to meet all of the needs of the ACME Warehouse contact management as its customer base continues to grow. This system will allow ACME Warehouse to easily organize, search, update, and access contact information. It will also be able to be integrated into the purchase records database to allow for more effective customer service and marketing. UML tool: We will be using the Visio UML tool to facilitate the creation and presentation of this solution. We chose Visio because it is a fairly simple program to understand and use, and it will allow us to create quality diagrams which will aid in the planning and management of this project. System Requirements: Functional Requirements 1. Manage Customer Accounts 1.1. User enters customer information. 1.1.1. Customer Name (Last, First, MI). 1.1.2. Customer Address (Street, City, State, Zip, Other). 1.1.3. Customer Phone Number(s) (Home, Office, Cell). 1.1.4. Customer E-mail. 1.1.5. Customer Title. 1.1.6. Customer Last Contact Date (DD/MM/YYYY). 1.1.7. Customer Notes (Additional useful information). 1.2. User edits customer information. 1.2.1. All items under 1.1. 2. User Logins 2.1. Sales staff. 2.2. Shipping staff. 2.3. Administrative staff. 3. Search Functions 3.1. User searches for customer account 3.1.1. Search via last name and Phone number. 3.1.2. Search via customer number. 3.1.3. Search via customer E-mail 3.1.4. Search via customer location.
  • 4. Page | 4 Nonfunctional Requirements 1. Operational Requirements 1.1. The system will be accessible through web browsers. 1.1.1. Internet Explorer 1.1.2. Safari 1.1.3. Chrome 1.1.4. Firefox 1.2. The system should automatically back up at end of business each day. 1.3. The customer accounts will be linked to other business systems. 1.3.1. Purchase records (for customer service and sales purposes). 1.3.2. E-mail system (For marketing purposes). 1.4. The system will operate in Windows environment. 1.5. The system should be accessible by multiple users simultaneously. 2. Performance Requirements 2.1. The Customer accounts will update immediately. 2.2. The system should retrieve a customer account in two seconds or less. 3. Security Requirements 3.1. Only ACME staff will have access to the system. 3.1.1. Users will log-in with employee number and password. 3.1.2. Users will be able to change their password. 3.2. Users will be logged out after thirty minutes of inactivity. 4. Cultural and Political Requirements 4.1. No special cultural and political requirements are anticipated.
  • 5. Page | 5 Use Cases: Use Case Name: Sign-in ID: 1 Importance Level: High Primary Actor: User Use Case Type: Detail, Essential Stakeholders and Interests: User – wants to sign in to access customer contact system Brief Description: This use case describes how we sign in to access the database Trigger: User has a need to acquire or update information from database Type: External Relationships: Association: Include: Extend: Generalization: User (included in) Manage Contacts Normal Flow of Events: 1. User opens browser and navigate to application web address 2. The user enters username and password 3. The information is verified by the application 4. Present application to the user a. If applicable execute S-1Change Password subflow SubFlows: S-1: Change Password 1. The user navigates to the change password button and clicks on it 2. The form is presented to the user where the current password is entered for verification 3. User enters new password conforming to requirements e.g. policy like should have a special character etc. 4. User re-enters new password in second field to confirm it 5. System verifies that new password complies with security protocols 6. The user is then presented with change password button on the form Alternate / Exceptional Flows: NF, 3a1: The user is not authorized to access the data,re-enter password. If still unsuccessful execute Forgot Password subflow. S-1, 5a1: Password entered does not meet security standards; go back to S-1 step 3.
  • 6. Page | 6 Use Case Name: Search Contacts ID: 2 Importance Level: High Primary Actor: User Use Case Type: Detail, Essential Stakeholders and Interests: User – wants to access existing customer file clients – want their information to be secure Brief Description: This use case describes how a user signs into the contact management system Trigger: Customer needs to be added, updated, or referenced Type: External Relationships: Association: Include: Extend: Generalization: User (included in) Update Contact Manage Contacts Normal Flow of Events: 1. User opens browser and navigate to application web address 2. The user Signs In by entering username and password a. Execute Sign In use case 3. User selects Search Contacts button 4. The user enters a search term e.g. email address, last name 5. Customer record is displayed 6. User selects contact file SubFlows: S-1: Sign In 1. The user enters username and password 2. The information is verified by the application 3. Present application to the user Alternate / Exceptional Flows: NF, 5a1: If multiple records are found, display additional information for each of the records e.g. last name, first name, company, email address, etc., User then chooses the specific contact to display S-1, 2a2: The Patient chooses one of the proposed times or decides not to make an appointment
  • 7. Page | 7 Use Case Name: Add New Contact ID: 3 Importance Level: High Primary Actor: User Use Case Type: Detail, Essential Stakeholders and Interests: User – wants to make sale and/or store customer info for future sales. Customer – wants to ensure orders are processed in a timely manner. Brief Description: This use case describes how we add a new customer contact into our system. Trigger: New customer places an order or wishes to receive promotional information. Type: External Relationships: Association: Include: Extend: Generalization: User Manage Contacts Normal Flow of Events: 1. New customer places an order or enrolls in promotion. 2. User opens browser and navigates to application web address 3. User Signs In by entering username and password a. Execute Sign In use case 4. Open New Customer Contact form 5. Enter customer’s information into appropriate fields. a. Name (Last,First, MI) b. Address (Street, City, State, Zip, Other). c. Phone Number. d. E-mail e. Title (If corporate customer) f. Last Contact Date g. Notes 6. Customer confirms all information is correct. 7. Complete Customer Transaction a. If customer is making a purchase, the S-1: Complete Sale subflow is performed. b. If the customer is signing up for promotional purposes, the S-2 Promotions subflow is performed. SubFlows: S-1: Sign In 5. The user enters username and password 6. The information is verified by the application 7. Present application to the user S-2: Complete Sale 8. The Sales rep confirms the order. 9. The Sales rep processes payment. 10. Sales rep makes additional notes if necessary. 11. Sales rep performs the S-2 Promotions subflow. S-3: Promotions 1. Sales rep asks what types of promotions customer wants to receive (e- mail, mail). 2. Sales rep checks appropriate boxes. 3. Sales rep saves and exits customer file. Alternate / Exceptional Flows: NF, 6a1: Customer identifies mistakes; sales rep makes corrections, proceeds to next step. S-1, 2a1: Payment method is unsuccessful; new payment is processed; once payment is successful,proceed to next step.
  • 8. Page | 8 Use Case Name: Update Contact ID: 4 Importance Level: High Primary Actor: User Use Case Type: Detail, Essential Stakeholders and Interests: User – wants to update existing contact information Brief Description: This use case describes how we update contact information. Trigger: User has a need to change existing contact information. Type: External Relationships: Association: Include: Extend: Generalization: User Search Contacts Manage Contacts Normal Flow of Events: 8. User opens browser and navigate to application web address 9. The user Signs In by entering username and password a. Execute Sign In use case 10. Search for contact that requires update a. Execute Search Contact use case 11. The information in the record is updated by the user 12. The user confirms updated information 13. The information in the record is saved by the user SubFlows: S-1: Sign In 12. The user enters username and password 13. The information is verified by the application 14. Present application to the user S-2: Search Contact 4. User selects Search Contacts button 5. The user enters a search term e.g. email address, last name 6. Customer record is displayed 7. User selects contact file Alternate / Exceptional Flows: S-1, 2a1: The user is not authorized to access the application S-2, 2a1: No records are found matching the search terms; User executes Add New Contact use case. Use Case Diagram: Add New Contact Search Contacts Update Contact Sign In Manage Contacts Add Note <<extend>> Customer Contact System User <<include>> <<include>>
  • 9. Page | 9 CRC Cards: Front: Class Name: User ID: 1 Type: Concrete Description: This class contains information about employees Associated Use Cases: 4 Responsibilities: Collaborators: Store user information Add user information Edit user information Delete user information Back: Attributes: Last Name (text) Title (text) First Name (text) Department (text) Access Level(text) Email Address (text) Relationships: Generalization (a-kind-of): Person Aggregation (has-parts): Other Associations: Search,Contacts, Customer Front: Class Name: Search ID: 2 Type: Abstract Description: This class facilitates locating existing customer information Associated Use Cases: 2 Responsibilities: Collaborators: Search via last name Contacts Search via customer number Contacts Search via phone number Contacts Search via location Contacts Back: Attributes: Last Name (text) Customer Number (text) Phone Number (custom text) Location (text) Relationships: Generalization (a-kind-of): Aggregation (has-parts): Other Associations: User,Contacts, Customer
  • 10. Page | 10 Front: Class Name: Contacts ID: 3 Type: Concrete Description: This class facilitates the management of contact information Associated Use Cases: 3,4 Responsibilities: Collaborators: Store contact information Add contact information Edit contact information Search Delete contact information Search Back: Attributes: Last Name (text) Title (text) First Name (text) Phone Number (custom text) Last Contact Date (date) Location (text) Email Address (text) Relationships: Generalization (a-kind-of): Person Aggregation (has-parts): Other Associations: Search,User,Customer Sequence Diagrams: User Sign In SystemAccessReq() System AccessResponse() ChangePW() TITLE Sign In Sequence PWChanged() x ValidUser?() AccessResponse() MeetsCriteria?()
  • 11. Page | 11 User Sign In SystemAccessReq() Contacts AccessResponse() CreateNewContact() TITLE Add New Contact Sequence Customer SaveNewContact() ConfirmInfo() InfoConfirmed() x System ValidUser?() AccessResponse() User Sign In SystemAccessReq() Contacts AccessResponse() TITLE Edit Contact Sequence Customer SaveContact() ConfirmInfo() InfoConfirmed() Search SearchContact() Contact(s)Found() UpdateContact() DeleteContact() x RetrieveMatches() Matches() System ValidUser?() AccessResponse()
  • 12. Page | 12 Class Diagram: User -Password Person Contacts +Customer E-mail +Customer Address +Customer Phone +Last Contact Date +Notes Search +Last Name () +Customer E-mail () +Customer Number () +Customer Location () +Number +First Name +Title +Add Contact () +Edit Contact () +Delete Contact () +Last Name +Access Level +Department +Add User () +Edit User () +Delete User () 0..* 0..* 0..* 1 1 0..* 1 0..* 11 Class Relationships: Class Relationships Cardinality Person Is relatedtoUser 1 to 0..* Is relatedtoContacts 1 to 0..* User Is a Person. 1 to 0..* Uses Search. 1 to 1 Is relatedtocontacts 0..* to 0..* Contacts Is a Person 1 to 0..* Is relatedtouser 0..* to 0..* Search Is relatedtoContacts 1 to 0..* Is usedbyuser 1 to 1 *This report does not contain any explanations pertaining to the reasoning behind the final deliverables. The reason for this is that we felt it would clutter the report. The explanations will be present in the form of notes in the final presentation.