CIS 376 Term Project By James Sheets
Mar 26, 2015
CIS 376 Term Project
By James Sheets
Project Description
On-line calendar with scheduling
Requirements
Calendar display is familiar and easy to understand Should be able to change the date of the
calendar
Storage of schedule items, based on date Items should be displayed on the
calendar Items should be able to be added
Quickly add item to a displayed date Able to add an item for any date
Items should be able to be remove Quickly remove any item displayed Get a full list of items available to
remove
Ability to store and display schedule item for multiple users Users only able to see their calendar schedule Users only able to change their own schedule Ability to change users
Web-based HTML output Display and interaction consistent across
different browsers Conformance to HTML and CSS standards
Some error feedback
Layer Model
Flowchart
Database and Class Diagrams
Storyboard
Storyboard
Storyboard
Storyboard
Algebraic Specification
Formal Description
** Preconditon: an account with this name doesn't exist
¬AccountExists( InputName? )
** Set accounts to the union of the current value and the new record
Accounts' = Accounts U
{ ACCREC( InputName?, InputPass? ) }
** We'll modify Database
∆Database
** We won't change AccountExists
AccountExists
** Input variables
InputName? : TEXT
InputPass? : TEXT
** Account :: Create(name, pass)** This will take an input name and password, and insert them as a record** into our accounts tableCreateAccount
LOC Estimate
560Total
200440PHP Class
360630PHP
Webpage
Number of Files
Estimate For TypeFile Type
Time Estimate
PlanningRequirements Plan 1
hourProject Plan 1 hour
DesignModel Designs 5 hoursAlgorithmic Specs 2
hoursFormal Descriptions 6
hoursCorrectness Proof 1
hourStory Boards 1 hourMiscellaneous 1 hour
Post MortemCheck Logs 20 minMiscellaneous 1 hour
CodingImplement database 20
minWrite Account class 1
hourWrite Schedule class 1 hourWrite Database class 10 minWrite MyCalendar class 2 hoursWrite index.php 30 minWrite logout.php 10
minWrite register.php 30
minWrite additem.php 2
hoursWrite removeitem.php 2 hoursWrite calendar.php 1
hourWrite style.css 2 hours
TestingBug Fixes 4
hours
Total: 36 hours / 2200 minutes
LOC Measurements
555215185955Total
85%1585528186Max
80%77221896Average
62%1144428186MyCalendar.inc
46%665227 145Schedule.inc
43%585125134Account.inc
39%911323Database.inc
56%2871550calendar.php
61%55132290removeitem.php
76%1241425163additem.php
63%47101875register.php
47%464517logout.php
64%891772index.php
% CodeCodeCommentsBlankTotal LinesFile
LOC Comparison
PlannedPlanningDesignCodingTestingPost Mortem
ActualPlanningDesignCodingTestingPost Mortem
Time Comparison
Quality Metrics
Phase Defects Avg. Fix Time
Code 5 7.4 minutes
Test 21 6.1 minutes
Phase Yield
Design 0%
Code 83.3%
Test 87.5%
Phase Def / LOC
Planning 0.4
Design 0.2
Code 4.7
Defect Fix Time Defects Injected Per Hour
Defects Per LOCPhase Yield
Phase Def / Hour
Planning 2.79
Design 0.05
Code 4
Conformance
Passed the following tests:
W3C XHTML 1.1 Transitional W3C CSS WebXACT Quality
End