A new relationship starts somewhere, and now
as you are reading this page you would like
to know the next step to begin the offshore
software development in India with TM Systems.
Based on our experience and best practice dealing
with overseas clients since more than 25 years,
we suggest following next steps to start our
relationship.
But at any point you can Contact us or Request
a Callback and we can discuss rest over the
meeting.
If you have an idea and would like to know
how to bring it live or if you have the scope
ready and would like us to quote for the same,
please feel free to contact us. You can spell
out what you are looking for and someone from
our organization will get back to you shortly
with the solution, ballpark cost and timelines.
We respect your intellectual property, hence
to keep your mind at peace if you would like
to sign an NDA or contract with us please send
us the copy, if you don’t have any such
document, we can provide you the sample document
which you can fill up and send back to us.
Once we have submitted you the quotation and
contract / NDA, we would request a small amount
of your time if possible, in which we can demonstrate
our capabilities, expertise and the system that
we use. This will allow you to
- Have a close look at our skills where we
can demonstrate you some of our work that we
have done, so you know our programming standards
and design standards
- we can show you our project management tools
and client access system
- demonstrate our coding standards
This allows you to ensure your confidence in
us, and we can justify our skills by showing
you our work which we have done for our clients,
which gives you a very high level confidence
in our capabilities
We can do the online web request(s) using
This is a recommended step though not required
all time, but it would be our great pleasure
to welcome you to our premises so you can see
the work and infrastructure in actual.
But If in any case you cannot make out that
time, it would be our privilege if you permit
us to visit you at our cost, this enables a
personal meeting and we can show you the work
that we do, which will help you justify our
high quality work as compare to our competitors
and you can be rest assured about the work that
you are planning to get done.
Our management keeps on traveling to UK, USA,
Australia and Europe very often to meet our
clients and prospects.
So if you would like to schedule a personal
meeting please feel free to contact us.
At the end of all above process, if you are
satisfied with our proposal and now when we
have a very good understanding of each others
working styles, expectations, the next step
is to work out the full fledge engagement for
software development in India with TM Systems.
With over 24 years experience in offshore
software development in India, our development
process has been very well filtered and matured
based on our past experience and we still work
hard to enhance it to meet the future requirement
and changing technologies.
-
Project initiation
-
Once the project is confirmed,
then we start gathering the team that will
work on clients project
-
A project manager [PM]
is assigned to monitor the project, the role
of the project manager will be to supervise
the project and help team and client whenever
required, project manager generally works
on multiple projects hence does not work full
time unless specified and decided by the size
and criticality of the project.
-
A team leader [TL] is
assigned under the PM, TL will be a full functional
and dedicated project for your development
project unless it is a man month project.
A TL is the point of contact for the client
for day to day basis and all communication.
He is also responsible for the day to day
activity and timeline keeping of the project,
technical supervision and guidance is also
a part of his responsibilities.
-
Copy of email of all developers
working on your project goes to the TL, and
PM receives the copy of TL’s email to
keep the track of day to day correspondence
and updates of project.
-
A project is created in
our CRM system as well as Bug Tracking system
, which will be the system accessed by the
developers, PM, TL and the client for day
to day work.
-
The appropriate team of
developers, Designers and QC are selected
for each project, the size and skill of the
team depends on the requirement of project.
-
Introduction email of whole
team, TL and PM is sent to client along with
all required communication details.
Once the team is defined, the next step is
to start the Technical analysis of the project,
which is to create a blue print for the development
purpose. We call it FDS [Functional Design Scope].
We create following documents while doing technical
analysis and submit it to client for approval.
• FDS
• Mind map
• Actual screens in visio
• Data Dictionary
• Flow charts
• Etc.
Note: Documentations is a very volatile process
and hence the types of documents to be generated
are dependent on the project size and requirement.
These documents are submitted to client for
approval, if client has any changes he can communicate
it our team and team and get back with the final
version.
Once the scope is signed, we create the timeline
and send it to client, which defines the milestones
of entire project.
Development
Once timeline is generated, all the tasks
are assigned in our project system, which client
also has access to. From that system client
can manage the whole project.
One the project is in development phase, we
talk to client and decide when we should submit
the work for preview, as every client has its
own need, some needs it at the end of completion
of a particular module, and some clients would
like to see it on daily basis and would like
to preview and comment on each form as they
are developed.
So based on clients requirement, we define
the release phase and upload the development
work on our stating server hosted in USA for
faster access. We are very flexible with release
phase and can work as per client’s requirement.
Once client previews the work, he can either
email us or preferably insert the tasks / bugs
into Nexus, which allows our team to fix them
and that gets notified back to client.
In general we release the project in Alpha
and beta release, once the beta version is released,
the next step is deployment.
After beta release, the project is ready for
the deployment on client’s server, TM
Systems has Hugh experience with hosting and
deployment services, so our development goes
in line with deployment to avoid last minute
issues. While we plan the development we also
take deployment into consideration.
For clients who are looking for infrastructure
to host their applications, TM Systems can provide
very secure, highly reliable and trusted hosting
services. We are catering more than 7200 with
several overseas customers having dedicated
servers with us.
Once the product is delivered and tested on
client’s environment, the product is considered
as final delivery, and that concludes the end
of software development lifecycle. After project
is completed as per clients satisfactions and
defined scope, we
• Ensure that all the data is properly
backed up
• We send all the source code to client
with access to secure server so they can download
it.
• We take the feedback from our client
to ensure that we understand and improve our
system even better.
Still above all this defined approach, we are
very flexible and our team is very capable to
bend and work as per clients requirement and
method.
TM Systems is equipped with state of the art
infrastructure which establishes a transparent
relationship between our team and our clients.
We are equipped with several tools developed
in-house over the period of 5 years, which allows
client to get all the required information about
project, issue status, timelines, time cards
etc. whether it is a fix price client or a client
working with dedicated resources we provide
clients following system access.
The work flow tracking system allows the clients
to
-
Track / monitor the work
on daily / hourly basis at his time using
our work flow tracking system
-
Client can user this software
24 X 7 which is hosted on our in-house network
and accessible via secure internet url. Which
can be access from anytime, anywhere using
a browser.
-
This enables a complete
transparent system between our team and client,
as client can see the no of hours spent on
any module.
-
Track the project status
/ module timeline, and expected date of Delivery.
-
The system allows the
client to add task to the developers so the
client can plan the work even the resource
is working in different shift / time zone.
-
Client can also see the
timesheets filled by the developers so he
can ascertain the work, its speed and can
plan the resources accordingly.
-
The system also eliminates
the reporting procedure, though our project
managers are more than happy to provide a
consolidated report if client requires the
same.
-
Using the work flow system
client can also see the dashboard of the project,
which is a summary of all work done, what
phases the module / project is currently in,
and what kind of activity [surfing, discussion,
solution research, bug solving etc.] is taking
place.
-
Using this system client
can feel like he is watching his staff as
if the staff is sitting in house. Yet this
system allows the flexibility
in such a way that client can access this system
anytime anywhere he wants. As we understand
that the problems with the offshore development
proximity and time zone differences.
Also not to mention this system evolves and
changes as per the client requirement and best
practices.
Please feel free to look at some screen shots
of our work flow tracking system, or you can
request an online demo in which our representative
will be more than happy to show you the glance
of the system.
Issue manager system is a very important system
that is being used by our internal QC [Quality
control] team and our clients. This system also
provides a transparent way to track the bugs,
its recurrences, type of bugs to ensure that
we constantly take the measures to improve our
work quality and reliable product delivery.
As we believe that learning is an constant process
in information technology field.
Following are the benefits / activities that
a user can achieve from our Bug Tracking
System.
-
Instead of long emails
client / QC can post the bug into the bug
tracking system which is assigned a numeric
ID, which is then referred there onwards for
any reference to that issue.
-
This system allows a very
detailed tracking of any issue, which is monitored
by the head of QC department.
-
Clients / QC team can
upload images / screen shots / reference material
for the explanation.
-
Once the bug is submitted
the email is generated and sent to the developers
with the issue number.
-
Once the bug is resolved
the developer marks it “resolved”
and the email is sent to the QC to verify
the issue, and mark as “complete”.
-
Once the issue is marked
“ complete” the email is then
sent to the client stating the issue complete
and then client can verify that issue and
mark it “closed”
-
Using this software both
team and client can manage the changes that
are additionally required. All changes can
be tracked by this system
-
Each bug falls under a
particular milestone and a phase. So it helps
the team to decide the priorities in order
to plan a beta release or roll out of any
project.
Please feel free to look at some screen shots
of our issue Manager [Bug tracking system],
or you can request an online demo in which our
representative will be more than happy to show
you the glance of the system.
At TM Systems we are equipped with a very
strong and reliable network which allows us
to monitor the activities on development server.
Also for our technical clients who would like
to do a sneak preview or code themselves into
our system, We can on demand provide the access
to the development server using
-
IPSEC [VPN ] using fortinet
client
-
Access to the stating
server so client can view the modules when
they are in the development / beta or final
release phase.
-
In certain cases, if required
client also has ftp access to the development
server
Every organization nowadays
faces tough competition and hence it is essential
for them to provide goods or services of high
quality at low cost to their customers. TM Systems
has developed a very good code of conduct and
practice for quality control, this approach
is very well blended with our development process.
And we ensure that with the new technologies,
hack threats and scalability being integral
part of the future applications, our system
stays up to date so our client’s products
are not compromised with quality may it be performance,
security, scalability, logical or cosmetic issues.
-
When we think of the term
“Quality Assurance”, all activities
like design, development, production, installation,
servicing and documentation are related with
it.
-
One of the most widely
used paradigms for Quality Assurance management
is the PDCA (Plan-Do-Check-Act) approach..
-
Quality control involves
series of inspection, reviews and tests used
throughout the software process to ensure
each work product meets the requirements placed
upon it.
-
The goal of Quality Assurance
is to provide management with the data necessary
to be informed about product quality, thereby
gaining insight and confidence that product
Quality is meeting its goals.
- Conduct a meeting with
analyst team, design team and study the
requirements of the system
- Analyze the system behavior and plan
accordingly
- Prepare test case
- Select test data relative to the system
- Execute test cases with the help of
the selected test data
- Perform GUI and designing testing
- Post the bugs in our bug tracking system
called Bugtracker
- Designing bugs are posted with the
appropriate screen shots
- Verify the actual result against expected
results
- Analysis result generated
- Save the result in form of pass or
fail Reports are finally analyzed by senior
team
- Beta version delivered to client for
review
TM Systems follows below approaches based
on the project requirement. But above all we
work on more practical approach for Quality
Assurance of an application. Our team follows
two different approaches for application testing.
- Unit Testing
- focuses verification effort on the
smallest unit of software
- Integration Testing
- uncovers errors associated with interface
- Validation Testing
- Software requirement analysis are validated
against the software that has been constructed
- System Testing
- Checking of whole system and its component
as one
- White box Testing: White box testing
guarantees
- All independent paths within a module
have been excised at least once.
- Exercises all logical decision on their
true and false sides
- Executes all loops at their boundaries
and operational boundaries
- Black box Testing: attempts to find
errors in following categories
- Interface errors
- Errors in external database access
- Incorrect or missing function
- Regression Testing
- Checking whether previously working
functionalities have not stopped working
due to some other changes
- Browser compatibility
- Check system in each browser like IE6,
IE7, Fire fox, Safari, Opera and Chrome
Specialized Testing Approach
- Security Testing
- Verifies that protection mechanism
built into the system will, in fact, protect
it from improper behavior like code Hijack,
SQL injection, Code Injection, XSS testing,
Spam prevention etc.
- Performance Testing
- Verifies system will work on different
platform, environment
- Stress Testing
- Verifies system will not crash under
peak load
At TM Systesms we have developed our own bug
tracking system, which can be accessed by client
from anywhere, so they are up to date with the
status. So clients can also post the bugs to
the team directly and when the bugs are fixed
they get email notification for the same, so
client doesn’t have to follow up for the
bugs and task that are assigned to the team.
We called a system called nexus, which our team
uses for task assignment and bug tracking system.
Nexus is capable of generating almost all the
reports which helps
- The team leader and the client to see the
bugs and its status
- Developers can check also check their pending
bug, fix and close it
- Generate various reports to analyze the work
done by the developer hence to ensure that quality
standards are at the highest level.
- Nexus sends the automated report with daily
and weekly summary of pending bugs to the team
leader, project manager and the client. Following
are some of the reports generated by nexus.
-
Status wise bug report
to filter the bugs by their status like open,
fixed, closed, etc.
-
ug type report to analyze
where the development team should improve
on - like cosmetic bugs, logical bugs and
also stupid bugs which should not be there
in the system
-
User wise bugs
-
Priority wise bug report
to get the bugs resolved in order of their
priority like high, medium and low
The whole purpose of this system is to make
sure that we improve on quality and make sure
the system is transparent to our clients, as
we believe in complete transparency.
At TM Systems we have matured a process where
the product is thourghly checked before its
released in various releases, but as clients
knows its industry and logic, we recommend that
client also does the basic testing i.e the logical
testing of the product to ensure that the application
is following the business logic that the client
is expecting. To ensure this we submit the modules
as and when completed to client to check for
the logical issues. So client knows what is
being developed and how the application is shaping
up to avoid last minute surprises. This also
allows us to get the feedback from client on
regular basis to make sure that we are on proper
development track.
But as said, its upto client to do regular
checks, our team is highly capable of understanding
, deploying and testing the business logic.
|