Isds 4125- Flash driversProject for Job Matching System
Spring 2014
March 5, 2014
Team 3- The Flash Drivers
Amen AhmedBrittny BellLauren LaaksoMatt Lowery
1Team Flash Drivers
Table of Contents
Executive Summary ……………………………………………………….……… 2
System Request ………………………………………………………………...…… 3
Project Work Plan………………………………………………………………...…. 4
Risk Assessment………………………………………………………...…….…..…..6
Feasibility Analysis…………………………………………………...………………7
Requirements Definition……………………………………………………..……….9
Current System……………………………………………………….……….……...10
Project Requirements……………………………………………………….…..…... 10
Functional Requirements…………………………………………………………..... 11
Non Functional Requirements………………………………………………………. 15
Use Cases……………………………………………………………………………. 16
Use Case Diagram …………………………………………………………………... 31
Data Flow Diagrams………………………………………………………………..... 32
(Phase Three Begins Here)..…………………………………………………………..37
CRUD Matrix (Revised)…………………………………………….………………...37
Alternative Matrix……………………………………………………………………..38
Architecture Design………………………………………………………………...… 39
Hardware/Software Specifications…………………………………………………… 40
Interface Design Structure……………………………………………………………. 41
User Interface Templates…………………………………………………………....... 42
Physical Process Model……………………………………………………………..... 47
Structure Chart………………………………………………………………………... 48
Program Design Specifications……………………………………………………….. 52
Physical Data Model.…………………………………………………………………..67
Data Storage Design..……………………………………………………………….....68
1
2Team Flash Drivers
2
3Team Flash Drivers
Executive Summary
Internship coordinator and ISDS Professor, Carolyn Borne of Louisiana State University is responsible for keeping ISDS students and recent alumni informed about open IT positions. When Borne receives information on these positions, she emails all ISDS students about the opportunity. If a student would like to be added to the email list, they will not be able to see past job postings.
Putting together these emails and adding students are tedious tasks for Borne and raise challenges for the student who will not be able to access previous emails, or who may have to sift through their inbox to find a desired posting.
Team Flash Drivers has come up with an idea for a website that will allow students and recent alumni the opportunity to view open positions in one central location. This website will allow the student to filter by company preference, skills, job preference, and job location. The student will also be able to select if they would like to receive emails regarding new job postings.
3
4Team Flash Drivers
Initial System Requirements
System Request – Job Matching System
Project Sponsor: Carolyn Borne, Internship Coordinator
Business Need: This project has been initiated to improve the job placement process for students looking for internships and full-time positions.
Business Requirements: Using the Web a student would be able to enter his skills and job preferences. The ISDS office would enter the job requirements from recruiting employers. Students would be given suggested matches.
Students will use this information to determine which jobs to apply for. Students could subscribe to receive information on new job postings. Students could view in-depth information on each job posting.
Business Value:
Students will be more aware of opportunities. ISDS department will have a record of the types of jobs and employers employing the
students. Employers will be able to be more specific when reaching out to students for jobs. Along with the push of information through emails, students will be able to view this
information at any time.
Special Issues or Constraints:
This is viewed as a specific need of the ISDS students and is to be used along with Careers2Geaux.
This project must be completed in the time constraints of the spring semester.
4
5Team Flash Drivers
Project Work Plan
5
6Team Flash Drivers
6
7Team Flash Drivers
Risk AssessmentRisk #1: The development of this system likely will be slowed because project team members have not programmed applications requiring matching prior to this project.
Likelihood of risk: Moderate probability of risk
Potential impact on the project: The risk likely will increase the time to complete programming tasks by 25%.
Ways to address this risk:
Time and resources should be allocating to familiarizing the programmers with coding applications that require matching. Additionally, outside expertise and online resources should be utilized for at least some part of the programming tasks.
Risk #2: The scope of the project will likely hinder the completion of the project in a timely manner.
Likelihood of risk: Low probability of risk
Potential impact on the project: This risk will increase the time to complete the project tasks by 50%.
Ways to address this risk:
Tasks should be prioritized and resources used efficiently. The deadlines for tasks should be tentative. Each section of the project should be reanalyzed and labeled as necessary or unnecessary.
Risk #3: The completion of this system will likely be slowed due to lack of knowledge of some technologies that will be used.
Likelihood of risk: Low probability of risk
Potential impact on the project: This risk will increase the time to complete the project by 25%.
Ways to address this risk:
Team members will study up on certain technologies needed to complete this project. Sufficient time will be put aside to train the team. Outside expertise will also be utilized.
7
8Team Flash Drivers
Feasibility Analysis
Technical Feasibility
The Job Matching System is feasible technically, although there is some risk.
The risk regarding familiarity with job matching applications is moderately low.
The Flash Drivers have little experience with a job-matching business model. The Flash Drivers have strong knowledge of the existing Careers2Geaux system. Numerous job matching sites exist on the internet, but only one is currently available to
only LSU students.
The risk regarding familiarity with the technology is moderately low.
The Flash Drivers knowledge of the current web-based job matching system and the databases and internet technology it uses.
Consultants and web-based resources are readily available to provide help in all areas.
The project size is considered medium risk.
The project team will consist of 4 people. Business user involvement will be required. The project time frame is somewhat critical, as it is limited to the current semester.
The compatibility with LSU’s existing technical infrastructure should be good.
An internet infrastructure is already in place and accessible to students. The Job Matching System will accommodate Careers2Geaux and specifically target
LSU’s ISDS majors.
Economic Feasibility
There are no developmental or operational cost associated with creating the Job Matching System.
Costs of maintaining the system are minimal to none and do not require in-depth analysis.
The Job Matching System has a good chance of significantly enhancing job availability to ISDS majors and their involvement in the job application processes orchestrated by Careers2Geaux.
Intangible Costs and Benefits
Improved ISDS department satisfaction.
Enhanced competitive position among other LSU College of Business departments.
8
9Team Flash Drivers
Organizational Feasibility
From an organizational perspective, this project has low risk. The ISDS department’s Internship Coordinator, Carolyn Borne, has strong interest in the project.
The users of the system, primarily LSU ISDS undergraduate and graduate students as well as alumni, are expected to appreciate the addition of the Job Matching System to LSU’s currently available student career resources.
Additional Comments:
The ISDS Department views this as a strategic system to benefit the students enrolled in the College of Business as ISDS majors. This system will allow the department to become more attractive to students considering ISDS as a career path.
9
10Team Flash Drivers
Requirements DefinitionFunctional Requirements
Functional Requirements Description Examples
Process-Oriented A process the system must perform; a process the system must do
The system must allow users to filter job listings by skills, location, job type, GPA and major.
The system must allow users to opt in to targeted job listing emails.
The system should enable the administrator to upload new job availabilities and send mass emails efficiently.
The system should enable users to print or email filtered results to themselves or others.
Information-Oriented Information the system must contain
The system must verify that user is a student or Alumni of LSU.
The system must update job listings in real-time.
The system should retain user preferences. The system should track all user inputs and
store in database for easy querying and reporting.
Nonfunctional RequirementsNonfunctional Requirements Description Examples
Operational The physical and technical environments in which the system will operate
The system can run on handheld devices.
The system should be able to integrate with the existing system.
The system should be able to work on any web browser.
Performance The speed, capacity, and reliability of the system
Any interaction between the user and the system should not exceed 2 seconds.
The system updates job listings in real-time.
The system should be available for use 24 hours per day, 365 days per year.
The system should support at least 300 simultaneous users at all times.
Security Who has authorized access to the system under what circumstances
Only the administrator can access database tracking user input.
Students and alumni can see available job listings at all hours of the day, 365 days a year.
The system includes all available safeguards from viruses, worms, Trojan horses, etc.
Cultural and Political Cultural and political factors and legal requirements that affect the system
Personal information is protected in compliance with the Data Protection Act.
10
11Team Flash Drivers
Current System
Currently, the ISDS students at Louisiana State University receive information about open positions in the IT field via emails sent out by ISDS Professor and Internship Coordinator, Carolyn Borne. Professor Borne receives this information from potential employers whether it be through email, phone conversations, or AITP meetings. She then types this information and emails all ISDS students. If a particular student is not on the email list, that student may ask Professor Borne to be added. However, this student will not be able to see past emails, and Professor Borne has to manually add this student to the list. Professor Borne has asked Team Flash Drivers to create a system that will allow workers in the ISDS office to enter the information she receives regarding these open positions into the system. This will allow students who have asked to be added to the list access to all job postings.
Project Requirements
The system will store information on different companies, information on different jobs offered by these companies (including the location, position type and recommended skills for the job), it will allow students and recent alumni to subscribe to an email feed that notifies them if new jobs are posted in the system, and it will allow administrators to view statistics on the system.
The users will launch the website and see checkboxes allowing them to filter job listings by location, position type (full time, part time, internship), and preferred skills. Multiple selections can be chosen for each preference. Depending on which preferences are selected, job openings matching the user’s desired criteria will be displayed below the checkbox area. The jobs shown below will have the job title, the company’s name it is associated with, and a brief description (two lines of text) of the job. The user can click on the job titles they are interested in and they will be taken to another page that will display additional information on the job. This includes the company’s full description of the job, the name, phone number, and email address of the person hiring for the position, a link to the company’s application for the position (on their website), and (if present) a link to the Careers2Geaux page of the same position.
If the user wishes to receive information on all of the new job postings entered into the system, they can click on the “Subscribe” button and enter their email address. At the end of each week an email will be sent to each email address subscribed to the system with the job titles (attached to a company name) of each of the new jobs posted in the system by the system admin. The only stipulation being that they use their LSU email address ending in “lsu.edu”. This ensures that only LSU students and recent alumni will be able to subscribe to the system.
An administrator is needed to keep the system up to date. There will be a specific login page for the admin where they must enter a password to gain access. Once inside, they will be able to add new information to the system, deactivate obsolete entries, or view statistics for the system. As far as managing new and old information, the admin will be able to add, update, and deactivate jobs, companies, and administrators. They can also add administrators or update their own information. The admin can also see the email addresses of all of the users who have subscribed to receive emails for updates in the system along with the date they subscribed. They can also view all previous job postings with a “date posted” field attached to each. This allows for the admin to view which jobs were posted most recently and to which students to send emails to.
11
12Team Flash Drivers
Functional Requirements
1. Filtering by Student Preference1.1 The user will launch the website.1.2 From the home page the user can select different checkboxes to filter job results based on desired location, desired job type, and desired job skills.1.3 The results will be displayed in real time in a section below the input field.
2. Viewing in Depth Job Details2.1 The user will launch the website.2.2 The user filter job results based on their preferences (requirement 1).2.3 The user will click on the title of the job they wish to view more information about2.4 The user will be brought to a page with more information on the position, including the company’s full description of the job, the name, phone number, and email address of the person hiring for the position, a link to the company’s application for the position (on their website), and (if present) a link to the Careers2Geaux page of the same position.
3. Subscribe for Email Updates3.1 The user will launch the website.3.2 The user will click the “Subscribe” button.3.3 This will prompt the user for an email address ending in “lsu.edu”.
3.3.1 If the email address is invalid, the user will receive an error message and will not be subscribed to the system.
3.4 If their email address is valid, they will receive emails about all new job postings from the admin of the system each week.
4. Adding Jobs4.1 The administrator will launch the website.4.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.4.3 The admin will log in with his/her email and password and be taken to an admin panel.
4.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
4.4 The admin will click the “Add Job” button and be taken to an input form.4.5 The admin will fill in the input form with job information and click the “Add” button at the bottom of the page.
5. Adding Company5.1 The administrator will launch the website.5.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.5.3 The admin will log in with his/her email and password and be taken to an admin panel.
5.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
5.4 The admin will click the “Add Company” button and be taken to an input form.
12
13Team Flash Drivers
5.5 The admin will fill in the input form with job information and click the “Add” button at the bottom of the page.
6. Adding Admin6.1 The administrator will launch the website.6.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.6.3 The admin will log in with his/her email and password and be taken to an admin panel.
6.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
6.4 The admin will click the “Add Administrator” button and be taken to an input form.6.5 The admin will fill in the input form with new administrator’s email and password.6.6 The admin will click the “Add” button at the bottom of the form.
7. Adding Skills7.1 The administrator will launch the website.7.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.7.3 The admin will log in with his/her email and password and be taken to an admin panel.
7.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
7.4 The admin will click the “Add Skill” button and be taken to an input form.7.5 The admin will fill in the input form with new skill title.7.6 The admin will click the “Add” button at the bottom of the form.
8. Updating Jobs8.1 The administrator will launch the website.8.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.8.3 The admin will log in with his/her email and password and be taken to an admin panel.
8.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
8.4 The admin will click the “Update/Deactivate Job” button and be taken to an input form.8.5 The admin will select the job to update from a drop-down list and the job form will auto-fill.8.6 The admin will modify the job information as needed.8.7 The admin will click the “Update” button at the bottom of the page.
9. Updating Company Information9.1 The administrator will launch the website.9.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.
13
14Team Flash Drivers
9.3 The admin will log in with his/her email and password and be taken to an admin panel.
9.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
9.4 The admin will click the “Update/Deactivate Company” button and be taken to an input form.9.5 The admin will select the company to update from a drop-down list and the job form will auto-fill.9.6 The admin will modify the company information as needed.9.7 The admin will click the “Update” button at the bottom of the page.
10. Updating Admin Information10.1 The administrator will launch the website.10.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.10.3 The admin will log in with his/her email and password and be taken to an admin panel.
10.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
10.4 The admin will click the “Update/Deactivate Admin” button and be taken to an input form.10.5 The admin will select the admin to update from a drop-down list.10.6 The admin will modify their email address or password as needed.10.7 The admin will click the “Update” button at the bottom of the page.
11. Deactivating Jobs11.1 The administrator will launch the website.11.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.11.3 The admin will log in with his/her email and password and be taken to an admin panel.
11.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
11.4 The admin will click the “Update/Deactivate Job” button and be taken to an input form.11.5 The admin will select the job to deactivate from a drop-down list and the job form will auto-fill.11.6 The admin will scroll down to the bottom of the page and click “Deactivate.”11.7 The admin will click “DEACTIVATE” on the pop-up verification box.
12. Deactivating Company12.1 The administrator will launch the website.12.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.12.3 The admin will log in with his/her email and password and be taken to an admin panel.
14
15Team Flash Drivers
12.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
12.4 The admin will click the “Update/Deactivate Company” button and be taken to an input form.12.5 The admin will select the Company to deactivate from a drop-down list and the job form will auto-fill.12.6 The admin will scroll down to the bottom of the page and click “Deactivate.”12.7 The admin will click “DEACTIVATE” on the pop-up verification box.
13. Deactivating Admin13.1 The administrator will launch the website.13.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.13.3 The admin will log in with his/her email and password and be taken to an admin panel.
13.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
13.4 The admin will click the “Update/Deactivate Admin” button and be taken to an input form.13.5 The admin will select the admin to deactivate from a drop-down list.13.6 The admin will scroll down to the bottom of the page and click “Deactivate.”13.7 The admin will click “DEACTIVATE” on the pop-up verification box.
14. Deactivating Skills14.1 The administrator will launch the website.14.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.14.3 The admin will log in with his/her email and password and be taken to an admin panel.
14.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
14.4 The admin will click the “Deactivate Skill” button and be taken to an input form.14.5 The admin will select the skill to deactivate from a drop-down list.14.6 The admin will scroll down to the bottom of the page and click “Deactivate.”14.7 The admin will click “DEACTIVATE” on the pop-up verification box.
15. Look Up Statistics15.1 The administrator will launch the website.15.2 The administrator will click a link at the top of the home page that will take him/her to the admin login page.15.3 The admin will log in with his/her email and password and be taken to an admin panel.
15.3.1 If the email address or password is invalid, the user will receive an error message and will not be allowed into the admin system.
15.4 The admin will click the “Statistics” button and be taken to new page.15.5 The admin will be able to view information about how the system has been used.
15
16Team Flash Drivers
Nonfunctional Requirements
1. System Access1.1 The system will be a Microsoft Visual Basic asp.net Web Application.1.2 Additions, updates and removals to the system, besides email subscription, will only be completed by the ISDS department’s Internship Coordinator and his/her graduate assistants.
2. Performance2.1 The system should support up to 50 users simultaneously.
16
17Team Flash Drivers
Use Cases
Use Case Name: Filtering by Student Preference
ID: 1-1 Priority: Medium
Actor: User
Description:
This use case describes the process a user goes through to filter by their skills, position type, location, and company preference. The user will begin by launching the website. They will then select desired checkboxes pertaining to their preferences. Once the user clicks the Go button, desired job posting will be filtered below.
Preconditions: The user must have knowledge of the website.
Trigger:Type:
The user wants to see filtered results based on their preferences.
Actor Action: Website Response:
Step 1: The user launches the website.
Step 3: The user selects desired check boxes based on location, job type and job skills.
Step 2: The user is allowed access to the website and is sent to the home page.
Step 4: The system will show filtered selection at the bottom of the page.
Postconditions: n/a
Exceptions: n/a
17
18Team Flash Drivers
Use Case Name: Viewing In-Depth Job Details
ID: 1-2 Priority: Medium
Actor: User
Description:
This use case describes the process a user goes through to view in-depth job details. The user will begin by launching the website and filtering jobs based on preference. The user may click on a posting they are interested where they will be brought to a new page with information regarding the open position and how to apply for the job.
Preconditions: The user must have knowledge of the website.
Trigger:Type:
The user wants to see job details based on their filtered preferences.
Actor Action: Website Response:
Step 1: The user launches the website.
Step 3: The user selects desired check boxes based on location, job type and job skills.
Step 5: The user will click the job they are interested in.
Step 2: The user is allowed access to the website and is sent to the home page.
Step 4: The system will show filtered selection at the bottom of the page.
Step 6: The website will direct to a page including desired additional information.
Postconditions: n/a
Exceptions: n/a
18
19Team Flash Drivers
Use Case Name: Subscribe for Email Updates
ID: 1-3 Priority: Medium
Actor: User
Description:
This use case describes the process a user goes through to subscribe to the system so they will receive emails about all new job postings from the admin of the system each week. The user will begin by launching the website and pressing the “Subscribe” button. This will prompt the user for an email address ending in “lsu.edu”. If their email address is valid, they will receive emails about all new job postings from the admin of the system each week.
Preconditions: Only recent alumni or LSU students may subscribe to receive emails.
Trigger:Type:
The user wants to be informed when a new job is posted.
Actor Action: Website Response:
Step 1: The user launches the website.
Step 3: The user clicks the “Subscribe” button at the top of the page.
Step 5: The user enters a valid email address.
Step 2: The user is allowed access to the website and is sent to the home page.
Step 4: The website prompt the user for an email address ending in “lsu.edu”.
Step 6: The user’s credentials are verified and the website stores their information.
Postconditions: n/a
Exceptions: If the user’s email credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
19
20Team Flash Drivers
Use Cases
Use Case Name: Adding Job ID: 1-4 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to add a new job to the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Add Job” button, fill out the form including all job information, and click the “Add” button.
Preconditions: Only Borne or administrators assigned by Borne can add jobs.
Trigger:Type:
The administrator receives information pertaining to an open position and needs to add job information.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Add Job” button.
Step 9: The administrator will fill out the input form and click the “Add” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will update with the new job information.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
20
21Team Flash Drivers
Use Case Name: Adding Company ID: 1-5 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to add a company to the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Add Company” button, fill out the form including all company information, and click the “Add” button.
Preconditions: Only Borne or administrators assigned by Borne can add companies.
Trigger:Type:
The administrator receives information pertaining to an open position and needs to add company information.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Add Company” button.
Step 9: The administrator will fill out the input form and click the “Add” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will update with the new company information.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
21
22Team Flash Drivers
Use Case Name: Adding Administrator ID: 1-6 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to add an administrator to the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Add Administrator” button, fill out the form including all company information, and click the “Add” button.
Preconditions: Only administrators can add administrators.
Trigger:Type:
The administrator needs to add a new administrator to the website.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Add Administrator” button.
Step 9: The administrator will fill out the input form and click the “Add” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will update with the new administrator.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
22
23Team Flash Drivers
Use Case Name: Adding Skill ID: 1-7 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to add a skill to the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Add Skills” button, fill out the form including all skills information, and click the “Add” button.
Preconditions: Only Borne or administrators assigned by Borne can add skills.
Trigger:Type:
The administrator receives information pertaining to an open position and needs to add skills information.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Add Skills” button.
Step 9: The administrator will fill out the input form and click the “Add” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will update with the new skills information.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
23
24Team Flash Drivers
Use Case Name: Updating Job ID: 1-8 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to update a job on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Update/Deactivate Job” button, select the job to update and the form will auto-fill. The user will then make modifications as needed and select the “Update” button.
Preconditions: Only Borne or administrators assigned by Borne can update jobs.
Trigger:Type:
The administrator receives information pertaining to an open position and needs to update job information.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Update/Deactivate Job” button.
Step 9: The administrator will select the job to update from a drop-down list.
Step 11: The administrator will make modifications as needed and click the “Update” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return an auto-filled form.
Step 12: The website will update the desired job.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
24
25Team Flash Drivers
Use Case Name: Updating Company Information
ID: 1-9 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to update company information on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Update/Deactivate Company” button, select the company to update and the form will auto-fill. The user will make modifications as needed and then select the “Update” button.
Preconditions: Only Borne or administrators assigned by Borne can update company information.
Trigger:Type:
The administrator receives information pertaining to an open position and needs to update company information.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Update/Deactivate Company” button.
Step 9: The administrator will select the company to update from a drop-down list.
Step 11: The administrator will make modifications as needed and click the “Update” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return an auto-filled form.
Step 12: The website will update the desired job.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
25
26Team Flash Drivers
Use Case Name: Updating Administrator Information ID: 1-10 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to update administrator information on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Update/Deactivate Admin” button, select the administrator to update and make modifications as needed. The administrator will then select the “Update” button.
Preconditions: Only Borne or administrators assigned by Borne can update administrator information.
Trigger:Type:
An administrator’s email changes or needs to change their password for security purposes.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Update/Deactivate Admin” button.
Step 9: The administrator will select the administrator to update from a drop-down list.
Step 11: The administrator will make modifications as needed and click the “Update” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return an auto-filled form.
Step 12: The website will update the desired job.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
26
27Team Flash Drivers
Use Case Name: Deactivating Job ID: 1-11 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to deactivate a job on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Update/Deactivate Job” button, select the job to deactivate and the form will auto-fill. The administrator will click the “Deactivate” button and then “DEACTIVATE” again when they are prompted with the verification box.
Preconditions: Only Borne or administrators assigned by Borne can deactivate jobs.
Trigger:Type:
The position has been filled, so the job posting needs to be deactivated.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Update/Deactivate Job” button.
Step 9: The administrator will select the job to deactivate from a drop-down list.
Step 11: The administrator will click the “Deactivate” button.
Step 13: The administrator will click the “DEACTIVATE” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return an auto-filled form.
Step 12: The website will return a pop-up verifying that you want to deactivate the job posting.
Step 14: The job will be deactivated from the website.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
27
28Team Flash Drivers
Use Case Name: Deactivating Company ID: 1-12 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to deactivate a company on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Update/Deactivate Company” button, select the job to deactivate and the form will auto-fill. The administrator will click the “Deactivate” button and then “DEACTIVATE” again when they are prompted with the verification box.
Preconditions: Only Borne or administrators assigned by Borne can deactivate companies.
Trigger:Type:
The company wishes to be taken off of the website or their posted position has been filled.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Update/Deactivate Company” button.
Step 9: The administrator will select the job to deactivate from a drop-down list.
Step 11: The administrator will click the “Deactivate” button.
Step 13: The administrator will click the “DEACTIVATE” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return an auto-filled form.
Step 12: The website will return a pop-up verifying that you want to deactivate the job posting.
Step 14: The company will be deactivated from the website.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
28
29Team Flash Drivers
Use Case Name: Deactivating Administrator ID: 1-13 Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to deactivate an administrator on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Update/Deactivate Admin” button, select the administrator to deactivate and the form will auto-fill. The administrator will click the “Deactivate” button and then “DEACTIVATE” again when they are prompted with the verification box.
Preconditions: Only Borne or administrators assigned by Borne can deactivate companies.
Trigger:Type:
The administrator no longer needs administrative access to the system.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Update/Deactivate Admin” button.
Step 9: The administrator will select the administrator to deactivate from a drop-down list.
Step 11: The administrator will click the “Deactivate” button.
Step 13: The administrator will click the “DEACTIVATE” button.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return an auto-filled form.
Step 12: The website will return a pop-up verifying that you want to deactivate the administrator.
Step 14: The administrator will be deactivated from the website.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
29
30Team Flash Drivers
Use Case Name: Deactivating Skills ID: 1-14
Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to deactivate skills found on the website. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Deactivate Skill” button, select the skill to deactivate from a drop-down list, click the “Deactivate” button, and click “DEACTIVATE” on the pop-up verification box.
Preconditions: Only Borne or administrators assigned by Borne can add skills.
Trigger:Type:
The administrator receives new information that makes some skills obsolete.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Deactivate Skill” button.
Step 9: The administrator will select the skill to deactivate from a drop-down list and click the “Deactivate” button.
Step 11: The administrator will select the “DEACTIVATE” button on the pop-up verification box.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to an input form.
Step 10: The website will return a pop-up verifying that you want to deactivate the skill.
Step 12: The skill will be deactivated from the website.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
30
31Team Flash Drivers
Use Case Name: View Statistics ID: 1-15
Priority: Medium
Actor: Administrator
Description:
This use case describes the process an administrator goes through to view information about how the system has been used. The administrator will begin by launching the website and entering their login credentials. The administrator will click the “Statistics” button, and be brought to a page where they can view information about how the system has been used.
Preconditions: Only Borne or administrators assigned by Borne can add jobs.
Trigger:Type:
The administrator wants to see information about how the system has been used.
Actor Action: Website Response:
Step 1: The administrator launches the website.
Step 3: The administrator clicks the link at the top of the page to take them to the administrator login page.
Step 5: The administrator enters their login credentials.
Step 7: The administrator will click the “Statistics” button.
Step 9: The admin will be able to view information about how the system has been used.
Step 2: The administrator is allowed access to the website and is sent to the home page.
Step 4: The website directs to the administrator login page.
Step 6: The user’s credentials are verified and the website directs to the admin panel.
Step 8: The website will direct to a new “Statistics” page.
Postconditions: n/a
Exceptions:If the administrator’s login credentials fail, the website will return an error message and the user will be prompted to enter their credentials again.
31
32Team Flash Drivers
Use Case Diagram
32
33Team Flash Drivers
Data Flow Diagrams
Context Diagram
Context Level 0 Diagram
33
34Team Flash Drivers
Context Level 1 Diagram:
Filtering by Student Preferences
Subscribe for Email Updates
34
35Team Flash Drivers
Adding Information
Updating Information
35
36Team Flash Drivers
Deactivating Information
Look Up Statistics
36
37Team Flash Drivers
CRUD Matrix
ID User Action Create Read Update Deactivate
1 Filter Job Results
Position, Company, Skill, PositionSkill
2 View In-Depth Info
Position, Company, Skill, PositionSkill, Contact
3 Subscribe for Updates
Subscriber
4 Add Job Position, Contact PositionSkill
Admin
5 Add Company Company Admin
6 Add Admin Admin Admin
7 Add Skill Skill Admin
8 Update Job Admin, Job Job
9 Update Company
Admin, Company Company
10 Update Admin Admin Admin
11 Deactivate Job Admin, Job Job
12 Deactivate Company
Admin, Company Company
13 Deactivate Admin
Admin Admin
14 Deactivate Skill
Admin, Skill Skill
15 View Stats Admin, Position, Subscribers
37
38Team Flash Drivers
Alternative Matrix
Evaluation Relative Alt 1: Score Wtd Alt 2: Score Wtd Alt 3: Score
Wtd ScoreCriteria Importance VB (1-5) Score Word Press (1-5) Score Careers2geaux (1-5)
(Weight)
Develops Desirable In House Skills 15 Develop in VB,
some interest 3 45Develop in Word
Press Some Interest
3 45Add page to
Career2geaux, Little Interest
2 30
Experience With System 10 Shop has
experience 5 50Only 1 person in
shop has experience
1 10 No Experience 1 10
Cost 15 Free 5 75 Free but hosting cost per month 2 30 Free 5 75
Demonstrated Product in Market 15 System used by
other companies 5 75 System used by other companies 5 75 System used by
LSU 5 75
Customizable Interface 20 Yes 5 100 Yes 5 100 no 1 20
Total 75 345 260 210
38
39Team Flash Drivers
Architecture Design
Requirements Server-Based
Client-Based
Thin Client-Server
Thick Client-Server
Operational Requirements
System Integration Requirements ✔ ✔ ✔Portability Requirements ✔
Maintainability Requirements ✔
Performance Requirements
Speed Requirements ✔ ✔Capacity Requirements ✔ ✔
Availability/Reliability Requirements ✔ ✔ ✔Security Requirements
High System Requirements ✔ ✔
Access Control Requirements ✔
Encryption/Authentication Requirements ✔ ✔Virus Control Requirements ✔
Cultural/Political Requirements
Legal Requirements ✔
Hardware and Software Specifications
Hardware/Software Specifications/Recommendations
39
40Team Flash Drivers
Operating System ● Windows (XP or newer)● Windows Server (2008 or newer)● Mac OSX● Linux
Special Software ● Microsoft Office (2010 or newer)● Microsoft Access (2010 or newer)● Visual Studio (2010 or newer)
Network ● Internet Access required (broadband recommended for performance)
Web Browser ● Firefox● Chrome● Safari● Opera● Internet Explorer
Hardware ● 1 GHz or faster 32-bit or 64-bit processor● 1 GB RAM (32-bit) or 2 GB RAM (64-bit)● 16 GB available hard disk space (32-bit) or 20 GB
(64-bit)
40
41Team Flash Drivers
Interface Structure Design
41
Home PageJob In-Depth
Details
Admin Login
StatisticsUpdate/Deactivate
CompanyAdd Contact
Admin Panel
Add Job
Add Admin
Add Skill
Update/Deactivate Admin
Deactivate Skill
Update/Deactivate Job
Add Company
Update/Deactivate Contact
42Team Flash Drivers
User Interface Templates
42
43Team Flash Drivers
43
44Team Flash Drivers
44
45Team Flash Drivers
45
46Team Flash Drivers
46
47Team Flash Drivers
Physical Process Model
47
48Team Flash Drivers
48
49Team Flash Drivers
Structure Chart
49
50Team Flash Drivers
50
51Team Flash Drivers
51
52Team Flash Drivers
Program Design SpecificationsName: Add Company
Visual Basic
Events: Add Company button is pushed
Input Name Type
CompanyID Integer
CompanyName VARCHAR(50)
Output Name Type
CompanyID Integer
CompanyName VARCHAR(50)
Pseudocode:
If CompanyID is exclusive Then
Add record to database
Else
Return Error Message
End If
52
53Team Flash Drivers
Name: Add Job
Visual Basic
Events: Add Job button is pushed
Input Name Type
PositionID Integer
JobTitle VARCHAR(50)
JobType VARCHAR(20)
JobCity VARCHAR(50)
JobState VARCHAR(20)
LinktoApply VARCHAR(255)
JobPostDate DATETIME
JobApplyByDate DATETIME
ContactID INTEGER
CompanyID INTEGER
ShortJobDescription VARCHAR(150)
LongJobDescription VARCHAR(10000)
Active BIT
Output Name Type
PositionID Integer
JobTitle VARCHAR(50)
JobType VARCHAR(20)
JobCity VARCHAR(50)
53
54Team Flash Drivers
JobState VARCHAR(20)
LinktoApply VARCHAR(255)
JobPostDate DATETIME
JobApplyByDate DATETIME
ContactID INTEGER
CompanyID INTEGER
ShortJobDescription VARCHAR(150)
LongJobDescription VARCHAR(10000)
Active BIT
Pseudocode:
If PositionID is exclusive Then
Add record to database
Else
Return Error Message
End If
54
55Team Flash Drivers
Name: Add Contact
Visual Basic
Events: Add Contact button is pushed
Input Name Type
ContactID Integer
FName VARCHAR(20)
LName VARCHAR(20)
Email VARCHAR(30)
PhoneNumber VARCHAR(11)
ContactType VARCHAR(10)
CompanyID INTEGER
Active BIT
Output Name Type
ContactID Integer
FName VARCHAR(20)
LName VARCHAR(20)
Email VARCHAR(30)
PhoneNumber VARCHAR(11)
ContactType VARCHAR(10)
CompanyID INTEGER
Active BIT
55
56Team Flash Drivers
Pseudocode:
If ContactID is exclusive Then
Add record to database
Else
Return Error Message
End If
56
57Team Flash Drivers
Name: Add Administrator
Visual Basic
Events: Add Admin button is pushed
Input Name Type
AdminID INTEGER
AdminEmail VARCHAR(30)
AdminPassword VARCHAR(20)
Active BIT
Output Name Type
AdminID INTEGER
AdminEmail VARCHAR(30)
AdminPassword VARCHAR(20)
Active BIT
Pseudocode:
If AdminID is exclusive Then
Add record to database
Else
Return Error Message
End If
57
58Team Flash Drivers
Name: Add Skill
Visual Basic
Events: Add Skill button is pushed
Input Name Type
SkillID INTEGER
SkillTitle VARCHAR(20)
Active BIT
Output Name Type
SkillID INTEGER
SkillTitle VARCHAR(20)
Active BIT
Pseudocode:
If SkillID is exclusive Then
Add record to database
Else
Return Error Message
End If
58
59Team Flash Drivers
Name: Update/Deactivate Company
Visual Basic
Events: Update/Deactivate Company button is pushed
Input Name Type
CompanyID Integer
CompanyName VARCHAR(50)
Output Name Type
CompanyID Integer
CompanyName VARCHAR(50)
Pseudocode:
If CompnayID is exclusive Then
Update record in database
Else
Return Error Message
End If
59
60Team Flash Drivers
Name: Update/Deactivate Job
Visual Basic
Events: Update/Deactivate Job button is pushed
Input Name Type
PositionID Integer
JobTitle VARCHAR(50)
JobType VARCHAR(20)
JobCity VARCHAR(50)
JobState VARCHAR(20)
LinktoApply VARCHAR(255)
JobPostDate DATETIME
JobApplyByDate DATETIME
ContactID INTEGER
CompanyID INTEGER
ShortJobDescription VARCHAR(150)
LongJobDescription VARCHAR(10000)
Active BIT
Output Name Type
PositionID Integer
JobTitle VARCHAR(50)
JobType VARCHAR(20)
JobCity VARCHAR(50)
60
61Team Flash Drivers
JobState VARCHAR(20)
LinktoApply VARCHAR(255)
JobPostDate DATETIME
JobApplyByDate DATETIME
ContactID INTEGER
CompanyID INTEGER
ShortJobDescription VARCHAR(150)
LongJobDescription VARCHAR(10000)
Active BIT
Pseudocode:
If PositionID is exclusive Then
Update record in database
Else
Return Error Message
End If
61
62Team Flash Drivers
Name: Update/Deactivate Contact
Visual Basic
Events: Update/Deactivate Contact button is pushed
Input Name Type
ContactID Integer
FName VARCHAR(20)
LName VARCHAR(20)
Email VARCHAR(30)
PhoneNumber VARCHAR(11)
ContactType VARCHAR(10)
CompanyID INTEGER
Active BIT
Output Name Type
ContactID Integer
FName VARCHAR(20)
LName VARCHAR(20)
Email VARCHAR(30)
PhoneNumber VARCHAR(11)
ContactType VARCHAR(10)
CompanyID INTEGER
Active BIT
Pseudocode:
62
63Team Flash Drivers
If ContactID is exclusive Then
Update record in database
Else
Return Error Message
End If
63
64Team Flash Drivers
Name: Update/Deactivate Administrator
Visual Basic
Events: Update/Deactivate Admin button is pushed
Input Name Type
AdminID INTEGER
AdminEmail VARCHAR(30)
AdminPassword VARCHAR(20)
Active BIT
Output Name Type
AdminID INTEGER
AdminEmail VARCHAR(30)
AdminPassword VARCHAR(20)
Active BIT
Pseudocode:
If AdminID is exclusive Then
Update record in database
Else
Return Error Message
End If
64
65Team Flash Drivers
Name: Update/Deactivate Skill
Visual Basic
Events: Update/Deactivate Skill button is pushed
Input Name Type
SkillID INTEGER
SkillTitle VARCHAR(20)
Active BIT
Output Name Type
SkillID INTEGER
SkillTitle VARCHAR(20)
Active BIT
Pseudocode:
If SkillID is exclusive Then
Update record in database
Else
Return Error Message
End If
65
66Team Flash Drivers
Name: Subscribe for Email Updates
Visual Basic
Events: Subscribe button is pushed
Input Name Type
SubscribeID INTEGER
Email VARCHAR(30)
Subscribed BIT
DateSubscribed DATETIME
Active BIT
Output Name Type
SubscribeID INTEGER
Email VARCHAR(30)
Subscribed BIT
DateSubscribed DATETIME
Active BIT
Pseudocode:
If SubscribeID is exclusive Then
Update record in database
Else
Return Error Message
End If
66
67Team Flash Drivers
Physical Data Model
Updated ER Diagram
67
68Team Flash Drivers
Data Storage DesignData Storage Format: Microsoft Access Database
Data Type Use Suggested Format
Total Number of Fields in Table
Admin Simple (string and integer)
Transaction processing
Relational DBMS
4
Company Simple (string and integer)
Transaction processing
Relational DBMS
3
Contact Simple (string and integer)
Transaction processing
Relational DBMS
8
Position Simple (string and integer)
Transaction processing
Relational DBMS
13
PositionSkill Composite
Simple (string and integer)
Transaction processing
Relational DBMS
3
Skill Simple (string and integer)
Transaction processing
Relational DBMS
3
Subscriber Simple (string and integer)
Transaction processing
Relational DBMS
5
68