Non-technical entrepreneurs can struggle with how to build out a technical team. At The Impact Seat, we help our portfolio companies navigate that growth. Whether it is going from idea to MVP or MVP to scale, we can demystify the process and set you up for success. Here’s a basic glossary. How many of these terms do you know and, more importantly, understand? What are some other terms you want clarified?
A set of practices used in software project management that emphasizes daily communication and the flexible reassessment of plans that are carried out in short, iterative phases of work. This practice has a wide range of applications not just for software development.
Continuous Integration (CI)
CI is the practice of merging all developers’ work to a source code control system and running automated tests against it as developers check-in code during the workday. Ideally, the adoption of CI means that your product is built and tested several times a day.
CD is the overall process of moving tested and approved code to production as soon as it passes ship criteria. Continuous Integration covers all parts of the continuous deployment process except “Deploy to production” and “Monitor.” CD almost always includes a final manual approval before a staged system is moved into production.
Development Operations (DevOps)
Development-Operations (DevOps) is an integration of development and several post-development activities such as security and controls, quality assurance (testing), and operational deployment. By working together, a continuous workflow (pipeline) can be realized, resulting in fast deployment with continuous customer feedback.
Regression testing is the process of re-running unit and integration tests to ensure that previously developed and tested software still performs correctly after a change. If not, the new bug would be called a regression. The growth of regression bugs from one build to another is the Regression Rate.
All of the requirements that must be met before a product is deployed to customers.
Test-driven development (TDD) is a software development process that relies on the repetition of a very short development cycle: requirements are turned into particular test cases, then the code is improved so that the tests pass. This is contrasts with software development that allows code to be added that is not proven to meet requirements.
A type of software testing where individual units or components of a software product are tested. The purpose is to validate that each unit of the software code performs as expected. Unit Testing is done during the development (coding phase) of an application by the developers.
Originally published at https://www.impactseat.com on August 5, 2020.