Services provided by Velox QA
OUR SOFTWARE CONSULTANCY PROCESS
Our first undertaking is usually a face-to-face meeting to agree that there are improvements we can potentially make to your software development process.
Once you are happy for us to proceed we then normally set up meetings with your employees to find out what they actually do, as opposed to what you think they do!
A report will then be prepared detailing our findings and more importantly listing our recommendations for how we can help you improve your process.
As part of this review process we take a detailed look at all of the following elements of your workflow. This will include:
- The overall test strategy and test approach employed
- Standards of documentation produced
- The document review process
- Test plans
- Test scripts
- Defining test data
- Automated testing
- Defecting tracking
Coupled with the above we will look at the current process of the testing elements listed below and also make recommendations with regard to these:
- Unit testing
- Integration testing
- System testing
- Regression testing
- User Acceptance Testing
After we have submitted our report we will give you time to digest it before setting up a subsequent meeting to agree an action plan for the recommendations.
AREAS IN WHICH WE CAN ASSIST
Test Strategy
This is the first and arguably the most important element of the quality assurance process. Here we can define with you all the relevant elements to your test process as well as the roles and responsibilities of your staff for each of the stages of the process.
Documentation Reviews
The first documents that you probably concern yourself with are business requirements documents. These may be produced by your business analysts or may be presented to you as 'complete' documents by your customer. In either case you still need to review these documents to ensure that you understand the solution you are required to provide. Do you have such documents and/or do you have a review process?
Hopefully you produce some functional/technical documentation? But is it reviewed as being fit for purpose, does it adequately and appropriately solve the problem you have been presented with in the business requirements? Having established the former, does it contain all the information that the different elements of your development team require? For instance in a client server environment are the front-end and back-end developers aware what the other is up to? Do your testers have all the information they require to hand, i.e. how much do they know about what they are supposed to be testing? Also is there someone responsible for ensuring that this review process actually occurs?
Unit Testing
Are you fully aware of what is required in the unit test phase of testing? Who is responsible for any white-box unit testing and who is responsible for any black-box unit testing? At this stage, depending on the size of the development task, test plans, test scripts and test data will need to be defined. What are they based on and what make good relevant probing tests and what are good relevant test cases?
System testing
Once your unit testing is under way you will need to consider system testing. I.e. end-to-end testing of the application under test. We can assist you with the issues associated with this aspect of software testing. The creation of system test plans, scripts and data.
Regression testing
This is probably the most time consuming aspect of software testing and is regularly overlooked. It is however often overlooked at great cost. How often have you heard "well it was only a small change that we didn't expect to have any impact"? In other words a small code change or a new version of the underlying database was made and numerous bugs were found, not by you, but by your end users. This obviously undermines your customer's confidence over what was a small software change and leads us logically onto the next area of testing; automated testing.
Automated testing
Automated testing can be used to greatly assist a number of tasks within software development and testing:
- Developers to sanity check new builds
- Test team members to enter large volumes of test data into an application
- Test team members to carry out repetitive tests
- End-to-end regression testing the application
The key element to all the aforementioned aspects is time saving. Pre-recorded scripts can be left to run relatively unsupervised with no manual intervention, executing along the way many tests and entering into the test application large amounts of test data. So following a small software change the whole application can be tested with very little input and hence resource from testing team.
We can help you make the best choice of automated test tool and assist with the definition of automated test strategy for your software application.
Defect Tracking
"Bugs are hard to find, so don't lose them" - Too often a client will find a problem with live software that one of your development or test team will have seen previously but didn't record it where everyone knew about it. They may have sent an email to the developer who wrote the original code and this was overlooked. ALL errors found should be centrally recorded in an issues tracking system, hence bugs don't get lost. You may choose, for business reasons, not too fix them but at least you can make that choice. A good bugs database should be at the centre of any software development process and we can help you set up such a database and define a workflow that suits your development process.
Quality assurance of documentation.
As well as quality assurance of software we also have vast experience in the QA of both on-line help systems and user manuals. We can assist you with building an approach to ensure
^ top of pageWebsite created by Foxxweb Design