Professional Documents
Culture Documents
Contact Information
Project Name: Modesto Bank Project Specifications Document Project Sponsor: Samuel Burer, CEO Email: samuel-burer@uiowa.edu Phone: (319)-335-0931
Participants
Name Brandon Miller Subathra Aravamudhan Wenjie Li Jae-Eun Russell Phone 353-5148 341-8089 353-4734 358-7636 E-Mail Address brandon-r-miller@uiowa.edu subathraaravamudhan@uiowa.edu wenjie-li@uiowa.edu jae-russell@uiowa.edu Business Unit Represented System Development System Development System Development System Development
Reference Document(s)
Date Version Author Document Title
Page 2 of 55
Table of Contents
1System Request...........................................................................................5
1.1Business Need..........................................................................................................................................5 1.2Functionality & Scope...............................................................................................................................5 1.3Expected Value.........................................................................................................................................5 1.4Special Issues & Constraints....................................................................................................................6
2Executive Summary.....................................................................................7 3Work Plan...................................................................................................10 4Project Charter...........................................................................................11 5Risk Analysis..............................................................................................13 6Economic Feasibility Analysis..................................................................17 7Requirements Specification......................................................................18 19 8Process Model: Current Business Process Flows................................20 9Process Model: Proposed Business Process Flows.............................21 10Entity Relationship Diagram...................................................................22 11 Program Specifications..........................................................................26 12 Database Tables.....................................................................................31 13 Screen Mockups....................................................................................36 14 Testing Documentation.........................................................................38 15 Potential Improvements........................................................................55
Page 3 of 55
Signoff Page
The purpose of this document is to provide you, the stakeholder, with a clear understanding of the requirements identified for the effort. This document contains the detailed system requirements that have been identified, as well as all of the business requirements necessary to implement the identified solution for this effort. Please provide your signature (or email approval) to the Project Manager to indicate that you have reviewed and are in agreement with the contents of this document. Should you have any questions or concerns pertaining to this document, please feel free to contact the Project Manager for additional information or clarification.
Approved:
I have read and agree to the project documentation details. Name Samuel Burer Samuel Burer Samuel Burer Samuel Burer Position Modesto Bank, CEO Modesto Bank, CEO Modesto Bank, CEO Modesto Bank, CEO Deliverable Point Milestone 1 Milestone 2 Milestone 3 Milestone 4 Signoff SB SB SB SB Date 2-18-03 3-25-03 4-21-03 5-8-03
Page 4 of 55
System Request
1.1
Business Need
To increase efficiency and customer service through the development of a user-friendly, web-based banking information system, which will: Allow for maintenance of a centralized database for the managers of Modesto Bank Function through an interactive user-friendly website with entry, update, add, and delete options Deliver the most recent product information to all managers and officers of Modesto Bank via the internet
1.2
The system (website & database) will have the following functionalities:
Update/add/delete functionalities to edit the fields in the database to allow for the most recent information about the products.
1.3
Expected Value
Tangible: Increased customer service by being able to provide the customer with the most up-to-date information. Rates will be updated in the timeliest fashion. Reduction of paper by not having to print and distribute weekly product rate specification sheets Intangible: Recognition of Modesto Bank as a forerunner for incorporating information technology in their central database. Increased work efficiency among managers and other top officials Less possibility for distortion of product information among the various branches of the bank and the central bank.
Page 5 of 55
1.4
The completion of the project, including the functioning interactive website, by the second week in May This project is expected to end before the peak period of mortgage loans, which coincides with the end of the school year. The project team is planning to extend our support of Modesto bank by giving a formal presentation in May after the successful completion of the project. The presence of a support team will be available to aid managers in using the interface. However, since the website requires few skills to navigate and use, the time required for training on the functionality should be relatively small.
Page 6 of 55
Executive Summary
The strategic plan for the development of this web based application can be divided into four units. They are; Mission statement Information technology goals Information technology work plan Formal presentation and Future support.
Mission statement
The mission of this project is to provide the highest quality of information and support in promoting sensitive information transfer among the various managers through the internet of the Modesto Bank.
The code will be clearly commented A standard indention of the code will be practiced for future readability of the code Include the date for all code pages
Page 8 of 55
Table Standards: All the tables would be normalized up to the third normal form Primary keys such as the product IDs will be used to uniquely identify the records All the products have fields that can be updated by some of the senior managers of the bank The tables do not give permission for any fields in the various products to be deleted Even though only a few managers are given permission to update the fields of the product all managers are given permission to view and query from different fields Field independence would be assured in all the tables Form Standards: The font used would be sans-serif Every form would have a title All the reports would be both viewable and printable. Website Standards: A easily navigable and user-friendly website would be developed Review and update of the fields by the clients would be allowed The site would be empowered to carry on the querying and reporting capabilities. The website would be compatible with the most commonly used web browsers, such as Internet Explorer and Netscape The site would be enabled to grow with the companys expansion. Testing Standards The team members have developed the testing phase with the utmost care. Each part of the program and website would be tested individually and as a group by the team members. The testing team would concentrate on the security and functionality of the site Documentation and training standards The documentation of the work inclusive of the past milestones would be placed as a link to the website. This is expected to aid in future developments to the website for current and future users.
Page 9 of 55
Work Plan
Page 10 of 55
Project Charter
This document will describes the projects rules and guidelines that all team members should comply with. The purpose of this project charter is to coordinate group members; match team members skills with the project need; and minimize conflicts, misunderstanding, and problems between members as the project progresses. Team Structure The following chart illustrates the proposed team structure of our project. Each role is defined and assigned to team member as listed in the Staffing Plan table below. The roles will stay consistent throughout the project. The structure is based on the principle that each team members skill should match with the needs of the project in order to motivate each individual and fulfill the objectives of the project. In forming the team structure, each team members technical skills as well as the interpersonal skills are considered. For example, the persons with most technical experience with information system design were assigned as the System Analysts. Team members who have knowledge about the projects business aspect will take the role of Business Analyst. The person with strong interpersonal skills is assigned to be liaison with the Client. 1. Team Structure Chart
2. Table of Staffing Plan Role Project Manager Business Analyst System Analyst Web Site Coordinator Description Oversees the project and ensures that it meets its objective in time, function, and cost according to the project plan Ensures the system will provide the business with value and meet the businesss requirements Design the information system and ensure the system conforms to information systems standards Design the project website Communicate and negotiate with the client Create team meeting agenda and coordinates the team members Assigned To Brandon Miller Brandon Miller, Wenjie Li, Aravamudhan Subathra Wenjie Li, Jane Russell Brandon Miller, Jane Russell Aravamudhan Subathra Aravamudhan Subathra
Wenjie Li
Decision Making Major decisions, such as the ones that will affect the objectives of the project and thus will involve all team members, will be made on a consensus base. The reason for this is: the project team consists of a small amount of team members and each members work is closely related. Therefore, a high level of coordination and understanding between group members is crucial to the success of the project. Majority vote or individual discretion will be used to make minor decisions. This method is more efficient and reasonable for minor decisions that have only negligible affect on the project. Work Load Work load for our project will be distributed mainly based on each team members relative expertise. Any members who want to develop some specific skills are also encouraged to work together with the person mainly responsible for that work task. The following list demonstrates the proposed work task distribution among the project team. Database Design and Maintenance: HTML/Web Design: SQL/ Instruct via FTP Application: ASP Application: Wenjie Li Brandon Miller Aravamudhan Subathra Jane Russell
Before each milestone, a detailed work plan that describes each persons work load during that milestone should be discussed and agreed upon among all members. Detailed work load and responsibilities should be addressed as specifically as possible before working on each milestone. Communication and Meetings Email will be the main tool to communicate among members. We are not going to have regular meetings, however, we are going to use the section time for communication on important topics. We will also frequently meet on an as-needed basis. Peer Evaluation We will divide the work load based on individual specialties with the individuals approval. Therefore we expect every member should complete each part that is assigned by the given time. We will evaluate the quality of the work when we have a meeting. 100% attendance for every meeting is required unless there is a pre-arranged appointment or conflict. Promptness for every email is expected as well. We expect every member to participate fully in each stage throughout the whole project. If a member misses a meeting or deadline more than once without any notification to other members or does not respond to e-mails two times in a row, a meeting will be set-up with all members to resolve any problems. Interaction with Client We will update the Client only when major portions of the project have been completed. The Project Manager or Formal Liaison with Client will be the main contact person for our client. We will try our best to meet the cost that is approved by our customer. However, if we have to go over budget, we will set-up a meeting with our customer and give full explanation about the matter. Then we will let the customer decide whether it goes over budget with full functionalities or curtail some of them that were planned at the initial Page 12 of 55
planning and analysis stages of project. We will try to convince our customer to have full functionalities if they are relevant to the business value, even though it may require going over budget.
Risk Analysis
Risk Analysis usually reveals important problems that may naturally occur during the course of the project. Risk management involves risk identification, impact analysis, risk monitoring, and control. This document identifies the risks in the Modesto Bank project. A complete analysis of the project requirements has enabled the team members to identify the following risks in the project, which are listed in descending order of severity: 1. 2. 3. 4. 5. 6. 7. Schedule conflict among project members Incorrect initial project effort estimate Shortfalls in externally furnished Data (data given by the bank) Continuing stream of requirement changes Personnel Shortfalls Developing the wrong functions and properties Poor system maintainability.
We will analyze these risks, their potential impact on the project schedule, cost, and quality, and how we plan to monitor and control the risks. 1. Schedule conflict among project members Risk identification: As each one of the project members is involved in various tasks, their ability to meet in person with the rest of the group to discuss the problems may be difficult. Impact Analysis: Since this project has been planned as a group project, the contribution of each member of the team is very important for the success of the project as a whole. Failing to put in a joint effort will result in a serious impact on Project Schedule and Quality and may also affect delivered functionality. Risk Monitoring: The team will meet regularly to take stock of the progress achieved by each team member and the overall project objectives. Risk Control: During the initial meeting among the project members, the available meeting times between members was discussed .The project members decided to meet once a week during discussion and on an as-needed basis. The team also agreed to use email to communicate about the latest work. In case of severe necessities, the members promised to rearrange their schedule to accommodate the urgent meeting. Likelihood of Risk: High 2. Incorrect initial project effort estimate Risk identification: The team has used MS Project to plan the project. However, the estimate for the tasks involved is based on the experience of the team members and a Rule of Thumb technique has Page 13 of 55
been used. Thus, this type of estimation could be wrong for some tasks involved. This is a risk due to erroneous effort estimation and not due to incorrect requirements specification. Impact Analysis: Any error in effort estimated will impact the Project Schedule. Risk Monitoring: The team will closely monitor the effort actually required to complete a task and compare it with the estimated effort and highlight any difference. The project schedule will require careful monitoring and updating. Risk Control: The team will: Work extra to complete the project on time. Seek innovative methods, such as the use of templates and the re-use of code, to reduce the task time required
Likelihood of Risk: Minimal to moderate 5. Personnel Shortfalls: Risk Identification: The project members were selected based on their ability to handle similar sized projects. The members have worked with others on similar projects and have proved themselves in solving many problems. However, it is possible that one or more of the members will not be able to deliver the required amount of effort due to several extraneous reasons. Impact Analysis: Since the project has been planned with an aggressive schedule, it is very essential that all team members contribute fully. Failing to do so will cause an impact on Project Schedule and Quality (delivered functionality). Risk Monitoring: The team will meet regularly to take stock of the progress achieved by each team member and the overall project objectives. Risk Control: The rest of the group would work extra as members of a team and complete the project on time. However, if the impact is too much to accommodate, then an assessment would be made and brought to the attention of the client, in a professional way to seek a revision in schedule, functionality or both. Likelihood of Risk: Minimal to Moderate 6. Developing the wrong functions and properties Risk Identification: The application software developed may fail to deliver designed functions and customer requirements. Impact Analysis This is an important risk and needs to be closely watched. If this risk is not monitored and controlled, it will result in re-work, delay, poor quality, and client dissatisfaction. The impact is on Quality, Schedule, and Cost. Risk Monitoring: The team will regularly review, test the work done by each other, and ensure that functions work as designed and required. Risk Control: Each team member is expected to suggest their opinions and feedback regarding the work of other members before actual delivery of the developed functionality. This review process will greatly reduce the risk of functionality not being delivered. Also the client will review the deliverables and provide specific feedback, which will then be used by the team in further work. The team members background knowledge and team spirit will also aid them in the analysis of the situation and ensure good quality of work. Likelihood of Risk: Minimal 7. Poor system maintainability: Risk Identification: Though the application developed may meet all the requirements of the customer, it may be developed in such way that making future enhancements to it will be very difficult. Impact Analysis: This will cause additional wasteful effort in future projects and will also result in the inability to deliver seemingly simple changes quickly. Page 15 of 55
Risk Monitoring: The team will attempt to design the system in a flexible manner to support future enhancements, and the code will be reviewed to ensure good coding practices. Risk Control: The team members will walk through the code and review the design to ensure maintainability. Likelihood of Risk: Minimal
Page 16 of 55
$0 $0 $0
$0 $0 $0
$0 $0 $0
$0 $0 $0
*Total costs for year 1 may be subject to additional travel expenditures we incur, but total travel expenditures shall not exceed 8% of total cost.
Page 17 of 55
Requirements Specification
The strategic plan for the Modesto Bank project has been developed by the team members of the project according to the information and requirements received from Mr. Burer, the client. After a detailed analysis of the various requirements stated by the client, the team has proposed the following system specifications. Any changes to this specification can be carried out only with the written joint approval of the client and the team members. A special thanks to Mr. Burer from the members of the team for his time and effort in this project. Executive Summary The strategic plan for the development of this web based application can be divided into four units. They are the: Mission Statement Login & Security Standards Salient Features of the New System
Mission Statement
The mission of this project is to provide the highest quality of information and support in promoting sensitive information transfer in the most efficient fashion among the various managers throughout the intranet of the Modesto Bank.
Update Fields The system will accommodate numerical changes in the fields of the products. The system will allow the managers (senior level) to update and add information in the database tables. The system will not allow the all branch managers to make changes/updates to the tables or the fields Any changes made in the database will be updated immediately, and the changes will be viewable to all the branch offices. New product tables may not be added to the system from the website interface. The intranet users will not be allowed to update any of the existing products or information in the fields. Delete Fields The system will allow the managers (senior level) to update fields, but not delete them. Permission to delete any of the fields in the table will not be allowed for any manager including the senior members. The intranet users will not be allowed to delete any of the existing products or information in the fields.
Page 19 of 55
Management
Weekly Meeting
CD Accounts
Home Mortgages
Page 20 of 55
Management
Weekly Meeting
Workstation
Workstation
Page 21 of 55
Eligible for Rewards Program (Boolean) - Expresses whether the card is eligible for the rewards program. Initial Offering The date the product becomes available. Expiration The date of expiration on the product card.
Page 23 of 55
4. The Certificate of Deposit (CD) includes the following adjustable features: Product ID*- The field used to uniquely identify the products. Type The type of CD being offered (fixed or market.) Minimum Deposit The minimum deposit requirement for this CD product. Amount The amount required for this CD (usually either >$100,000 or < $100,000.) Term The length required for this CD product expressed in years. Interest Rate The rate of interest the bank will be paying. Compounding Rate The compounding rate for the product expressed in days. Initial Offering The date the product becomes available. Expiration The date of expiration on the product
5. The Accessrights table includes the following features: Rights_ID*- The field used to uniquely identify the right. Add Right for adding data (It indicates with y/n) Update Right for updating data (It indicates with y/n). View right for viewing data (It indicates with y/n).
6. The Users table includes the following adjustable features: Username*- The field used to uniquely identify the users. Password The field entered by each user First_name Users first name Last_name Users last name Department Users department Position Users position Rights_ID The field that is defined rights for each user. The reference table is Accessrights.
Page 24 of 55
Users username password First_name Last_name department (O) position (O) Rights_ID (FK) CD ProductID CD_Type Minimum_Deposit Above_100000 CD_Terms APR Compound_Day Offering_Date Expiration_Date COUNTER CHAR(50) CURRENCY CHAR(10) DOUBLE DOUBLE INTEGER DATETIME DATETIME CHAR(10) CHAR(10) CHAR(10) CHAR(10) CHAR(10) CHAR(10) CHAR(10) AccessRights Rights_ID INTEGER has add update view CHAR(10) CHAR(10) CHAR(10)
CreditCard ProductID Type APR Credit_Limit (O) Reward_Eligible (O) Offering_Date Expiration_Date COUNTER CHAR(50) DOUBLE CURRENCY CHAR(10) DATETIME DATETIME
MoneyMarket ProductID Minimum_Balance Maximum_Balance APR Compound_Day Minimum_Deposit (O) COUNTER CURRENCY CURRENCY DOUBLE INTEGER CURRENCY
Mortgage ProductID Fixed_Mortgage Apr Duration Point (O) Origination_Fee (O) COUNTER BIT DOUBLE Page SHORT 25 of 55 DOUBLE DOUBLE
11 Program Specifications
The following code samples will be used to execute business tasks in the MySQL database.
SQL Command:
INSERT INTO `mortgage` ( `ProductID` , `MG_Fixed` , `MG_Duration` , `MG_Apr` , `MG_Point` , `MG_OriginationFee` , `MG_MinPayment` , `MG_MaxAmount` , `MG_Offering` , `MG_Expiration` ) VALUES ('', 'n', '5', '4.895', '0.00', '0.00', '5', '500000', '2003-04-01 00:00:00', '2005-04-01 00:00:00');
<output>
ProductID MG_Fixed MG_Duration MG_Apr 1y 2y 3n 4n 5n 30 15 1 3/1 5/1 6.09400 0 5.53000 0 4.30400 0 4.05500 0 4.22000 0 MG_Poin MG_OriginationFee MG_MinPayment MG_MaxAmount t 0.00 0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 20.00 20.00 0.00 0.00 0.00 MG_Offering MG_Expiration
650000 2003-04-01 00:00:00 2005-04-01 00:00:00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00
Page 26 of 55
2. Update the expiration date of an existing money market product. <Before update sql command>
ProductID MM_MinBalance 1 2 3 4 5 0 100 1000 5000 25000 MM_MaxBalanc MM_Compoun MM_MinDeposi MM_Intrest e d t 99 999 4999 24999 NULL 0.000000 1.040000 1.390000 1.630000 1.880000 365 365 180 365 365 MM_Offering MM_Expiration 0000-00-00 00:00:00 2005-04-01 00:00:00 2006-05-01 00:00:00 2005-04-01 00:00:00 2004-12-31 00:00:00
1000 2003-04-01 00:00:00 1000 2003-04-01 00:00:00 1000 2003-04-01 00:00:00 1000 2003-04-01 00:00:00 1000 2003-04-01 00:00:00
SQL Command:
UPDATE moneymarket SET MM_Expiration = 2006-04-01 WHERE ProductID = 4
<output>
ProductID MM_MinBalance 1 0 MM_MaxBalanc MM_Compoun MM_MinDeposi MM_Intrest e d t 99 0.000000 365 MM_Offering MM_Expiration 0000-00-00 00:00:00
Page 27 of 55
Page 28 of 55
3. Update the rights of an existing users <Before update sql command> Username Password Fname Lname Department Position Rights_ID samuel@bank burer Samuel Burer NULL CEO 1 jane@bank russel jane russell IT programme 2 r brandon@ban millar Brandon Millar Finance Manager 1 k wenjieli@bank li wenjie li IT Manager 1 subatha@bank raravamu raravam subathr Marketing Manager 1 u a smith 12345 Robert Smith Marketing Manager 2 SQL Command:
UPDATE users SET Rights_ID = 1 WHERE Username = smith
<output> Username Password Fname Lname Department Position Rights_ID samuel@bank burer Samuel Burer NULL CEO 1 jane@bank russel jane russell IT programme 2 r brandon@ban millar Brandon Millar Finance Manager 1 k wenjieli@bank li wenjie li IT Manager 1 subatha@bank raravamu raravam subathr Marketing Manager 1 u a smith 12345 Robert Smith Marketing Manager 1
Page 29 of 55
Page 30 of 55
12 Database Tables
SQL result Host: tcbis.biz.uiowa.edu Database : bank Generation Time: Apr 11, 2003 at 03:18 PM Generated by: phpMyAdmin 2.3.3pl1 SQL-query: SELECT * FROM `users` LIMIT 0, 30; Username Password sam@bank burer jane@bank russel brandon@bank miller wenjieli@bank li subatha@bank raravamu russe russe admin admin test test testAdmin test dave dave Chung password brandon brandon First_name Samuel Jane Brandon wenjie raravamu Jane Sam Test Test Dave Chung Brandon Last_name Burer russell Miller li subathra russell smith person admin Mitchell Han Miller Department Position Rights_ID Marketing CEO 1 IT programmer 2 Finance Manager 1 IT Manager 1 Marketing Manager 1 russe russe1 1 IT manager 2 none none 2 none none 1 marketing senior 2 IT senior 2 Audit Internal Auditor 1
Page 31 of 55
SQL result Host: tcbis.biz.uiowa.edu Database : bank Generation Time: Apr 11, 2003 at 03:19 PM Generated by: phpMyAdmin 2.3.3pl1 SQL-query: SELECT * FROM `accessrights` LIMIT 0, 30; Rights_ID Add Update View 1 yes yes yes 2 no no yes SQL result Host: tcbis.biz.uiowa.edu Database : bank Generation Time: Apr 11, 2003 at 03:34 PM Generated by: phpMyAdmin 2.3.3pl1 SQL-query: SELECT * FROM `cd` LIMIT 0, 30; Product_ID CD_Type Minimum_Deposit Above_100000 4 Fixed CD 500 no 5 Fixed CD 500 no 6 Fixed CD 500 no 9 Fixed CD 500 yes 10 Fixed CD 500 yes 11 Fixed CD 500 yes 12 Fixed CD 500 yes 13 Market CD 500 no 14 Market CD 500 no 15 Market CD 500 yes 16 Market CD 500 no CD_Terms 2 years 3 years 5 years 1 year 2 year 3 years 5 years 1 year 2 year 3 years 3 years APR Compound_Day Offering_Date Expiration_Date 2.530000 365 2001-09-01 00:00:00 2003-09-01 00:00:00 2.800000 365 2003-01-01 00:00:00 2005-01-01 00:00:00 3.580000 365 2003-02-01 00:00:00 2005-02-01 00:00:00 2.150000 365 2003-07-01 00:00:00 2005-07-01 00:00:00 2.680000 365 2002-01-01 00:00:00 2004-01-01 00:00:00 2.950000 365 2003-01-01 00:00:00 2005-01-01 00:00:00 3.730000 365 2002-07-01 00:00:00 2004-07-01 00:00:00 2.250000 365 2000-05-08 00:00:00 2002-05-08 00:00:00 2.720000 365 1998-02-01 00:00:00 1998-05-01 00:00:00 2.830000 365 1999-10-01 00:00:00 2000-11-01 00:00:00 2.790000 365 1998-04-30 00:00:00 1999-03-10 00:00:00 Page 32 of 55
SQL result Host: tcbis.biz.uiowa.edu Database : bank Generation Time: Apr 11, 2003 at 03:20 PM Generated by: phpMyAdmin 2.3.3pl1 SQL-query: SELECT * FROM `creditcard` LIMIT 0, 30; Product_ID Type 1 Platinum Credit Card 2 Student Visa Credit Card 3 Classic Credit Card 4 Classic Credit Card 5 Platinum Credit Card 6 Platinum Credit Card 7 Student Visa Credit Card 8 Classic Credit Card 9 Classic Credit Card 10 Student Visa Credit Card 11 Student Visa Credit Card Apr Credit_Limit Reward_Eligible 11.150000 500 yes 13.990000 250 no 11.100000 25000 yes 10.000000 25000 yes 10.600000 25000 yes 11.200000 20000 yes 12.800000 2500 no 12.300000 20000 yes 13.100000 2500 no 12.900000 2500 yes 10.500000 15000 yes Offering_Date 2000-04-05 00:00:00 2000-04-05 00:00:00 2005-05-05 00:00:00 2000-03-12 00:00:00 1999-12-01 00:00:00 1998-10-01 00:00:00 1999-03-01 00:00:00 1998-01-01 00:00:00 1997-06-30 00:00:00 2000-10-10 00:00:00 2002-02-20 01:00:00 Expiration_Date 2005-02-05 00:00:00 2009-05-09 00:00:00 2006-06-06 00:00:00 2000-12-12 00:00:00 2000-12-01 00:00:00 1999-10-01 00:00:00 2001-03-01 00:00:00 1999-10-01 00:00:00 1999-06-30 00:00:00 2002-10-10 00:00:00 2002-02-20 03:00:00
Page 33 of 55
SQL result Host: tcbis.biz.uiowa.edu Database : bank Generation Time: Apr 11, 2003 at 03:21 PM Generated by: phpMyAdmin 2.3.3pl1 SQL-query: SELECT * FROM `moneymarket` LIMIT 0, 30; Product_ID Minimum_Balance Maximum_Balance 1 0 99 2 100 999 3 1000 4999 4 5000 24999 8 100000 200000 9 1000 100000 10 0 100000 11 5000 25000 12 100 999 13 1000 4999 14 5000 24999 15 25000 NULL APR Compound_Day Minimum_Deposit Offering_Date 0.000000 180 1000 2001-10-01 00:00:00 1.040000 365 1000 2000-01-05 00:00:00 1.390000 180 1000 2003-04-01 00:00:00 1.630000 365 1000 2003-04-01 00:00:00 3.200000 180 80000 2003-01-01 00:00:00 0.880000 365 100 2003-01-01 00:00:00 0.150000 365 0 2002-01-01 00:00:00 2.300000 354 100 2002-01-20 02:00:00 1.040000 365 1000 2003-04-01 00:00:00 1.390000 180 1000 2003-04-01 00:00:00 1.630000 365 1000 2003-04-01 00:00:00 1.880000 365 1000 2003-04-01 00:00:00 Expiration_Date 2003-02-03 00:00:00 2004-01-08 00:00:00 2006-05-01 00:00:00 2006-04-01 00:00:00 2004-01-01 00:00:00 2003-06-01 00:00:00 2005-01-01 00:00:00 2003-01-20 02:00:00 2005-04-01 00:00:00 2006-05-01 00:00:00 2006-04-01 00:00:00 2004-12-31 00:00:00
Page 34 of 55
SQL result
Host: tcbis.biz.uiowa.edu Database : bank Generation Time: Apr 11, 2003 at 03:21 PM Generated by: phpMyAdmin 2.3.3pl1 SQL-query: SELECT * FROM `mortgage` LIMIT 0, 30;
Product_ID Fixed_Mortgage 1 yes 2 yes 3 no 4 no 5 no 6 yes 7 yes 8 yes 9 no 10 no Duration 30 30 15 30 5 10 15 10 5 15 APR Point Origination_Fee Minimum_Payment Maximum_Amount Offering_Date Expiration_Date 6.095000 0.25 20.00 20.00 650000 2001-05-01 00:00:00 2005-07-01 00:00:00 5.530000 0.25 0.00 30.00 65000 0000-00-00 00:00:00 0000-00-00 00:00:00 4.304000 0.00 0.00 0.00 650000 2008-07-20 09:00:00 2004-06-20 08:00:00 4.055000 0.00 0.00 0.00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00 4.220000 0.00 0.00 0.00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00 5.350000 0.00 0.00 20.00 500000 2003-04-01 00:00:00 2004-12-31 00:00:00 5.660000 0.00 0.00 5.00 50000 2003-04-01 00:00:00 2006-12-31 00:00:00 5.900000 0.25 0.00 10.00 125000 2003-04-01 00:00:00 2003-12-31 00:00:00 4.895000 0.00 0.00 5.00 500000 2003-04-01 00:00:00 2005-04-01 00:00:00 8.055000 0.00 0.00 15.00 650000 2003-04-01 00:00:00 2005-04-01 00:00:00
Page 35 of 55
13 Screen Mockups
Page 36 of 55
Page 37 of 55
14 Testing Documentation
The goal of testing is to locate system errors before installation these system errors can take different forms including the coding errors that reduce system efficiency. For this reason the Modesto team project members designed a systematic testing procedure that covers all functions, even the ones that are certain to work. The following are the testing approaches used by the team: 1. Black box testing 2. White box testing 3. User interface testing 4. Use scenario testing 5. Security testing 1. Black box testing The test was based on checking the requirements stated on the system request in the first milestone of the project. The team crosschecked the fully developed product with functionality stated in the system request document and is proud to announce that it has completed all the promised features (except the few mentioned and discussed with the client by the members of the team).The products developed include the four different bank accounts equipped with update and add features for each one of them. The team has also ensured a secure login with user name and password features .The tests conducted by the team members on the functionality of the products were successful. 2. White box testing The code for the interactive products is coded in visual-basic andASP.net. The programmers of the project team added comments to the processes performed by the system. This is done for future readability and a guide line for the code. The coding for the interface follows the formal coding standard and has been reviewed by the members of the team. The system analyst and the programmers have conducted several sessions of code walk-through to avoid errors. Thus the team is proud to say this part of program testing was completed successfully. 3. User interface testing The user interface testing includes the following subcategories identified by the team: 3.1 The three click rule testing 3.2 The two click rule testing 3.3 Loading time testing 3.4 Query time testing 3.5 Query results testing 3.6 Product Headings 3.7 Aesthetics /consistency testing 3.8 Format Testing 3.9 User experience testing 4. Use scenario testing The use scenario testing includes the following subcategories defined by the team: 4.1 Testing results for appropriate data 4.2 Testing results for different data format 4.3 Testing results for inappropriate data 4.4 Testing results for unfilled data fields 4.5 Testing links for different areas. 5. Security testing
Page 38 of 55
The security testing for the team involved the following: 5.1 login /password security.
Page 39 of 55
Tester: subathra
Requirements Addressed: User interface/usability. Test Objective: Test conducted to check if the feasibility three mouse click rule . Data Field: NA Value Entered: NA
Expected Result: A test conducted to check if the user is able to navigate from main page to any action within three mouse clicks for all the products offered by the team.
Observed Result : The team members were able to navigate from main page to any action within three mouse clicks
Page 40 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to check if the two mouse click rule is plausible. Data Field: NA Value Entered: NA
Expected Result: Test conducted to check if the user could navigate from sub menu to any action within two mouse clicks for all the products offered by the team.
Observed Result: The team was able to navigate from sub menu to any action within two mouse clicks for all the products.
Page 41 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to record the time taken for each page to load. Data Field: Login and password field. Navigation among different products. Value Entered: Login id and password. Mouse clicks.
Expected Result: Except for the login page (which accesses a data base to cross check for the login and password) all the other products take a very minimum time of two seconds to load.
Observed Result: The observed result was same as the expected result.
Page 42 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to record the time to run a query using update, for each product. Data Field: Update link. Show-all link. Value Entered: Mouse clicks. Mouse clicks. features
Expected Result: The results are expected to appear within two seconds of clicking the mouse .This applies to the most complicated query.
Observed Result: The observed result was same as the expected result.
Page 43 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to crosscheck the readability of the query and the information provided by the query results of each product. Data Field: Update link. Show-all link. Value Entered: Mouse clicks. Mouse clicks.
Expected Result: The fields of the query results are expected to be user friendly and the results of the query are expected to carry the most recent information.
Observed Result: The observed result was same as the expected result.
Page 44 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to crosscheck the headings in each product for user-friendly names. Data Field: Update link. Show-all link. Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks Mouse clicks. Mouse clicks Mouse clicks. Mouse clicks Mouse clicks.
Expected Result: The column names for each product is expected to have every word separated by an underscore for example (First_Name).This naming convention is used to enable the users to understand the various the functionality of various fields in each product.
Observed Result: The observed result was same as the expected result.
Page 45 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted for the aesthetics feature of each product. Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks.
Expected Result: All the products are required to be consistent in appearance and a trade off between the loading time and aesthetics is considered for all the products developed by the team.
Observed Result: The lodging time for all the pages were very minimal except the login page ( which was required to cross check data between a database and user entered values)
Page 46 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to explain the format of entry in each data field for the users Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. Data. Data. Data. Data. Data. Data.
Expected Result: The interface is expected to balance the requirement of both the novice and experienced users by displaying the format for entry of data in all the products.
Observed Result: The interface developed by the team displayed the format for entry of data in each field in all the products
Page 47 of 55
Tester: subathra
Requirements Addressed: User interface/usability Test Objective: Test conducted to crosscheck between user experience and the interface development for each product. Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks. Mouse clicks.
Expected Result: The interface is expected to balance the requirement of both the novice and experienced users.
Observed Result: The observed result was same as the expected result.
Page 48 of 55
Tester: subathra
Test Objective: Test conducted to explain the result of data entry when a correct format of data entry was used Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. Data. Data. Data. Data. Data. Data.
Expected Result: The interface is expected to use the data ( in the correct format only)provided by the users and produce appropriate result to let the user know the changes that were made.
Observed Result: The interface produced a message confirming the entry of a new product after processing the data provided by the users.
Page 49 of 55
Tester: subathra
Test Objective: Test conducted to explain the result of data entry when an incorrect format of data was used. Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. 5/89/2005 5/89/2005 5/89/2005 5/89/2005 5/89/2005 5/89/2005
Expected Result: The interface is expected to let the user know the correct data format ( in add new product section only) for each field in an eye-catching font color.
Observed Result: The interface produced a error message requesting data entry in the special format
Page 50 of 55
Tester: subathra
Test Objective: Test conducted to explain the result of data entry when an inappropriate data was used. Data Field: Login page. Money market page Mortgage page(APR)) Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. 5/89/2005 5/89/2005 5/89/2005 5/89/2005
Expected Result: The add feature is expected to request the user for appropriate data whereas the update method is not fully equipped to handle this kind of situation .The team has decided to incorporate this feature in the future versions of the project
Observed Result: the observed result was same as the expected result
Page 51 of 55
Tester : subathra
Test Objective: Test conducted to check the behavior of the interface when a unfilled or partially field form is submitted Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page. Update field New product Value Entered: Respective passwords. Data. Data. Data. Data. Data. Data.
Expected Result: The interface is expected to request the users to fill in all the data before submitting the form.
Observed Result : A message appeared requesting the users to fill all the data fields
Page 52 of 55
Tester: subathra
Test Objective: Test conducted to check the links for different products form a single product Data Field: Login page. Money market page Mortgage page Certificate of deposit page Credit card page Update field New product . Expected Result: The interface is expected to request the users to fill in all the data before submitting the form. Value Entered: Mouse click Mouse click Mouse click Mouse click Mouse click Mouse click Mouse click
Observed Result : A message appeared requesting the users to fill all the data fields
Page 53 of 55
Tester: subathra
Requirements Addressed: Security features. Test Objective: Test conducted to check the special features offered only to managers Data Field: Login/password Login /password Login /password Login /password Login /password Value Entered Wuewiueow Wieiowioqeuoi 29893982398 null kdhhfh .
Expected Result: Different sets of permissions are granted based on the user id. Senior mangers are allowed to view and make changes to the fields of the products whereas some managers are granted permission only to view the products.
Observed Result: The observed result was same as the expected result when the user id matched the senior manager or manager.
Page 54 of 55
15 Potential Improvements
The following functions could be improved in the current information system as future enhancements: 1. Security. In the current system, even if a user should login with an appropriate username and password in order to get into the bank intranet site, the site is not completely secure. For instance, if a user copies and pastes the url of one of the manager pages, she/he can go to the same page without login. This problem should be prevented with using cookies or session variables. 2. Data validation In the current system there is data validation for numeric and date fields for all adding pages, but not for the updating pages. Data validation should be added throughout for all the updating pages in case a user makes a mistake during the updating process. 3. Page Index Function If there is the page index function in the table view page, the search from dropdown menu does not behave appropriately. For instance, when a user views the all product and goes to the second page, a user can not select any other options from dropdown box. With this problem, the page index function was removed from the current system. 4. Sort Function For the column-by sort function, we had to select the exact same table column names as the database. If we named the column name differently for user friendly purpose, the column-by sort does not function appropriately.
Page 55 of 55