Case Study Work From Home Tracker
Case Study Work From Home Tracker
Your role: You are a Programmer working for Phoenix IT Solutions.
Scenario
The current climate has forced many employees to work from home. Diamond Realty, a local real estate agent, has contacted you to write a program to help them track the hours worked by their seven (7) employees from home. The Work From Home Tracker program will track the daily hours worked from Monday to Friday, and then calculate the total weekly hours worked for each employee.
You have met with your client (teacher) and have obtained the project specifications for the program you will build as outlined below.
Program Specifications
Program Interface
The program needs to present a suitable interface (menu/form/web app depending on your chosen programming language) where staff can:
Enter Daily Hours Worked
Produce Hours Worked Report
Quit/Close/Exit the Program
Program Functionality
For Option [1] Enter Daily Hours Worked, your program must request and process data for all seven (7) employees. For each employee record, your program must ask for:
The Current Working Week Number
Employee ID
Employee Name
The hours worked from home for the 5 working days Monday Friday. For this, create a data structure, Data Structure 1, such as a single dimensional array (or similar) to store the hours worked for each day of the week. For example:
Data Structure 1 This stores the hours worked each day by an employee
Monday Tuesday Wednesday Thursday Friday
Once all hours have been entered, process the daily hours worked in Data Structure 1 by outputting an appropriate message to the screen as shown in the table below (messages may be customised):
Hours worked Error message output to screen
Less than 4 hours a day Insufficient hours worked on <this day>
More than 10 hours a day Too many hours worked on <this day>
Less than 30 hours a week You didnt do enough work this week
More than 40 hours a week You are working too hard!!
For example, if an employee worked less than 4 hours on Thursday, the message Insufficient hours worked on Thursday will be output to the screen.
Your program should then write each employee record to file and include the following information:
Week Number
Employee ID
Employee Name
Hours worked for each day
A sample entry in your text file (or .csv file) might be:
Week 2, 123, Vicki Brainsworth, 3,6,8,12,9
Week 2, 345, Joey Genius, 8,12,6,11,7
Add up the daily hours worked for the employee and store this in a second data structure (such as a list), Data Structure 2. This information will be used later to produce the Employee Weekly Report on the screen after you have entered the work pattern for all employees. For example:
Data Structure 2 This stores the total weekly hours worked for each employee
Employee 1 Employee 2 Employee 3 Employee 4 Employee 5 Employee 6 Employee 7
38 44 33 43 36 37 38
For example, Employee 5 worked 36 hours for the current week
Once all 7 (seven) employee weekly hours have been stored, process Data Structure 2 and output the Weekly Employee Report to screen which displays:
The number of employees who worked less than 30 hours a week
The number of employees who worked more than 40 hours a week
The number of employees who worked between 37-39 hours.
Once all records are processed, your Program must return to the Main Screen somehow.
For Option [2] Produce Hours Worked Report, your program is required to read the employee records from file and display them to the screen with the latest entries at the top of the list (sorted). You must give the user the choice for the number of records to be displayed. For example, if the user enters 5, then the 5 most recent records will be displayed. The program must be able to return back to the Main Screen.
For Option [3] your program must exit/close appropriately
Sample of Work From Home Tracker running as a Console Application
This sample shows what the program might look like running as a console application. This could vary depending on your interface (for example Web App, or Form with buttons etc). It is the functionality that is important.
This assumes the user has selected [1] Enter Daily Hours Worked from the Main Screen.
* * * Add Employee Working Hours * * *
Enter Current Working Week: 2
[Employee 1]
Enter Employee 1 ID: 123
Enter Employee 1 Name: Vicki BrainsworthEnter Hours Worked for Monday: 3
Enter Hours Worked for Tuesday: 6
Enter Hours Worked for Wednesday: 12
Enter Hours Worked for Thursday: 8
Enter Hours Worked for Friday: 9
**************************************
Summary for Employee 123
Insufficient hours worked on Monday
Too many hours worked on Wednesday
Total Hours worked for Week 2: 38 hours
[Employee 2]
Enter Employee 2 ID: 345
Enter Employee 2 Name: Joey Genius
Enter Hours Worked for Monday: 8
Enter Hours Worked for Tuesday: 12
Enter Hours Worked for Wednesday: 6
Enter Hours Worked for Thursday: 11
Enter Hours Worked for Friday: 7
***************************************
Summary for Employee 345
Too many hours worked on Tuesday
Too many hours worked on Thursday
Total Hours worked for Week 2: 44 hours
You are working too hard!
. <continue adding records for all 7 employees>
. <once complete, a Weekly Employee Report should>
. <be displayed as shown below>
***************************************************************
Weekly Employee Report
Number of Employees who worked Less than 30 hours this week: 2
Number of Employees who worked more than 40 hours this week: 3
Number of Employees who worked Between 37-39 hours this week: 2
<Press 1 to return to the Main Screen or 2 to Exit > _
Your Task
Following basic language syntax rules (and relevant programming standards), you will develop the application for your client whilst following the Mandatory Coding Specifications Checklist below.
Mandatory Coding Specifications Checklist
Program must make use of Sequence, selection and iteration constructs Usage of datatypes, operators, expressions Appropriate usage of operators and expressions Declare and use variables, appropriate data types, and variable scope Make use of at least two (2) library functions Usage of at least two (2) types of commenting techniques Expressions in selection and iteration using logical operators String manipulation techniques Usage of two (2) different Data Structures Reading and writing to a text file
Client Requirements Checklist
Use the Client Requirements Checklist below to ensure application meets initial client specifications.
Client requirement checklist Completed (tick box if yes)
Appropriate Interface and Layout suitable for application Application is suitable for target audience Application runs as required: Program allows user to enter all Employee Records Totals are calculated and displayed correctly Appropriate messages displayed to screen Records written to file correctly Records display correctly on the screen Program returns to Main Screen appropriately Program exits/closes appropriately Evidence of testing has been demonstrated to client Major bugs/errors have been rectified Game/Application is free from grammatical/spelling errors End of Case Study
Student Name Student Number Unit Code/s & Name/s ICTPRG302 Apply introductory programming techniques
Assessment Name Apply Programming Techniques Assessment Task No. 2 of 2
Assessment Due Date Date submitted / /
Assessor Name Student Declaration: I declare that this assessment is my own work. Any ideas and comments made by other people have been acknowledged as references. I understand that if this statement is found to be false, it will be regarded as misconduct and will be subject to disciplinary action as outlined in the TAFE Queensland Student Rules. I understand that by emailing or submitting this assessment electronically, I agree to this Declaration in lieu of a written signature.
Student Signature Date / /
Instructions to Student This task assesses your ability to apply programming techniques to produce a working application based on project specifications.
You must complete each section of the portfolio report at a satisfactory level for you to be deemed competent.
Information / Materials provided:
Scenario document
ICTPRG302_LHO_CaseStudy
Access to a computer with:
Internet access
Web browser
Microsoft office
Integrated development environment
Details of location:
TAFE will provide simulated work environment in the classroom all practical activities should be completed in the classroom with teacher/tutor assistance; however, it is possible to complete these tasks on a home computer with integrated development environment.
ICT WHS:
The environment should be assessed for safety prior to class. Special considering should be taken regarding potential ICT related hazards such as tripping hazards, electromagnetic radiation, ergonomics and posture.
TAFE Queensland health and safety policies and procedures should be followed at all times.
Level of assistance permitted:
teachers and tutors should be available in class, and accessible by email for students working from home. Staff cannot directly show students answers but guide them to where to go to complete tasks individually. Students with disability will receiver reasonable adjustments.
If you are unable to attend assessment you must notify your teacher before the assessment and supply a doctors certificate and approval from the team manager for extension. Reasonable adjustments will be made for students as and when appropriate, after consultation with the Disability and Counselling team. Extra time may be given for Language literacy and numeracy (LLN) or extenuating circumstances you must see your teacher prior to assessment regarding this.
Assessment Criteria:
To achieve a satisfactory result, your assessor will be looking for your ability to demonstrate the following key skills/tasks/knowledge to an acceptable industry standard:
1.1Establish project requirements
1.2Develop the application algorithm (pseudo code)
2.1 Build the application
2.2Apply variables, data types, operators and expressions.
2.3Apply sequence, selection and iteration constructs.
2.4 Apply user defined data structures.
2.5Write code to read and write text to the filesystem.
2.6Apply string manipulation techniques.
2.7Apply internal documentation comments
3.1Apply debugging techniques
3.2Application testing
3.3Rectifications
4.1Project feedback and sign off
Submission details(if relevant) Insert your details on page 1 and sign the Student Declaration. Include this template with your submission.
Naming Convention:
Students can write answers in this document and save as below;
LASTNAME_FIRSTNAME_ASSESSMENT_TASK_ATTEMPT
Example:
Doe_John_ProgrammingConcepts_AT2
Doe_John_ProgrammingConcepts_AT2_R
Evidence required to be submitted:
Completed program source code as per the scenario
Project report
Submission Connect:
Upload the completed word document to Assessment 2 drop boxin Connect
TAFE Queensland Learning Management System Connect url: https://connect.tafeqld.edu.au/d2l/loginUsername; 9 digit student number
For Password: Reset password go to: https://passwordreset.tafeqld.edu.au/default.aspx>
Instructions to Assessor
Information / Materials provided:
Scenario document
ICTPRG302_LHO_CaseStudy
Access to a computer with:
Internet access
Web browser
Microsoft office
Integrated development environment
Assessment location:
Computer lab that simulates an ICT workplace environment.
Interactions:
Aspects of this assessment require supervisor approval. Please consult the marking criteria and benchmark to ensure approval is correctly and consistently granted.
ICT WHS:
The environment should be assessed for safety prior to class. Special considering should be taken regarding potential ICT related hazards such as tripping hazards, electromagnetic radiation, ergonomics and posture.
TAFE Queensland health and safety policies and procedures should be followed at all times.
Level of assistance
General assistance with tasks such as operating a computer and using word processing software may be provided freely.
Subject matter assistance to be granted with moderation. Students should be provided with small hints and pointers to relevant resources.
Reasonable adjustments will be made for students as and when appropriate, after consultation with the Disability and Counselling team. Extra time may be given for Language, Literacy and Numeracy (LLN) or extenuating circumstances you must see your teacher prior to assessment regarding this.
Contingencies
If Microsoft Word is not available; other word processing software may be used, given that the items produced can still be exported to a format accepted by Microsoft Word.
Alternative development environment may be used, given that it supports and same features and functionality as the suggested IDE.
Note to Student An overview of all Assessment Tasks relevant to this unit is located in the Unit Study Guide.
453023780645Project Technical Document
00Project Technical Document
Project Name
Programming Language:
Student Name:
Teacher Name:
Project Name
Programming Language:
Student Name:
Teacher Name:
Read the Project Scenario before commencing this assessment.
Once you have familiarised yourself with the scenario and understand the project requirements, you will create a program to meet the clients needs, commencing with establishing the project requirements.
1.1Establish project requirements
Write a hypothetical email to the project manager clarifying the project specifications
To: Manager@phoenixwebsolutions.comSubject:
Message:
<brief message here>
Client Name Business Domain: <what type of business is it>
Target Audience Project Name Programming Language <programming language used to build the application>
Development Environment <list the IDE/Development tool you will be using>
Library functions that could possibly be used (list 3) 1.
2.
3.
Programming Guidelines/Standards
(List 6 guidelines/ standards you will follow and paste at least 2 links to your chosen resources.) 1.
2.
3.
4.
5.
6.
<Paste at least 2 links from the website(s) for programming guidelines/standards here>
Project Design Specifications/Client Specifications: (approx. 100 words):
<brief description of the project including an outline of the main functions of the program i.e. How does it work? what does it do?>
1.2 Design the application algorithm (pseudo code)
Develop structured pseudo code for your program here, adhering to pseudocode standards. Ensure to show usage of sequence, selection and iteration constructs
<write the pseudo code for your application here>
Build your Application
2.1Using your selected programming language and in accordance with relevant programming standards and syntax rules identified in Task 1.1 above, design and build the Program for your client as outlined in the Project Scenario.
You must follow the Mandatory Coding Specifications Checklist to ensure coding requirements are met. Once complete, you will be required to capture screenshots of certain segments of your code to ensure they meet the client requirements, programming standards, and syntax rules as outlined in the scenario.
2.2Apply variables, variable scope, data types, operators and expressions using appropriate syntax rules.
Include screenshots demonstrating the use of:
Variables, Variable Scope and data types:
Brief explanation of variable scope (approx. 15-20words):
<screenshot here>
Operators:
<screenshot here>
Expressions:
<screenshot here>
2.3Apply sequence, selection and iteration constructs using appropriate syntax rules.
Include screenshots demonstrating the use of sequence, selection and iteration constructs.
Sequence:
<screenshot here>
Selection/Control Flow (including use of logical expressions):
<screenshot here>
Iteration/Loops (including use of logical expressions):
<screenshot here>
2.4Apply user defined data structures.
Include a screenshot demonstrating the use of at least 2 (two) user defined data structures in your project and briefly explain what they are (approx. 15-20 words each):
Data Structure 1
Brief description:
<screenshot here>
Data Structure 2
Brief description:
<screenshot here>
2.5Write code to read and write text to the filesystem using the built-in library functions.
Include a screenshot of the code used to write text data to a file:
<screenshot here>
Include a screenshot of the code used to read text data to a file:
<screenshot here>
2.6Apply string manipulation techniques.
Include a screenshot of code that preforms string manipulation.
Brief description where you have used string manipulation (approx. 20 words):
<screenshot here>
2.7Apply internal documentation comments
Include screenshots of source files demonstrating the use of internal comment techniques used.
Brief description (approx. 10-20 words):
Comment Technique 1:
<screenshot here>
Comment Technique 2:
<screenshot here>
3.1Apply debugging techniques
Include screenshots demonstrating the use of two (2) debugging techniques (e.g. breakpoints, variable watches) and briefly explain each one (approx. 20 words).
Debugging Technique 1 (include variable contents using variable watches):
Brief description (approx. 10-20 words):
<provide at least 2 screenshots as evidence of tracking the contents of variables during the debugging process>
Debugging Technique 2:
Brief description (approx. 20 words):
<screenshot here>
3.2Functionality Application Testing Method
Develop test cases to test the major functions of the application (7 Test cases minimum). Test your program and record the results in table below.
Test Case Instructions Expected Outcome Actual Outcome Pass/Fail Fixes Made
1. Yes No
2. Yes No
3. Yes No
4. Yes No
5. Yes No
6. Yes No
7. Yes No
3.3 Program rectifications
Present your program to your Client (Teacher) for feedback.
Record three (3) pieces of feedback received and record the changes made to your program in the table below.
Some feedback could include things such as (but not limited to):
Rewording/Customising Error Messages
Making changes to colours, interface, layout
Fixing spelling/grammatical errors
Client (Teacher) Feedback Changes Made
1. Yes No
2. Yes No
3. Yes No
4.1Project feedback and sign off
Present the application to your manager (teacher in class) for feedback and sign off. Record the responses to the following items:
Feedback from manager (teacher):
Confirm the application meets the initial client specifications by completing the checklist below:
Client requirement checklist Completed (tick box if yes)
Appropriate Interface and Layout suitable for application Application is suitable for target audience Application runs as required: Program allows user to enter all Employee Records Totals are calculated and displayed correctly Appropriate messages displayed to screen Records written to file correctly Records display correctly on the screen Program returns to Main Screen appropriately Program exits/closes appropriately Evidence of testing has been demonstrated to client Major bugs/errors have been rectified Game/Application is free from grammatical/spelling errors Request application sign off:
Manager Name (teacher): <teacher name>
Employee Name (student): <your name>
Date of Meeting: <date of meeting>
Project Name: <name of the project>
Sign-off approved by: The Manager Phoenix Web Solutions
Project Client Requirements met: Yes No Project Status: Closed
End of Assessment