Cómo escribir un buen SRS para su proyecto

¿Qué es SRS?

Una especificación de requisitos de software (SRS) es una descripción de un sistema de software a desarrollar. Establece requisitos funcionales y no funcionales y puede incluir un conjunto de casos de uso que describen las interacciones del usuario que el software debe proporcionar.

¿Por qué SRS?

Para comprender completamente el proyecto de uno, es muy importante que elaboren un SRS que enumere sus requisitos, cómo los cumplirán y cómo completarán el proyecto. Ayuda al equipo a ahorrar tiempo, ya que pueden comprender cómo se va a llevar a cabo el proyecto. Hacer esto también permite que el equipo descubra las limitaciones y los riesgos desde el principio.

El siguiente es un SRS de muestra que escribí para uno de mis proyectos.

Las características de SRS incluyen:

  • Correcto
  • inequívoco
  • Completo
  • Coherente
  • Clasificado por importancia y/o estabilidad
  • Verifiable
  • modificable
  • Trazable

Plan de proyecto: MeetUrMate

1. Introducción

Este documento establece un plan de proyecto para el desarrollo del sistema de repositorio de código abierto «MeetUrMate» por parte de Anurag Mishra.

Los lectores previstos de este documento son los desarrolladores actuales y futuros que trabajan en «MeetUrMate» y los patrocinadores del proyecto. El plan incluirá, entre otros, un resumen de la funcionalidad del sistema, el alcance del proyecto desde la perspectiva del equipo «MeetUrMate» (mis mentores y yo), la programación y las estimaciones de entrega, los riesgos del proyecto y cómo esos se mitigarán los riesgos, el proceso mediante el cual desarrollaré el proyecto, y las métricas y mediciones que se registrarán a lo largo del proyecto.

2. Resumen

En el mundo de hoy, debido a la gran carga de trabajo de los empleados, estos tienen una gran cantidad de estrés en sus vidas. Incluso con la presencia de tantos dispositivos dentro y alrededor de ellos, no pueden aliviar su estrés. Mi objetivo es desarrollar una aplicación que les permita compartir lo que les gusta y conocer a la persona que tiene la misma pasión que la suya. Por ej. Si alguien quiere compartir su arte, puede hacerlo a través de la plataforma, si alguien quiere cantar alguna canción, puede grabarla y compartirla. También pueden compartir videos (con algunos comentarios divertidos de fondo), compartir misterios que otras personas pueden resolver, publicar cualquier pregunta. A través de mi plataforma, les permitiré conocer personas que comparten intereses y pasiones comunes, chatear con ellos y divertirse.

2.1 Clientes

Todo el mundo. Cualquiera puede usar esta aplicación, desde un niño hasta una persona mayor.

2.2 Funcionalidad

  • Los usuarios deberían poder registrarse a través de sus cuentas ya existentes.
  • Deberían poder compartir instantáneas/videos/instantáneas.
  • Las personas deberían poder dar me gusta y comentar cualquier publicación. Una persona puede seguir a otra persona que comparte intereses y gustos comunes, lo que le permitiría encontrar pareja fuera de su círculo habitual de amigos.
  • Cada usuario puede tener su foto de perfil, estado
  • Las personas pueden publicar misterios y otras personas pueden resolver los misterios.
  • Los usuarios obtendrán puntos por la popularidad de sus publicaciones/la cantidad de misterios que resuelvan.
  • Agregue sus propios comentarios divertidos en cualquier video
  • Publique cualquier pregunta con respecto a sus intereses y la gente puede responder.

Las características de los puntos en cursiva PS se pueden inculcar más adelante.

2.3 Plataforma

Se lanzará tanto como una aplicación basada en la web como una aplicación móvil para Android.

2.4 Responsabilidad de Desarrollo

Yo, Anurag Mishra, estaría desarrollando el software y soy responsable de la creación de la base de datos y todos los demás tipos de cosas relacionadas.

3. Objetivos y alcances

  • Los usuarios deberían poder registrarse a través de sus cuentas ya existentes.
  • Deberían poder compartir instantáneas/videos/instantáneas.
  • Las personas deberían poder dar me gusta y comentar cualquier publicación.
  • Una persona puede seguir a otra persona que comparte intereses y gustos comunes, lo que le permitiría encontrar pareja fuera de su círculo habitual de amigos.
  • Cada usuario puede tener su foto de perfil, estado.
  • Las personas pueden publicar misterios y otras personas pueden resolver los misterios.
  • Los usuarios obtendrán puntos por la popularidad de sus publicaciones/la cantidad de misterios que resuelvan.

4. Entregables

Entregaré lo siguiente durante el curso del desarrollo:

  • Especificación de características
  • Diseño de producto
  • Plan de prueba
  • Documento de desarrollo
  • Código fuente

5. Gestión de riesgos

5.1 Identificación de riesgos

El siguiente será el riesgo involucrado en mi proyecto:

1) La gente ya está usando Facebook para encontrar amigos. Entonces, ¿cuál sería la causa real que los motivaría a sumarse a mi candidatura?

5.2 Mitigación de riesgos

Aunque la mayoría de los usuarios ya estarían usando Facebook, nuestra plataforma aún les ofrecería muchas cosas que no están en Facebook. Por ej.

  1. No conocen tanto a personas que comparten intereses y pasiones comunes. Nuestra aplicación les permitiría conocer gente (aparte de los amigos habituales) que comparten intereses y pasiones comunes con mayor frecuencia.
  2. Los usuarios de FB no pueden compartir canciones sobre la marcha que hayan cantado, mientras que en nuestra aplicación pueden hacerlo sobre la marcha.
  3. Las personas pueden publicar misterios/casos y otras personas pueden resolverlos. Además, las personas obtendrán puntos en caso de que resuelvan los misterios o en función de la popularidad de sus publicaciones.
  4. Más importante aún, las personas no necesitan registrarse para mi aplicación, sino que pueden iniciar sesión utilizando sus cuentas ya existentes de Google/Facebook.

Por lo tanto, creo que hay una diferencia considerable entre Facebook/Instagram/Twitter y mi aplicación y atraería a mucha gente.

6. Programación y Estimaciones

Hito Descripción Fecha de lanzamiento Liberar
      Iteración
M1 Vista y diseño de la aplicación 5 de octubre de 2015 R1
  (Desarrollo frontal)    
M2 Base de datos para mi aplicación 17 de octubre de 2015 R1
  (Back-end)    
M3 Integración de vistas y diseños 12 de noviembre de 2015 R1
  (Integrando front-end y    
  back-end)    
M4 Pruebas para la versión inicial 20 de noviembre de 20015 R2
M5 Rastreador de problemas, reseñas de usuarios, 1 de diciembre de 2015 R2
  integración de diseño web    
M6 Lanzamiento final 23 de diciembre de 2015 R2

7. Proceso Técnico 

Los siguientes serían los idiomas que usaría para desarrollar mi aplicación dentro del período de tiempo estipulado:

Desarrollo front-end: Jquery, HTML, CSS, PHP.

Desarrollo back-end: PHP, MySQL.

Para la aplicación de Android: Java en Android SDK.

El blog es una contribución de Anurag Mishra .

 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *