Iteration Plan
Iteration 6: Project Completion
- Completed all GUI pages
- Use IView interface to control all the view objects
- Invites:
- My Invites (Summary of invites sent out)
- Invites Recieved
- Create an Invite
- Meal Information
- Select friends/recipients
- Meal summary page
- Contacts:
- Add friends (Search by name or email)
- List of pending friend requests
- Profile:
- Change Password
- Edit Profile
- Finalized links between client and server
- Send and accept friend request, add friends
- Create and send notifications (meal invitations) to selected contacts
- Edit profile information
- Accept and undo accepting an invitation
- Show all sent and received notifications
- Show all received friend requests
- Show all users who are attending a meal event
- Finalized links between list and individual pages
- For example, links between list of Invitations and Meal invitation summary page
- Completed styling of GUI (Totally overhauled GUI appearance)
- Used of ThemeManager to make the color styling and header font easily changeable
- Created GUI layout structure in XML
- Customized XML layouts
- Use of layered lists to achieve border effect (each border constructed seperately for each layout component)
- Use of custom styling in TabHost to achive "tab" effects at the bottom
- Custom styling of buttons, sliders, edittext fields
- Refined the layout of all the pages to achieve scalability for difference screen size
- Fixed more bugs and warnings / Debugging, handling contract violations and exceptions
- Uniqueness check of user name and email in the database
- Check if the email is in valid pattern
- Check meal properties such as starting/ending time and number limit are in the valid range
- Handled all known exceptions regarding to connecting to the server, greatly increased the stability
- Finished refactoring and overhaul of design
- Added more test cases for both server and client projects
- Made sure code was extendible and somewhat robust
- E.g. Server and client side handlers
- Made sure issues like atomicity, transactions,scalability, data integrity, are adressed to a satisfactory degree
- Made sure the app is fast
Presentation and Readme
The presentation can be found here.
The Readme file for the new additions after the presentation can be found here.
Javadoc
The Javadoc for the Server code can be found here.
The Javadoc for the Client code can be found here.
Code
The code for the server and client can be found in the "project/NeverEatAlone/Codebase/" folder on git.