This post talks about enriching the Event-Networking web application. The enhancements have been categorised into following:
1. Improving UX (User Experience)
2. Improving Functions
3. Improving Performance
From my point of view the current user experience is too voluminous. The css needs to be restructured to use latest standards. All the margins have to be changed from fixed to dynamic so that no space is left unused on the user screen, when the web application is shared amongst different devices. The webpage will be enhanced to Responsive Design.
The input controls like buttons, drop-down list and others need to be smartened and made noticeable. To be specific let’s begin page wise:
1. The photos need to be of the same size for all the delegates. For people who do not set their pic will have different default image for men and women.
1. The data is currently being filtered in the ListView. We will replace this control with the RadListView which is a part of a bundled form of “RadControls for ASP.Net AJAX” toolkit.
2. We will provide paging option in the list view.
1. Inbox will carry any updates and notifications for the events delegate has subscribed to.
2. Add a link to Tasks so that contents of a message can be directly filled in the tasks and create an instant task for that.
1. Empower user to add priority to tasks with different symbols to give a better visual appeal.
2. Modify the calendar controls for better presentable view.
- My Profile
1. Currently this page is too long with the options to “Add Your Blogs”, Personal details, etc. all in extended view. This page needs better layout.
- Login and Signup
1. The basic functionality of Forgot My Password needs to be added.
2. While Signup, option of filling in your complete profile should be provided and whether the delegate wants to be displayed as public.
This Event-Networking is presently made for just one event. We have to extend it for non-singular event. One of the major changes will be ajax-ifying the data controls. This would help us improve drastically on performance as now only partial-page rendering will happen.
1. The aspect of social gaming in the web application is not fool-proof. A person can easily figure out the method of scoring. Thus it should be based on more general parameters and updates to each delegate should be fired only once a day.
1. Provide filtering on date, duration, title and venue columns. Currently, only sorting is possible.
2. Add a pager index so that a user can track his movements. This can be implemented using Telerik AJAX Navigation Components.
1. Currently, there is no paging as expected. We should make it more intuitive. There are two ideas to remodel.
First, to have a tab in the left and message being displayed in the right pane. Second, whichever message is selected, that will get expanded and a new control will be added to the existing list generated.
2. We will put following in the navigation menu such as Message, Contact Request, Meeting Request, Sent and Draft as sub-menu added instead of clustering all of them in the inbox.
1. The task-list should have filtering and sorting capabilities and Add New Task should be another navigational tab under Tasks. This page has the maximum white space when you create a task.
- My Profile
1. We will provide tabs like View, Update, Remove and Change Password.
2. Currently, we do not have “delete” option once you add links to your blogs. There is only an update option. This needs to be changed.
We have already done the functional testing of our existing web application in our previous post. It defines the benchmark for our application. As we improve the UX and functionalities we keep comparing our modifications. This will help us explain whether we have improved just on user experience or also gained on time constraint. Two important features we are looking forward to implementing minification and bundling which would help the speeding.
– We will minify the style sheets and scripts. We will also bundle the style sheets and scripts.
- Object Relational Mapping (ORM).
We are currently using Linq to SQL as our partial ORM. But it has a greater overhead. We will deploy OpenAccess ORM which will provide us a Data Application Layer (DAL).
- ORM Caching.
Another improvement would be to cache static data. This can be achieved using L2-Caching which is a part of OpenAccess itself. It increases data fetch drastically.
We will be using page caching or output caching as per the need.
We will generate companion hybrid app for different platforms. There is potential to generate Windows 8 and Windows Phone 8 application.
This post concentrates on improvements, enhancements and extensions for the Event-Networking web application. We will look at each one of these aspects and explore further.