The Software Development Life Cycle (SDLC) refers to a methodology with clearly defined processes for creating high-quality software. in detail, the SDLC methodology focuses on the following phases of software development: Requirement analysis Planning Software design such as architectural design Software development Testing Deployment This article will explain how SDLC works, dive deeper in each of the phases, and provide …
Development Leaders Reveal the Best Metrics for Measuring Software Development Productivity
We’ve talked a lot about Agile development and DevOps — particularly, the always-pressing need to rapidly ship new versions of their code and update their products. But when it comes to evaluating the productivity of your development teams, what metrics matter most? Should you merely be concerned with deadlines and time sheets, or should you focus on customer satisfaction to evaluate …
What is Regression Testing? Definition, Benefits, and Challenges of Regression Testing
We talked a bit about the Software Development Life Cycle (SDLC) in a recent post, but today, we’re going to dig a little deeper into one particular and crucial element in the testing phase, particularly for Agile development: regression testing. Definition of Regression Testing Regression testing refers to the process of testing a changed or updated computer program to make …
How to Write Test Cases and Why They Are Like the Scientific Method
As I’ve mentioned before on this blog, I have a good bit of experience writing unit tests.  In fact, I’ve managed to parlay this experience into a nice chunk of my living.  This includes consulting, training developers, building courses, and writing books.  From this evidence, one might conclude that unit testing is in demand. Because of the demand and driving interest, …
How to do software deployments with confidence
Everyone wants to ship their code faster. Agile development and all the variants of it have helped companies release software  more often and spend less time in large, waterfall planning and project management. Agile development still has one big problem… confidence in software deployments. Developers have no idea if they are really ready to ship their new version. Does this …