Difference between revisions of "IS480 Team wiki: 2010T1 JCEman"

From IS480
Jump to navigation Jump to search
(Replaced content with "Removed")
Tag: Replaced
(One intermediate revision by one other user not shown)
Line 1: Line 1:
[[Image:JCEman.jpg|270px|JCEman Logo|thumbnail]]Transform your Business Problem into Solution
== Team Information ==
====Why JCEman?====
<b><font face="Script" size="+3" color="#00B3BF">J</font></b>esline,
<b><font face="Script" size="+3" color="#00B3BF">C</font></b>hen Cen,
<b><font face="Script" size="+3" color="#00B3BF">E</font></b>ugene,
<b><font face="Script" size="+3" color="#00B3BF">m</font></b>inh,
<b><font face="Script" size="+3" color="#00B3BF">a</font></b>lphonsus,
<b><font face="Script" size="+3" color="#00B3BF">n</font></b>guyen
<i>This explained how we were formed. We value our team and this remind us that we are not individuals, but a strong, bonded team.</i>
====Roles and Responsibilities====
{| border="1" cellpadding="1"
|- style="background:orange; color:white"
||'''Project Manager/Database Architect'''
||NGUYEN Thi Ngoc Minh
*Set meeting agenda, prepare and update Gantt chart
*Time tracker, ensure that the team is on schedule
*Consolidate and handle development issues as well as team problems
*Oversee the software development life cycle to minimize project risks
*Be responsible for designing, implementing, and managing databases to ensure the integrity of data
||'''Assistant Project Manager/System Analyst'''
||Eugene LEE Wei Liang
*Perform system testing and identify the system risk
*Ensures that the application contains no bug
*Develop Test Cases
*Facilitating User-Acceptance Tests or Heuristic Evaluations
*Secondary role of Acting Project Manager
||'''Software Architect'''
||CHEN Cen
*Lead the development of the system
*Determine the technical specifications and software development
*Resolve technical risk that is identified by the System Analyst
||'''Software Architect/IT Subject Expert'''
||PHAN TRAN Le Nguyen
*Understand the Business needs and develop solutions
*Analyze and develop the system designs that maps clients' requirements to solutions
*Secondary role of Acting Software Architect
||'''Business Analyst/Liaison Officer'''
||Alphonsus LIM Kwan Yeow
*Understand the business requirements and describe what the system must do to fulfill the business requirements
*Know the needs of the stakeholders with clear interpretation
*Ensure deliverable reflects how the product will be designed and developed
*Identify needed achievements for the project plans
*Middle person between the stakeholders and developers
||'''Design Architect'''
||Jesline TAN Mei Rong
*Build the web template for the layout of the portal
*Develop visual solutions that are appealing and relevant to the Business needs
*Ensure that all Graphic Designs and layouts meets the Client's demands
*Improve the usability of the site, making interface and navigation simple
== Project Overview  ==
====Project Description====
Over the years, Singapore has established itself as a premier financial hub in Asia, known for its robust economic and financial fundamental. Singapore financial centers offer a broad range of financial services including banking, investment banking and treasury services. However, due to emergent of more financial insititutions in the industry, the market become increasingly competitive. Banks competitive nature resulted in tweaking of terminology in promopting their products and services to attract consumers. This raised complexity in making purchase decisions given the different choices and slight differences in offerings and services.
For consumers to make better-informed decisions, it is imperative to have a platform that contains financial information of different banks, and a comparison tool to single out the best rates amongst the different financial offerings and services.
Through this project, our team aims to provide a better-informed purchase decisions on financial retail products and services, allowing purchases to be more intuitive and efficient.
Our team plans to develop this project using Drupal, a content management system, written in PHP. Drupal provides an advanced URL control and customization of content types and views, where a strong content management is what we need in building of Community web portals and Discussion Sites. Furthermore, Drupal proves to be an ultimate choice for creating of site that is heavy-duty or a site, which may have to be further developed in future.
To achieve a user-friendly and informative web portal for the financially savvy consumers. This way, consumers can seek to find a well-informed purchase decisions on financial retail products and services.
Our application will offer these features:
*Interesting, intuitive and interactive platform for consumers to communicate
*Information management system that allows the easy maintenance, retrieval and display of information related retail financial products
*A communication tool to keep consumers abreast on the latest changes in the retail financial products
*Intuitive comparison tool that allows consumers to compare products in an unbiased manner
Currently, information on products is readily available online and offline, unforunately, it takes much effort to consolidate and understand the product information. Online forums tend to lack credibility while aggregation sites are often passive in engagement and are not built for comparison. Hence, our team plans to build a website that helps consumers identify their financial needs, and possibly provide solutions and explanations to help consumers understand and address their needs.
Different financial tools and calculators would be developed to help consumers to work out their minimum weekly, fortnightly or month repayments on their loans, a budget planner that helps to assess their financial position, and a borrowing calculator to access how much they could borrow based on their salary and existing financial commitments.
As purchasing of financial products and services can be quite a perplexing due to its vast array of choices that are of subtle differences, an intuitive comparison tool that allows consumers to compare products in an unbiased manner might help in making a well informed purchase. By having this tool, consumers can compare different products and services, where they find the ideal product to their purchasing dilemma.
While most consumers have post-purchase behavior, where they feel inclined to comment on the purchases that were made, a community platform can be built to allow comment and track consumers’ comments. This could also allow consumers to exchange information about different products, where they seek to understand a product better.
We aim to provide available information about the products and simplify them so that it makes sense to consumers who have no financial knowledge, and allow consumer to compare these products easily in a single portal. The portal would also educate consumers on financial terminology.
In addition, the portal would provide in-depth detailing on products information, uncovering its terms and conditions, and recommend consumers on the suitable products that fit their needs cost-effectively. On a whole, we hope to provide retail banking consumers a platform to learn about available retail banking products and help ease their pain in purchase decision.
#Banks are willing to disclose informations we required
##Interest rates
##Products or services details
#Banks that posted the information on their websites are up to date.
#Bank products and services are comparable across banks.
#Initial startup of this project will be limited to four main banks in Singapore only.
#Administrative staff is able to maintain up to date information of the website as and when the banks make any new or updated information, or consumers posted new or updated comments of the products and services.
#Users do not use our website as their only references.
#Users have basic computer knowledge on accessing and exploring a website.
#Users have the minimum computer (or technical) requirements to run the website or web forum.
#Consumers of the products and services posted truthful feedbacks on the community platforms, at least it is not posted by bank staffs to praise their own products.
#Softwares that the team required are made available.
#The team is not subjected to any project cost.
#Additional functionalities are allowed to be added to the project while the project design is on-going.
== Stakeholders ==
*Kevin Steppe
*Shannon Aw
*Alan Lim
Our client, Shannon and Alan are department managers in different banks,United Overseas Bank (UOB) and Citibank respectively. Based on their experience in the field and also their experience with friends and relatives purchasing retail bank products, they initiated the project as they realize that certain consumers are incompetent and ill-informed on these products.
As the client and the main stakeholder of the project, we will be driving the functionalities of the project towards his requirements.
Users of the website are retail banking consumers looking for or sharing products and services information check out for latest updates and/or to learn about financial terms. The website must be simple to allow users to achieve their purpose of visiting the website.
Our website will be catered to 3 basic user categories: community users, general public and bank associates.
*Community users: Users that are interested in sharing their views, and are regular to our website. They are given more access to our website functions. They are usually well versed with bank products and their role would be to keep the website active. 
*General public: Public users seeking for product information and/or product advices from other community users.
*Bank associates: Bank employees could view competitor’s products and align their own product to keep up with the competition. They monitor and provide up-to-date information on their products to ensure users are abreast of changes in products. They could also ensure that information shared is accurate and factual.
==Project Plan==
====Project Schedule and Milestone====
'''Milestone 1:'''
*Iteration 1:
**Construct Overall Template
**Deposit Services - Search and Display
**Balance Transfer Services - Search and Display
**Balance Transfer Services - Compare
**'''Milestone 2: Project Acceptance- 5/8/2010'''
*Iteration 2:
**Deposit - Compare
**News Feeds and Forum
**Fixed Deposit Services - Search and Display
*Iteration 3:
**Fixed Deposit Services - Compare
**Manage Individual Profile Function
**Administrative Function
*Iteration 4:
**Manage Profile
**Bootstrap Function
**Comment and review Financial Product
*Iteration 5:
**Personal Loan Repayments Calculator Function
**Design Theme and Module
**'''Milestone 3: Mid-term Presentation- 27/9/2010'''
*Iteration 6:
**Credit Card Repayment Calculator Function
**Term Deposit Calculator Function
**Send Request Function
*Iteration 7:
**Track Financial Product
**Flag Product Inaccuracy
**Download/Upload product template
**Milestone 4: User Acceptence Test- 20/10/2010
*Iteration 8:
**Design UI
*'''Milestone 5: Final Demo- 11/11/2010'''
*'''Milestone 6: Final Documentation- 15/11/2010'''
==Project Deliverables==
====Use Case====
{| border="0" cellpadding="0"
|width="200pt"|'''[[Image:Use Case(Admin).jpg|240x360px|thumb|upright=1.85|right|Use Case Diagram(Admin)]]'''
|width="200pt"|'''[[Image:Use Case.jpg|260x390px|thumb|upright=1.85|right|Use Case Diagram(Annonymous & Registered Users)]]'''
|width="70pt"|'''[[Image:Use Case (Bank).jpg|336x252px|thumb|upright=1.85|right|Use Case Diagram(Bank)]]'''
====Logical Diagram====
{| border="0" cellpadding="0"
|width="200pt"|'''[[Image:LogicalDiagram.jpg|260x390px|thumb|upright=1.85|left|Logical Diagram]]'''
====ER Diagram====
{| border="0" cellpadding="0"
|width="200pt"|'''[[Image:ERDiagram.jpg|260x390px|thumb|upright=1.85|left|ER Diagram]]'''
====[[JCEman: Screenshots|Screenshots]]====
====Test Cases====
This is the test plan for the Project ezBanking. The test plan would show how the test cases are utilized.
The testing is done on the following functions:
*Login and Registration
*Manage Profile
*Credit Facilities – Search and Display
*Deposit – Search and Display
*Credit Facilities - Compare
*New Feed and Forum
*Deposit Compare
*Fixed Deposit – Search and Display
*Fixed Deposit – Compare
*Comment and Review Financial Product
*Personal Loans repayment Calculator
=====<u>Test Strategy</u>=====
*Functional Testing
This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application.
*Regression Testing
Upon the completion of every iteration, regression testing would ensure that functions which were previously tested still works well.
*System Testing
Upon the integration of system, this testing would ensure that system still works according to functionality which are system required and all requirements are met and working well.
=====<u>Test Approach</u>=====
Technique Objective: Verify system functional requirements.
Technique: Verify the requirements put forth in test cases and  requirements
Oracles: Test Cases
Required Tools: Mozilla Firefox 5.0
Windows XP or Vista
School Deployment Server:
Success Criteria: All of the following are successfully tested:
*all key use-case scenarios
*all key features
Test-Case In-Charge: Eugene
Testers Involved: Minh, Nguyen, Chen Cen, Jesline, Alphonsus
Frequency: At the end of every iteration and one final overall testing after all development work
Bug Fix: It varies. Depending on the severity of the bugs, it will be either fixed during buffer time or scheduled debugging days.
=====<u>Test Case Log</u>=====
*[[JCEman: Test Cases|Test Case Log]]
====Metrics Used====
*[[JCEman: Time Metric|Time Metric]]
*[[JCEman: Bug Metric|Bug Metric]]
=====[http://code.google.com/p/is480-ezbanking/issues/list?can=1&q=&colspec=ID+Type+Status+Priority+Milestone+Owner+Summary&cells=tiles Bug Listing]=====
==== Meeting Minutes====
=====[[JCEman Client Meeting Minutes|Client Meeting Minutes]]=====
=====[[JCEman Supervisor Meeting Minutes|Supervisor Meeting Minutes]]=====
=====[[JCEman Team Meeting Minutes|Team Meeting Minutes]]=====
=== Final Wiki ===
[[JCEman:Wiki Final Page|Final Wiki Page]]
==Risk and Mitigation Plan==
==== Initial Risk and Mitigation Plan====
{|border="1" width="92%"
|- style="background:orange; color:white"
!Risk Description
!Mitigation Plan
|Data accuracy
|Due to the inconsistent changes of interest rates, information that is captured on the portal might be inaccurately rendered at times.
Furthermore, different consumers might be offered a different rate according to their relationship with the bank, so it might be hard to ascertain the correct interest rates that are offered.
|Data is collected through feedback from customers; hence, information received is not always accurate and needs verification from admin.
|Gather information periodically through calling of banks and administering the forum discussion by reading the latest post every few hours. An administrative staff will have to gather and confirm updated information with bank.
The site can start off with some information on the different interest rates, followed by feedbacks or comments provided by users. Subsequently, the administrative staff will have to check the reliability of the sources. Perhaps a statistical report can be generated based on the feedbacks of the users. Another solution is to push the mitigation plan for the 3rd risk to liaise directly with the banks to check.
|No one is familiar with Drupal
|It would take time and a number of trials during the process of implementation the project.
|None of our team member has experience in using Drupal framework.
|We learn through reading of e-books, online tutorials, doing demo and sharing understandings with team members. We have meeting (online) every week to update and share with each other our understanding to have the same learning pace.
|Banks do not want to disclose information
|The banks are unwilling to disclose their information, and this might cause lack of data for the comparison of the financial products. It might also lead to lack in credibility.
|In a Banking industry where it is a cut-throat world, banks tend to withhold their information for the safety of their customer and for their competitive edge of their business.
|The initial plan is to gather required information from our clients.
We will try to convince banks to adopt the use of this portal, where we plan to showcase the benefits of this portal. Similarly, we can try to establish contact from relevant people who have information to banking services. For example, our clients, who have the consumers’ interest at heart and are willing to provide us with some data.
|Limited understanding of finance and banking industry
|Certain terminologies used could only be understood in the industry, which may require us to research on sites that are related to the context of financial services.
|Although using banking service or bank products is very common these days, our team is not fully competent in terms of the financial field.
|In the learning phase of Drupal, we also read more on bank products, regulation of loan and others. In addition, with the facilitation of our clients, we can seek to gain enough knowledge to develop the site, within the shortest time.
|Laptop crash
|Laptop of one of our team members can crash (hardware or software) at any time and result in loss of mandatory part and delay of the whole project due to reformat/ repurchase and redo the lost part.
|There are many causes for this problem subjective or objective.
|Each member needs to always have back up of their works on a separate machine or remote storage.
The whole team need to at all times has the most stable version of the project so that they can acquire easily if any member’s laptop crashes.
|Health risk/Personal excuses
|This is when any team member suffers from any health degradation that prevents he/she from doing the project for a period of time. The reason can also be family emergency or anything that cannot be done otherwise.
|There are also many causes for this problem subjective or objective.
|Each member needs to keep a record of their works as a progress record, so that other teammates can read and understand the progress of the member. In addition, we also have to comment our code so that the one who continue the coding part may find it clearer and easier to do.
====Additional Risk and Mitigation Plan====
{|border="1" width="92%"
|- style="background:orange; color:white"
!Risk Description
!Mitigation Plan
|Evolving business requirements
|Client may though of new ideas during the course of the project and would like to see it being implemented
|Efforts in trying to make our website better than our competitors
|Define our time line with client and discuss the cost(time required) and benefits(value-add) of the new requirement to our website.
|User interface does not meet client expectation
|User interface designed by us might not be what our client expect
|Our interpretation of a nice UI might not be liken by our client 
|Regular meet up with client to get evaluation and feedback on the user interface.
|Accidental use of code hacker's modules
|Drupal has many modules build by the community. There are cases of modules being built by code hackers which maybe malicious to our website
|Vulnerability for Drupal being an open source CMS
|Review the module's comments made by the community before using them. Regular check for security update Drupal modules. 
|Long learning curve to learn and get use to administrative tools
|Admin need time to learn how navigate to get tools that are tools that were made available by Drupal
|Drupal has steep learning curve
|User guide will be created during the transitive phase to guide future admin users. It will help user learn the website faster.
==Learning Outcome==
{|border="1" width="92%"
|- style="background:orange; color:white"
|width="200pt"|'''IS480 Application Project'''
|width="400pt"|'''Tasks to Achieve Outcomes'''
|width="100pt"|'''Methods of Outcome Assessment'''
|IT architecture, design and development skills
|Design is so much an important phase that it can decide the pace of the whole project
|Faculty supervision
|2.1.  System Requirements Specification skills
* Elicit and understand functional requirements from customer
* Identify non-functional requirements (performance, availability, reliability, security, usability etc.)
* Analyze and document business processes
|2.2.  Software and IT Architecture Analysis and Design skills
* Analyze functional and non-functional requirements to produce a system architecture that meets those requirements
* Understand and apply process and methodology in building the application
* Create design models using known design principles (e.g. layering) and from various view points (logical, physical etc.)
* Explain and justify all the design choices and tradeoffs done during the application's development
|2.3.  Implementation skills
* Realize coding from design and vice versa
* Learn / practice PHP, JScript programming language and Drupal framework
* Integrate different applications (developed application, cots software, legacy application etc.)
* Use tools for testing, integration and deployment
|2.4.  Technology Application skills
Understand, select and use appropriate technology building blocks, components and packages when developing an enterprise solution (e.g. make use of JQuery to create useful UI)
|Project Management skills
|All projects must be managed with proper scope, risks, integration, configuration and quality.
|Faculty supervision
|3.1 Scope Management skills
* Identify and manage trade-offs on scope, quality and time.
* Document and manage changing requirements.
|3.2    Risks Management skills
|Identity risks and mitigation plans to manage risks
|3.3    Project Integration and Time Management skills
* Establish Work Breakdown Structure, time metrics, resource estimates to monitor project progress.
* Practice in planning using methods and tools (Microsoft project, Gantt chart etc.)
* Develop and execute project plan properly to complete it on time.
|3.4    Configuration Management skills
|Establishing and maintaining consistency of the system's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life
|3.5    Quality Management skills
|Develop test plans and test cases for unit testing, system integration testing and user acceptance testing to achieve high quality of the application
|Collaboration (or Team) skills
|Each member must contribute and collaborate
|Faculty supervision
|5.1. Skills to improve the effectiveness of group processes and work products
|Adopt knowledge sharing culture in the team, and encourage interaction with all team members
|Faculty supervision, Team leader.
|Change management skills for enterprise systems
|Document the changes to be taken and accessed them to check for feasibility and compatibility.
|Midterm report submission
|6.1. Skills to diagnose business changes
|Analyse the business process and users’ feedbacks of other similar sites
|User feedback
|6.2. Skills to implement and sustain business changes
|Discuss and analyse the need to implement changes, and effect of changes on the business. Ensure changes are compatible with the application
|Final submission

Latest revision as of 11:23, 3 April 2020