Create a new project in bluej called assignment

Assignment Help Computer Engineering
Reference no: EM131095387

Overview:

Facebook now want to expand their software to include extra features. They need the software to be able to maintain large numbers of Friends and Stories. It must also include the ability to add Events and to classify Friends as best friends or close friends. In addition, a menu system is now required to manage user interaction with the software.

Getting Started:

1. Create a new project in BlueJ called Assignment2. It is possible to use the published solution to Assignment Part 1 or your own solution as the basis for this assignment. The published solution will be made available in UTSOnline if you wish to use it.

2. Create the required classes for the project – all classes from Part 1 should be included, however they may be modified. You can have any number of additional classes you think are required.

3. Basic Functionality:

Fasebook – a FasebookUser has an array of Friends (max 200, you must setup at least 5) and an array of Events (max 100). Friends now have a best friend status (true or false). A Newsfeed has an array of Stories (max 300, you must setup at least 5). Stories now must have an ID as an attribute.

An Event has a type, month, date in the month, and title. It must be possible to add Friends and Events, up to the maximum number specified. It must be possible to add Stories to a Newsfeed, up to the maximum number specified.

4. Menu System: a menu must be provided that asks the user of the software what task they would like to perform; it then activates the required task. The menu should loop until the user requests to exit. The menu must offer these tasks:

- Add a Friend

- Search for a Friend by name

- Add an Event

- View a list of Events

- Add a Story

- Comment on a Story

- Like a Story

- Share a Story

- Create a best Friend

- View a list of best Friends

- View a list of close Friends

5. Constructors: all classes must have at least 1 constructor that accepts any required input parameters used to initialise the class attributes (done in the body of the constructor).

6. Standard methods & visibility: all classes must provide accessor and mutator methods for all class attributes. A toString() method must also be implemented for each class. All classes must use the appropriate visibility modifiers for methods and attributes.

7. Comments: all methods in each class must have a brief comment that describes what the method is doing.

NOTE: All functionality from Assignment Part 1 must also be available – do not remove methods offering Part 1 functionality.

Detailed Functionality:

1. Add a Friend

Adding a Friend follows the rules set out in Part 1 of the Assignment, but is now done using arrays. A new Friend can be created in the system by entering all the Friend details: name,login, city, best friend status, and a message (this should be empty when the Friend isadded).

2. Search for a Friend by name

Allow the user to enter the name of the Friend they are searching for, if found display all details of the Friend. If not found, display an appropriate error message. Allow name matches that do not consider the case of the letter e.g. Janine would match the name janine or JANine etc.

3. Add an Event

A new Event can be created in the system by entering all the Event details: type, month,date in the month, and title. When the new Event is created it is added to the array of Events.

4. View a list of Events of a certain type

Display a list of all Events for a FasebookUser that matches the type entered by the user. Display all details about the matching Events, or an error is no matching Events are found.

5. Add a Story

Adding a Story follows the rules set out in Part 1 of the Assignment, but is now done using arrays. A new Story can be created in the system by entering all the Story details: ID, headline, description, comments (as a String array – empty when the story is created), a is public status (true or false), number of likes counter (zero when the story is created) and number of comments counter (zero when the story is created).

6. Comment on a Story

Commenting on a Story follows the rules set out in Part 1 of the Assignment, but is now done using arrays. When commenting on a story, the user must enter the story ID, and the method must find this story in the array of stories. The new comment is then added to the array of comments for that story if found. If no story is found with a matching ID, display an error message.

7. Like a Story

Liking on a Story follows the rules set out in Part 1 of the Assignment, but is now done using arrays. When liking a story, the user must enter the story ID, and the method must find this story in the array of stories. If the story is found, add a Like to the story. If no story is found with a matching ID, display an error message.

8. Share a Story

Sharing a Story follows the rules set out in Part 1 of the Assignment, but is now done using arrays. When sharing a story, the user must enter the story ID, and the method must find this story in the array of stories. If the story is found, change the status of the story to public. If no story is found with a matching ID, display an error message.

9. Create a Best Friend

A Friend that is already in the system can become a best Friend. When creating a best Friend, the user must enter the name of the Friend, and the method must find this Friend in the array of friends. If the Friend is found, change the status of the Friend to Best. If no Friend is found with a matching name, display an error message.

10. View a list of best Friends

Allow the user to view a list of their best Friends. Display all details of the best friends found. If no best friends are found, display an appropriate message to the user.

11. View a list of close Friends

Allow the user to view a list of their close Friends. Close friends are those friends who live in the same city. Display all details of the close friends found. If no close friends are found, display an appropriate message to the user.

NOTE: It is expected that if an error occurs e.g. if the Club is full and no more Players can register, then the system will display an appropriate error message. This applies for all common errors.

Program Flow:

The menu system must be activated first that accepts user choices as to what task they want to perform. Relevant objects such as the FasebookUser must be created to achieve this.

NOTE : All methods created in earlier parts of the assignment MUST be called somewhere in the code to avoid a loss in marks.

Reference no: EM131095387

Questions Cloud

Small lawn-mowing service : Consider the owners of a small lawn-mowing service. They can use one of two methods to mow lawns. Method 1 is to purchase a tractor that costs $200 a year to own and then spend $1 (for labor and gas) for every acre of grass cut. Method 2 is to spend ..
What about the level of confidence : When calculating a sample size, how can a researcher decide the level of accuracy to use? What about the level of confidence? What about variability with a percentage?
What is the price elasticity of demand : A west main street massage school is offering college students a discount for massages. Their normal prices were $60 for 60 minutes, and they typically booked 30 massages a week at that price. The past week when they offered the same 60 minute massag..
Appropriate demand and supply analysis : Florida Citrus Mutual, an agricultural cooperative association for citrus growers in Florida, needs to predict what will happen to the price and output of Florida oranges under the conditions below. What are your predictions? For each part, sketch a ..
Create a new project in bluej called assignment : Facebook now want to expand their software to include extra features. They need the software to be able to maintain large numbers of Friends and Stories. It must also include the ability to add Events and to classify Friends as best friends or close ..
Understanding biblical view of business ethics : Review three or four key principles that are important in understanding a Biblical view of business ethics. Give examples of how you have (or might in the future) apply these principles.
What are ramifications for business ethics : Describe key components of Biblical view of work. What are ramifications for business ethics? ; For personnel function in organizations? ; For the economy? Give one or two examples
Two possibilities for pricing rides at its theme parks : Disneyland has two possibilities for pricing rides at its theme parks: (1) Set MR = MC for each ride and charge the maximum price consumers will bear. (2) Charge an admission fee to the theme park but allow unlimited rides for free. Using graphs, sho..
Challenges in hiring : Write a clear report on the topic: Challenges in Hiring

Reviews

Write a Review

Computer Engineering Questions & Answers

  Words might appear multiple times in the entered text

write down a program that allows the user to enter a line of text. I then need to use the stringTokenizer to break the input into words. I have to Put these words into a link list and then print them out in alphabetical order.

  What are techniques for addressing security requirements

What are techniques for addressing security requirements? Which have a business relationship with the company?

  Testing a random sample of eight of them

A computer company will screen a shipment of 30 processors by testing a random sample of eight of them. How many different samples are possible? Please answer in details.

  What is the largest positive number

What is the largest positive number one can repent in an 8-bit 2's complement code ? write your result in binary and decimal.

  Why some companies may avoid beta releases

Cross (2007) discusses the benefits for a software company to release beta versions instead of final versions of products. What is Cross's reasoning? Do you agree with it? Explain why some companies may avoid beta releases from software companies.

  Question1 which of following statements is true a an md

question1. which of following statements is true? a an md could be an administrator b an rn can be an administrator c

  Name the guidelines and additional decisions which can be

question 1 which of the guidelines and additional decisions can be incorporated in an automatic statistical thesaurus

  You are working with php a general-purpose server-side

you are working with php a general-purpose server-side scripting language that allows you to add a lot of function

  Shiny buttons game

Write a public void cleanTable() method in the ShinyGame class that causes all selected sequences of game pieces to be removed from the game board and add a private score integer attribute to the ShinyButtons model class. Create a getScore() method..

  Design the layout of users and domains

Design the layout of users, domains, trusted domains, anonymous users, etc for a start-up open source software company ABC.

  What are the ways a device can become infected

The spread of the mobile viruses has been slow since the mobile devices lack a prevalent OS like PCs and Windows. As mobile communications become more prevalent, so does the onslaught of viruses.

  Be substantive and clear and use illustrations to reinforce

write 400-600 words that respond to the following questions with your thoughts ideas and comments. this will be the

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd