Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Especificación
de requisitos funcionales
2 de 19
Índice
1. Introducción …………………………………………………………………………………………………………………… 5
2. Definición ……………………………………………………………………………………………………………………… 6
5 de 20
2. Definición
La acción de programar no es, ni más ni menos, que indicar a una máquina lo que
tiene que hacer, siguiendo un conjunto ordenado de instrucciones. En realidad, las
personas realizamos muchas programaciones a lo largo del día sin darnos cuenta
de ello:
• Configuramos una alarma del reloj para que suene a una hora determinada.
El pseudocódigo es una forma de expresar los distintos pasos que van a realizar
en un programa, utilizando palabras del lenguaje de las personas, pero forzando la
estructura requerida por un lenguaje de programación. De esta forma se pueden
representar los pasos que dan la solución a un problema o algoritmo, de la forma
más detallada posible, utilizando un lenguaje cercano al mismo tiempo a la
programación y a las personas.
6 de 20
2. Definición
7 de 20
3. Análisis y especificación de requisitos
8 de 20
3. Análisis y especificación de requisitos
9 de 20
3. Análisis y especificación de requisitos
REQUERIMIENTOS FUNCIONALES
4. Pago de matrícula:
REQUERIMIENTOS NO FUNCIONALES
10 de 20
4. Casos de uso
Los casos de uso también son una forma de describir los requisitos funcionales y
describen el modo en que un usuario interactúa con el sistema (en lenguaje
natural). Los casos de uso resultan muy útiles para explicar el funcionamiento de
los sistemas informáticos, priorizando los requerimientos cuando el sistema se
desarrolla de forma incremental (por ejemplo, en base a prototipos que se van
mejorando), también son muy útiles a la hora de elaborar manuales de usuario, así
como a la hora de especificar las pruebas de validación.
Cada caso de uso se centra en describir cómo alcanzar una única meta o una tarea
del programa. Desde una perspectiva tradicional de la ingeniería de software, un
caso de uso describe una característica del sistema. En la mayoría de los
proyectos de software, este es un trabajo muy extenso ya que puede significar
que el analista deba especificar decenas o hasta cerca de cien casos de uso, hasta
definir completamente todo lo que hace el sistema.
Un caso de uso contiene una descripción textual de todas las maneras que los
actores previstos podrían trabajar con el software o el sistema. Los casos de uso
no describen ninguna funcionalidad interna (oculta al exterior) del sistema, ni
explican cómo se implementará. Simplemente muestran los pasos que el actor
sigue para realizar una tarea.
11 de 20
4. Casos de uso
Actor Usuario
Aplicación de e-commerce
Actores Usuario
Pre-condiciones
Post-condiciones
USUARIO SISTEMA
1. El usuario se identifica.
2. El sistema autentifica al
Escenario principal usuario.
3. Si es correcto le ofrece la
lista de cursos disponibles.
12 de 20
4. Casos de uso
El usuario selecciona el
curso deseado.
El sistema le presenta un
resumen de las
características del curso,
fechas y precio.
Si lo desea, el usuario
paga.
2. Si al tercer intento no se
realiza con éxito, se guarda
la incidencia en un registro.
Se inhabilita durante 15 min.
Alternativas El acceso desde la misma IP
3. Si la autenticación no es
correcta se muestra la
página de Inicio
-
Observaciones
13 de 20
5. Diagramas UML
Los casos de uso pueden ser descritos de forma gráfica y visual, aunque con
menos detalle que de la forma textual descrita en el apartado anterior. El Lenguaje
de Modelado Unificado (UML), define una notación gráfica, para representar casos
de uso, llamada modelo de casos de uso. UML no define estándares para que el
formato escrito describa los casos de uso, y así mucha gente no entiende que esta
notación gráfica define la naturaleza de un caso de uso; sin embargo, una notación
gráfica puede solo dar una vista general simple de un caso de uso o un conjunto de
casos de uso.
UML está orientado hacia un enfoque más clásico para los lenguajes orientados a
objetos, como TypeScript, pero también se puede usar para diseñar sistemas
programados con otros lenguajes, como JavaScript. UML describe muchos tipos
de diagramas distintos. Así, los diagramas de clase pueden ser adecuados para
representar estructuras orientadas a objetos, y los diagramas de secuencia o los
diagramas de gráficos de estado muestran lo que ocurre en tiempo de ejecución.
14 de 20
5. Diagramas UML
Figura 2. Diagrama de clases de un portal web que incorpora tecnologías HTML, CSS y JS. Fuente:
https://qastack.mx/software/164958/are-uml-class-diagrams-adequate-to-design-javascript-
systems
Para las aplicaciones fabricadas con un marco como Angular, por ejemplo, se
puede describir una arquitectura de referencia, explicando sobre qué tipos de
componentes se trabaja y sus relaciones mutuas. En ese caso, el diseño técnico
puede referirse a la arquitectura de la aplicación creada de manera mucho más
concisa.
15 de 20
5. Diagramas UML
16 de 20
5. Diagramas UML
17 de 20
5. Diagramas UML
Modelos como estos proporcionan una buena idea de cómo funciona la aplicación
y, al mismo tiempo, pueden relacionarse con historias de usuarios o casos de uso
fácilmente. Es la mejor forma de unir el diseño funcional con el técnico.
18 de 20
2 de 19