Computer Science homework help. San José State University
Computer Science Department
CS151, Object Oriented Design and Programming, 07, Spring 2020
Team project
Objective:
This project’s objective is to work in small teams (4 – 7 people) and create a GUI Java application that implements class explorer. You will need to use UML diagrams and appropriate design patterns to design and describe the structure and behavior of your application. You will also utilize both Java GUI and Java reflection programming to implement your application. Many topics and module units covered this semester will also come in handy designing your application.
Details:
Form the teams:
Form small programming teams (4 – 7 people). Let me know if you do not have a team by 03/03/2020 and I will help you find a team. The teams must be formed by 03/05/2020.
Project description:
Implement a Java GUI application that loads a class file (e.g. Test.java) from a file system and displays all the class attributes and methods (both public and private). For class attributes, your application should display the type and access modifier information. For class methods, your application should display access modifier information along with input types and output type. The GUI details of the implementation are up to your team and you have full discretion to make the best choice. To load the file your application can use a button or a menu item or any other method you see fit. To display the class information your application can use a text field, a list, labels, or any other component your team chooses. You can use either Java Swing or JavaFX libraries to implement your application.
Project demos:
On 05/05/2020 during the class meeting we will have project demos. Each team will demonstrate their application in action. I will distribute a class file right before the class meeting and each team will run their application, load the class file and demonstrate the functionality. No special accommodations will be made for the project demo date/time. You will be excused from participating in the presentation only with documented emergency. Otherwise, you are expected to participate with your team in the demonstration. You will be penalized 10 points if you do not stand with your team during the demos.
Project submissions:
On 05/05/2020, by 11:59pm, your team should submit your project. This submission can be done after the in-class project demonstrations (as long as it is done by the end of that day). One project submission per team should be submitted.
The class containing main() method should be called ClassExplorer and should be saved to a file named ClassExplorer.java.
Create a text file named Participation.txt to your project. In this file list which team members participated in which of the following aspects of the project design, development, and submission:
- Application structure conception
- GUI design conception
- Application structure implementation
- GUI design implementation
- Demo presentation/public speaking
- Project submission
In workforce environment it is often the case that different steps and action items of a collaboration or a team project are done by different people. It is normal that not every member of the team performs every task. The objective here is to list project responsibilities and participation credits to each team member.
Add all your project files to your git repo. Email your project report to me at either Yulia.Newton@sjsu.edu or yulia.newton@gmail.com. The subject of the email should say “CS151 team project report”. Add the names of all of your team members, as they appears on the class roster, and the URLs to git repositories of each team member in the body of an email.
Grading:
I will return the grades for the team projects by 04/30/2020.
Your code must compile and execute successfully in order to get full credit for this project. I will compile and execute ClassExplorer.java file.
- Program with no compile errors (10 pts)
- Program executes (10 pts)
- Program outputs what is required by the exercise (10 pts)
A total of 30 points are possible for this team project.