2. Project Vision
A ticketing procedure
That is
Convenient, well managed and reliable
to
The passenger who travels,
The bus conductor
and
The bus owner.
3. Problem
• Handling money
• Ticketing takes time
• Not having change to return the balance
• Bus owners don’t get the actual profit to
their hands
4. Solution
• No cash involved
• Smart card for the passenger
• Hand-held ticketing machine for the
conductor
• Income directly transferred to the owner’s
bank account
5. Main Features
• Smart cards can be purchased
• Recharged trough merchants or automated
machines
• One reading machine is associated with a
single FBTT account
• Immediate account updates through GPRS
• Terminals to transfer data from the machines
6. Main Features
• Two accounts for the bus owner
– At the Goliath National Bank
– At the FBTT
• Automatic update to the bank account
• Online interface to check account activity
• Disaster Recovery Centre
• 24/7, 365 days per year available Data Centre
• Immediate replacements for faulty machines
7. Stake Holders
• Bus owner
• Conductor
• Passenger
• Goliath National Bank
• Hoodwink Mobile
• Merchants
• FBTT
8. Bus Owner
• Have to open an account with the Goliath
National Bank to participate in the program.
• View the activity of this account through an
online interface.
9. Conductor
• Charge the fair from the passenger.
• If the GPRS connection failed, transmit the
data in the device to the FBTT data center
using a provided terminal.
13. Implementation Process
Rational Unified Process will be used.
Why RUP?
• This methodology has accurate documentation.
• RUP is able to resolve the project risks.
• Less time is required for integration.
• The development time required is less due to
reuse of components.
14. RUP Phases and Disciplines.
Project Management
Environment
Business Modeling
Implementation
Test
Analysis & Design
Preliminary
Iteration(s)
Iter.
#1
Process Workflows
Iterations
Supporting Workflows
Iter.
#2
Iter.
#n
Iter.
#n+1
Iter.
#n+2
Iter.
#m
Iter.
#m+1
Deployment
Configuration & Change Mgmt
Requirements
Elaboration TransitionInception Construction
16. Major Milestones
• Completion of Business Case
• Requirement Analysis
• Adjustments for Risks
• Schedule
• Architectural Design
• Software for devices
• Data Center implementation
17. • Connecting to support services
• System Integration and Testing
• Finalized System
• Cope to the System environment
• Product Release
• Maintenance
Major Milestones (cont.)
18. • Business Case Development phase
• Initial Planning and Analysis phase
• System Design Phase
• System Development and Demonstration
phase
• System Verification and Validation Phase
• System Deployment Phase
Major Phases of The Project
19. Phase Effort Estimate
(Man Days)
Business Case development phase 7
Initial Planning and Analysis phase 12
System Design Phase 16
System development and Demonstration phase 55
System Verification and Validation Phase 35
System Deployment Phase 25
Rough Effort Estimate for Each Phase
21. The Project Team
• Team Size : 15
• Roles and Responsibilities
– Project Manger
Coordinate the overall project while ensuring that
software is delivered on time and on schedule and in
accordance with the requirements
– System Analyst
Requirement elicitation, requirement analysis, create
requirement documentations
22. – System Designer
Model the system architecture
– Developer
Develop the software and perform basic testing
– Tester
Perform release testing and handle configuration
management
– Tech lead
Provide technical support
– Trainer
Train the users of the system
23. Number of personnel allocated to each role:
• Project Manger - 1
• System Analyst - 1
• System Designer - 1
• Programmer - 5
• Tester - 2
• Interface Designer - 1
• Database Developer - 1
• Tech lead - 1
• Trainer - 2
24. Documentation
• Feasibility Report
Evaluation and analysis of the potential of the proposed
project
• Requirements Documentation
Gathered features required by the customer
• System Design
Detailed system architecture which shows how to implement the
system.
• Project Management Plan
Detailed project schedule which will be used to measure progress
in the future.
25. Documentation (cont.)
• Database specifications
Database requirements with design details
• Test Plan
This will be used to check if the product meets user
specifications
• User Manuals
These show how to use the system
26. Project-Client Communication Plan
Communication
Type
Parties
Involved
Frequency
Mode of
Communication
Purpose
Requirement
Gathering
SS to NTC
As
needed
Face to Face
meetings
Gather project
Requirements and resolve
ambiguities
Requirement
Changes
NTC to SS
As
needed
Face to Face /
Email
Discuss any changes to the
previously specified
requirements
Project Status
Update
SS to NTC Weekly Email
Provide updates on the
current progress of the
project
Feedback NTC to SS Weekly Email
Provide feedbacks to the
status updates provided
27. Project-Client Communication Plan
Communication
Type
Parties
Involved
Frequency
Mode of
Communication
Purpose
Interface
Specification
SS to HM
As
needed
Face to Face /
Internet
Messenger
Service
Specify of the interface to
wireless network
Interface
Specification
SS to GNB
As
needed
Face to Face /
Internet
Messenger
Service
Specify of the interface to
bank network
cont.…
28. Project Risks
• Unavailability of the staff
• Lack of experienced staff
• Staff turnover
• High level technical complexity
• Incorrect time estimation
• Incorrect budget estimation
29. Project Risks
• Unavailability of hardware components
• Third-party tasks take longer than expected
• Change of customer requirements
• Lack of communication between
organizations
• Users are not used to the new system
cont.…
31. Expected Participants
• Project Manager
• Training staff
• Members of NTC
• Bus conductors
• Bus owners
• Data Center Employees
• Team from Goliath National Bank
• Team from Hoodwink Mobile
32. Acceptance Criteria Test Matrix
(sample)
ID Description
Critical Test Result
Comments
Yes No Accepted Rejected
<Test
ID>
<Test
Description>
<Comments on
the outcome>
The project smart card system for buses is done by the Smart Solutions in partnership with the Goliath National Bank and the Hoodwink Mobile. The consortium is named “For a better tomorrow, tomorrow”.
The overall vision of the project is a better ticketing system for the public transportation which will be far better than the current system in every aspect.
In the current context, handling money is one of the main issues that passengers and conductors are facing.Most of the time, conductors demand change.Passengers don’t always have change.This process is very time consuming.Conductors sometimes don’t give the correct balance to the customer saying there’s no change.The conductor has the ability of bypassing issuing the ticket even a ticketing machine is used.Bus owners don’t get the actual profit from their transport service.
The solution that we propose is a smart card system.The passenger will have a smart card which has a balance.The conductor will use this with the ticketing machine.Conductor enters the fair and it is transferred from the smart card’s balance to the bus owner’s bank account immediately.The bus owner can withdraw money from the bank account.
Customers can purchase smart cards from selected merchants.They can deposit money to this card from the same merchants or by using the automated machines located at selected bus terminals.Each hand held device used by the conductors is associated with a certain account owned by the bus owner at the FBTT datacentre.The machines transfer account updates in real time if GPRS is available.The GPRS service will be provided by Hoodwink Mobile.If GPRS is not available, there are terminals available at selected bus stations that take the information from the hand-held device and transfer to the FBTT.
Bus owner will have two accounts; one at the Goliath National Bank for the financial activities and one at the FBTT for data collection and administrative purposes.Bank account will be updated by the transaction details sent by the FBTT data centre in regular periods like once in a day.An online interface will be provided to the bus owners to check account activity without being troubled to go anywhere.A complete Disaster Recovery Centre will be maintained in case of a recovery need at the datacentre.The datacentre will be manned 24/7, 365 days per year to provide the best uninterrupted service.Replacements will be made available within a day for the faulty machines.Through all these features our expectation is to produce a system rich with usability, availability, reliability and security.
Introduce the stake holders:In the project we were able to identify 7 stakeholders.They are as follows. Each of these stake holders have different responsibilities according to their role.
For every bus owner has to open an account in Golitha National Bank. All the money transactions will be handled through the bank. So it is a must to have an account in the bank in order to participate in the program.Another responsibility we identified for the bus owner is that he can view the activities of his account through an online interface.
Conductor plays a big role in this program. He is responsible to charge the fair from the passenger. When the passenger gets into the bus, the conductor has to insert the smart card into the machine to begin necessary actions. Conductor has to insert the relevant source and the destination that the passenger need to go. The system will deduct the charge from the passenger’s smart card.If the GPRS connection is available, the machine will automatically transfer the data to the data center. But there may be certain occasions that the GPRS connection fail due to some reasons. In those cases, the conductor is responsible to transmit the data to the FBTT data center using a provided terminals.
One of the main responsibility of the passenger is to buy a smart card. They can buy a smart card from the FBTT data centers. It is a must if the passenger needs to participate in the program. Another responsibility of the passenger is to review the balance of the smart card. There are terminals available for passengers to check the balance. Recharge the smart card is the other responsibility of the passenger. From the FBTT data centers, the passenger can recharge the card.
Golitha National Bank runs a main role in this program. It has the responsibility of handling the accounts and manage them with the updates provided by the data center.Hoodwink mobile is the main telecommunication provider for this project. Their main responsibility is to provide the GPRS connection to the device.
Merchants responsibility is to issue smart cards to the customers and recharge them when needed.FBTT data center is mainly responsible of replacing devices when there is any faulty one. Another one is to update the bank accounts. In addition to those things, disaster recovery is another responsibility of the FBTT.
Implementation process that is used for this project is rational unified process. There are some reasons for the selection. RUP methodology has accurate documentation. These documentations provide necessary details of the project which will help to go through the project precisely.RUP is able to identify necessary risk that can arise and resolve them in advance. Another important factor is that integration does not take much time. As the reuse of the components the development time is less compared with other methodologies.
This figure represents the RUP phases and disciplines. Disciplines take place according to the diagram. Deployment will take time as we need to train bus conductors and make available the recharge cards island wide.
The project will mainly consist of six sub systems.The datacentre is where all the data is managed and it provides data to the other systems through properly managed interfaces.Ticket issuing system is mainly associated with the hand held machine used by the conductors.Smart card top-up system will be handling deposits to the smart cards.Both these systems will be using the data transfer system to communicate their recorded transactions to the FBTT datacentre.Apart from the above interactions, the datacentre will be coordinating with the bank account handling system and the disaster recovery system.
Major MilestoneGoal DescriptionCompletion of Business Case Define business environment and scope of the project clearly.Requirement Analysis After requirement elicitation process, analyze and validate by evaluating with the client. Come up with proper Requirement Documentations.Adjustments for Risks After the Feasibility study, do modifications and adjustments to system specifications and confirm project feasibility.Risk analysis and drawing up plans to minimize the effects on the project.Schedule Time and Resource scheduling.Architectural Design Model the system architecture with proper documentations.Software for Devices Build software packages for devices and terminals. Perform unit and component tests to confirm validity.Data Center Implementation Implement database and software package for the data center. Perform unit and component tests to confirm validity.
Major MilestoneGoal DescriptionConnecting to support Services Establish the connection between the data center and thebank. Configure GPRS communication with devices and terminals.System Integration and Testing Perform System testing modify accordingly.Finalized System Finalize user interfaces. Finalize the database after initializing data. Release testing and fixing the final system accordance with the results.Coping with the System environment Train the users. Initialize system parameters and configure the system with its environment. Perform user testing and modify further.Product release Install the final product with needed services. Maintenance Change the system according to the changes of user and business requirements.
6 major phases identified for the project.Milestones are categorized under each phase in order to identify them uniquely from other milestones.Business case development phaseCompletion of Business CaseInitial Planning and Analysis phaseRequirement AnalysisAdjustments for Risks Set up the schedule System Design PhaseArchitectural Design System development and Demonstration phaseSoftware for devices Data Centre implementation Connecting to support services Integrate the systemSystem Verification and Validation PhaseTesting Finalized System System Deployment Phase Cope to the System environment Product release Maintenance
This is a rough effort estimate. We are hoping to complete our project successfully after following the above time agenda.System development and demonstration phase is very expensive than other phases as it has to cover four most important milestones of the project.
This is the time-line which we are following. We start our work on 20th May 2013 and hope to complete the project before 18th October 2013.This project roughly takes 5 months to complete.
Project managerPlanning :Schedule the project and allocate people and other resources for each task. Risk analysis and come up with Risk mitigation plans.Monitoring :Risk monitoring and take actions whenever needed. Keep the team motivated and ensure to reach the project goal.Coordination: Report the client (National Transport Commission of Sri Lanka (NTC)) about the progress. Coordinate interactions between client (NTC) and the team and between consortium (SS, GNB, HM) and the team. Provide communication facilities for the interactions among team members.System AnalystWork closely with the eligible clients from National Transport Commission of Sri Lanka to gather and evaluate requirement.Use prototypes, handle interviews with the project client.Prepare detailed requirement documentations with use case modeling.
System DesignerUse requirement documents and design the system architecture starting from high level (eg: context models) and continue up to detailed models (classes).Decide where to apply reusing.Document software design in detailed manner.ProgrammerInvolved mainly in developing the source codes for software.Responsible for defect testing following unit, component and system tests.Fixing identified defects and modifications.TesterTest whether the releases meets the user specifications.Responsible for maintaining configuration management system with proper version management.Communicate with developers for fixing bugs.Coordinate user testing with the project client.Tech leadProvide solutions to technical issues with developing tools.Work with System designer to give details on technical design requirements.Advise developers and other team members regarding GPRS technologies and other technical areas relevant to the project, whenever needed.TrainerTraining the staff at the data center and merchants about how to use software, terminals and other relevant details.Providing instructions (distributing manuals) for all the public users (bus drivers, bus conductors and smart card users).
Total team size : 15
Feasibility Report : Report shows that the project is feasible to done with estimations of cost, plans for identified risks, etc. This will be documented by the project manager.Requirements Documentation: Description of the expected software features, constraints, interfaces and other attributes. This document is prepared after following the processes; requirement elicitation, requirement analysis, requirement validation. This will be documented by the system analyst.System Design: Description of how the software will meet the requirements along with the detailed system architecture. Furthermore this document describes the rationale for design decisions taken. This will be documented by the system designer.Project Management Plan: Description of the software approach and associated milestones. Here the time schedule will be given with the details of the resource allocation plans. This will be documented by the project manager.
Database specifications: Database requirements are identified and documented. Furthermore Extended Entity relationship diagrams are included which shows the database design, after completing the analysis work regarding the requirements. This will be documented by the tech lead.Test Plan: Description of the tests used to verify and validate the system results during the development and at each system release. This document show how each user requirement will be tested in the product. This will be documented by the tester.User Manuals: These documents focus the users of the system. Simple and clear step-by-step guides that shows how to use each portion of the system. This will be documented by the trainer.
Project-Client Communication Plan shows the types of communication that should be carried between mainly the project team at Smart Solutions and the other stakeholders. It indicates the frequencies of the different types of communications should take place and also the modes of communication that can be used.Requirement Gathering is the major communication type of the project. These face to face meetings should take place between the members from the project team (such as Project Manager and Requirement Analyst) and the members of National Transport Commission. At the beginning of the project, these meetings should be held frequently and should be used to gather information to create the requirement specification documents. In the design and development stages, these meetings can be held only when needed to clarify and resolve any ambiguities in the requirement specification. If any requirements changed later, NTC should inform those as soon as possible to the Smart Solutions team. If that change is much larger, two parties may need to meet face to face and discuss. If the change is comparatively small, an email can be used.Project team at Smart Solutions should provide a weekly update on the progress of the project to the NTC. This can be done either at the end of the week or at the beginning of the week. Email will be the easiest way for this communication. They can include necessary documentation or prototypes of the system in this report to be analyzed by the client (NTC). (Alternatively this update can be provided at the end of each iteration rather than weekly)When NTC received an update, they should analyze it and should provide a feedback to the Smart Solutions. This feedback can be either the acceptance of the work done or request for some changes. Normally an email can be used for this, but if there is some serious issues a face to face meeting can be held.
The meetings between the teams from Smart Solutions and Hoodwink Mobile should be held to discuss about designing the interface to the wireless network. Both handheld machines and terminals should have interfaces to communicate through the wireless network. Therefore issues such as the type of interfaces, protocols to be used, bandwidth allocations should be discussed. These communications can be done through either face to face meetings or internet messenger services.The meetings between the teams from Smart Solutions and Goliath National Bank should be held to discuss how to interface the developing system with the bank. Things such as bank’s existing networks, security details, authentication details should be discussed. These communications can be done through either face to face meetings or internet messenger services.
This project needs a substantial amount of staff with different kinds of expertise such as software designers, developers, interface designers, database developers and training staff. There is a risk that the company does not have this amount of staff to be dedicated for a single project. The company can consider hiring staff on contract basis in order to avoid this risk. The projects of this scope are very rare. Therefore it may be a problem to find staff who have prior experience in these kind of projects. To avoid this risk, the staff can be provided a training session and also can get consultancy from an external firm which expertise in these kind of projects.Since this project is expected to go for 5-6 months, there is a risk that some of the staff members may leave the project due to various reasons. If someone who has exclusive knowledge on a certain part of the project left, it will be difficult for someone new to complete that part according to the schedule. To minimize the effect on the project due to staff turnover, staff can be rotated to work on various parts of the project which will in turn make everyone aware of each part of the project.This project can have a very high level of technical complexity than a normal software development project. Providing a training for the staff on the new technologies used for this project can minimize this risk.Incorrect time estimation can make the system difficult to deliver as planned. If the project manager has less prior experience in these kinds of projects, this risk is very probable. This risk can be minimized by appointing an experienced project manager. Incorrect budget estimation also can be a result of less experienced project management. In this kind of project where the client is a governmental institute, correct budget estimation is very crucial. Because NTC has to approve the budget from the higher governing bodies prior to the project initialization and once it is approved it will be very difficult to change. This risk also can be reduced by appointing an experienced project manager.
The hardware devices such as portable ticket machines and terminals should be imported. If they are not delivered on time to the development team, the project milestones will be hard to achieve as planned. This risk can be minimized by taking necessary steps to get those devices as early as possible and also allocating some consolation time in the project plan for any unexpected delay.This project involves two other parties than Smart Solutions. They also have very important tasks to be completed which are essential for the development process. Hoodwink Mobile has to set up the wireless network for the project and provide necessary interfaces to integrate that network into the project. Goliath National Bank has to establish the new account system for the project. If these tasks are not completed as planned, development process cannot move forward. To avoid this risk, the team members from those parties should participate in project planning and once the project started they should provide frequent updated on their progress.Customer requirement change is a major risk involved with every software project. The use of a process model such as Rational Unified Process allows the changes to be introduced into the project without the need for major reworking.Lack of communication with the client and also between the participating organizations is a risk. It can effect the synchronization between the parties and ultimately make the project unstable. Working with a communication plan as mentioned in the previous section can reduce this risk.The major risk associated with the deployment of this project is that the users are not used to this system. The old manual system has been there for many decades and it will be tougher to get used to the new system. To avoid this risk training programs can be organized for the bus conductors. Apart from that passengers can be made aware of this through TV programs, advertisements and newspaper articles.
Project manager plans the schedule for the user acceptance testing process and identify the possible participants.Collaborate with stakeholders such as NTC, conductors, bus owners, third-party service providers to identify test scenarios and convert them to test scripts.Validate the correctness and completeness of prepared test scripts with the stakeholders.Execute the prepared test scripts in a test environment which simulates the actual user environment.Get feedback from the stakeholders who participated in the testing process.Categorize the test failures as minor errors, major errors and severe errors according to the received feedback.Fix the identified problems and re-execute the tests.
Project Manager and members of NTC will supervise the entire user acceptance process.Training staff will interact with the other participants to carry out the tests.Selected set of bus conductors and owners will participate in the process. This set should contain people belong to different age groups.Data center employees should test the data center functionalities.Teams from the bank and Hoodwink mobile should test the designed interfaces to their systems.
This kind of template can be used to document the results and outcomes of the acceptance tests.