Obj 3
Obj 3
CBS1005
24 Slot : L43+L44
UML Diagrams:-
1. Class Diagram
2. Object Diagram
4. State Diagram
5. Sequence Diagram
6. Activity Diagram
7. Deployment Diagram
1. Level 0 Diagram
2. Level 1 Diagram
3. Screen Design
DB Design:-
1. ER Model
UML Diagrams:-
1. Class Diagram
2. Object Diagram
3. Use Case Diagram
4. State Diagram
5. Sequence Diagram
6. Activity Diagram
7. Deployment Diagram
Data Flow Diagram (DFD) and UI/UX design:-
1. Level 0 Diagram
2. Level 1 Diagram
3. Screen Design
DB Design:-
1. ER Model
Online Banking System
Software Requirements Specification (SRS)
Version- 2.0
1.1 Introduction
1.2 Scope
1.3 Purpose
1.4 Objective
1.4 Acronym / Abbreviation / Definition
1.5 Description
2. Chapter 2
2.1 Functional
2.1 Non-Functional
3. Chapter 3
3.1 User Interface
3.2 External Interface
3.3 Logical Database Requirements
3.4 Additional Requirement
3.4.1 System Interfaces
3.4.2 System Security
4. Chapter 4
4.1 Quality
4.2 Constraints
4.3 Other Requirements
4.4 Assumptions and Dependency
5. Chapter 5
5.1 Change History
5.2 Document approves
5.3 References
5.4 Appendix
CHAPTER 1
1.1 Introduction
The evolution of Online Banking Systems (OBS) has been driven by the quest for heightened security,
accelerated operations, and enriched user encounters within the contemporary banking and financial
management landscape. This document outlines the essential features and functionalities of an innovative
OBS, seamlessly integrating cutting-edge blockchain technology and a revolutionary consolidation of diverse
bank accounts into a singular interface.
The adoption of blockchain technology holds the potential to introduce unprecedented levels of security,
transparency, and data integrity to financial systems. By harnessing the centralized and tamper-proof attributes
of blockchain, this advanced OBS aspires to furnish users with a resilient and reliable platform for adeptly
managing their financial holdings, The specifications hasa transformative leap towards simplicity and
efficiency, enabling users to effortlessly merge accounts from disparate banks. This streamlined process
eliminates the complexities of managing multiple interfaces and login credentials.
Within this documentation, an intricate exploration of this advanced OBS is undertaken. This encompasses
elements such as user validation, algorithms for seamless account consolidation, blockchain integration for
heightened security, measures to safeguard data privacy, and the blueprint for an intuitive user interface. In
handling with these stipulations, the advanced OBS strives to redefine individuals interactions with their
financial matters. Ultimately, it aims to furnish a secure, user-friendly, and comprehensive banking experience
that adeptly caters to the ever-evolving requisites of modern consumers.
1.2 Scope
The online banking system will cross a range of functionalities, including user verification, account
administration, fund transfers, bill setlements, transaction records, and account notifications.
The scope of this Software Requirements Specification (SRS) involves the creation of an advanced online
banking system that incorporates cutting-edge blockchain technology for heightened security measures.
Moreover, it inculcates a centralized mechanism to efficiently collect account info from various banks. The
system aims to offer users a secure, user-friendly platform for diverse financial activities like managing
accounts, transferring funds, making payments, and setting budgets. With the introduction of blockchain, the
system strives to ensure the credibility and consistency of transaction data. Simultaeously, the centralized data
aggregation feature empowers users to seamlessly access and monitor finanial information from multiple bank
accounts via a single dashboard. Aditional components comprise biometric authentication, predictive analytics
for personalized financial insights, and sophisticated fraud detection mechanisms, all contributing to a secure
and streamlined banking experience for users.
The central focus of this project revolves around developing an open-source banking solution to replace the
existing, more expensive banking software. Manual banking operations like account creation, deposits,
withdrawals, and issuing checkbooks will be automated by the OBS, which could substantially decreasing
annual software costs for banks.
This project, built upon Open Source License technologies, eliminates the need for expensive banking
software, promoting feasbility through expert modifications as required. The solution adopts a Centralized
Banking concept, utilizing a user-friendly GUI to connect to the main database server for updating and
retrieving customer data, as well as managing bank employees.
The e-Banking Solution focuses on customers, enabling them to perform various tasks such as blocking
checks, transferring funds, requesting checkbooks, and view account statements online. The incorporation of
Blockchain technology ensures the highest level of security for transactions and authorizations.
Unifying online banking systems from different banks into a unified platform provides users with a
straightforward and secure means to access their information, reducing the need to visit physical branches
repeatedly. Customers will no longer be confined to a single branch; instead, they will be embraced as
'Customers of the Bank - No Geographical Limits.'
1.3 Purpose
The objective of this document, the Software Requirements Specification (SRS), is to furnish a comprehensive
outline of the prerequisites essential for the development of an advanced online banking system. This platform
empowers users to securely and effectively engage in a spectrum of banking activities. Not only does this SRS
serve as a critical resource for developers, testers, project managers, and stakeholders intricately engaged in
the system's conception, design, development, and quality assurance, but it also stands as a blueprint outlining
the system's purpose, characteristics, interfaces, functional scope, operational constraints, and responses to
external triggers.
Designed to be accessible and informative to both stakeholders and system developers, the SRS carries the
pivotal responsibility of gaining the endorsement or dismissal of the project within the banking community. Its
multifaceted role encompasses clarifying the system's intended functionalities, expounding on the
environment within which it will operate, and elucidating how it will harmonize with external inputs.
1.4 Objective:
The aim of the Online Banking System (OBS) project, which incorporates blockchain technology and a
Unified Banking Solution is to bring about a transformation in the banking and financial sector. The core
objectives of this project are as follows:
1.Advanced Security: The implementation of blockchain technology is aimed at ensuring the highest levels
of security and data integrity for all financial transactions and customer data. The primary goal is to protect
customer assets and information from cyber threats and unauthorized access.
2. User-Friendly Experience: Creating a user-friendly UI and intuitive interface is vital to simplify financial
interactions for customers. The objective is to make it easy for users to manage their accounts, conduct
transactions, and access a wide range of financial services from a single platform.
3. Unified Banking Model: The creation of a centralized mechanism (UBS) for efficiently managing account
information from various banks empowers users to access and monitor their financial data from multiple bank
accounts through a unified dashboard. This eliminates the need for multiple logins and interfaces.
4. Cost Efficiency: The project focuses to reduce operational costs for banks by automating manual banking
operations such as account creation, deposits, withdrawals, and checkbook issuance through the OBS. The
goal is to provide a cost-effective alternative to traditional banking software.
5. Security and Compliance: Ensuring compliance with industry regulations, including Know Your
Customer (KYC) and data protection laws (e.g., GDPR), is a top priority. The objective is to maintain a high
level of security and adhere to regulatory requirements within the OBS.
6. Transparent Transactions: Utilizing blockchain technology enables the provision of transparent and
tamper-proof transaction records, fostering trust and credibility in financial transactions.
UX: User Experience - The quality of the user's interaction with the software, encompassing usability,
efficiency, and satisfaction.
1.5 Description
The Online Banking System (OBS) is a digital platform revolutionizing financial engagement, enabling users,
known as bank customers, to manage accounts, conduct transactions, and access financial services through
digital avenues.
OBS comprises two important components: the Core Banking Solution (CBS) and the e-Banking Solution
(EBS).
The Unified Banking Solution (UBS) serves as OBS's backbone, centrally managing banking operations,
customer data, and transactions. It streamlines tasks like account setup, deposits, withdrawals, fund transfers,
and essential services for bank employees. UBS boosts collaboration among bank departments, refining
internal processes and efficiency.
Conversely, the e-Banking Solution (EBS) empowers customers to remotely manage diverse financial tasks
via internet-connected devices. EBS features a user-friendly interface, allowing customers to check balances,
view transaction history, transfer funds, settle bills, and engage in investments within their digital domain.
Security and data integrity are inbuilt in OBS, integrating modern technologies such as blockchain, multi-
factor authentication, and predictive analytics. This ensures secure, transparent, full-proof transactions,
curbing unauthorized access and fraud.
Prioritizing user experience (UX), OBS development.. focuses on intuitive interfaces (UI) and user-friendly
designs for seamless and enjoyable banking. OBS tailors experiences with budgeting tools, financial insights,
and alerts, empowering effective financial management.
CHAPTER 2
2.1 Functional Requirements
User Authentication and Authorization
- Users must be able to register and log in securely using multi-factor authentication (MFA), including
biometric authentication (fingerprint and facial recognition).
- Adaptive Authentication: Implement adaptive MFA that assesses risk levels and prompts additional
authentication if suspicious activity is detected.
- User roles and permissions must be defined for different levels of access.
Blockchain Security
- All transactions and sensitive user data must be stored on a blockchain for enhanced security and
transparency.
- Utilze smart contracts to automate and validate predefined transaction conditions, reducing the need for
intermediaries.
- Implement cryptographic hashing and consensus mechanisms to ensure data integrity.
-Decentralized Ledger: Implement a distributed ledger for recording transactions, ensuring immutability and
reducing the risk of tampering.
Centralized Account Data Integration
- Users should be able to link and view data from multiple bank accounts on a single dashboard.
- Real-time synchronization of account data should occur to provide accurate financial insights.
- Categorize and consolidate transactions across different accounts for easy tracking.
Fund Transfers and Payments
- Users must be able to perform real-time fund transfers between their linked accounts.
- Implement secure payment gateways for bill payments and purchases.
Personal Financial Management
- Utilize AI-powered predictive analytics to forecast spending patterns and provide budgeting
recommendations.
- Offer personalized financial insights and recommendations based on user's historical data.
Document Management with Blockchain
- Allow users to upload and securely store sensitive documents on the blockchain.
- Implement permission control to grant temporary access to specific documents for third parties.
Fraud Detection and Prevention
- Implement machine learning algorithms to detect and alert users about unusual transaction activities.
- Utilize behavioral analytics to identify potentially fraudulent behavior.
Account Alerts and Notifications
- Users can set account alerts for low balance, large transactions, and other custom notifications.
- Notifications can be delivered via email and SMS.
Operating Environment
- Web Browser (Chrome, Firefox, Safari, Edge).
- Web servers (Apache, Nginx).
- Database Management Systems (MySQL, PostgreSQL).
- Programming languages (Java, JavaScript).
5.4 Appendix
Bank: A financial institution that offers various financial services, including deposits, loans, and
investments.
Core Banking Solution (CBS): A centralized software system used by banks to manage core
operations like account management and transactions.
e-Banking Solution (EBS): An electronic platform that enables customers to conduct banking
activities online.
User: An individual who interacts with the OBS for banking transactions and account management.
Payment Gateways: Third-party services used to process online transactions, including funds
transfers and bill payments.
Email and SMS Gateways: External services integrated to send notifications and alerts to users via
email and SMS.
Server Hardware: Specifications for the server infrastructure required to host the OBS application
and databases..
Encryption: Techniques used to protect sensitive data from unauthorized access by converting it into a
secure code.
Authentication: Methods to verify the identity of users accessing the system.
Authorization: Mechanisms to control user access to specific functionalities and data within the OBS.
---------------------------------------------------------------------------------------------------------------------
Table of Contents
1. Introduction
a. Purpose
b. Scope
2. Test Objectives
a. Functional Testing
b. Security Testing
c. Usability Testing
d. Performance Testing
e. User Acceptance Testing
3. Test Strategy
a. Test Phases
b. Entry and Exit Criteria
c. Test Approach
d. Automation Strategy
4. Test Scenarios and Test Cases
a. Admin Functionality
b. Customer & Visitor Operations
c. New User Creation
d. Database Testing
e. Security Testing
f. Usability Testing
g. Performance Testing
h. User Acceptance Testing
5. Test Environment
a. Hardware
b. Software
c. Network
6. Roles and Responsibilities
a. Test Team
b. Development Team
c. Business Stakeholders
7. Test Deliverables
a. Test Plan Document
b. Test Cases
c. Test Data
d. Test Reports
e. Defect Reports
8. Schedule and Milestones
a. Test Milestones
b. Test Schedule
9. Risks and Contingencies
10. Approvals
1.Introduction
1.1 Purpose
The purpose of this test plan is to provide a structured approach and guidelines for testing the
Online Banking System of Fusion Bank. It outlines the strategy, objectives, and
methodologies to ensure the quality and reliability of the software. By following this test plan,
the testing team aims to validate that the Online Banking System functions as expected, meets
security standards, and provides a user-friendly experience.
1.2 Scope
The scope of this test plan covers the entire Online Banking System developed for Fusion
Bank. This includes all the features and functionalities specified in the software requirement
specifications (SRS). It encompasses the admin functionality, customer operations, security
measures, performance benchmarks, and user acceptance. The scope also includes various
types of testing such as functional testing, security testing, usability testing, performance
testing, and user acceptance testing.
2. Test Objectives
2.1 Functional Testing
Objective: The primary objective of functional testing is to ensure that the Online Banking
System's core functionalities perform as expected and align with the specified requirements.
This includes validating all features and operations listed in the SRS.
Specific Test Objectives:
- Verify that account management functions, such as account creation, updates, and deletions,
work accurately for both customers and bank managers.
- Confirm the proper execution of fund transfer operations, covering internal and external
transfers.
- Validate the accuracy of transaction history and mini-statements for accounts.
- Test the functionality of customized statements, ensuring users can filter and view
transactions based on criteria.
- Assess the security and usability aspects of password change functionality.
- Confirm that both customer and bank manager login processes operate smoothly, including
validation of valid and invalid login attempts.
- Ensure that the system can handle errors and exceptions effectively, providing informative
error messages to users.
d. Automation Strategy
Automation Strategy:
Automation will be primarily used for regression testing to ensure that new code
changes do not impact existing functionality.
Test automation tools and frameworks will be selected based on their compatibility with
the Online Banking System's technology stack.
Automated test scripts will be designed to cover critical and frequently executed test
cases.The focus of test automation will be on functional, integration, and API testing.
Continuous integration and continuous testing practices will be employed to automate
test execution in alignment with code changes.
A combination of data-driven and keyword-driven automation approaches will be used
to improve maintainability and efficiency.
4. Test Scenarios and Test Cases
a. Admin Functionality
Test Scenarios:
1. Admin Login: Verify that the admin can successfully log in with valid credentials.
2. Invalid Admin Login: Ensure the admin receives an error message when attempting to log
in with invalid credentials.
3. Empty Admin Login: Verify that the system prompts the admin for all required login
information.
4. Admin Navigation: Confirm that all admin dashboard links and features are accessible and
functioning correctly.
5. Change Admin Password: Validate that the admin can change their password with valid and
invalid data.
6. Empty Password Change: Ensure that the system requests all necessary data when changing
the admin password.
7. Password Change with Existing Data: Verify that the system rejects a password change
request with an existing password.
8. Admin Logout: Confirm that the admin can successfully log out of the system.
d. Database Testing
Test Scenarios:
1. Data Organization: Verify that data is logically organized in the database.
2. Data Types: Check that data types in the database match the specified requirements.
3. Field Lengths: Confirm that field lengths in the database match the defined limits.
4. Computed Fields: Verify that computed fields like Date of Birth (DoB) and Age are
calculated correctly.
5. Naming Conventions: Ensure that naming conventions for tables, columns, and indexes are
uniform.
6. Data Integrity: Confirm that data is stored in the correct columns and tables.
7. Key Constraints: Validate that primary key and foreign key constraints are implemented.
8. Redundant Data: Check for and eliminate redundant and duplicate data.
9. Null Values: Verify that the system handles null values appropriately.
10. Data Security: Ensure data access is restricted to authorized users only.
11. Rollback on Failure: Confirm that the system performs data rollback in the event of a
failure.
12. Database Performance: Assess database performance under load.
d. Security Testing
Test Scenarios:
1. User Authentication: Verify that the application properly authenticates users, including the
use of CAPTCHA.
2. Invalid Logins: Ensure multiple invalid login attempts are handled securely.
3. Password Policies: Confirm that the application enforces strong password policies.
4. Data Encryption: Validate that user IDs and passwords are encrypted.
5. Secure Protocol: Ensure the application uses a secure protocol (e.g., HTTPS).
6. Sensitive Information: Check for the display of sensitive information in an encrypted form.
7. Input Validation: Verify that input validation is performed on the server side to prevent
security vulnerabilities.
8. Session Timeout: Confirm that the application logs out users after a period of inactivity.
9. Browser Back Button: Ensure the "Back" button of the browser is disabled for certain
pages.
10. URL Security: Verify that URLs do not expose sensitive information.
11. Injection Testing: Test for SQL, XML, HTTP header, HTTP parameter, XPath, and
regular expression injections.
e. Usability Testing
Test Scenarios:
1. User Navigation: Verify that users can navigate through the application smoothly.
2. Consistent Design: Confirm that buttons, links, fonts, colors, and sizes are uniform
throughout the application.
3. Critical Message Visibility: Validate that important messages and buttons are clearly visible
and easy to understand.
4. Error Messages: Ensure error messages are easy to understand and provide clear guidance.
5. Field Tooltips: Verify that important fields have placeholders and tooltips for user guidance.
6. Page Titles: Check that each page has a title.
7. Link and Button Text: Confirm that links and buttons have text that is easy to understand.
g. Performance Testing
Test Scenarios:
1. Concurrent User Testing: Test application performance under concurrent user load.
2. Transaction Load Testing: Assess the application's performance during peak transaction
loads.
3. Low Network Connectivity: Simulate low network connectivity to test the application's
response.
4. No Network Connectivity: Test the application's behavior when there is no network
connection.
5. Fluctuating Network: Verify how the application performs with fluctuating network speeds.
6. Battery Low Mode: Test the application's performance when the device's battery is low.
7. Battery High Mode: Check the application's performance when the device's battery is fully
charged.
8. Battery Charging: Verify how the application behaves while the device is charging.
9. Ongoing Transactions: Test the application's performance during ongoing transactions with
interruptions.
5. Test Environment
a. Hardware
The testing environment requires the following hardware components:
1. Server Hardware:
- Database Server: A powerful server to host the database, with sufficient CPU, RAM, and
storage to handle data processing.
- Web Server: A dedicated web server with the necessary resources to serve the banking
application to users.
2. Client Hardware:
- Computers for Testers: At least four computers with the following specifications:
- Operating System: Windows 11 or above
- RAM: Minimum 2GB
- CPU: Minimum 3.4 GHz
b. Software
The testing environment relies on specific software components, including:
1. Operating Systems:
- Database Server OS: The operating system required for the database server (e.g., Linux or
Windows Server).
- Web Server OS: The operating system required for the web server (e.g., Linux or Windows
Server).
- Client OS: Windows 11 or above on tester machines.
2. Database Software:
- Database Management System: A relational database management system (e.g., MySQL)
to store and manage banking data.
3. Web Server Software:
- Web Server Software: (e.g., Apache) to serve the banking application to users.
4. Test Automation Tools:
- Test Tool: A custom test tool for generating test results and automating test execution.
5. Network Setup:
- Local Area Network (LAN): A Gigabit LAN for internal testing communication.
- Internet Connection: At least one internet line with a minimum speed of 5 Mb/s for
accessing external resources during testing.
6. Documentation Software:
- Documentation tools like Microsoft Office 2021 and above for creating reference
documents, configuration guides, installation guides, user manuals, and other documentation
required for testing.
c. Network
The test environment's network setup includes:
1. Local Area Network (LAN):
- A local area network (LAN) with Gigabit connectivity to facilitate internal communication
between testing machines.
2. Internet Connection:
- At least one internet line with a minimum speed of 5 Mb/s to ensure testers can access
external resources and simulate real-world network conditions during testing.
The network setup is essential for testing the application's performance, network resilience,
and connectivity aspects.
The combination of the specified hardware, software, and network resources ensures a
comprehensive and effective testing environment for the Online Banking System.
6. Roles and Responsibilities
Successful testing requires collaboration and well-defined roles for various stakeholders
involved in the project. The roles and responsibilities are divided among the Test Team,
Development Team, and Business Stakeholders to ensure effective testing and quality
assurance.
a. Test Team
1. Test Manager:
- Role: The Test Manager is responsible for overseeing the entire testing effort. This
includes defining the testing strategy, managing resources, and ensuring that testing objectives
are met.
- Responsibilities:
- Define the testing strategy and approach.
- Acquire appropriate testing resources.
- Manage the testing schedule and budget.
- Monitor and report on testing progress.
- Coordinate defect management and resolution.
2. Test Designers:
- Role: Test Designers are responsible for creating detailed test cases based on the project's
requirements and specifications.
- Responsibilities:
- Develop test cases, test scenarios, and test data.
- Ensure test cases cover all required functionalities.
- Collaborate with the development team to clarify requirements.
3. Testers:
- Role: Testers execute test cases to identify defects and ensure the system's quality.
- Responsibilities:
- Execute test cases and document results.
- Report defects and issues.
- Collaborate with the development team for defect resolution.
4. Test Administrators:
- Role: Test Administrators are responsible for setting up and maintaining the test
environment and managing test assets.
- Responsibilities:
- Configure and maintain the test environment.
- Support testers in using the test environment.
- Ensure test assets are accessible and up to date.
b. Development Team
1. Developers:
- Role: Developers are responsible for building and maintaining the Online Banking System.
- Responsibilities:
- Develop and implement system features.
- Collaborate with the test team to clarify requirements and resolve defects.
c. Business Stakeholders
1. Business Analysts:
- Role: Business Analysts act as a bridge between business stakeholders and the
development team, ensuring that requirements are understood and documented.
- Responsibilities:
- Gather and document business requirements.
- Clarify requirements and functionalities as needed.
2. Project Managers:
- Role: Project Managers oversee the overall project, ensuring that it aligns with business
goals and objectives.
- Responsibilities:
- Define project goals and objectives.
- Manage project resources and timelines.
- Ensure project success and alignment with business goals.
3. End Users (Customers):
- Role: End Users represent the customers who will ultimately use the Online Banking
System.
- Responsibilities:
- Provide feedback during User Acceptance Testing.
- Validate the system's usability and functionality.
Effective communication and collaboration among these roles are essential for the successful
testing and delivery of the Online Banking System. Each stakeholder plays a crucial part in
ensuring that the system meets business requirements and user expectations.
7. Test Deliverables
The test deliverables encompass various documents and artifacts generated throughout the
testing process. These deliverables serve as crucial resources for understanding, executing, and
reporting on the testing activities. Here is a breakdown of the key test deliverables:
a. Test Plan Document
The Test Plan Document outlines the overall testing strategy, including objectives, scope,
methodologies, responsibilities, schedules, and other essential details for conducting testing on
the Online Banking System.
b. Test Cases
Test Cases are detailed sets of instructions that describe the steps to be executed during
testing. They include expected outcomes and criteria for pass/fail. Test cases are organized by
test scenarios, ensuring comprehensive coverage of the application's functionalities.
c. Test Data
Test Data includes the data sets required to execute test cases. It encompasses both valid and
invalid data, covering a range of scenarios to validate the system's behavior under different
conditions. This data ensures thorough testing of the application.
d. Test Reports
Test Reports are comprehensive documents that summarize the results of testing activities.
These reports include detailed information about test execution, pass/fail status, deviations
from expected results, and any anomalies encountered during testing. Test reports serve as a
vital source of information for stakeholders.
e. Defect Reports
Defect Reports document any issues or defects identified during testing. Each report includes
information about the defect's severity, priority, steps to reproduce, and a description of the
problem. Defect reports facilitate communication between the testing team and the
development team for issue resolution.
These test deliverables are essential for effective testing, ensuring that the Online Banking
System is thoroughly assessed for functionality, security, usability, performance, and user
acceptance. They provide a comprehensive record of the testing process and its outcomes,
helping stakeholders make informed decisions and take corrective actions as necessary.
2. Test Design Milestone (Milestone Date: [Insert Date]): At this point, all test cases,
scenarios, and test data will be designed and documented.
3. Test Execution Milestone (Milestone Date: [Insert Date]): This milestone signifies the
beginning of test execution, where the actual testing of the Online Banking System
commences.
4. Defect Reporting Milestone (Milestone Date: [Insert Date]): As defects are identified during
testing, this milestone is reached when all defects have been reported and logged.
5. Test Closure Milestone (Milestone Date: [Insert Date]): This marks the end of testing
activities, where the testing team evaluates the overall results, and test deliverables are
finalized.
b. Test Schedule
The testing schedule outlines the estimated start and end dates for each testing phase,
providing a clear timeline for the testing process:
- Test Planning Phase: [Start Date] - [End Date]
- Test Design Phase: [Start Date] - [End Date]
- Test Execution Phase: [Start Date] - [End Date]
- Defect Reporting and Resolution Phase: [Start Date] - [End Date]
- Test Closure Phase: [Start Date] - [End Date]
Test Case ID BU_001 Test Case Description Test the Login Functionality in Banking
Created By Mark Reviewed By Bill Version
Test Verify on entering valid userid and password, the customer can login
Scenario