1 attachmentsSlide 1 of 1attachment_1attachment_1
Unformatted Attachment Preview
Programming Assignment 7
You have been contracted by Premiere Testing Services to build a system that manages the operation at
their testing centers. Premiere Testing Services provides facilities to conduct standard tests for its
customer’s certification exams. For example, the CompTIA organization utilizes the testing center for its
Security+ certification. Each of the customer organizations will provide the test questions, and criteria
for passing the certification exam. All the tests have a raw passing score that the candidates must
achieve. In addition to raw passing score, some tests are more complicated that involve rules such as
years of experience or highest degree achieved. For example, to pass the Security+ certification, the
candidate must just score equal to or higher than the raw passing score for the exam. To achieve the
CISSP certification, in addition to passing the exam, the candidate profile should denote that they also
have at least 5 years of experience. Below is the current set of certification tests that Premiere is
contracted to administer.
Current Certification Exams:
1 year of
2 years of
5 years of
All candidates will have a profile that includes their full name, email address, street address, city, state,
zip, and phone number. In addition, if employed, the candidate profiles will have details about their
current employer. The employer information will include employer name, phone number, and years
employed. (For the purposes of this assignment you can assume that the candidate has worked for the
same employer since graduation).
Create an efficient, object-oriented solution, using solid design principles, allowing the user to enter
candidate information when they arrive at the testing center. The user will also indicate which
Page 1 of 4
certification exam the candidate is registering for. After the candidate’s profile and exam information
have been entered, the system will create an exam ticket (to the screen) that includes the candidate
details and certification exam name. In addition, once the candidate has completed the exam, they will
return, and the user will search for the candidate by email and enter their score from the exam they just
completed. If the candidate has passed all the criteria, then a certificate (printed to screen) is
generated. If the candidate did not meet all the criteria, then the system will print a rejection letter
(printed to the screen).
Next, management has asked you to print a summary report on exam statistics to the screen (printed to
screen). This well-formatted summary report will include the number of certification exams taken that
day, the number of passing exams, and the number of failing exams. Lastly, management would like a
roster of all candidates that day. The roster should include the candidate’s name, email, name of the
certification exam taken, and pass/fail indicator.
Pay very careful attention to the logic requirements of the scenario including the relationships
between objects. Make sure your solution meets each requirement.
Think about what type of validations might be appropriate for this application. Unless otherwise
specified, all user input should contain some type of reasonable validation.
For the purposes of this assignment, you can hard-code the list of certification exams.
For the purposes of this assignment, you can simulate an actual test and provide a arbitrary
score for each test taker.
Your solution must demonstrate use object-oriented techniques. No points earned for a
Your solution must include appropriate constants, constructors, accessors, mutators, and special
purpose methods (including a toString() method) with exception handling, as necessary in
support of the problem.
Your solution may not use parallel arrays anywhere in the solution.
Your solution must be designed as a modular solution using methods other than main, with each
method performing one task.
Your solution may only import JOptionPane and the libraries listed in the Files module. You may
not import any other Java library.
You may not use System.exit, or any variant that exits the program in the middle of the
program. The program should only exit once the algorithm has finished completing.
Your solution may not use any functions or language constructs not covered during IT 106 or this
semester’s IT 206 without prior authorization from your instructor, even if you know other
functions or language constructs. We want everyone to be on the same “playing field”,
regardless of previous programming exposure, and get practice with algorithmic design to solve
problems (the intent of the course). Using something existing not discussed in class does not
Page 2 of 4
give you as much practice as solving the problem yourself. Doing this may lead to a substantial
grade penalty, a grade of zero, or an Honor Code inquiry. When in doubt, ask!
Page 3 of 4
Programming Assignment 10: Solution Implementation
Write a well-documented, efficient Java program that implements the solution design you identified.
Include appropriate documentation as identified in the documentation expectations document.
Note: You must use the JOptionPane class for input/output. Additionally, if you use System.exit as
shown in the textbook, it may only be used as the absolute last line in the program. You may not use
System.exit, or any variant that exits the program in the middle of the program. The program should be
designed to only exit once the algorithm has finished.
To Blackboard, submit ONLY ONE .zip file containing all of the .java files part of your submission for your
solution implementation. As you are naming your Java files, make sure they are indicative to the
purpose of the file. Do not include your name in the file name or use generic names, such as
Assignment10.java. Your .zip file should contain only the .java files in your solution. Be careful that you
do not submit .class files instead of .java files.
Warning! You must submit ONLY ONE .zip file containing ONLY your .java files. Failure to follow
this instruction precisely will result in a 10-point deduction of the assignment score. No
Why is this important? The goal is to teach you how to properly package your IT solutions into a
“customer-friendly” format while paying attention to “customer” requirements provided to you.
Your program must compile using jGrasp. Any final program that does not compile, for any reason, will
receive an automatic zero. Other IDEs often place in additional code that you are unaware of, doing too
much of the work for you. You are strongly discouraged from using IDEs other than jGrasp.
Implementation of object-oriented Java program, using efficient practices, such as the use of
constants, good variable names, information hiding, no redundant code, etc.
Appropriate objective-style documentation
Appropriate intermediate comments
Page 4 of 4
Purchase answer to see full
inheritance vs composition
User generated content is uploaded by users for the purposes of learning and should be used following Studypool’s honor code & terms of service.