Fill This Form To Receive Instant Help

Help in Homework
trustpilot ratings
google ratings


Homework answers / question archive / Computing Science and Mathematics CSCU9T4 – Managing Information In this assignment you will design, write, and justify an object-oriented Java program that manages information for an architect firm

Computing Science and Mathematics CSCU9T4 – Managing Information In this assignment you will design, write, and justify an object-oriented Java program that manages information for an architect firm

Computer Science

Computing Science and Mathematics CSCU9T4 – Managing Information

In this assignment you will design, write, and justify an object-oriented Java program that manages information for an architect firm. The program must be able to read data from a comma separated values (CSV) file, accept input from a very simple graphical user interface, and display selected information in a legible and tidy manner.

The premise: You have been hired as a consultant by a large architect firm, Jenga Design Ltd. They need a system to manage their portfolio of projects. They currently keep their records in a large CSV file that you have been provided with, but they want to have a management system implemented.

i)             Resources

Your starter package only contains 3 files:

•             jenga_projects.csv – A file containing Jenga Design’s records of their projects in a comma separated value format. You can open this in a spreadsheet software to inspect the column names and contents. (e.g., MS Excel, or Google Sheets)

•             zzzzzzz_report.docx – a report template for the completion of tasks Y and Z below.

•             Assignment_2_instructions.docx – This file

Assume the data within the CSV file is correct. The CSV file probably contains some discrepancies in terms of for example sizes, budgets, durations, start and end dates, etc. This is not a concern, and you can treat it as just odd project details and ignore. Your main concern is with the column headers and which columns contain data for which project types.

ii)            Tasks

To complete the assignment, you must properly address each of the tasks below. They are quite open-ended and give you opportunities to showcase ingenuity and creativity but remember that sometimes simpler is better and you must also be able to concisely justify your approaches.

A.            Design: Inspect the CSV file and the requirements listed in task B below, record the following in your report:

i.              Draw an appropriate UML class diagram describing your recommended OO design of the information system. Include as much detail as you can and make sure to include attributes, methods, inheritance, etc.

The design must include a showcase of inheritance with respect to the information management point of view (i.e., the data in the CSV file).

ii.             Very briefly (max 500 words) explain why you recommend this design for Jenga Design’s system.

B.            Programming: Implement your design from Task A in Java. Apart from adhering to your recommended design described in task A above, your system:

i.              Should not access any database or save anything to local storage.

For your purposes, when the software stops, everything is forgotten.

ii.             Must be able to read the CSV file into memory and construct appropriate Java objects from each row.

iii.            Must be able to accept information through a simple GUI to both record a new project, and adjust the information of an existing one. Make sure you include proper fields and buttons, and that they function correctly.

iv.           Must provide 3 distinct search options. You are free to choose search options you think will be useful to the user, for example including but not limited to: searching for project types, locations (area), cost or date range, project manager, and/or project status.

Whatever you choose, the results should be displayed in a text field such that they can be directly copied to reports for Jenga Design’s board of directors (i.e., neatly structured text that includes useful information and not just a csv list or a table).

C.            Post-coding documentation: Write a short description (max 1000 words) of the approach you took in task B, the programming. Specifically mention your choices for part iv. Do not describe the code line-by-line, but discuss the approach in general, justify a selected number of choices you made in your implementation and, if possible, mention alternatives and why these were rejected.

Note: If you source references and citations to support any justifications and claims made in A and C then there is no requirement for a specific referencing style, although the IEEE referencing style is suggested. For B, if any of your code is inspired or adapted from external sources, make sure to reference those sources as well, this can be done as URIs in inline comments but should preferably be done properly in the document containing your answers to A and C where you can then describe how that source inspired you and was adapted into your approach.

iii)           Prepare for submission

You will need to submit your work on Canvas as two files: a report, and your code.

•             Report containing your answers to Tasks A and C:

o             Name as your_student_number.[doc, docx, pdf, odt, or rtf]

o             Should include a Class_diagram for Task A. This may be hand-drawn (must be legible!) or you can use software such as lucidchart or UMLet.

•             architect_system – a zip file containing a folder with your source code for the Java system you have implemented

o             This must include all .java source files you wrote, and all .jar files that your system depends on (or a proper Maven or Gradle dependency configuration).

o             This need (should) not include compiled binary files of your code.

o             This can include unit tests of your choosing (recommended but not required)

o             Name the zip file: YYYYYYY.zip (replacing the Ys with your 7-digit student number)

 

pur-new-sol

Purchase A New Answer

Custom new solution created by our subject matter experts

GET A QUOTE