Actors | Topics |

Development providers

Developers

software developer

Somebody who develops a software product. Depending on the context, this can mean either a natural or a legal person.

Software development includes one or more of the following tasks: analysis, programming, testing, deployment, maintenance and/or support.

We differentiate the following types of Lino developers:

application developer

A software developer who writes and maintains the source code of a given Lino application.

core developer

A software developer who helps maintaining the Lino framework as a whole.

contributing developer

An application developer who contributes to the Lino framework, for example by testing general framework features, discussing changes and new features, submitting pull requests, …

A development provider operates a collaboration infrastructure for their workers. Some of these workers are developers.

A developer writes and maintains developer documentation and a test suite for the application.

A developer writes release notes for site experts.

core team

The people who develop the Lino framework as a software product.

A big business

development provider

An organisation that provides professional services in order to develop and maintain a software product.

software engineer

A natural person who is not a programmer but an active member of a developer team.

What a software developer does

A development provider can provides the following services.

analysis

The art of formulating the needs of a customer in a language that can be understood by a programmer.

programming

Write and maintain the source files and publish them.

testing

Make sure that the software does what it is meant to do, that a new version does not introduce regressions or other side effects. This is also called quality control.

deployment

Installing the software on a remote site, either public or for a site operator.

developer support

Support given to an application developer.

expert support

Support given by a development provider to a site expert. This is more technical and specialized than end-user support.

manual testing

A method of software testing where the testers manually execute test cases without using any automation tools in order to find bugs in the software system. It is imperative for every release because full automated testing is not possible. Manual testing is usually done by experienced end users because it requires a good knowledge of the functional requirements. Optionally they can be executed by the application developer before a release, or by the server administrator after an upgrade.

automated testing

A part of the development process which verifies that a change in the software doesn’t break any existing functionality.