HeaderSIS.jpg

IS480 Team wiki: 2009T2 MIC

From IS480
Jump to navigation Jump to search

Sis portal.jpg

MIC
The Development Team
MIC
MIC Team Logo

Welcome to Team MIC's Wiki

Team Members

Team members and their roles in the development of School of Information Systems (SIS) Download Portal.

Clarence.jpg Clarence Cheong
[Project Manager]
clarencec.2007@sis.smu.edu.sg
- Overlook project development and progress
- Delegate tasks to team members
- Plans, Executes, Monitors and Controls project development towards success
Raj.jpg Rishaba Raj
[Asst. Project Manager/ User Interface Designer]
rishaba.2007@sis.smu.edu.sg
- Assists Project Manager in planning, executing and monitoring project development and progress
- Takes charge of Project Management from scheduling to accounting of all documentation during project phase
- Prototyping and designing of graphical user interface for SIS Download Portal
- Point of communication between client and the team
Husain.jpg Muhammad Husain
[Development Manager/ Database Designer]
muhammadr.2007@sis.smu.edu.sg
- Takes responsibility of a lead developer and keeps project vision on track.
- Works closely with Project Manager to ensure all requirements and development is aligned.
- Ensures project meets all stakeholders goals
- Consistently deliver and be a positive role model to motivate team
Jac.jpg Jacilyn Woo
[Developer/ Quality Assurance]
wp.woo.2007@sis.smu.edu.sg
- Assists Development Manager and team in project development to meet all objectives
- Ensures project meets all requirements and is developed and tested of highest quality
- Identifies and rectifies issues during project development phase
- Tests the project with all test cases to ensure consistency and quality


For more information about our project, please drop us an email

Project Supervisor

Fdzhu.jpgFeida ZHU [Assistant Professor of Information Systems]

Project Client

Rcdavis.jpgDAVIS Richard Christopher [Assistant Professor of Information Systems]


Official Meeting Schedules with Supervisor, Client and Team

  • Supervisor Meeting: Mondays 10am - 11am
  • Client Meeting: Mondays 11am - 12pm
  • Team Meeting: Mondays and Fridays

Project Overview

SIS Download Portal is a one-stop web portal that will fit into the Singapore Management University (SMU), School of Information System’s website. The main purpose of the SIS download portal is to allow research faculty to distribute and share applications and relevant codes with the students of SMU and the public.

Currently, when SMU faculty wants to share an application on the internet, he/she posts them on their own website or uploads it to a 3rd party download website. The posting of applications to their own website or the 3rd party website does not allow easy tracking of downloads for the uploader and thus everything is done anonymously. There is no sense of belonging for the materials that our research faculty is uploading because the websites they upload to do not bear SMU SIS’s identity. Having SMU SIS's own download portal will help to collate all shared research works and projects at one place and recognize the effort of each individual professor/ researchers. Each and every file will be neatly categorized and tagged with information that relates to the file. SIS Download Portal is a smart enough to keep track of several information using it’s built-in analytic tool and the administrator will be able to retrieve various kind of results such as information regarding the number of file downloads, user’s location and even the operating system they are using by querying the type of the browser users are using. Versioning is another exciting feature of the download portal where file up loaders will be able to manipulate with the versions of their applications and share only the files they wish to share. Users may download current versions, older versions and even versions that are suitable to their operating system will be available to them automatically as the download portal is smart enough to learn the operating system. Users can choose to be kept updated with new versions of file with the aid of a 3rd party mailing list (Google Groups and Mailman) integrated into the download portal.

With integrated security and reliability features, SIS download portal will efficiently secure and manage all files that are available for download. The SIS download portal has a search engine optimized to allow the users to easily access the desired applications. Administrators will in large be able to manage overall users in the system and the applications in the system by approving them. In all, this SIS Download Portal is easy to manage and friendly enough for integration with 3rd party tools and applications.


Problem Statement

Quote
Problem Statement by Client


Problems Identified

  • Lack of information about who is downloading (E.g. Public users)
  • Students does not have an organized download portal
  • Faculty currently upload applications to own website or 3rd party download portals
  • Missing sense of belonging and recognition for SMU and its faculty


Objectives

Create a portal that:

  • allows sharing of files with users in the Intranet/ Internet
  • identifies downloader demographics and details
  • tracks each version of applications
  • is search engine friendly
  • has a sense of belonging to SMU


Unique Features of the System

  • Identification of different Operating Systems
  • SMART Download
  • Default application chosen by browser and OS
  • Integration of SMU’s Single Sign-on
  • Downloader’s demographics identification


3rd Party Integration/ Plug-in

  • SMU Single Sign-on
  • Google Charts
  • Geo Web service
  • Lightbox Technology
  • WYSIWYG Editor – TinyMCE�
  • Mailing list interface
  • Google Groups
  • Mailman


UI Features and Ease of Use

  • Cascading Style Sheets (CSS)used in the system
  • SMU’s own CSS - Inherited SMU's own CSS so as to easily migrate to changes made to whole website
  • Custom CSS - Custom CSS of portlets other features
  • Portlets used arrange contents
  • Codes easy to understand

Objectives

We hope to achieve a simple to use yet customizable download portal for the research faculty as well as all other users. This way, it eliminates manual linking and troublesome online file sharing to 3rd party portal. The following points illustrates the capabilities of our SIS Download Portal:


Easy Access to SIS Download Portal

  • Single Sign On capabilities
  • Admins, staff and authorized users can use their SMU user id and password to enter the system
  • Authorized users will be giver rights and permissions in the system to carry out tasks


Managing of Applications

  • With proper rights and permissions, admins can manage applications
  • Admins can add applications, edit applications, delete applications and even view the analytics for the application.
  • Admins can also enter search tags, give administrator rights users to manage the application and set who can view the application
  • Admin can also add versions of an application and also have a change log
  • Users can be notified of updates of application using the mailing list option that admin can enable or disable (mandatory).


Accurately capturing and analyzing of download information.

Provide accurate information to research faculty using the custom built in analytic system.
Features of Analytic:

  • Detects and captures user's Operating System
  • Detects and captures user's browser
  • Detects and captures user's download location (Country, location and ISP)
  • Keeps tracks of downloads of all the applications and summarizes result in graphs (Bar or Line Graphs)
  • Above all, this analytic uses light weight web service – Google charts to draw the graph


Search Engine

  • System searches for application name
  • System searches by application tags
  • System searches by description of application


SMART Download Page

  • Downloads are available to users by learning their operating system
  • Downloads are available to user by detecting their browser type
  • Multiple versions of applications will be available to user
  • Applications will be sort according to the versions and components


Newsfeed

  • Users will be updated about latest happenings in the download portal
  • Admins can enable/disable this feature
  • Admins can update the information in their admin page


Latest Applications

  • Users will be updated about the latest applications that are uploaded into the system
  • Admins can enable/disable this feature


Mailing Lists

  • SIS Download Portal is integrated with Google Groups and Mailman
  • Users will be able to sign up to these mailing lists so that they will be emailed on updates and information in regards to the applications they downloaded and signed up for


WYSIWYG Editor (TinyMCE)

  • Admins can use the WYSIWYG editor in the Edit Application Information page to edit information
  • Editor comes with many features and enables users to insert text, images, tables and many other features.


Lightbox Technology

  • Lightbox technology is used in the application information page
  • Screenshots of the application can be uploaded by the admin so that users can click and view the images using this technology


Create a community.

We hope that the implementation of the download system will form a community of frequent users, who in turn can share feedbacks with the initial publisher, creating value for both parties.


Create an image for SMU SIS on the internet

Currently research faculty shares their file through 3rd party download portal, we hope that through the SIS download portal, user remembers the source of the file. This way SMU could also be known as the university which shares findings and research materials online, bringing up its reputation.

Risks

Start of Project

Risk1.jpg Risk2.jpg Risk3.jpg Risk4.jpg Risk5.jpg Risk6.jpg Risk7.jpg

Mid Term Review

Risk8.jpg

Documentation

Reports

Presentation Slides

Poster

Poster
SIS Download Portal Poster


SIS Download Portal Video

SIS Download Portal Demo Video

Paper Prototyping

Paper Prototypes
Paper Prototypes of SIS Download Portal

Our development process for the SIS Download Portal is heavily involved in iterations. There were often changes in UI, functionalities, views and features during the development process. Therefore, we decided to adopt the paper prototyping concept to draft out and share with our client so that we will know what he exactly wants before we started coding and designing. This paper prototyping helped us tremendous amount of efforts and time.

Benefits:

  1. “Iterations” is the main reason to why we adopted paper prototyping in this project. It helps us make changes easily.
  2. Saves time and effort
  3. Easy for reference and documentation
  4. Easy to explain to client
  5. Cheap and fast

References for your interest

http://www.paperprototyping.com/what.html
http://www.codinghorror.com/blog/2008/04/ui-first-software-development.html


Requirements Change

Initial Project Phase

Initial Requirements
Initial planned functions and features

Requirement Change 1

Requirements Change 1
Requirements Change 1 (Features and Functions dropped by client


MidTerm Review

Midterm Review
Features and Functions during Mid Term


Added Features and Functions

Added Features
Features and Functions that have been added after Midterm Review


Final Project's Features and Functions

Final Features and Functions
Features and Functions that meets all requirements and are completed

Schedule

Gantt Chart


Iterative Software Development

Iterative Process
Rational Unified Process

Planned vs. Actual

PvsA1.jpg PvsA2.jpg

Summary of Work Schedule

Week 1

  • Proposal submission
  • Refined requirements
  • Draft of diagrams (Use Case and Scenarios, Domain, ER)
  • Prototype user interface for download portal
  • Team Management Plans - Roles and Responsibilities, Project Schedules and Risks
  • Refine diagrams


Week 2

  • Refined requirements
  • Refined diagrams
  • Refined user interface
  • Create Database
  • Construction of Homepage with basic login/change/forget password
  • Login/ Register Account / Forget and Change Password
  • Applications listings
  • Newsfeed
  • Prototype of functions
  • Code compilation + Integration
  • Testing and Debugging
  • Update to stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 3

  • Refined applications listing
  • Create/Update/Delete Categories pages
  • Refined user interface
  • Display uploader's information, applications and avatar
  • Edit/Delete/Upload applications
  • Code compilation + Integration
  • Testing and Debugging
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Refined items in Iteration 1 and 2 based on feedback
  • Updated schedule (Gantt Chart)


Week 4

  • Update profile and avatar
  • Refined user interface
  • Uploader profile page
  • Download information page
  • Application sharing
  • Edit/Update Applications
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 5

  • Download info page
  • Update application sharing
  • List application
  • Add/Delete application
  • Edit/ Update Application
  • Search tags
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 6

  • Refine Edit/ Update Applications
  • List versions
  • Add/ Delete versions
  • Code compilation + Integration of functions completed up to date
  • System testing and Debugging
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Refined items in Iteration 2 and 3 based on feedback
  • Refined user interface
  • Updated schedule (Gantt Chart)


Week 7

  • Search Tags
  • Refined items in Iteration 2 and 3 and 4 based on feedback
  • Refined user interface
  • Code compilation + integration for Iteration 1 to 5
  • Testing and Debugging
  • Mid Term Review Submission and demo of project with Profs Feida, Ori Sasson and Richard Davis on Thursday, 18/02/10 from 2:30pm - 3:30pm at SIS SR2.2.
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 8

  • Code compilation + Integration for Iteration 1 to 5
  • Administrator update profile and avatar
  • Administrator change password
  • Administrator Edit/ Delete/ Upload Applications
  • Administrator Approve/ Delete registered users
  • Refine user interface
  • Code compilation + integration
  • Testing and Debugging
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Refine items in Iteration 4 and 5
  • Updated schedule (Gantt Chart)


Week 9

  • Code compilation + Integration
  • Testing and Debugging
  • Scenario Testing
  • UAT 1
  • Compilation of UAT and Bug lists
  • Application Version - Add new version
  • Application Version - Update changes made and change logs
  • Application Version - Revert to older version
  • Application Version - Default version and default download
  • Google Groups email integration
  • Mailman email integration


Week 10

  • Refine Mailman email integration
  • Refine items in iteration 6 and 7 based on feedback
  • Analytic by Country, browser, operating system and IP address
  • Store analytic information in database
  • Testing and Debugging of system
  • Refined items in Iteration 7 and 8 based on feedback
  • Refine user interface
  • Updated schedule (Gantt Chart)


Week 11

  • Export analytic to excel (csv)
  • Refine items in Iteration 6 and 7 based on feedback
  • Refine user interface
  • Single sign on implementation
  • Set permissions
  • Feedback to stakeholders
  • Refine items in Iteration 7 and 8 based on feedback
  • Search by application name, tag and description
  • Code compilation + Integration
  • Testing and Debugging
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 12

  • Poster Submission for SIS Download Portal
  • Refine items in Iteration 8 and 9 based on feedback
  • Refine User interface
  • Scenario Testing
  • UAT 2
  • Compilation of UAT and Bug list
  • md5 checksum
  • Code compilation and integration
  • Testing and Debugging
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 13

  • Code Compilation + Integration of all functions
  • Testing and Debugging
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Refine Download info page
  • Refine Search page
  • Refine Analytic page
  • Update stakeholders and receive feedback (Client and Supervisor)
  • Updated schedule (Gantt Chart)


Week 14

  • Refine Download info page
  • Refine Search page
  • Refine Analytic page
  • Server deployment
  • Update Documentation
  • Testing & Debugging
  • Review Schedule
  • Feedback to stakeholders
  • Refine functions based on feedback
  • Refine UI
  • Scenario Testing
  • Client Presentation and UAT
  • Review and amendments made based on feedback from UAT
  • Preparation for final presentation


Week 15

  • Intensive Testing & Debugging
  • Review and amendments based on feedback from UAT
  • Slides + Application Run Through
  • Deployment
  • Final Presentation
  • Report Consolidation
  • Final Submission
  • Final Reflection

Screenshots of Download Portal

Analytics

By 3 country time.JPG By 5 country bar.JPG By downloads time series.jpg By downloads.jpg By one country bar.JPG Export csv.JPG Initial screen.jpg Summary of all downloads.jpg


Search

Search.jpg Search result.jpg Search resultnil.jpg


Manage Administrator

Manage admin.jpg


Management Operating System

Manage os.jpg


Learning Outcome

• Project Management Skills – Every team member was involved in the project management process. We updated and followed schedules, recorded delays and its reasons, evaluated the risks involved and carried out documentation that is associated with project management.

• Programming Skills – Team faced several challenges in developing this project due to its complexity. The programming and development skills improved for everyone in the team after the project was completed. Learning to carry out programming in a modular manner also helped the team.

• Client Management Skills – Although this project is an internal project developed for SMU SIS faculty, we treated Professor Richard Davis as our ‘real’ client and communicated and negotiated with him to meet the best outcomes for both ends. It was indeed a memorable and real-time experience for the team going through requirements change and negotiation process.


Team's Collaboration Tools

Google Docs

Google Docs is one very important collaboration tool that our team used to collaborate and share our work. This includes documents such as reports, work breakdown and also spreadsheets such as our schedule.

Google Docs could is effective because our team can work together, save and edit the work anytime, anywhere. The files were also securely and safely stored.

Reference
http://docs.google.com


TortiseSVN

TortoiseSVN is a really easy to use Revision control / version control / source control software for Windows. Since it's not an integration for a specific IDE we could use this free software provided with our IDEs. The team had experience using TortiseSVN during SE course and found that it will be useful for collaboration. Therefore, this subversion tool is used by everyone in the team for version controlling and file sharing.

Reference
http://tortoisesvn.tigris.org/


Technology
Technologies used during the project

Technology Used

Hardware

  • Linux Deployment Server

Software

  • Tiny MCE

TinyMCE, also known as the Tiny Moxiecode Content Editor, is a platform-independent web-based JavaScript/HTML WYSIWYG editor control, released as open source software under the LGPL by Moxiecode Systems AB. It has the ability to convert HTML text area fields or other HTML elements to editor instances. TinyMCE is designed to easily integrate with content management systems.

The team used this WYSIWYG editor in its download information page for its user to customize the page for their content.

References
http://en.wikipedia.org/wiki/TinyMCE
http://tinymce.moxiecode.com/

  • Apache Tomcat 6
  • MySQL 5.1
  • jQuery

Milestones

Week 1-8

Milestone
Week 1-8
  • The functions that were planned to be completed during week 1-8 were done on time and was presented to the supervisor, client and the reviewer during mid-term review.

Week 9-15

Milestone
Week 9-15
  • 3 Main functions of the project was delayed due to the complexity of project and they are
    • Download Info Page (Delayed by 1 Week) [Planned Week 8-12, Actual Week 8-13]
    • Analytic (Delayed by 2 Weeks) [Planned Week 8-12, Actual Week 8-14]
    • Search (Delayed by 2 Week) [Planned Week 10-12, Actual Week 10-14]

Delays in functions

Milestone
Chart showing delays

Meeting Minutes

Supervisor Meeting

Supervisor_Meeting_Minutes_260110
Supervisor_Meeting_Minutes_010210
Supervisor_Meeting_Minutes_080210
Supervisor_Meeting_Minutes_120210
Supervisor_Meeting_Minutes_180210
Supervisor_Meeting_Minutes_150310

Client Meeting

Client_Meeting_Minutes_090210
Client_Meeting_Minutes_180210
Client_Meeting_Minutes_220210
Client_Meeting_Minutes_080310
Client_Meeting_Minutes_190310

References

  • MD5 Checksum Referencing

http://www.rgagnon.com/javadetails/java-0416.html

  • Single Sign On Authentication Interface

Credits to Prof. Lee Yeow Leong

  • Regular Expression

http://java.sun.com/docs/books/tutorial/essential/regex/index.html

  • TinyMCE

http://tinymce.moxiecode.com

  • Lightbox

http://www.huddletogether.com/projects/lightbox2/

  • Google Groups

http://groups.google.com

  • Mailman Subscription

http://support.tigertech.net/mailman-subscription

  • CSS Tutorials

http://www.w3schools.com/css/default.asp


Access to SIS Download Portal

Link: http://202.161.45.165/fyp/
Note: Please use SMU VPN if you are accessing the system from outside the intranet.