Friday, January 01, 2010

Starting the New Year off right!

To start the New Year (2010) off right I have decided that I really need to start writing about software development again. It has been some time (back in my Incware days) since I have sat down to write about technology. So to start off I am going to create a serious of posts to document my experiences in writing a fully functional, multi-user, GUI application called Simple Address Book.

The first release of the application is going to utilize Adobe Flex, Swiz Framework, MySQL, and WebOrb for PHP. The idea is to create an example I have been looking for, specifically and example of using the Swiz framework with WebOrb, as well as provide a reference implementation for clients seeking my services (I am often asked for an example of my work).

The Simple Address Book will be loosely modelled after the Contacts application you get with Mac OSX. The application will have the following features;

General Features
  • Simple Address Book (SAB) is multi-user and will require the user to create an account
  • SAB is an RIA (Rich Internet Application)
  • SAB shall utilize Adobe Flex 3.x, WebOrb for PHP, Swiz Framework, and MySQL.
  • SAB may integrate the following components from the following; Google Maps, FlexLib, Astra from Yahoo, & OpenFlux, Social.
  • A fully functional reference implementation that people may actually use.
Contact Features
  • Create, Read, Update, Delete Contact Records
  • Contacts may have a first name, last name, middle name, company name, job title, birthday, anniversary, and a picture
  • Contact pictures will be uploaded and stored as part of the contact
  • Each contact may have one or more of the following; Phone Numbers, Addresses, Email Addresses, Websites, Instant Message ID's, & Social Network URL's
  • Contacts may be associated with one or more groups
  • Contacts may have one or more note entries
Contact Address Features
  • Create, Read, Update, Delete Contact Addresses
  • Link with Google Maps to show location
  • Addresses are contact independent, this means that there may be duplicate addresses
  • Addresses may be of the same type such as home, work, etc. Reason being is that one may have multiple home addresses.
Contact Phone Number Features
  • Create, Read, Update, Delete Contact Phone Numbers
  • (Optional) support for Skype may be implemented
  • Phone numbers are contact independent, this means that there may be duplicate phone numbers
  • Phone numbers may be of the same type such as home, work, etc. (see same feature of contact address)
Contact Email Features
  • Create, Read, Update, Delete Contact Email Addresses
  • When clicked should start default email application
  • Email Addresses are contact independent, this means that there may be email addresses
  • Email addresses may be of the same type such as home, work, etc. (see same feature of contact address)
Contact Website Features
  • Create, Read, Update, Delete Contact Website Locations
  • When clicked should open location in new browser/tab
  • Website locations are contact independent, this means that there may be websites
  • Websites may be of the same type such as home, work, etc. (see same feature of contact address)
Contact Instant Message Account Features
  • Create, Read, Update, Delete Contact Instant Message Accounts
  • (Optional) Launch appropriate application when clicked
  • Instant Messages are contact independent, this means that there may be instant message accounts
  • Instant Message Accounts may be of the same type such as home, work, etc. (see same feature of contact address)
Contact Social Network Features
  • Create, Read, Update, Delete Contact Social Network Accounts/Locations
  • When clicked should open location in new browser/tab
  • (Optional/Future Enhancement) Social Network integration.

Group Features
  • Create, Read, Update, Delete Groups
  • Organize contacts within a group
  • (Optional/Future Enhancement) Email group contacts
Future Enhancements
  • Calendar integration
  • Added CRM functionality, possibly integrate with SalesForce
  • Incorporate social networking (FaceBook, LinkedIn, Twitter, etc.) support
  • iPhone Implementation

No comments: