FaceValue

From MWCSWiki

Jump to: navigation, search

Contents

Milestone Assignments

Milestone 3

Hey guys, i just wanted to put this section in because I'm seeing little thingies that need changing. This is just to notify other people what we've changed.


Presentation:



Domain:

  • user.login

i changed login so that it returns a boolean. i think the jsp is whats going to set the session variable, so it now reads: public boolean login(String pw). I dont think we need to pass it the email, because we use the email to go to the userRepository and get the specified user, we know the email is correct. we just need to check the password.

  • group vectors

we need to decide if this is a vector of strings or a vector of groups. the methods go back and forth. my game plan was any time a user looks at a group, the session variable group is set to that group name. that would make it easier to add groups, i think, since when you click the add group link, the group you want to add is the last group you saw.

so user.getGroups now returns a vector of groups, not strings

user.addGroup passes a group g not a string

and same for removeGroup().

  • user.addUser

now is passed a String email, I also changed it to public User(string email) so its like an official constructor.

  • Profile

i think maybe setHobby and getHobby might be better. we can display it with get and then set it when they are done editing, like in facebook.


Persistance:

Use Case Diagram

Actor Descriptions

Milestone 2

Candidate Classes

  1. User
    • Represents the user, updates profile page. Has an associated wall.
  2. Group
    • Has a wall and knows what members belong to it.
  3. Wall
    • Holds wall posts. Creates and removes wall posts.
  4. Wall Post
    • Posts a message to a wall.
  5. Photo
    • Handles photo privacy options.
  6. Search Engine (?)
    • Searches the database.
  7. News Feed
    • Holds news items. Filters based on friends?
  8. News Item
  9. friend
    1. 3 levels of friends inherit from it, hold information about relationships.
  10. request
    1. is sent to a user to request friendship or an invitation to join a group
  11. Photo Albums
    • Hold photos that were uploaded together.
  12. Group
    • holds a photo and a wall and a list of members, can add or remove members
  13. Profile
    • holds a photo and a wall and a list of friends

Milestone 1

Use Cases

Lauren


Kim


Elizabeth


Stephen's design comments:

  • PhotoAlbum class -- yes!
  • Search class is probably better than SearchEngine
    • Probably a hierarchy of Search subclasses for each particular kind of search
    • ResultsList class to hold an array of hits
  • NewsItem class -- yes!
    • Probably a hierarchy of NewsItem subclasses (for status updates, new friendships, new photo uploads, etc.)
  • Possibility of Friend hierarchy where GoodFriend, Acquaintance, and FamilyMember inherit from it and each override a "getPhotos()" method to do the proper filtering, and the Friend superclass holds on to a User object.
  • FriendRequest class -- yes!
  • Probably homepage and profile are dups (but you should have one)
  • Message and Inbox -- yes!
Personal tools