Posts filed under: Quality Assurance

Quality Assurance

This page contains posts by Jayme related to influencing and controlling the quality of software development at a company. Quality assurance comprises a wide variety of activities.

In many companies that deliver software, a separate team responsible for the quality of deliverables manually performs tests to ensure that the software works properly. This is a costly approach that increases the time between releases of software delivered to customers quite dramatically.

In some other companies, tests are created using technology that can be run any time a new release of the software is ready for inspection. This requires a different set of skills than “manual” testers have, and can often be done by the software developers themselves. When creating automated tests as a specification for how the software should work BEFORE building the actual change – this practice is known as Test-Driven Development.

Finally, companies may have specific quality guidelines that cover a variety of checks and balances that must be met before a release is suitable. These can be agreed upon percentages of the code that must be covered by testing, performance requirements that the software must meet, security standards, or anything else deemed important to the overall quality of the product.


Today I'd like to talk about how learning of a team failure produces better software when you plan to exploit this ability....
To release software smoothly, avoiding time wasted troubleshooting infrastructure issues - you might consider automating your infrastructure as code....
The settings used by your application, service, or product with software - need to change depending on the environment using configuration management....
To release software to your customers, you'll probably need several development environments. Let me help you decide how to set them up....
Ahh, estimating. We all hate to do it, but it's critical when releasing more often. The good news is it's not nearly as important to get it "just right" for an entire effort, but it is important that the current...
When a team decides to try reducing the time it takes for their ideas to get to their customers (cycle time), there are a few new technical investments that must be made. However, without business stakeholders supporting the changes in a SCRUM approach...
If you want to release software faster, it’s a given that you need automated deployment capabilities, and an incremental product change process like SCRUM – but you also need confidence in the code base. This confidence comes from having agreement...
Most project teams have tried some permutation of an agile or SCRUM process by now, and a consistent theme amongst those I see on consulting engagements is a failure to deliver the work done in a sprint to users before...
Most software applications leverage a variety of third party libraries, middleware products, and frameworks to work. Each of these tools typically comes with its own method of configuration. How you manage this configuration has an impact on your ability to...
I’ve built the technical aspects of my career on combining technologies from Microsoft, that are easy to sell into enterprises that require the confidence that comes from their extensive support contacts and huge market footprint, with open source technologies that...
Since I adjusted the focus of my subject matter on this blog over the past couple of weeks, one of the main subjects I’ve been talking about is continuous delivery. This is a term coined in a book by the...