Programmer-Match: Dating for the 0x15th CenturyPart 0b01 (that's binary)
Programmer-Match
is an online dating service that is specifically designed to match
computer programmers to other computer programmers using
characateristics that we find important. Anyone can login to the
programmer match system and create a profile. That profile should
contain their name, password, email address, IQ and a list of all
programming languages they know. For each programming language they
should include a proficiency level (1-10) and the total number of lines
of code they have written in that language (ever) --- one number. They
must be able to enter zero to as many programming languages as they
would like.
The user can then ask to find their matches. The
system will then match the users and display those matches. Users can
then view the detailed information about each match. The system allows
a user to send email to another user, but does not display email
addresses due to privacy concerns.
The system should maintain a
database of statistics with the number of searches completed and number
of emails sent. The system must also separately maintain the number of
emails sent and searches completed by programming language. (For
example, we want to be able to answer the question are Java, C, or .Net
programmers more successful using our system.). Remember, there is no
limit on the number of unique programming languages supported by our
system.
Part 0b10 (that's binary)
"Joke: There are 10 kinds of people in this world. Those who understand binary and those who don't"
In
part 2 you will test your class diagram. For the following use-cases
write out the series of method calls from your class diagram to
accomplish these tasks. This is how to verify class diagrams "work".
Methods from a high-level class diagram will describe WHAT you want to
do, not HOW you want to do it. For example, you can write a method
called "validatePassword" asuming the object you are in has all the
relevant information to validate it. You do not need to specify HOW the
password is validated, that is an implementation decision we're not
making right now. You do need to make sure you have all the information
though. If you don't, you need to ask another object for it.
A. Register a new user. (Hint: Did you get all the information needed to the class to create the user? )
B. User logs in and searches for matches and then emails one of them. (Did you update all the statistics correctly?)
C. An administrator looks up the number of emails sent by Java programmers