In our final edition of our web vocabulary lists series, we look at some essential terms and concepts in software development. The creation of software requires a diverse range of skills from design and marketing to programming and deployment. Software development is a large and varied industry. Here, we’ve chosen terms and concepts particularly relevant to web development on behalf of SMEs.
‘Agile’ refers to a software development methodology which relies on iterative development. In agile, requirements and solutions evolve throughout the lifetime of a project and through consistent collaboration among people with different skills.
Iterative development is key to agile methodology. Iterative refers to a cyclic process of agreeing project scope, identifying requirements and undertaking development. An ‘iteration’ represents a short period of development, usually 1-2 weeks in duration.
Scope is the breadth and depth of a software development project. Projects with a larger scope, require a larger budget and longer time line. To reduce budget and time, a project’s scope must be reduced. In agile development, the scope for each iteration is trimmed to balance with the fixed amount of time (1-2 weeks) and the fixed amount of resources (e.g. the number of people on the development team).
Backend refers to your website’s database and functionality. Note: the ‘backend’ should not be confused with a back office, or the part of a website where you can log in and manage your content.
The database stores the information collected and used by a website. For example, a WordPress website uses a database to store configuration information, user details as well as the content that you create.
The process of ‘pushing’ your website’s files and database onto your server so that it is ‘live’ and available to users online.
An ‘environment’ is a version of your website. There are often several environments used during web development: a ‘local’ development environment; a testing or ‘sandbox’ environment; and a production or ‘live’ environment. The local environment is not available on the Internet and is on the developer’s computer. A sandbox is a deployed environment on your server. It uses its own database and files and is a testing area for your site. Production is the live environment, the one your users see, which uses its own set of files and its own database. It is best practice to deploy from local to sandbox then to production, testing at each stage of deployment.
Your host provides a server to store your website’s files and database.
Your domain is your web address, such as mydomain.co.uk. You claim ownership of a domain through a domain registrar. Your domain registrar and host provider may be the same, but not necessarily. Learn more about hosting and domains.
- Front end
The ‘public face’ of your website. This front end is what your users interact with when they visit your site.
UI or ‘user interface’ can be used as a synonym of front end. UI is a broader term and can refer to any user interface, such as a back office, that allows a human being to interact with a website. Fundamentally, a user interface allows you to create, read, update and delete the data used by a website. Access to functionality may be restricted to users with certain privileges. For instance, your website’s visitors are able to read your site’s content, but they aren’t able to delete that content.