CMSC 335 Project 3 Overview In this project you will construct a Java Swing GUI that...
Fantastic news! We've Found the answer you've been seeking!
Question:
Transcribed Image Text:
CMSC 335 Project 3 Overview In this project you will construct a Java Swing GUI that uses event handlers, listeners and incorporates Java's concurrency functionality and the use of threads. The following book may be useful to help you become comfortable with Thread processes. https://learning.oreilly.com/library/view/java-9-concurrency/9781787124417/ You should focus on the first 4 chapters. If you have previously signed up for the Safari account you don't need to sign-up again. Just use this link: https://learning.oreilly.com/accounts/login/?next=/library/view/temporary-access/ If you have not previously requested a Safari account follow the details on this page to sign-up for your Safari Account: https://libguides.umuc.edu/safari You'll need to sign in using your UMGC student email account. Once you sign in, you'll have immediate access to the content, and you'll shortly receive an e-mail from Safari prompting you to set up a password and complete your account creation (recommended). Students: Your UMUC e-mail account is your username + @student.umuc.edu (example: hsolo2@student.umuc.edu). In addition, a zip file is included that includes several Oracle Java files that use different types of Swing components as well as threads. I recommend going through the reading and the examples to become familiar before attempting the final project. Assignment Details As a new engineer for a traffic congestion mitigation company, you have been tasked with developing a Java Swing GUI that displays time, traffic signals and other information for traffic analysts. The final GUI design is up to you but should include viewing ports/panels to display the following components of the simulation: 1. Current time stamps in 1 second intervals 2. Real-time Traffic light display for three major intersections 3. X, Y positions and speed of up to 3 cars as they traverse each of the 3 intersections Some of the details of the simulation are up to you but the following guidelines will set the guardrails: 1. The components listed above should run in separate threads. 2. Loop through the simulation with button(s) providing the ability to start, pause, stop and continue the simulation. 3. You will need to use basic distance formulas such as distance = Speed* time. Be sure to be consistent and define your units of measure (e.g. mile/hour, versus km/hour) 4. Assume a straight distance between each traffic light of 1000 meters. 5. Since you are traveling a straight line, you can assume Y=0 for your X,Y positions. 6. Provide the ability to add more cars and intersections to the simulation through the GUI. 7. Don't worry about physics. Assume cars will stop on a dime for red lights, and continue through yellow lights and green lights. 8. Document all assumptions and limitations of your simulation. Submission Requirements: 1. Submit all of your Java source files (each class should be in a separate .java file). These files should be zipped and submitted with the documentation. 2. UML class diagram showing the type of the class relationships. 3. Developer's guide describing how to compile and execute the program. The guide should include a comprehensive test plan that includes evidence of testing each component of the menu with screen captures and descriptions supporting each test. Documentation includes Lessons learned. Your compressed zip file should be submitted to the Project 3 folder in LEO no later than the due date listed in the classroom calendar. Grading Rubric: Attribute Design Functionality Meets 20 points Designs a Java Swing GUI that uses event handlers, listeners and incorporates Java's concurrency functionality and the use of threads. 40 points Contains no coding errors. Contains no compile warnings. Constructs a Java Swing GUI that uses event handlers, listeners and incorporates Java's concurrency functionality and the use of threads Include viewing ports/panels to display the following components of the simulation: 1. Current time stamps in 1 second intervals 2. Real-time Traffic light display for three major intersections 3. X, Y positions and speed of up to 3 cars as they traverse each of the 3 intersections The components run in separate threads. Test Data Documentation and submission Loop through the simulation with button(s) providing the ability to start, pause, stop and continue the simulation. Provides the ability to add more cars and intersections to the simulation through the GUI. 20 points Tests the application using multiple and varied test cases. 20 points Source code files include header comment block, including file name, date, author, purpose, appropriate comments within the code, appropriate variable and function names, correct indentation. Submission includes Java source code files, Data files used to test your program, Configuration files used. Documentation includes a UML class diagram showing the type of the class relationships. Documentation includes a user's Guide describing of how to set up and run your application. Documentation includes a test plan with sample input and expected results, test data and results and screen snapshots of some of your test cases. Documentation includes Lessons learned. Documents all assumptions and limitations of your simulation. Documentation is in an acceptable format. Document is well-organized. The font size should be 12 point. The page margins should be one inch. The paragraphs should be double spaced. All figures, tables, equations, and references should be properly labeled and formatted using APA style. The document should contain minimal spelling and grammatical errors. Any submissions that do not represent work originating from the student will be submitted to the Dean's office and evaluated for possible academic integrity violations and sanctions. CMSC 335 Project 3 Overview In this project you will construct a Java Swing GUI that uses event handlers, listeners and incorporates Java's concurrency functionality and the use of threads. The following book may be useful to help you become comfortable with Thread processes. https://learning.oreilly.com/library/view/java-9-concurrency/9781787124417/ You should focus on the first 4 chapters. If you have previously signed up for the Safari account you don't need to sign-up again. Just use this link: https://learning.oreilly.com/accounts/login/?next=/library/view/temporary-access/ If you have not previously requested a Safari account follow the details on this page to sign-up for your Safari Account: https://libguides.umuc.edu/safari You'll need to sign in using your UMGC student email account. Once you sign in, you'll have immediate access to the content, and you'll shortly receive an e-mail from Safari prompting you to set up a password and complete your account creation (recommended). Students: Your UMUC e-mail account is your username + @student.umuc.edu (example: hsolo2@student.umuc.edu). In addition, a zip file is included that includes several Oracle Java files that use different types of Swing components as well as threads. I recommend going through the reading and the examples to become familiar before attempting the final project. Assignment Details As a new engineer for a traffic congestion mitigation company, you have been tasked with developing a Java Swing GUI that displays time, traffic signals and other information for traffic analysts. The final GUI design is up to you but should include viewing ports/panels to display the following components of the simulation: 1. Current time stamps in 1 second intervals 2. Real-time Traffic light display for three major intersections 3. X, Y positions and speed of up to 3 cars as they traverse each of the 3 intersections Some of the details of the simulation are up to you but the following guidelines will set the guardrails: 1. The components listed above should run in separate threads. 2. Loop through the simulation with button(s) providing the ability to start, pause, stop and continue the simulation. 3. You will need to use basic distance formulas such as distance = Speed* time. Be sure to be consistent and define your units of measure (e.g. mile/hour, versus km/hour) 4. Assume a straight distance between each traffic light of 1000 meters. 5. Since you are traveling a straight line, you can assume Y=0 for your X,Y positions. 6. Provide the ability to add more cars and intersections to the simulation through the GUI. 7. Don't worry about physics. Assume cars will stop on a dime for red lights, and continue through yellow lights and green lights. 8. Document all assumptions and limitations of your simulation. Submission Requirements: 1. Submit all of your Java source files (each class should be in a separate .java file). These files should be zipped and submitted with the documentation. 2. UML class diagram showing the type of the class relationships. 3. Developer's guide describing how to compile and execute the program. The guide should include a comprehensive test plan that includes evidence of testing each component of the menu with screen captures and descriptions supporting each test. Documentation includes Lessons learned. Your compressed zip file should be submitted to the Project 3 folder in LEO no later than the due date listed in the classroom calendar. Grading Rubric: Attribute Design Functionality Meets 20 points Designs a Java Swing GUI that uses event handlers, listeners and incorporates Java's concurrency functionality and the use of threads. 40 points Contains no coding errors. Contains no compile warnings. Constructs a Java Swing GUI that uses event handlers, listeners and incorporates Java's concurrency functionality and the use of threads Include viewing ports/panels to display the following components of the simulation: 1. Current time stamps in 1 second intervals 2. Real-time Traffic light display for three major intersections 3. X, Y positions and speed of up to 3 cars as they traverse each of the 3 intersections The components run in separate threads. Test Data Documentation and submission Loop through the simulation with button(s) providing the ability to start, pause, stop and continue the simulation. Provides the ability to add more cars and intersections to the simulation through the GUI. 20 points Tests the application using multiple and varied test cases. 20 points Source code files include header comment block, including file name, date, author, purpose, appropriate comments within the code, appropriate variable and function names, correct indentation. Submission includes Java source code files, Data files used to test your program, Configuration files used. Documentation includes a UML class diagram showing the type of the class relationships. Documentation includes a user's Guide describing of how to set up and run your application. Documentation includes a test plan with sample input and expected results, test data and results and screen snapshots of some of your test cases. Documentation includes Lessons learned. Documents all assumptions and limitations of your simulation. Documentation is in an acceptable format. Document is well-organized. The font size should be 12 point. The page margins should be one inch. The paragraphs should be double spaced. All figures, tables, equations, and references should be properly labeled and formatted using APA style. The document should contain minimal spelling and grammatical errors. Any submissions that do not represent work originating from the student will be submitted to the Dean's office and evaluated for possible academic integrity violations and sanctions.
Expert Answer:
Related Book For
Integrated Accounting
ISBN: 978-1285462721
8th edition
Authors: Dale A. Klooster, Warren Allen, Glenn Owen
Posted Date:
Students also viewed these programming questions
-
Planning is one of the most important management functions in any business. A front office managers first step in planning should involve determine the departments goals. Planning also includes...
-
Why is ultraviolet light, but not infrared light, effective in making certain materials fluoresce?
-
What are the principal issues in managing hardware and software technology? a. Explain why managers need to pay attention to capacity planning and scalability of technology resources. b. Describe the...
-
a. Express cos sin in the form Rcos( + ), where R > 0 and < < /2. Give the exact values of R and . b. Show that one solution of the equation and find the other solution in the interval 0 < < 2. c....
-
Copy your worksheet from Question 6 into another worksheet. Change the increase from 10% to 18%. Protect the worksheet, so that changes cannot be made. Question 6 Open a new spreadsheet. Type...
-
Strum Enterprises is a boutique guitar manufacturer. The company produces both acoustic and electric guitars for rising and established professional musicians. Claire Strum, the company's sales...
-
On a private flight with capacity for 150 people, $800,000 per person is charged, plus $25,000 for each unsold seat on the plane. How many people must travel on the plane and what will be the price...
-
Shake Shack Incorporated, which began as a hot dog stand in 2001, now has more than 200 locations worldwide. The following is adapted from Shake Shack's financial statements for the quarter ended...
-
Desing a database called DbEscuela Using Microsoft SQL Server Create the following tables: In the table identified as Students insert the following data: Change the name of the student with...
-
A brief definition of the following language terms with an example of each: phonology, morphology, sound-symbol relationship, semantics, discourse, syntax.
-
Peptidoglycan of a gram-positive bacteria bind with TLR-2 over the cell surface. How does the concerned cell will react thereafter ?
-
Jack repays his loan in 16 level annual installments. The first payment is at the end of the first year. The principal portion of the 9th payment is $65.85 and the interest portion is $22.21....
-
Determine the %yield of CaCO 3 if 0.110gr of CaCO 3 was produced from the reaction between 24ml of 0.12M of CaCl 2 with 30ml of 0.08 of Na 2 CO 3.
-
Discuss the ways in which culture and technology coincide. Give an example from your own experience or the experience of others where culture and technology have impacted one another. Is it possible...
-
Define an algorithm. List the desirable properties of an algorithm?
-
What is taxable income, and what is the formula for determining taxable income?
-
What totals are contained at the bottom of the computer-generated sales invoice?
-
What account number is assigned to Fees?
-
Write the answers to the following questions in the space provided. 1. What is the original cost of asset number 350 (office desk) as shown on the fixed assets list? 2. What is the salvage value of...
-
Many hotel jobs are inherently dead end; for example, maids, laundry workers, and valets, either have no great aspirations to move up, or are just using these jobs temporarily, for instance, to help...
-
Using what you learned in this chapter of Dessler Human Resource Management, build on the companys new system by recommending two more specific career development activities the hotel should...
-
Should other employees (cleaner/spotters, counter people) be put on a similar plan? Why or why not? If so, how exactly?
Study smarter with the SolutionInn App