T-76.4115 Implementation I
Presentation
braZilPayment Framework
12.12.200718:00 – 19:00
PaymentFramework presentationPaymentFramework presentation
2
Project status (15 min) achieving the goals of the iteration project metrics
Work results (20 min) presenting the iteration’s results documents
Used work practices (6 min) Questions (6 min)
Presentation agenda
PaymentFramework presentationPaymentFramework presentation
3
Project Status
Introduction
Goals of first implementation phase
Some metrics
PaymentFramework presentationPaymentFramework presentation
4
Payment Framework for Mobirox Ltd. Simple payment interface Multiple content providers Hides payment
method complexities Multiple payment
methodso SMSo Online credit cardo Online bank
Introduction to the project
Internet
Service 1
Service 2
System administrator
Payment Framework
Bank
Credit card
SMS
Service provider
SMS Operator
PaymentFramework presentationPaymentFramework presentation
5
General goalso Deliverables ready in time o Project team motivated, workload equally divided o Defined working practices are followed
Product Transactions
o Online bank payments go through the framework o Online credit card payments go through the frameworko SMS-payments go through the framework
Interfaceso System administrator can add basic system information to framework o Browse through the transactionso Alter the status of the transaction and mark transaction as cancelledo Add, alter and remove basic information of the content providers
Dataflowo Framework recognizes invalid messages and saves them to error log
Rightso Restrict the content providers’ rights to use the framework.
Goals
Done more than necessary
PaymentFramework presentationPaymentFramework presentation
6
All the deliverables delivered in timeo Internal review process -> followed as defined o Customer approvement -> followed as definedo Delivered -> in time
Deliverableso Iteration plano SE process descriptiono Project plano Requirements documentationo Quality Assurance documentation and reportso Test logs and test case listso Risk documentation and risk listso SEPA-documentationo Technical Specificationo Demo product and documentation (at this point javadocs)o Presentation slides
Deliverables
PaymentFramework presentationPaymentFramework presentation
7
Task efforts (1/4)
PaymentFramework presentationPaymentFramework presentation
8
Task efforts (2/4)
PaymentFramework presentationPaymentFramework presentation
9
Task efforts (3/4)
PaymentFramework presentationPaymentFramework presentation
10
Task efforts (4/4)
PaymentFramework presentationPaymentFramework presentation
11
Task efforts (4/4)
PaymentFramework presentationPaymentFramework presentation
12
Other work
PaymentFramework presentationPaymentFramework presentation
13
Task efforts (4/4)
PaymentFramework presentationPaymentFramework presentation
14
Team efforts in Implementation 1
PaymentFramework presentationPaymentFramework presentation
15
Effort burn down graph
PaymentFramework presentationPaymentFramework presentation
16
Team effort plan for final Iteration
PaymentFramework presentationPaymentFramework presentation
17
Team effort plan for final Iteration
PaymentFramework presentationPaymentFramework presentation
18
Effort used - worktypes
PaymentFramework presentationPaymentFramework presentation
19
Quality AssurancePart of the system Quality
statusConfidence
Comments
Content Provider Interface
Testing has been concentrated on this interface. No major critical defects. Positive tests pass negative cases are recognized but error handling need to be improved.
UI System admin The UI implementation is still ongoing. Tested once early in implementation all tests failed. The status is supposed to be higher at this point, ready for new test run.
UI Generic The UI implementation is still ongoing. Tested once early in implementation all tests failed. The status is supposed to be higher at this point, ready for new test run.
UI Content Provider Area is not implemented
UI Reports Area is not implemented
SMS Connectivity No testing has been done yet because the implementation was in progress during test run I, now ready for testing. End-to-end testing with real devices is not in scope of this project.
Bank Payment Test cases are run to OP and Nordea. The amount of tested values needs to be higher in the next test run. Production tests must be done before production use. This is not in the scope of this project.
Credit Card Payment Indication is that this is working, and no major issues are found. Testing account wasn't available during test run I, will be available in the beginning of iteration II.
Persistence Layer Session handling and it’s relation to persistence layer is known to have a defect that needs to be solved. Widely used and relatively mature frameworks are being used so even with little testing the confidence is at good level.
Business Logic Generic The money calculations and transaction handling have not been tested enough. More implementation and testing are required especially on state changes. Also some of the implementation is still missing.
Decent – Poor - Bad
PaymentFramework presentationPaymentFramework presentation
20
Metrics (1/2)
Blockers Critical Major Minor Trivial TotalReported in Iteration I
1 7 7 2 1 18
Open 0 1 3 1 0 5
• Defects
• All the blocker and critical level bugs were related to administrator UI.
• The blocker lever defect prevented adding new content providers to the system. Without this feature the system is useless.
• The critical level defects consists a set of administrative functions performed in the administrator UI (for example: adding pricing model, basic information etc..)
• The reason for this is that the UI was still under construction when the first test run was executed
• There would have been a bigger amount of defects if all test cases would have been run
• Most of the defects would probably have been related to incorrect exception handling
PaymentFramework presentationPaymentFramework presentation
Metrics (1/2)• LOC
PP I1
HAR –project (NCLOC / COM) 0/0 1042/???
WEB –project (NCLOC / COM) 0/0 1293/???
EJB –project (NCLOC / COM) 0/0 1113/???
Total (NCLOC) 0 3448
Total (COM) 0 ???
NCLOC is used to represent a non-commented source line of codeCOM is used to represent a commented line of code (currently we have no software to measure this)
PaymentFramework presentationPaymentFramework presentation
Evaluation of the quality goals
Goal Priority Measurement Evaluation
Produced software implements the specified functionality
1(was 3)
• The functionality described in the use cases is possible to execute
• Some parts of the system (test run II) passed the positive test and the described functionality is possible to excecute. This doesn’t appy to whole software and more tests need to be executed
Correctness in money transactions
2(was 1)
• Valid transactions are:• processed and stored correctly in any situation• not lost•calculated according to specification on each report
• Transactions are processed and stored correctly – tested• According to run test all correct payment request are saved by the system, more testing needed• Reporting functionality is not yet implemented
Interfaces are not prone for security breaches
3(was 2)
• False information is not accepted• All system interfaces need an authentication that is not trivial to circumvent• Any information publicly visible is not usable as such• Elementary misinformation input cannot do harm in the system
• According to test false and/or elementary misinformation information is not accepted by the system – altough errors are handled incorrectly• The authentication used is similar to what is used by banks and Luottokunta• All publicly visible information is not usable as such because a MAC id is needed to be able to use the information
The software is not prone to failures
4 • The application can recover from error situations related to transaction processing
• This are is not tested
PaymentFramework presentationPaymentFramework presentation
23
Changes in the project Challenges In SMS
o MO / MTo Different interfaces (Sonera vs. Others)
Quality objectives were changedo Customer changed quality objectives in the end of iteration Io More implemented functionality over full test coverage Testing
effort is used to test case based testingo Other planned testing will be done during this project if there are
enough resources or by customer after the project using the planned QA practises foun from the QA plan
PaymentFramework presentationPaymentFramework presentation
24
Risks in the project
1. Unusable system/product
2. Internal DL’s are not met
3. Selected tecniques are inadequate
4. CR process is not working as documented
5. Important information is not spread between the group and the customer
Impa
ct
2
High risk area
1
3
4
5
PaymentFramework presentationPaymentFramework presentation
25
Results of Implementation I
Producto Demo ( demo –script) o Functionalitieso User Interfaceo Tech-Spec
Architecture QA plan (implemented Usecases)
PaymentFramework presentationPaymentFramework presentation
DEMO
26
PaymentFramework presentationPaymentFramework presentation
FUNCTIONALITIES
27
PaymentFramework presentationPaymentFramework presentation
UI
28
Mobirox – Payment Framework Administration
Luottokunta Current MAC key: BBIP87654321/AB12C MAC key valid until: 30.11.2007 24:00 New MAC key: BBIP12345678/AB12C
Nordea Current MAC key: BBIP87654321/AB12C MAC key valid until: 30.11.2007 24:00 New MAC key: BBIP12345678/AB12C
Sampo Current MAC key: BBIP87654321/AB12C MAC key valid until: 30.11.2007 24:00 New MAC key: BBIP12345678/AB12C
OP Current MAC key: BBIP87654321/AB12C MAC key valid until: 30.11.2007 24:00 New MAC key: BBIP12345678/AB12C
…
Content providersSystem overview
Price modelsPayment methodsReportsLogs
Modify
Modify
Modify
Modify
PaymentFramework presentationPaymentFramework presentation
Architecture
29
PaymentFramework presentationPaymentFramework presentation
30
Used work practices
Mitä käytetty, mitä tulee mitä poistuu
PaymentFramework presentationPaymentFramework presentation
31
What we have learned
We need some working system to test it throughly
Some tasks require more time
When software bases are ready, implementing features takes only a little of time.
PaymentFramework presentationPaymentFramework presentation
32
What we’ll do in next phase
Freeze the product functionalities at the end of january -> one month to test and fix bugs -> importance of quality
PaymentFramework presentationPaymentFramework presentation
33
PaymentFramework presentationPaymentFramework presentation
34