Download File

Transcript
Field Training
Application
IST 311 Team 2
Ankit Jain
Tommy Demarco
Alex Curtis
Daniel Campbell
Baldwin Luk
Implementation Class Diagram
View Classes
TraineeProgressUI
SkillEditUI
ManagerMenuUI
-parentMenuCntl
-parentSkillList
-parentTrainerList
-parentTraineeList
-parentChecklistList
-trainerModel
-traineeModel
-checklistModel
-skillModel
-masterSkillModel
-currentlySelectedTrainer
-currentlySelectedChecklist
-checklistDescription
-skillDetails
+refreshSkillTabText()
+refreshChecklistTabText()
+refreshChecklistList()
+refreshSkillList()
+refreshTrainerList()
+refreshTraineeList()
+refreshMasterSkillList()
ChecklistEditUI
ArchiveViewUI
CertificationAddUI
TrainingAdminMenuUI
FeedbackViewUI
-parentTrainingAdminCntl
-traineeIndex
-feedbackModel
-feedbackTextArea
+refreshList()
+getTrainee()
+generateTitleText()
+getFeedbackText()
-parentTrainingAdminCntl
-theTrainingAdmin
-theTraineeList
-traineeModel
-traineelist
+viewButtonActionPerformed()
+getTraineeName()
LoginUI
-parentLoginCntl
-jPasswordField1
-jTextField1
-parentChecklistEditCntl
-skillsModel
-incModel
-theInputedName
-theInputedDetails
-index
-theInputedSkills
-checklistDescription
-checklistName
-includedSkills
-skills
+refreshSkillList()
-parentArchiveViewCntl
-archiveModel
-archiveList
+refreshList()
+getTraineeName()
+getTrainerText()
+refreshText()
CertificationUI
-theTrainer
-checklistModel
-parentCertificationCntl
-checklistList
-theTrainer
-parentCertificationCntl
-certificationModel
-certificationDescription
-certificationListFrame
+refreshList()
SkillAddUI
-addSkillButton
-cancelButton
-parentSkillAddCntl
-skillDetails
-skillDetailsLabel
-skillDetailsScrollPane
-skillName
-skillNameLabel
-titleLabel
+addSkillButtonActionPerformed()
+cancelButtonActionPerformed()
+initComponents()
ChecklistAddUI
-parentChecklistAddCntl
-skillsModel
-incModel
-checklistDescription
-checklistName
-includedSkills
-skills
+refreshSkillList()
-editSkillButton
-cancelButton
-parentSkillEditCntl
-skillDetails
-skillDetailsLabel
-skillDetailsScrollPane
-skillName
-skillNameLabel
-titleLabel
-theInputedDetails
-theInputedName
-index
+editSkillButtonActionPerformed()
+cancelButtonActionPerformed()
+initComponents()
-addChecklistButton
-bindingGroup
-cancelButton
-checklistListFrame
-checklistModel
-decreaseSkillButton
-increaseSkillButton
-parentTraineeProgressCntl
-skillListFrame
-skillModel
-theTrainee
-traineeLevels
+addChecklistButtonActionPerformed()
+cancelButtonActionPerformed()
+checklistListFrameMouseReleased()
+decreaseSkillButtonActionPerformed()
+deleteChecklistButtonActionPerformed()
+getSkillLevelText()
+increaseSkillButtonActionPerformed()
+initComponents()
+refreshChecklists()
+refreshSkills()
+refreshText()
+setTrainerMode()
+skillListFrameMouseReleased()
TraineeEventUI
TraineeEventAddUI
TraineeProgressAddChecklistUI
-addButton
-cancelButton
-checklistList
-checklistModel
-checklistScrollPanel
-parentTraineeProgressCntl
-theTrainee
+addButtonActionPerformed()
+cancelButtonActionPerformed()
+initComponents()
TrainerMenuUI
-trainerListFrame
-parentTrainerMenuCntl
-traineeModel
+viewProgressButtonActionPerformed()
+viewEvalButtonActionPerformed()
-addButton
-addSkillButton
-backButton
-call
-callRadio
-eventDetails
-eventName
-includedModel
-includedSkills
-parentTraineeEventCntl
-removeSkillButton
-skills
-skillsModel
+addButtonActionPerformed()
+addSkillButtonActionPerformed()
+backButtonActionPerformed()
+callRadioMouseReleased()
+initComponents ()
+refreshSkillsList()
+removeSkillButtonActionPerformed()
-backButton
-createButton
-deleteButton
-editButton
-eventDescription
-eventListFrame
-eventModel
-parentTraineeEventCntl
-skillList
-theTrainee
+backButtonActionPerformed()
+createButtonActionPerformed()
+deleteButtonActionPerformed()
+editButtonActionPerformed()
+eventListFrameMouseReleased()
+getDetailDisplay()
+getNameDisplay()
+initComponents()
+refreshSkillList()
+setTrainerMode()
TraineeEventEditUI
-call
-editIndex
-eventDetails
-eventName
-includedModel
-includedList
-inputedDetails
-inputedName
-inputedSkills
-parentTraineeEventCntl
-skills
-skillsModel
+addSkillButtonActionPerformed()
+backButtonActionPerformed()
+callRadioMouseReleased()
+editButtonActionPerformed()
+initComponents()
+refreshIncludedList()
+refreshSkillsList()
+removeSkillButtonActionPerformed()
TraineeMenuUI
-eventsButton
-feedbackButton
-parentTraineeMenuCntl
-theTrainee
+eventsButtonActionPerformed()
+feedbackButtonActionPerformed()
+initComponents()
Controller Classes
CertificationCntl
-theTrainer
-theCertificationUI
-parentMenuCntl
+add()
+deselect()
+delete()
+setCertifiedStatus()
+getCertifiedStatus()
+setAlertStatus()
+getTrainer()
+getChecklists()
+openAddUI()
ArchiveViewCntl
-parentMenuCntl
-theArchiveViewUI
+getArchive()
SkillAddCntl
ChecklistEditCntl
ChecklistAddCntl
-parentManagerMenuCntl
-parentSkillList
-theChecklistEditUI
+getSkillList()
+editChecklist()
+refresh()
-parentManagerMenuCntl
-parentSkillList
-theChecklistAddUI
+getSkillList()
+addChecklist()
+refresh()
-parentManagerMenuCntl
-parentSkillList
-theSkillAddUI
+addSkill()
+refresh()
TraineeEventCntl
-loginType
-parentTraineeMenuCntl
-parentTrainerMenuCntl
-theTrainee
-theTraineeEventUI
+addEvent()
+deleteEvent()
+editEvent()
+getTrainee()
+getTraineeIndex()
+openAddUI()
+openEditUI()
+refresh()
SkillEditCntl
-parentManagerMenuCntl
-parentSkillList
-theSkillEditUI
+editSkill()
+refresh()
TraineeProgressCntl
-loginType
-parentManagerMenuCntl
-parentTrainerMenuCntl
-theChecklistList
-theTrainee
-theTraineeProgressUI
+addChecklist()
+decreaseSkill()
+delete()
+getChecklistList()
+getTrainee()
+increaseSkill()
+openAddChecklist()
FeedbackCntl
-theTrainee
-parentMenuCntl
-theFeedbackUI
+openAddFeedbackUI()
+openEditFeedbackUI()
+addFeedback()
+editFeedback()
+refreshList()
+deleteFeedback()
ManagerMenuCntl
-theMenuUI
-theParentLoginCntl
-theSkillList
-theTraineeList
-theTrainerList
-theChecklistList
-theSelectedIndex
+refreshMasterSkillList()
+refreshSkillTabText()
+refreshChecklistList()
+addCertification()
+archive()
+addTrainee()
+deleteCertification()
+deleteChecklist()
+deleteTraineeChecklist()
+setCertifiedStatus()
+setAlertStatus()
+increaseSkill()
+decreaseSkill()
+deselect()
+getChecklistList()
+getSkillList()
+getTraineeList()
+getTrainerList()
+openCertificationUI()
+openTraineeProgressUI()
+openMenuUI()
+closeMenuUI()
+openEditSkillUI()
+openAddSkillUI()
+openAddChecklistUI()
+openEditChecklistUI()
+openArchive()
TrainingAdminMenuCntl
-theAdmin
-theTraineeList
-parentLoginCntl
-theMenuUI
-theSelectedIndex
+getAdmin()
+getTrainees()
+openFeedbackViewUI()
TrainerMenuCntl
-theTrainerIndex
-theTrainer
-theTrainerList
-theTraineeList
-parentLoginCntl
-theMenuUI
-theSelectedIndex
+getTrainer()
+getTraineeList()
+getTraineeIndex()
+openTraineeIndex()
+openTraineeEvalUI()
+increaseSkill()
+decreaseSkill()
TraineeMenuCntl
-parentLoginCntl
-theMenuUI
-theSelectedIndex
-theTrainee
-theTraineeIndex
-theTrainee
-theTraineeIndex
-theTraineeList
-theTrainerList
+addEvent()
+addFeedback()
+deleteEvent()
+deleteFeedback()
+editEvent()
+editFeedback()
+getTrainee()
+getTraineeIndex()
+openEvalUI()
+openFeedback()
LoginCntl
-currentUserList
-theLoginUI
-theModelFactory
+requestAuthenticate()
+login()
+openTrainerMenuCntl()
+openTraineeMenuCntl()
+openManagerMenuCntl()
+openAdminMenuCntl()
ModelFactory
-theAdminList
-theArchivedList
-theChecklistList
-theManagerList
-theSkillList
-theTraineeList
-theTrainerList
+initTrainees()
+initTrainers()
+refreshFiles()
Model Classes
TraineeList
TrainerList
-listOfTrainees
-listOfTraineesFileName
+add()
+addTestEvents()
+addTestFeedback()
+addTestLevels()
+archive()
+createTest()
+getTrainee()
+getTrainees()
+isEmpty()
+printTraineeList()
+readTraineeListFile()
+size()
+writeTraineeListFile()
ChecklistList
-listOfChecklists
-listOfChecklistsFileName
+readChecklistFile()
+writeChecklistFile()
+printChecklistList()
+createTestChecklists()
+getChecklist()
+size()
+addChecklist()
+editChecklist()
+removeChecklist()
TrainingManagerList
TrainingAdminList
-listOfAdmins
-listOfAdminsFileName
+readAdminListFile()
+writeAdminListFile()
+printAdminListFile()
+createTestAdminList()
+getAdmin()
+getAdmins()
TrainingAdmin
-listOfManagers
-listOfManagersFileName
+readManagerListFile()
+writeManagerListFile()
+printManagerListFile()
+createTestManagerList()
+getManager()
+getManagers()
-listOfTrainers
-listOfTrainersFileName
+readTrainerList()
+writeTrainerList()
+writeTrainerListFile()
+printTrainerList()
+createTestTrainerList()
+addTestCertifications()
+getTrainer()
+getTrainers()
+size()
+isEmpty()
+addTestTrainees()
TrainingManager
Trainer
Trainee
Checklist
-theSkillChecklist
-theChecklistName
-theChecklistDescription
+getSkill()
+getChecklistDescription()
+getChecklistName()
+getSkillChecklist()
+size()
-listOfCertifications
-listOfTrainees
+addCertifications()
+getCertifications()
+getCertifiedStatus()
+getTrainees()
+removeCertification()
+setAlertStatus()
+setCertifiedStatus()
-evalList
-feedbackList
-skillLevels
-theTrainer
+addChecklist()
+addEvent()
+addFeedback()
+deleteFeedback()
+editEvent()
+editFeedback()
+getEvents()
+getFeedback()
+getLevels()
+getTrainer()
+removeChecklist()
+setTrainer()
User
-userName
-password
-userType
+setUserName()
+getUserName()
+getPassword()
+getUserType()
SkillList
-listOfSkills
-listOfSkillsFileName
+addSkill()
+createTestList()
+delete()
+editSkill()
+getSkill()
+printSkillList()
+readSkillListFile()
+returnSkillList()
+size()
+writeSkillListFile()
SkillLevelList
-listOfLevels
+add()
+decreaseSkill()
+getChecklist()
+getSkillLevel()
+increaseSkill()
+isEmpty()
+remove()
+size()
Skill
SkillLevel
-skillDetails
-skillName
+getDetails()
+getSkillName()
+setDetails()
+setSkillName()
-skillLevel
-theChecklist
+decrease()
+getChecklist()
+getSkillLevel()
+getSkillName()
+increase()
TraineeEventList
-listOfEvents
FeedbackList
-listOfFeedback
+add()
+set()
+isEmpty()
+size()
+get()
+remove()
Feedback
+getText()
+add()
+remove()
+setCertifiedStatus()
+setAlertStatus()
+getCertifiedStatus()
+size()
+get()
+isEmpty()
+add()
+get()
+isEmpty()
+remove()
+set()
+size()
UserList
TraineeEvent
-feedbackText
CertificationList
-listOfCertifications
-applicableSkills
-eventDetails
-eventName
-eventType
+addSkill()
+getDetails()
+getName()
+getSkills()
+getType()
-listOfTrainers
-listOfTrainees
-listOfManagers
-listOfAdmins
-listOfUsers
-listOfUsersFileName
+readUserListFile()
+writeUserListFile()
+printUserList()
+createTestUserList()
+getUser()
+getTrainees()
+getTrainers()
Certification
-theTrainer
-theChecklist
-certified
-sendAlert
+setAlertStatus()
+getDescription()
+getName()
+getTrainer()
+getChecklist()
+getCertifiedStatus()
+setCertifiedStatus()
+getAlertSent()
+sendRecertificationAlert()
+alertRecieved()
Due to the size of the diagram, it has been uploaded in the folder as well.
FeedbackUI
FeedbackEditUI
-parentFeedbackCntl
-feedbackIndex
-inputedText
-feedbackText
-theTraine
-parentFeedbackCntl
-feedbackModel
-feedbackTextLabel
+refreshList()
+getFeedbackText()
FeedbackAddUI
-parentFeedbackCntl
-feedbackText
System Activity Diagram
Trainee
View
Control
Model
LoginCntl
Open LoginUI
Start FTO app
Authenticate User
Enter User Name & Password
[Authenticated] [Not Authenticate]
MainMenuUI
Open MainMenuUI
Close FTO
Display Main Menu Option
Make Menu Selection
MainMenuCntl
[Log Skill Event]
SkillEvent
Open LogSkillEventUI
LogSkillEventUI
Display Log Skill Event UI
Record Skill Event
Add Skill Event
[View Skill Event]
Open SkillEventUI
SkillEventUI
Retrieve SkillEvent
Display Skill Event
Open FeedBackUI
FeedbackUI
Feedback
Display Feedback Input Box
Enter Feedback
Record Feedback
The trainee has skill event(s) to log
The trainee wish to view skill event
The trainee want to input feedback(s)
This activity diagram shows the overall process of a trainee using our FTO
application. The trainee will start the application and will be presented with the login
user interface, controlled by the LoginCntl class. If the user provides valid login
credentials, he or she will be presented with the Trainee Main Menu. If the user cannot
provide valid login credentials, the FTO application will close. There are three options
in the main menu for a trainee. He or she can either log a skill event, view a skill event,
or provide feedback.
The main menu controller will open will open up the log sill event user interface
if that option is selected. From here the trainee has the ability to add the event
description. When he or she hits submit, the model SkillEvent class will store the data
and the process is complete. Selecting view skill event will simply open the skill even
user interface and the model SkillEvent class will be called upon to present a selected
event. Finally, if the trainee selects offering feedback in the main menu, the main menu
controller will open the feedback user interface. The trainee will then submit the text
he or she chooses to write and it will be stored in the model Feedback class.
Note: It is assumed that the trainee desires to either log a skill event, view a skill event,
or provide feedback.
Revised Sequence Diagram
Create Checklist Sequence Diagram
Daniel Campbell
FTO
aTrainingManager
aSkillChecklistCntl
aSkillChecklistUI
aSkillChecklist
aSkill
main()
ChecklistCntl()
ChecklistUI()
createChecklist()
Checklist()
displayChecklist()
addSkill()
retrieveSkill()
addSkilltoList()
refreshDisplay()
verifyChecklist()
getChecklist()
finalizeChecklist()
This sequence diagram details the Create Checklist Use Case. From the main FTO
menu, the user can choose to call the Skill Checklist Controller, which will bring up the
Skill Checklist UI. From here, the user may choose to create a Checklist. The UI will
request a new Checklist object and display it. From here the user can choose to add
skills to this checklist. The UI passes this message to the Checklist, which will add the
skill to the list and refresh the display. The User can then finally verify the checklist,
which will retrieve the Checklist and “finalize it” by saving the data and prompting the
user to double check and ensure everything is correct.
Login UI State Diagram
Alexander Curtis
Group 2
/ FTOLaunch
[UNPW Format Satisfied] / enableSubmit
DataEntered
Initialize
User Input UN/PW
Ready
UN/PW Format Check
SubmitPressed
[not authenticated $$ tries <=3] / tries++
Authenticating
[authenticated] / closeWindow,notifyCont
[not authenticated && tries >=4] / QuitApp
This state diagram represents the state of logging in. When it is ready the first thing
that happens is the user is prompted for a username and password. After the
username and password is entered it will continue onto authenticating. If it does not
authenticate it will go back to the login prompt and the user will have 2 more tries. If it
does not authenticate on the third try it will quit the application. When the application
does authenticate it, it will continue onto the main menu.
Trainee UI State Diagram
Tommy Demarco
Team 2
Trainee UI State Diagram
[User Logged In / displayMainMenuUI]
Main Menu Displaying
[Trainee User Selected] / displayTraineeUI
Trainee UI Displaying
/ closeApplication
[Cancel Action]
Editing Trainee Data
[Input Accepted] / SaveData
Closing Program
[Input Data]
Saving Changes
Assumptions:
-Trainee has properly logged in
-Trainee can make minimal changes, primarily on training status
-Easy access to saving data and quitting the program are readily available
This diagram depicts the process of logging in as a trainee user. Once credentials have
been entered through the login window and the user is authenticated, the trainee UI
will be displayed. At this point, data, such as skill completion, can be edited and saved.
As always, there is an option to cancel and return to a previous step. Once all edits
have been completed and saved, the program can be terminated.
Training Manager UI State Diagram
Daniel Campbell
Team 2
TrainingManagerUI
State Diagram
[User Logged In] / displayMainMenuUI()
Main Menu Displaying
Employee Tab Pressed / displayEmployeeUI()
Edit Button Pressed / displayEmployeeEditUI()
Delete Button Pressed / displayVerificationWindow()
Employee UI Displaying
Cancel Button Pressed / closeEmployeeEditUI()
Cancel Button Pressed / closeVerificationWindow()
EmployeeEditUI Displaying
VerifyDeleteWindow Displaying
User Inputs Data
Exit Program Selected / closeApplication()
[Valid Input Data] / enableSubmit()
Verify Delete Button Pressed / archiveData()
/ closeEmployeeEditUI()
/ closeVerificationWindow()
Checking Data Input
Archiving Data
Submit Button Pressed / saveData()
/ removeData()
Closing Program
Saving Data
Removing Data
Assumptions:
-User has logged in (the initial state)
-Other forms within the Training Manager UI (program and skill) will follow this same type of chart
-The Add form for any of the forms (employee/program/skill) will all follow the same pattern as the edit functions
-The exit program option is also available from the Main Menu state, but for the sake of clarity and neatness it was not included in this diagram
This state diagram details the various states of the TrainingManagerUI. Upon
logging in and reaching the Main Menu, the user will have the option of selecting either
the Employee, Program, or Skill tabs, which will bring up their corresponding UI’s.
Each of these 3 will function essentially the same, so for clarity only the Employee UI
was modeled. When the user enters the employee UI, they will have the option to add,
edit, or delete an employee. Add and edit will both function the same, so only Edit was
modeled. The user can input data into the Edit UI, which will then check the data to
ensure it is valid, or close the UI and return the Employee tab. Upon the input of valid
data, the user has the option to submit the data. The data will then be saved and the
UI will be closed. The Delete button will open a verification window asking the user to
verify that they do in fact want to delete the user. The user can either close this
window, or verify the deletion. Upon verification, the system will archive the data
elsewhere for security purposes and remove the data from the system, finally closing
the UI and returning the Employee tab. Each UI, including the Main Menu, will have an
exit option which will close the program, leading to the end state.
Capture Trainee Feedback State Diagram
User Case: Capture Trainee Feedback
Class: FeedbackUI
Opening FeedBack UI
Input Feeback Selected [Data Saved] / Display Input Box
Displaying Feedback Input Box
Feedback Input Finished [Data Saved] / Save Feedback
Clear out Feedback Input Box [Data Saved] / Reset Feedback Input Box
Feedback Saved [Data Saved] / Redirect to Main Menu
Saving Feedback
Redirecting User Back to Main Menu
User is authenticated and is logged into the system
User has permission to access feedback UI
This state diagram represent State FTO would be in when a user is trying to input
feedback into the system, saving it and then display back to all user types for future
reference. For example, when a trainee first goes into the FeedbackUI, It will display
past feedback, if any, and also an input box for new feedbacks. After he/she is done
with the new feedbacks, he/she will click save and it will save to FTO and redirect user
back to the main menu after it has successfully been saved.
LogEventUI State Diagram
LogEventUI State Diagram
Ankit Jain
User Logged In / display MainMenuUI
MainMenuUI Displaying
Trainee selected / display TraineeUI
TraineeUI Displaying
Log skill selected / display LogEventUI
LogEventUI Displaying
Cancel selected [warning message ignored] / display LogEventUI
Enter Event Data
Add Event selected / LogEventControler called
Data Saving
/ LogEventr called
This diagram shows the various states of the process for logging a skill event. Only a
trainee can log a skill event so this model only applies to that type of user. The initial
state for the diagram shows that the user is logged in and is shown the trainee’s user
interface. In this menu, he or she will select the “Log Skill” option. This will open up a
new user interface, the class LogEventUI. From here, the trainee will enter the
information pertinent to the skill. If the user presses cancel, a warning message would
pop up and upon dismissing it, the log event user interface would be displayed again.
If the user clicks “Add Event” the data will be saved and the LogEvent class will be
called.
Minimal User Manual
Starting the Program
After downloading the zip file of our deliverable, place it in a convenient directory to
find, i.e. the desktop. Unzip the folder to the same directory. Open NetBeans, click File,
Open Project, then locate the unzipped file TestIO. Open that, then select run to launch
the program.
Logging In
Welcome to the Field Training Application! To begin use, you must first authenticate
yourself by logging into our interface. At this point, there are 4 user types you can log
in as. Usernames are case sensitive.

Admin

Manager

Trainer0 (Through Trainer3)

Trainee0 (Through Trainee19)
The password for all users is password.
Main Menus
After a successful login, the main menu will launch, which will vary depending on your
user type.

Admin Main Menu – a list of all the trainees are displayed. The view feedback
button shows a trainer’s feedback given to him or her by the trainees.

Manager Main Menu – Three tabs are shown: Employees, Skill Checklists, and
Skills. The Employees tab shows each trainer’s set of trainees. The user can then
view each trainer’s certifications. By default all trainers have Ambulance Skills.
From the certification window, the manager can add to a trainer’s certifications
from the existing list. Managers can also delete certifications, revoke them, and
send an alert for recertification. Back in the Main Menu under the Employees
tab, the manager can view Trainee progress by selecting the trainee and clicking
View Progress. That will display a new window in which individual skill levels can
be modified. The manager has the ability to increase and decrease the level for
that skill. The manager can also add or delete a checklist, which changes what
skills are displayed for a trainee. Trainees can be promoted when they are
selected by the manager, and he presses “Promote Trainee”. This adds the
trainee to a list of promoted trainees known as archived trainees (note: once a
trainee is promoted, that account cannot be used for future login). This list can
be seen when the manager clicks View Archived Trainees. Also, the skills
checklist is visible which has all of the skills that a trainee can have. There is a
checklist category on the right that must be chosen to show specific skills.
Within those checklists there are the specific skills that trainees can have. The
manager also has access to adding and editing the checklists. Once “Add a
Checklist” has been chosen, the manager has the option to make a name,
description, and add skills from an existing skills list. Once the skills have been
added they will be visible in the checklist menu. The edit checklist option is the
essentially the same as adding a checklist but all of the information is already
filled in. The manager can then go through and change anything that they would
like including adding and removing more skills. If a skill is added or removed it
will be updated when the window is closed. The “Delete Checklist” will delete an
entire checklist. (Do no delete a checklist that is in use by a trainee or trainer, it
could cause problems.) The skills tab is just a list of all of the skills and
descriptions that are available to add to a checklist. From here the manager is
able add, delete, and edit each individual skill.(Do not delete a skill if being used
by a checklist.)

Trainer Main Menu – The only thing that a trainer can view is the information
about their own trainee’s. From the list of their trainee’s they can view their
progress and increase the skill level of a trainee. This is similar to the managers
view progress except they cannot add and delete a skill checklist. Also from the
main menu the trainer can view events that their trainees have logged. There are
two different types of events, shift and call. The shift is the regular time they the
trainee has worked and is denoted by an S to the left of the name. The call is
when the trainee gets called into the field for an emergency and is denoted by a
C to the left of the name. Under these two different types of events the trainee
is able to display skills that they may have implemented during that event. To
the right of the event names is a basic description of the event.

Trainee Main Menu – When they click view events, a view event menu will show
up allowing trainees to create new even, editing and deleting existing event.
When click on create new event, trainee can create an event by adding skills
from addable skills to included skills. The included skills will be added along will
event name and details. The only skills a trainee allows to add are the ones the
trainee has on his/her own skill checklist. There is a call event button in the add
an event menu where if clicked, it will become a call event as oppose to shift
event if not clicked. Edited event allow trainee to edit an existing event with the
same option when a trainee is creating an event. There is a delete event button
which will remove the event from the list when selected (note: there will be a
confirmation and ask trainee if he/she wants to remove the selected event from
the list). There will be a feedback button at the trainee main menu where the
trainees can input their feedback for the respective trainers. There will be a list
showing all existing feedback, and there will be 1 feedback pre-generated for
trainees. When add feedback button is selected, a text field will appear for
trainees to input their feedbacks. Once they finish, they can select add feedback
and it will save the feedback to the list. Edit feedback button allow user to edit
existing feedback from the list. Delete feedback will remove the selected
feedback from the list and ask the trainees for confirmation if they wish to
remove the select event from the feedback list.
All core data will be saved to the system, and if will resume back to the previous
state when user re log in. If a situation present where a system reset is needed, one
would need to go to the directory and select all SER type files and deleted them.
When you restart the application, it will give user multiple errors for files not
existing. However, the application should still run. If log in after system reset,
everything show generated back to the default state.
Related documents