Power Point Presentation
Download
Report
Transcript Power Point Presentation
CIS 470 – CIS Senior Project
William’s Specialty Company (WSC)
e-Commerce Website
Team D Presentation
DeVry University
Professor Zoaib Mirza
Project Description
Hernando De Leon
Project Description
Current Situation
Would like:
Williams Specialty Company is a small
printing and engraving business
Provide a website that allows clients to
submit orders
WSC currently has an electronic
catalog for internal use
Provide its entire catalog in the
website
WSC currently allows authorized
employees to add and update
customer and order information
Must allow salesperson access to
customer and order information to
assist the customer if needed
CIS 470 - SENIOR PROJECT: TEAM D
Project Deliverables
Software
The application will provide the following features:
Only customers with valid Customer ID and password can access their own customer page
All WSC employees will need valid Employee user name and password in order to access the
customer, orders and catalogue sections of the site.
Authorized users will be able to create, modify, save and retrieve the following:
Order request information
Catalog information
Purchase order information
User access information
CIS 470 - SENIOR PROJECT: TEAM D
Project Deliverables (Cont.)
Software (cont.)
Allows the following user operations:
A customer to enter an order request into the database
A customer to retrieve order request information for a specific order number
A customer to update their personal and billing information
The sales person to retrieve and update customer information
The sales person to update the order status
The operations manager to retrieve a order information from the database
The operations manager to validate the purchase order
The operations manager to close out the print request
CIS 470 - SENIOR PROJECT: TEAM D
Project Deliverables (Cont.)
Development Documentation
Project Plan
Requirements Specification
Design Specification
Test Plan
Deployment Plan
CIS 470 - SENIOR PROJECT: TEAM D
Project Timeline
Project Timeline
Task Name
Duration
Start
Senior Project/Software Development
54 days
Mon 10/26/15 Sun 12/17/15
7 days
7 days
14 days
14 days
7 days
0.5 days
0.5 days
0 days
Mon 10/26/15
Mon 11/2/15
Mon 11/9/15
Mon 11/23/15
Mon 12/7/15
Mon 12/14/15
Mon 12/14/15
Thu 12/17/15
Sun 11/1/15
Sun 11/8/15
Sun 11/22/15
Sun 12/6/15
Sun 12/13/15
Mon 12/14/15
Mon 12/14/15
Thu 12/17/15
4 days
Tue 12/14/15
Thu 12/17/15
Initial Project Plan
Team Charter/Requirements Specification Draft
Design Specification Draft
Test Plan, Policies and Procedures Draft
Integration Testing and Deployment Plan
Project Presentation
Completed Application
PowerPoint presentation
Final Project Plan, Requirements Specification,
Design Specification, Test Plan and Deployment
Plan submission
CIS 470 - SENIOR PROJECT: TEAM D
Finish
Project Team Members
Team Member
Primary role
Secondary role
Joel Sigel
Lead Programmer
Team lead
Hernando De Leon
Team lead,
Documentation
Database Development
Alex Segee
Database Development
Software Development
Terrance Cohens
Design Specifications
Analyst
Unit Testing
Bunnie Martinez
Risk Analysis and
Unit Testing
Requirements
Specification
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis
Bunnie Martinez
Requirements & Analysis
The Project Requirements consists of:
Clearly understanding project requirements
Give overview of the problem/process you analyzed
Sample of analysis diagrams – ERD, Use Case, Process Flows, etc.
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis (Cont.)
System Overview:
WSC wants a web site that enables the customers to:
View the WSC’s catalog online
Enter their information online and place orders
Request printing or engraving on the purchased items
Pay online using Credit Card
Check the status of their orders
Update their information such as Shipping Address
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis (Cont.)
WSC wants its employees to:
Review the placed orders
Update the orders status, shipped, verified,
Bill the customers
Employees are required to login using their IDs’ numbers and passwords.
Customers must login to place orders using their usernames and passwords.
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis (Cont.)
The major functions of the web site:
Create, modify, store, and retrieve order information
Create, modify, store, and retrieve catalog information
Create, modify, store, and retrieve customer information
Validate orders and bill customers
Update personal and billing information
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis: Methodology
Methodology:
The project was divided into
8 one week sprints
The user provided his/her
specifications
The team planned each week
based on specifications
The team reacted efficiently
to any changes
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis: Functionality
Customer function requirements:
The customer should be able to:
Create order
Modify order
Retrieve order
Check order status
Update billing and shipping address
Confirm order
Submit order
CIS 470 - SENIOR PROJECT: TEAM D
Requirements & Analysis: Functionality (Cont.)
Employee functions requirements:
The employee should be able to
Retrieve the item information from the database
Request additional information from the customer
Retrieve order information
Update the order status
Bill the customer
CIS 470 - SENIOR PROJECT: TEAM D
Design Overview
Terrance Cohens
Design Overview: System Description
System Description
Develop a website for customers and employees
Allow customers to create an account, place, edit, and delete an order
Allow customer to update account information
Allow employee to create, edit, and delete an order
Allow employee to update customer information
Allow employee to collect a payment for an order
Allow managers to create, edit and delete an order
Allow manager to update customer and employee information
Allow manager to authorize and close out an order
CIS 470 - SENIOR PROJECT: TEAM D
Design Overview: Functions
User Functions:
Employee/Management Functions:
Create an order
Edit catalog
Edit an order
Retrieve order
Create, edit, validate, and close
purchase order
Collect order payment
Customer Functions:
Create an account
Place an order
Make an order payment
CIS 470 - SENIOR PROJECT: TEAM D
Design Overview: Constraints
Design Constraints:
Operating system requirements or limitations.
Web browser limitations due to versions
Security
Response times and processing
The storage of data
CIS 470 - SENIOR PROJECT: TEAM D
Design Overview: Entity Relationship Diagram
This section displays the
data description using the
ERD and relationships
catalog for the database.
There were four tables
created for the database:
Customer
Employee
Order
Catalogue
It list the primary keys along
with the foreign keys
needed for the database
CIS 470 - SENIOR PROJECT: TEAM D
Design Overview: Database
Database:
The database was constructed as an innoDB formatted relational database.
It will utilize data from different tables which are linked together by way of keys
made from unique identifying fields for each table.
The database will be populated using Structured Query Language (SQL)
The database will be hosted on GoDaddy.com using a Linux based server.
CIS 470 - SENIOR PROJECT: TEAM D
Design Overview: Data Flow
The data flow determines
how the database tables
will logically pass data
between them.
The customer, employee,
and WSC (vendor) all
three have access to the
WSC site through the
defined flow diagram
determining which tables
and data have access to
each other.
CIS 470 - SENIOR PROJECT: TEAM D
Construction Overview
Alex Segee
Construction Overview
Summary
Utilizing the Design Specification documentation, the team was able to quickly
implement the design into a fully functional website.
The website was constructed using PHP as the primary language, which also
allowed for easy connection to the various database tables.
The following languages were also utilized in a smaller capacity:
HTML
JavaScript
CSS
CIS 470 - SENIOR PROJECT: TEAM D
Construction Overview (Cont.)
Construction Steps
Step 1: Secure a suitable domain to house the website.
Step 2: Create the Main page (Home Page)
Step 2.1: Basic layout with Navigation Banner including the company’s name. Navigation links to Home, About, Contact, and
News pages.
Step 2.2: Add Customer Login panel including labels, textboxes, and a sign in button.
Step 2.3: Add New Customer panel including labels, link to Terms & Conditions page, a checkbox, and a sign up button.
Step 2.4: Add Employee Login panel, including labels, textboxes, and a sign in button.
Step 3: Create Customer page
Step 3.1: Add panel to display customer information and a button linking it to an update page. Update page containing textboxes
for the customer to update basic information.
Step 3.2: Add panel to display customer orders. This section linked to the database to automatically pull recent order
information and populate in the appropriate fields.
Step 3.3: Add Products panel to display product information that automatically updates when changes are made to the catalog.
Step 3.4: Add Create Order panel to include a products selection dropdown, a textbox for quantity, dropdown for payment type,
textbox for comments section, and Place Order button to add order to the database.
Step 4: Create New Customer Sign Up page
Step 4.1: Add labels, textboxes, and a Sign Up button that allows customers to enter basic information and create an account.
CIS 470 - SENIOR PROJECT: TEAM D
Construction Overview (Cont.)
Step 5: Create Employee Page
Step 5.1: Add panel to display basic employee information.
Step 5.2: Add panel to display Customer Orders information with an Edit button linking them to an update page.
Step 5.2: Add panel to display Customer Database information with an Edit button linking each row to an update page.
Step 5.3: Add Products panel to display product information and allows updates to be made to the catalog.
Step 5.4: Add Create Order panel to include a products selection dropdown, a textbox for quantity, dropdown for payment
type, textbox for comments section, and Place Order button to add order to the database.
Step 6: Create Manager Page
Step 6.1: Add panel to display basic manager information.
Step 6.2: Add panel to allow the manager to add employees to the site including labels, textboxes, and an Add Employee
button linked to the database.
Step 6.3: Add panel to display employee database information with Edit buttons in each row to allow the manager to edit
employee information.
Step 6.4: Add Products panel to display product information and allows updates to be made to the catalog.
Step 6.5: Add panel for adding products to the catalog, including labels, textboxes, image placeholder, and an Add Product
button linked to the database.
Step 6.6: Add panel to display Customer Database information with an Edit button linking each row to an update page.
Step 6.7: Add panel displaying available products in the catalog.
Step 6.8: Add Create Order panel to include a products selection dropdown, a textbox for quantity, dropdown for payment
type, textbox for comments section, and Place Order button to add order to the database.
CIS 470 - SENIOR PROJECT: TEAM D
Construction Overview (Cont.)
Step 7: Link site to innoDB formatted relational database.
Step 8: Add Contact information to Home page including a map showing the location, phone numbers, and a
Mission Statement.
Step 9: Add Contact information to Contact page.
Step 10: Add information to the About page.
Step 11: Add News page containing information about the upcoming events and sales.
Step 12: Add News panel to Home page that updates automatically from the News page.
CIS 470 - SENIOR PROJECT: TEAM D
Construction Overview (Cont.)
Coding Process:
Standards:
Normal coding standards, Camel Casing
All universal variables, functions, and session keys begin with WSC_
Kept variable names similar to their database counterparts
Features:
PHP Allowed us to use ‘modules’ to build our website
An index page which is used to display all information from a module
A module consists of a single PHP file, named for each module
JavaScript was used to validate forms and make the website more dynamic
Concerns:
Security
Data Cleansing
CIS 470 - SENIOR PROJECT: TEAM D
Construction Overview (Cont.)
Example of Code:
<!-- Submit Customer Login Form -->
<?php
// If the customer has filled in the login form and clicked submit
if(isset($_POST['Submit_Customer_Login'])) {
try {
// Connects to Database
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// Set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Places variables into the table columns
// username and password sent from form
$myusername=$_POST['inputEmail'];
$mypassword=$_POST['inputPassword'];
// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM customer WHERE CustEmail ='$myusername' and CustPW
='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
}
// Register $myusername, $mypassword and redirect to file "customer_home.php"
$msg = "<p>Login Successful!</p>”;
// Sets a session for the user name
$_SESSION['user'] = $myusername;
header("location:customer_home.php");
}
else {
$msg = "<p style='color:red;'>Invalid Credentials!</p>";
}
<!-- End Submit Customer Login Form -->
CIS 470 - SENIOR PROJECT: TEAM D
Testing Overview
Alex Segee
Testing Overview
Summary
The team systematically tested the Williams Specialty Company website by using
integration and unit testing to incrementally test the website throughout the
construction process.
CIS 470 - SENIOR PROJECT: TEAM D
Testing Overview (Cont.)
Verification testing
Validation testing
Ensuring the product works as intended.
Ensuring that the data is entered and processed correctly.
Security testing
Ensuring that the data stored is only accessed by authorized
users.
CIS 470 - SENIOR PROJECT: TEAM D
Testing Overview (Cont.)
Items Tested:
Testing was conducted in order to validate that the system
was working correctly.
Unit Testing- Performed on each individual module as it
was finished
Integration Testing – Once fully assembled the site tested
as a whole
CIS 470 - SENIOR PROJECT: TEAM D
Testing Overview (Cont.)
Results
Based on the results of testing we were able to isolate areas of
the web site that were problematic. These areas included:
Order verification and Update orders
Employee module
Employee Order pages
Once revisions were made to these areas, the team was able to
retest and pass them.
CIS 470 - SENIOR PROJECT: TEAM D
Testing Overview (Cont.)
Upon acceptance by client, final testing will be done before
delivery of product.
Should any changes be required, testing will be done on the
module changed and the integrated site.
Final test result will be supplied to client upon delivery of
product and will be available throughout project life as they
are done.
Testing done following test plan, unit test cases, and
integration test cases.
CIS 470 - SENIOR PROJECT: TEAM D
Application Demonstration
Joel Sigel
Problems & Lessons Learned
Problems
Geographical areas
Time constraints
Meeting lesson requirements
Lessons Learned
Making sure to keep up communication within the team
Using iConnect to hold meetings to keep everyone in the team informed
Scheduling meetings to accommodate all members
Making sure to pay attention to detail requirements
CIS 470 - SENIOR PROJECT: TEAM D
Questions?
CIS 470 - SENIOR PROJECT: TEAM D