Los requisitos de sistema son la base sobre la que se construye un software. Se trata de un documento que describe los requisitos funcionales y no funcionales del sistema, así como las restricciones que debe cumplir. Los requisitos de sistema sirven de guía a los desarrolladores y sirven para asegurar que el software cumple con las necesidades del cliente.
Los requisitos de sistema se pueden clasificar de diversas formas, pero una de las formas más comunes es la siguiente:
En algunos casos, los requisitos de sistema se pueden clasificar de forma más detallada. Por ejemplo, en función de su origen, se pueden distinguir los requisitos internos (aquellos que surgen del desarrollador del software) y los requisitos externos (aquellos que surgen del cliente o del usuario). También se pueden clasificar en función de su complejidad, en requisitos básicos (aquellos que son imprescindibles para que el sistema funcione) y requisitos adicionales (aquellos que son deseables, pero no imprescindibles).
En cualquier caso, es importante tener en cuenta que los requisitos de sistema no son estáticos, sino que pueden ir cambiando a lo largo del tiempo. Por ejemplo, si se detecta un fallo en el sistema, es posible que se deba modificar el documento de requisitos para incluir un nuevo requisito que solucione el problema. De la misma forma, si el cliente cambia de opinión sobre algún aspecto del sistema, es posible que se deba modificar el documento de requisitos para reflejar el nuevo requisito.