Web programming

Units WEB1P and WEB2P

SWS group task 2010-2011s1

Group task (Task B)

Your task (as a group) is to extend the functionality of the web application you developed in Task A as follows:

  1. The application must allow persistent storage of valid address book entries in a database.
  2. It must allow searching of entries to find those matching a pattern specified by the user. The match could be with the name, address or any other piece of information stored.
  3. It must allow entries to be amended by the user.
  4. It must provide a command to allow the user to "fix" the capitalisation of the names associated with an entry in the database. "Fixed" entries are ones where all the letters are in lower case except:
    1. The initial letter of each name should be capitalised (e.g. Jim Briggs)
    2. Names beginning "Mc" or "O'" should have the first letter after the prefix capitalised (e.g. O'Reilly, McDonald)
    3. Double-barrelled names with hyphens should have the fist letter after the hyphen capitalised (e.g. Jones-Drew)
  5. It must permit the establishment and recording of relationships between the people represented by address book entries. Each relationship should record:
    1. The person who is the "source" of the relationship
    2. The person who is the "destination" of the relationship
    3. The nature of the relationship (as text), e.g. "is mother of", "is boss of", "does gardening for"
  6. It must allow relationships to be added, deleted and amended.
  7. The user must be able to request a report showing the details of all entries held by the system, including all relationships.

Advice

  1. Think carefully about the design of objects to represent the address book entries. What properties should they have and what type should the properties be? What other operations (methods) should be applicable to an address book object?
  2. The Model-View-Controller (MVC) pattern is a good way of structuring a web application. Think carefully about how you can structure your code to achieve this separation.

Constraints

The same constraints on your solution apply as for Task A.

 

Last updated by Prof Jim Briggs of the School of Computing at the University of Portsmouth

 
The web programming units include some material that was formerly part of the WPRMP, WECPP, WPSSM and WEMAM units.