19 Aug Software Development Glossary
Welcome to Geek Speak 101!
UAT, back end, API, all words that people who work in the software development industry know by heart. But just because a Developer can rattle off industry jargon, it doesn’t mean that you should be expected to know it. While we endeavor to use “normal” vocabulary when we interact with clients, it doesn’t mean that sometimes a little geek-speak doesn’t slip in.
To help cut through the noise, here’s a software development glossary of some words you might hear from time to time:
Agile – Agile is a type of project management. Combined with the waterfall methodology, it’s how we approach project management.
Authentication – Authentication technology gives the system the ability to match a user’s credentials with the credentials stored in the system database enabling the application to determine whether someone or something is who or what they say they are.
API – An API is an Application Program Interface. We use APIs to integrate existing software systems.
Azure – The Microsoft Azure platform is our preferred hosting platform.
Back end development – Back end development is code written to communicate information from the database to the browser.
Cloud – “The cloud” refers to servers that are hosted over the internet. They store data found in software and databases, so people and companies no longer have to house their own in-house servers.
Deployment – Deployment is when the completed application is released into the production environment making it available for use.
Front end development – Front end development facilitates the look and the feel of an application.
Functional requirements – A Functional Requirement is a description of how the software will perform and includes all the features of the application and the way users will engage with it.
Hi-Fi – The high-fidelity refers to the level of details and functionality built into the prototype of the application. It demonstrates how the app should look and function when it is complete.
Low-Fi – Low-fidelity prototypes are “rough drafts” of an application that help us validate the app in the early stage of the design process.
Production – Once a client signs off on an application, it is deployed to the production environment where it becomes available to users.
QA/QC – Quality Assurance and Quality Control assures that the application complies with the functional requirements, so the end-product is bug-free, functions as designed, and solves the client’s business needs in an intuitive way.
Refactoring – In order to improve the design of an application without changing the functionality of it, we refactor the software code.
Regression tests – If we make any changes to your application, we will re-run the functional and non-functional tests to make sure that the software continues to function as it should.
Release – A release is when the software is distributed to the consumer.
Repository – Software code is saved in a repository. It’s where we track any changes that are made to an application.
Scope – In project planning, the scope lists the project goals, deliverables, tasks, costs, deadlines.
Single sign-on – A single sign-on lets a user log into an app with one login that automatically logs them into multiple apps.
Sprint – A sprint is a short, set period when the development team works to complete a pre-determined amount of work.
Team Awesome – That’s us.
Test case – A series of steps that Quality Assurance performs on one specific functionality in the application.
Test scripts – A program that is written and used to test a portion of the functionality.
Test suite – A collection of test cases
UAT – User Acceptance Testing is the process of verifying that an application works for the user.
User guide – User Guides, also called User Manuals, help users understand the software system.
User story – A user story describes how an application will work from an end-user’s perspective. It helps to explain the software requirements in natural, informal language.
Waterfall – Waterfall is a type of project management; it’s a sequential design process, with progress flowing steadily downward through the phases of conception, initiation, analysis, design, build, testing, implementation, and maintenance.
Wireframes – Wireframes serve as your application’s ‘blueprint’; they’re a skeletal framework of the completed application.