HeaderSIS.jpg

WRESSENCE Final Wiki Page

From IS480
Jump to navigation Jump to search

Back to WRESSENCE HOME PAGE


Team WRESSENCE
Project Progress Summary


Project Highlights


Application Architecture

  • Due to major difficulties in using plug in for building our web-based calendar as well as considering the future scalability and complexity of the web application, our team had made two rounds of major changes to our application architecture which was from adopting Infragistics to adopting DHTMLX then to our current calendar.
  • The final calendar architecture was one which our team structured specially for Wressence and was built from the scratch on our own.


Application Quality

  • Due to the compatibility issue of different browsers in regards to HTML 5, our team had encountered several UI-related bugs.
  • Unique changes to the codes were made in order to cater to the different browsers.
  • Performance testings were done in order to make the necessary changes to ensure that our application's ability to process better and faster.


Project Management

  • The team had spent a much longer time in developing the basic of our calendar than planned which resulted in us having delayed task completions in the few initial iterations.
  • One new feature, printing of calendar, was implemented after evaluating the feedbacks provided by our Beta test users.



Project Challenges


  • Due to the absence of a sponsor as our team embarked on our own project, the actual targeted users were the one who were able to review and provide directions for us. However, we had some difficulties in getting quality feedbacks from the users during Beta launch as they tended to have low motivation to provide the feedbacks. We managed to approach some of the users to gather feedbacks from them personally.
  • HTML5 was a very new programming language to us and we spent quite some time to understand how to adapt it our development environment which involves Javascript. Fortunately, knowledge sharing was able to take place within the team and thus we found it easier to understand.
  • Our project is a web-based calendar application in which there are already several web-based calendars in the market. Thus, it is inevitable that people compare our product with theirs. However, we are able to stand firm to our project goals and differentiate ourselves by implementing special features such as location-based services which they do not provide.



Project Achievements


  • Our team had managed to pitch our project idea on a Microsoft conference which we shared the adoption of the new programming language, HTML5. Our project idea had captured the interests of some potential investors.
  • Wressence application was deployed successfully on the server for real users.
  • Beta version of our application was launches successfully which we got valuable feedbacks from real users that contributes to implementation of a new feature to our project.
  • Wressence was built successfully from the scratch even though faced with architecture issues and compatibility concerns.




Team WRESSENCE
Project Management


Schedule Checkpoint

Dashboard



Project Status

Features Status
Account Registration Completed
Account Login & Logout Completed
Events Creation Completed
Edit Events Completed
Events Deletion Completed
View Event Completed
Venue Suggestion Completed
Write Venue Reviews Completed
Read Reviews Completed
Edit Profiles Completed
Time Zone Selection Completed
Quick-Add Event Completed
Social Media Platforms Posting Completed
Reminder for Upcoming Events Completed
Import External Calendars Completed
Public Feeds & Events Completed
Import Birthdays Completed
Print Calendar Completed



Project Metrics

The Schedule Graph
The Bug Points Graph
Metric Type Link
Schedule Metric Detailed Summary
Bug Metric Detailed Summary


Technical Complexity

Multi-Browser Support

  • Different browser layouts differently, even with Standard-Compliant CSS
  • Same browser, but on different OS renders differently
  • Varying support and implementation styles for HTML 5
  • Mobile user experience vs. desktop experience
  • Different implementation for Javascripting (E.g. Nested JS-functions not supported by Firefox)


Integration Woes

  • Google Places returns information in non-consistent JSON format
  • Technical conflicts amongst libraries
  • Framework renders UI dynamically and independently
  • Application State Management to prevent false-hit on validation errors


Calendaring Visualization

TIMELINE




















Why not Infragistics?

  • Provides developer with the ability to incorporate Web Outlook UI to custom applications
  • Feature rich, proven solution, stable
  • Tightly Controlled by Framework
  • Complex Liscencing Schemes
  • Uses Pop-ups

Why not DHTMLX?

  • Documentation for “implementation” only
  • 100% Javascript based
  • No adapter for integration with ASP.NET natively
  • UI generated dynamically, hard to customise
  • Not mobile-device Friendly

Why not jQuery?

  • Self-Developed based heavily on jQuery
  • Difficult to debug and maintain as scripts will interfere with others
  • Javascript library inconsistent with mobile browsers
  • Complexities increased when working with Framework (ASP.NET/Java) controls
  • High risk of might get ViewState/Event validation problems after DOM customization

Why ASP.NET?

  • Built in a component-based approach
  • Dynamically renders for different client by ASP.NET
  • Encapsulated in-control data-binding
  • Dynamic properties editable for UI and behaviors of each Calendar Event Element
  • Browser friendly JavaScript via ASP.NET AJAX Framework
  • Integrates natively with C#/.NET
  • Mobile friendly


Location Aware Calendaring

  • Important to display calendar to a user based on his locality
  • Location-Based-Detection on HTML5 will bring the risk of browser being not supportive of such feature
  • Defaulting locations to Singapore not an option
  • IP-to-GPS-to-GMT translation is used as back-up


Scalability and Resilience

  • Code are built in a modular basis
  • Calendar Nested Master Pages (page load order)



Team WRESSENCE
Product Quality


Product Status

The Deliverable Status


Project Deliverables


No. Item Description Link
1. Team Meeting Minutes View All
2. Supervisor Meeting Minutes View All
3. Use Case Diagram Download Document
4. Component Diagram Download Document
5. System Architecture Diagram Download Document
6. IS480 Poster Download Document
7. Final Presentation Download Document




Beta Release


A Beta version of our Wressence application had been launched successfully for test use by targeted users. The objectives of this Beta launch plan is to gather feedbacks in related to the acceptance level of our application as well as to seek opinions for possible improvements to our application.

View summary of our Beta Launch/Test here


Full Deployment

Our Wressence web-based calendar application had already been deployed successfully onto our server. Users are able to access and use the application for an exciting experience of scheduling!

WRESSENCE Website




Team WRESSENCE
Final Reflections


Team's Reflection

Team Reflection




View our team's reflection here









Individual Reflections

Yi Hui

YH

More than 6 months of hard work, I must say this FYP journey is definitely a worthwhile and fruitful one. Doing our own project allowed myself to learn things that academic project would not be able to expose me to. The title of 'Project Manager' was not only a role, but it also represents a heavy responsibility and full commitment with regard to this project. Initiating our own project has benefited me a lot and I learnt things that would really help me in the near future. Through this project, my perspectives have been broadened as I learnt how to work on a project without a given direction i.e. without sponsor. Managing a project without a sponsor was really a challenge. When there was no given requirement for the project by a client, I have fully understood the importance of having a clear project goal and the need to work very closely with the targeted users.


Johnathan

John

I had never thought of doing a project which was so different from the rest of the projects which I had done before. When our team decided to initiate our own project for FYP, I know it is an opportunity for me to explore the uncertainties. There are indeed many risks in doing a own project due to a lack of direction. It is no longer only about knowing the requirements and fulfilling those requirements. This project was also about evaluating between what was required for FYP and what was wanted by the actual users in order to make sure our product development was on the right track. Moreover, I have learnt new technical knowledge such as HTML 5 and adopting the different APIs which us really useful. FYP had allowed me to step out of my comfort zone since I could propose things that are more than the academic requirements and making the impossibles happen! Seeing the product being launched successfully was really great!



Darren

Darren

The Final Year Project marked a special journey that I would not forget in my life in SMU. Wressence is like a baby to our team and I must really say I am proud to embark on our own project. Although there were negative comments received by some of our friends, at least I know Wressence is a 'BIG' thing to our team. Action items such as performance testing and beta launch in this FYP had widen my perspectives and allowed me to understand the issues that we would face when placing our product into real use for the users. These are the things that we may not get to do if we are not doing our own project. FYP is really a valuable experience for me. In all, doing our own project had exposed me to various important learning experiences and these would definitely benefit me in the coming future.


Myo

Myo

Embarking on our own project for FYP had certainly ended my SMU life with a BANG! I have not only learnt new technical skills when developing our application, but also understood the nature of developing a valuable business idea when dealing with real users. Our supervisor, Professor Benjamin Gan, had provided us with pointers such as doing a proper analysis of the market before scoping our project and the things to note when collecting feedback from the users in the absence of a sponsor. These pointers are valuable to me especially when I have always wanted to do my business and it can greatly value adds in terms of relating by to doing business and how to ensure my business idea will be successful. Furthermore, the experience of knowledge sharing within the team is wonderful when I got to learn things which were not part of my role such as prioritizing tasks. In this way, I actually had a better understanding of how to achieve the project goal as a whole and not just doing my part.


Xue Ling

XL

Designing is my interest and it is a great pleasure to be able to do designing for my FYP. It is really a great satisfaction to receive positive responses in related to my UI designs. The process of getting quality feedback for our product is not easy. As we do not have a sponsor, I need gather these feedbacks for ensuring we are meeting the needs of our users instead. Thus, I have learnt the importance of performing proper feedback evaluations for making the appropriate changes. In addition, I understand the importance to be sure of what we are doing. We must maintain a clear direction for ourselves when developing our own product as well as to be adaptive especially when we are developing on multiple browsers. I have enjoyed and gained wonderful experiences for my FYP. I believe this experience will be very helpful to me in the future.