Rep煤blicaBolivarianadeVenezuela
UniversidadBicentenariadeAragua
DecanatodelaFacultaddeIngenieria
T谩chira,Extensi贸nAcad茅micaSanCrist贸bal
HECHO POR: JUAN DIEGO AMEZQUITA
C.I: V-30781856
AN脕LISIS Y DISE脩O DE SISTEMAS
"Elcaminohaciasistemas exitosos:Descubrec贸mo determinarlosrequerimientos ysatisfacerlasnecesidades delnegocio"
3
Introducci贸n
4,5
Introducci贸n a la determinaci贸n de requerimientos y la identificaci贸n de necesidades
6,7
Definici贸n de las necesidades del negocio
8,10
Requerimientos funcionales
11,14
Requerimientos no funcionales
15,16
An谩lisis de requerimientos
17,18
Documentaci贸n de requerimientos
19,20
Conclusion y Referencias
脥NDICE
1
Introducci贸n
El desarrollo de sistemas es una tarea compleja que involucra m煤ltiples disciplinas, procesos y etapas En este contexto, la determinaci贸n de requerimientos y la identificaci贸n de necesidades del negocio son dos elementos fundamentales para el 茅xito del proyecto Los requerimientos definen qu茅 debe hacer el sistema, mientras que las necesidades del negocio explican por qu茅 el sistema debe hacerlo.
Este ebook tiene como objetivo proporcionar una gu铆a completa para la determinaci贸n de requerimientos y la identificaci贸n de necesidades en el an谩lisis de sistemas y la documentaci贸n de requerimientos. A lo largo de los cap铆tulos, se presentar谩n conceptos clave, m茅todos y t茅cnicas para identificar, definir, analizar, documentar y validar los requerimientos del sistema.
Introducci贸nala determinaci贸nde requerimientosyla identificaci贸nde necesidades
CAPITULO 1
La determinaci贸n de requerimientos se puede definir como el proceso de identificar, analizar y definir las necesidades del sistema que se desea desarrollar Es un paso crucial en el proceso de desarrollo de software, ya que los requerimientos son la base para el dise帽o, la implementaci贸n y la prueba del sistema. Es importante realizar una buena determinaci贸n de requerimientos para evitar problemas de alcance, costo y calidad en el desarrollo del sistema
驴C脫MO LA IDENTIFICACI脫N DE NECESIDADES AYUDA A DEFINIR LOS REQUERIMIENTOS DEL SISTEMA?
La identificaci贸n de necesidades es el proceso de comprender y especificar los problemas y oportunidades que el sistema debe abordar. Este proceso implica la identificaci贸n de los stakeholders (interesados), la recopilaci贸n de informaci贸n y la definici贸n de los objetivos y requerimientos del sistema. La identificaci贸n de necesidades es esencial para definir los requerimientos del sistema, ya que proporciona la base para el proceso de determinaci贸n de requerimientos.
La documentaci贸n de requerimientos tiene varios objetivos, entre los cuales se destacan los siguientes:
* Proporcionar una descripci贸n clara y completa de los requerimientos del sistema para todos los interesados
* Servir como base para el proceso de dise帽o, implementaci贸n y prueba del sistema
* Ayudar a identificar y resolver problemas de requerimientos durante el proceso de desarrollo
* Facilitar la comunicaci贸n entre los miembros del equipo de desarrollo y los interesados.
* Servir como evidencia de los requerimientos del sistema para auditor铆as y revisiones de calidad.
驴Queesladeterminaci贸nde requerimientosyporqu茅es importante?
LOS OBJETIVOS DE LA DOCUMENTACI脫N DE REQUERIMIENTOS
Definici贸ndelas necesidadesdel negocio
2
CAPITULO
Para definir las necesidades del negocio es necesario recopilar informaci贸n de diferentes fuentes En este subtema se describen algunos m茅todos para recopilar informaci贸n, tales como entrevistas, encuestas, talleres y revisi贸n de documentaci贸n existente. Adem谩s, se discute la importancia de seleccionar cuidadosamente a los participantes en las actividades de recopilaci贸n de informacion
Los usuarios y los interesados son los principales beneficiarios del sistema, por lo que es fundamental involucrarlos en la definici贸n de las necesidades del negocio. Este subtema explica por qu茅 es importante involucrar a los usuarios y los interesados, y c贸mo se pueden involucrar en el proceso de definici贸n de necesidades.
C贸modefinirlasnecesidades delnegocio:
Definir las necesidades del negocio implica identificar los problemas y oportunidades que el sistema debe abordar, y establecer los objetivos y requerimientos del sistema. En este subtema se presenta una metodolog铆a para definir las necesidades del negocio, que incluye la identificaci贸n de los stakeholders, la recopilaci贸n de informaci贸n, la definici贸n de los objetivos y requerimientos, y la validaci贸n de los resultados obtenidos.
- Ejemplos de necesidades del negocio: Este subtema presenta ejemplos de necesidades del negocio en diferentes 谩reas, como la salud, la educaci贸n, las finanzas y las ventas. Los ejemplos se presentan con el objetivo de ilustrar c贸mo se pueden definir las necesidades del negocio en diferentes contextos y c贸mo estos pueden ser traducidos en requerimientos del sistema.
-M茅todospararecopilar informaci贸nsobrelas necesidadesdelnegocio
-Laimportanciade involucraralosusuariosy losinteresadosenla definici贸ndenecesidades
Requerimientos funcionales
CAPITULO 3
驴Qu茅sonlosrequerimientosfuncionales?
Los requerimientos funcionales se refieren a las especificaciones de las funciones y capacidades que debe poseer un sistema o software para satisfacer las necesidades y expectativas de los usuarios Estos requerimientos describen qu茅 acciones debe poder realizar el sistema, c贸mo deben llevarse a cabo y bajo qu茅 condiciones. Por ejemplo, si se est谩 desarrollando un sistema de reservas de vuelos, un requerimiento funcional podr铆a ser "El sistema debe permitir a los usuarios buscar y reservar vuelos"
LOS EJEMPLOS DE REQUERIMIENTOS FUNCIONALES PUEDEN VARIAR DEPENDIENDO DEL SISTEMA O SOFTWARE QUE SE EST脡 DESARROLLANDO ALGUNOS EJEMPLOS COMUNES PODR脥AN SER:
EL SISTEMA DEBE PERMITIR A LOS USUARIOS CREAR UNA CUENTA Y ACCEDER CON CREDENCIALES V脕LIDAS
EL SISTEMA DEBE PERMITIR A LOS USUARIOS REALIZAR COMPRAS EN L脥NEA Y PROCESAR PAGOS DE FORMA SEGURA
EL SISTEMA DEBE GENERAR INFORMES MENSUALES CON LOS DATOS DE VENTAS.
EL SISTEMA DEBE PROPORCIONAR UNA FUNCIONALIDAD DE B脷SQUEDA QUE PERMITA A LOS USUARIOS ENCONTRAR PRODUCTOS POR CATEGOR脥A O NOMBRE.
M茅todos para identificar los requerimientos funcionales:
Existen diversos m茅todos y t茅cnicas que pueden utilizarse para identificar los requerimientos funcionales de un sistema. Algunos de estos m茅todos incluyen la observaci贸n directa de los usuarios en su entorno de trabajo, entrevistas estructuradas o no estructuradas con los stakeholders, cuestionarios, talleres de trabajo colaborativos y an谩lisis de documentaci贸n existente. La elecci贸n de los m茅todos depender谩 del contexto del proyecto y de las caracter铆sticas de los stakeholders involucrados
C脫MO DEFINIR LOS REQUERIMIENTOS FUNCIONALES.
Para definir los requerimientos funcionales de manera efectiva, es necesario seguir un proceso estructurado Esto implica identificar y comprender las necesidades y expectativas de los usuarios y traducirlas en requisitos concretos. Los requerimientos funcionales deben ser claros, coherentes y verificables, lo que significa que se pueda comprobar si el sistema los cumple. Para definirlos, se pueden utilizar t茅cnicas como entrevistas a stakeholders, el uso de casos de uso, la creaci贸n de prototipos y la revisi贸n de documentaci贸n existente
驴POR QU脡 SON IMPORTANTES LOS REQUERIMIENTOS FUNCIONALES?
Los requerimientos funcionales son de vital importancia en el proceso de desarrollo de sistemas Estos brindan una gu铆a clara sobre qu茅 debe hacer el sistema, estableciendo las bases para la planificaci贸n, dise帽o y construcci贸n del mismo. Los requerimientos funcionales facilitan la comunicaci贸n entre los stakeholders y el equipo de desarrollo, ya que definen las expectativas y funcionalidades deseadas. Adem谩s, sirven como criterio para evaluar la calidad y 茅xito del sistema una vez implementado
Requerimientosno funcionales
CAPITULO 4
驴Qu茅sonlosrequerimientosnofuncionales?
http://www pmoinformatica com/2015/05/requerimientos-no-funcionales-ejemplos.html
Los requerimientos no funcionales son aquellos que describen las caracter铆sticas y restricciones del sistema que no se refieren directamente a las funciones o capacidades espec铆ficas del mismo Estos requerimientos abordan aspectos como rendimiento, seguridad, usabilidad, escalabilidad, confiabilidad, entre otros. A diferencia de los requerimientos funcionales, que se centran en el "qu茅" debe hacer el sistema, los requerimientos no funcionales se centran en el "c贸mo" debe hacerlo Por ejemplo, un requerimiento no funcional podr铆a ser "El sistema debe tener una respuesta de b煤squeda de menos de 1 segundo"
Los ejemplos de requerimientos no funcionales abarcan una amplia gama de aspectos del sistema Algunos ejemplos comunes incluyen:
El sistema debe ser compatible con los navegadores web m谩s utilizados (usabilidad)
El sistema debe ser capaz de manejar una carga de 1000 usuarios concurrentes sin degradar el rendimiento (rendimiento).
El sistema debe cumplir con los est谩ndares de seguridad ISO 27001 (seguridad)
El sistema debe tener una disponibilidad del 99.9% (disponibilidad).
M茅todosparaidentificarlosrequerimientosno funcionales.
La identificaci贸n de los requerimientos no funcionales puede ser un proceso complejo debido a su naturaleza diversa y a menudo subjetiva. Algunos m茅todos y t茅cnicas que pueden ayudar en la identificaci贸n de estos requerimientos incluyen la consulta de expertos en el dominio, la revisi贸n de est谩ndares y regulaciones relevantes, la realizaci贸n de pruebas y mediciones, la observaci贸n de usuarios en situaciones reales, y la realizaci贸n de encuestas o cuestionarios para recopilar informaci贸n
C贸mo definir los requerimientos no funcionales.
La definici贸n de los requerimientos no funcionales requiere una comprensi贸n profunda de las necesidades y expectativas de los stakeholders y del contexto en el que se utilizar谩 el sistema. Estos requerimientos deben ser espec铆ficos, medibles y verificables. Para definirlos, se pueden utilizar diferentes enfoques, como realizar entrevistas con los stakeholders relevantes, utilizar t茅cnicas de benchmarking para establecer est谩ndares de referencia, realizar pruebas de rendimiento y usabilidad, y analizar regulaciones o est谩ndares aplicables.
驴Porqu茅sonimportanteslosrequerimientos nofuncionales?
Los requerimientos no funcionales son fundamentales para el desarrollo exitoso de un sistema, ya que aseguran que este cumpla con los criterios de calidad y desempe帽o esperados. Estos requerimientos influyen en la experiencia del usuario, la eficiencia y eficacia del sistema, as铆 como en su capacidad para adaptarse y crecer con el tiempo. Adem谩s, los requerimientos no funcionales tambi茅n pueden establecer restricciones legales, 茅ticas o de cumplimiento que deben cumplirse
AN脕LISISDE REQUERIMIENTOS
CAPITULO 5
El an谩lisis de requerimientos implica revisar y examinar detalladamente los requerimientos identificados para garantizar que sean completos y coherentes. Esto implica verificar si los requerimientos abordan todas las funcionalidades y caracter铆sticas necesarias del sistema, as铆 como si no hay contradicciones o ambig眉edades entre ellos. Durante el an谩lisis, es importante involucrar a los stakeholders relevantes para obtener una visi贸n m谩s completa y precisa de las necesidades y expectativas
M脡TODOS DE AN脕LISIS DE REQUERIMIENTOS.
Existen diferentes m茅todos y t茅cnicas que se pueden utilizar para analizar los requerimientos Algunos de ellos incluyen el uso de diagramas de flujo, diagramas de casos de uso, t茅cnicas de revisi贸n y validaci贸n de requerimientos, como la revisi贸n por pares o la t茅cnica de inspecci贸n. Tambi茅n se pueden aplicar t茅cnicas de an谩lisis estructurado, como el an谩lisis de estructuras de datos y el an谩lisis de interfaces, para comprender mejor la interacci贸n y relaci贸n entre los requerimientos
C脫MO IDENTIFICAR Y RESOLVER CONFLICTOS ENTRE REQUERIMIENTOS.
Durante el an谩lisis de requerimientos, es posible encontrar conflictos o contradicciones entre los diferentes requerimientos identificados. Estos conflictos pueden surgir cuando los requerimientos son mutuamente excluyentes o cuando uno requiere una funcionalidad que entra en conflicto con otro requerimiento Para resolver estos conflictos, es necesario negociar y llegar a un consenso entre los stakeholders involucrados. Se pueden utilizar t茅cnicas como la priorizaci贸n de requerimientos, la redefinici贸n de requerimientos o la identificaci贸n de soluciones alternativas.
C贸moanalizarlosrequerimientospara asegurarsedequeseancompletosy coherentes
DOCUMENTACI脫N DE REQUERIMIENTOS
CAPITULO 6
C脫MO DOCUMENTAR LOS REQUERIMIENTOS DEL SISTEMA DE MANERA CLARA Y CONCISA.
La documentaci贸n de requerimientos es fundamental para comunicar de manera efectiva las especificaciones del sistema a todos los miembros del equipo de desarrollo y a los stakeholders. Para lograr una documentaci贸n clara y concisa, se deben utilizar un lenguaje y formato comprensibles, evitar ambig眉edades y utilizar estructuras organizadas para presentar los requerimientos. Adem谩s, se deben incluir detalles suficientes para que los desarrolladores y otros involucrados puedan comprender y trabajar con los requerimientos.
C脫MO MANTENER Y ACTUALIZAR LA DOCUMENTACI脫N DE REQUERIMIENTOS.
La documentaci贸n de requerimientos no es un proceso est谩tico, sino que debe ser mantenida y actualizada a lo largo del ciclo de vida del proyecto A medida que se realizan cambios en los requerimientos, se deben reflejar estas actualizaciones en la documentaci贸n correspondiente. Es importante establecer un proceso de gesti贸n del cambio de requerimientos que incluya revisiones y aprobaciones, y mantener un registro de versiones para rastrear las modificaciones realizadas Adem谩s, se debe promover la comunicaci贸n continua con los stakeholders para garantizar que la documentaci贸n est茅 alineada con sus necesidades y expectativas.
En este trabajo, se ha abordado de manera exhaustiva el tema de los requerimientos en el desarrollo de sistemas y software. A lo largo de los cap铆tulos, se han explorado tanto los requerimientos funcionales como los no funcionales, comprendiendo su importancia, c贸mo definirlos, identificarlos, analizarlos, documentarlos y validarlos.
Los requerimientos funcionales se refieren a las especificaciones de las funciones y capacidades que debe tener un sistema, mientras que los requerimientos no funcionales se centran en caracter铆sticas y restricciones relacionadas con el rendimiento, seguridad, usabilidad, entre otros Ambos tipos de requerimientos son esenciales para desarrollar sistemas que cumplan con las necesidades y expectativas de los usuarios y stakeholders.
A lo largo del trabajo, se han presentado diversos m茅todos y t茅cnicas para llevar a cabo cada etapa del proceso de requerimientos, como entrevistas a stakeholders, an谩lisis de casos de uso, revisi贸n de documentaci贸n existente, entre otros. Se ha enfatizado la importancia de la comunicaci贸n efectiva, la participaci贸n de los stakeholders relevantes y la gesti贸n adecuada de los cambios en los requerimientos
La documentaci贸n de requerimientos ha sido destacada como un componente crucial para transmitir de manera clara y concisa las especificaciones del sistema. Se han discutido diferentes enfoques y herramientas para documentar y mantener actualizada la informaci贸n de los requerimientos a lo largo del proyecto
La validaci贸n de requerimientos ha sido abordada como un proceso cr铆tico para asegurar que los requerimientos sean precisos y cumplan con las necesidades del negocio Se han presentado m茅todos de validaci贸n, como revisiones por expertos y pruebas de concepto, y se ha destacado la importancia de manejar los cambios en los requerimientos de manera adecuada
CONCLUSION
REFERENCIAS
Sommerville, I. (2016). Ingenier铆a de software. Pearson Educaci贸n. Wiegers, K E (2013) Software Requirements Microsoft Press
https://visuresolutions com/es/blog/requerimientos-no-funcionales/ Visure (S/F)
https://medium.com/@requeridosblog/requerimientos-funcionales-y-no-funcionales-ejemplos-y-tipsaa31cb59b22a MEDIUM (ABRIL 2018)
http://www pmoinformatica com/2018/04/documento-de-requerimientos-de-software 37 html PMO (18/04/18)