Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Ingenieria de requisitos
1. REPUBLICA BOLIVARIANA DE VENEZUELA
INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO”
EXTENSION PORLAMAR
REALIZADO POR:
VASQUEZ VELASQUEZ, JOSÉ ENRIQUE
C.I: 24.597.920
ING. DE SISTEMAS
17/05/2015
2. Seguidamente se tienen dificultades
cuando tratamos de obtener los requisitos de
nuestros clientes, ya que se tienen problemas
al momento de comprender la información que
se adquiere. La comprensión de los requisitos
de un problema es una de las dificultades a las
que se enfrenta un ingeniero de software, ya
que el cliente no siempre sabe lo que se
requiere y los usuarios finales no siempre
entienden las características que le
proporcionan beneficios, así como también los
requisitos suelen cambiar durante el proyecto.
3. Ingeniería de Requisitos
La ingeniería de requisitos constituye el
enlace entre las necesidades reales de los clientes,
usuarios y otros participantes vinculados al
sistema. La ingeniería de requisitos consiste en un
conjunto de actividades y transformaciones que
pretenden comprender las necesidades de un
sistema software y convertir la declaración de estas
necesidades en una descripción completa, precisa
y documentada de los requerimientos del sistema
siguiendo un determinado estándar.
4. Definición de Requerimientos
Un requerimiento es una necesidad
documentada sobre el contenido, forma o
funcionalidad de un producto o servicio.
Los requerimientos son declaraciones que
identifican atributos, capacidades, características o
cualidades que necesita cumplir un sistema (o un
sistema de software) para que tenga valor y utilidad
para el usuario. En otras palabras, los
requerimientos muestran qué elementos y funciones
son necesarias para un proyecto.
5. Características de los Requerimientos
a. Actual: el requerimiento no debe volverse obsoleto con el paso del
tiempo.
b. Cohesión: el requerimiento debe dirigirse a solo una única cosa.
c. Completo: el requerimiento debe estar completamente declarado
en un único lugar, sin información faltante.
d. Consistente: el requerimiento no debe contradecir ningún otro
requerimiento y debe ser completamente consistente con toda la
documentación.
e. Correcto: el requerimiento debe cumplir con la necesidad
declarada por los interesados en el sistema/software.
6. f. Factible: el requerimiento debe poder ser implementado.
g. No ambiguo: el requerimiento debe estar concisamente
declarado. Debe expresar hechos objetivos, no opiniones
subjetivas. Debe poder ser interpretado de una única manera.
h. Obligatorio: el requerimiento debe representar una característica
definida por el grupo interesado en el desarrollo del
sistema/software, su ausencia no puede ser reemplazada.
i. Observable externamente: el requerimiento debe especificar
una característica observable externa o experimentable por el
usuario del producto.
j. Verificable: La implementación del requerimiento debe poder ser
resuelta en alguno de estos cuatro métodos: inspección, análisis,
demostración o prueba.
7. Ingeniería de Requerimientos
La Ingeniería de Requerimientos en si cumple
un papel primordial en el proceso de construcción y
producción de un software, es decir que, estará basado
en función de las necesidades planteadas por los
clientes en un nivel muy general, donde se descubre,
documenta, analiza y se define los servicios o
componentes de lo que se desea producir, además de
las restricciones que tendrá el producto o software. Su
principal tarea consiste en la definición del proceso a
seguir en la construcción de un software, y de facilitar
la comprensión de lo que el cliente requiera. La
obtención correcta de los requerimientos puede llegar
a describir con claridad, sin ambigüedades, en forma
consistente y compacta, el comportamiento de un
sistema.
8. Técnicas principales aplicadas en la Ingeniería de
Requisitos
Existen varias técnicas para la ingeniería de requisitos, sin
embargo, mencionaremos algunas de las mas importantes y cada
una de estas técnicas pueden ser aplicadas, pero en la practica el
uso de la técnica dependerá del proyecto a desarrollar.
1. Entrevistas y cuestionarios : Las entrevistas son un método
común. Por lo general no se entrevista a toda la gente que se
relacionará con el sistema, sino a una selección de personas que
represente a todos los sectores críticos de la organización, con el
énfasis puesto en los sectores más afectados o que harán un uso
más frecuente del nuevo sistema.
2. Talleres: Los requisitos tienen a menudo implicaciones cruzadas
desconocidas para las personas implicadas individuales y que a
menudo no se descubren en las entrevistas o quedan
incompletamente definidas durante la misma.
9. 3. Forma de contrato: En lugar de una entrevista, se pueden
llenar formularios o contratos indicando los requisitos. En sistemas
muy complejos éstos pueden tener centenares de páginas.
4. Prototipos: Un prototipo es una pequeña muestra, de
funcionalidad limitada, de cómo sería el producto final una vez
terminado. Ayudan a conocer la opinión de los usuarios y rectificar
algunos aspectos antes de llegar al producto terminado.
5. Casos de uso: Un caso de uso es una técnica para
documentar posibles requisitos, graficando la relación del sistema
con los usuarios u otros sistemas. Dado que el propio sistema
aparece como una caja negra, y sólo se representa su interacción
con entidades externas, permite omitir dichos aspectos y
determinar los que realmente corresponden a las entidades
externas. El objetivo de esta práctica es mejorar la comunicación
entre los usuarios y los desarrolladores, mediante la prueba
temprana de prototipos para minimizar cambios hacia el final del
proyecto y reducir los costes finales.
10. Fases de la Ingeniería de requerimientos
Obtención : a través de entrevistas o comunicación con clientes o
futuros usuarios, para saber cuáles son sus expectativas.
Análisis: detectar y corregir las carencias o falencias comunicativas,
transformando los requisitos obtenidos de entrevistas y requisitos, en
condiciones apropiadas para ser tratados en el diseño.
Documentación : igual que todas las etapas, los requerimientos deben
estar debidamente documentados.
Verificación: consiste en comprobar la implementación de los
requerimientos.
Validación: comprobar que los requerimientos implementados sean
funcionales para lo que inicialmente se construyó el producto.
11. Requerimientos de software de la Ingeniería de
Requerimientos
Muchos proyectos de Software fracasan porque no se
realiza un estudio previo de los requerimientos del usuario, no se
hace una definición completa del alcance del proyecto. No
realizamos el modelado del negocio antes de desarrollar el
software, esto significa que el analista no se involucra en el
problema; aunque tiene claro que el sistema debe desarrollarse
para dar soporte a los procesos de la organización, sino se
involucra en la problemática corre el riesgo de que los requisitos
identificados no correspondan a las necesidades para lo que se
debe crear.
La ingeniería de requerimientos cumple un papel primordial
en el proceso productivo ya que se enfoca en el área fundamental:
"LA PRODUCCION", siendo su tarea la generación de
especificaciones correctas que describan con claridad, sin
ambigüedades y en forma compacta las necesidades del cliente,
cumpliendo lo antes expresado se obtendrá un proyecto que
minimizará los problemas relacionados con la gestión de dichos
requerimientos.
12. Respondiendo a la pregunta inicial entonces podemos
decir que los requerimientos son importantes debido a que son el
hilo conductor de todo desarrollo de software. Obtener
requerimientos de calidad demuestra que el trabajo realizado
culminará con éxito, esto se debe a dos factores:
1. La utilización adecuada de las técnicas de captura de
requerimientos con los clientes.
2. Las experiencias de los analistas del proyecto.
Esto sucede porque la experiencia de trabajo en el rol le
permite al equipo de Analistas del Proyecto establecer que
técnicas van a utilizar a la hora de la entrevista con el cliente
debido a que los clientes no entienden el lenguaje informático, es
por eso que se debe tener en cuenta el lenguaje el cual se va a
aplicar a la hora de la entrevista con el cliente.
13. Los procesos utilizados en Ingeniería de
Requerimientos varían dependiendo del dominio de
aplicación, de la gente implicada y de la organización
que desarrolla los requisitos.
Sin embargo, hay un número de actividades
genéricas comunes a todos los procesos:
1. Estudio de viabilidad.
2.Elicitación(extracción o captura) de Requerimientos. „
3. Análisis de Requerimientos. „
4. Validación de Requerimientos. „
5. Gestión de Requerimientos.
Actividades de la Ingeniería de Requerimientos
14. Dificultades para definir los Requerimientos
Durante la etapa de especificación de requerimientos se
pueden presentar muchos inconvenientes los cuales son importantes
de identificar y prevenir, a continuación se presenta un listado con los
problemas más comunes en este proceso:
a. Los requerimientos no son obvios y vienen de muchas fuentes.
b. Son difíciles de expresar en palabras (el lenguaje es ambiguo).
c. La cantidad de requerimientos en un proyecto puede ser difícil de
manejar.
d. Un requerimiento puede cambiar a lo largo del ciclo de desarrollo.
e. El usuario no puede explicar lo que hace, Tiende a recordar lo
excepcional y olvidar lo rutinario, Hablan de lo que no funciona, los
usuarios tienen distinto vocabulario que los desarrolladores.
15. La Ingeniería de Requisitos formalizarlas actividades
relacionadas con obtener la especificación de requisitos formales
del sistema a desarrollar a base de interactuar y negociar con el
cliente. Especialmente en las metodologías del desarrollo de
software es crucial contar con un conjunto de requisitos muy
estables sobre los que construir el resto del proyecto.
Es importante tomarse el tiempo necesario para conocer
a nuestros clientes y usuarios, así como su ambiente de trabajo.
Esto, también ayuda a establecer una buena relación de trabajo y
comunicación entre el equipo de desarrollo y los clientes.
Entregar software de calidad, a tiempo y dentro
del presupuesto, hará que nuestros clientes confíen y asegurará
el crecimiento y madurez de la relación de negocio.
16. LAGUNA, MIGUEL A. 2. REQUISITOS. (2008). [DOCUMENTO EN LINEA]
DISPONIBLE EN: http://www.infor.uva.es/~mlaguna/is1/apuntes/2-requisitos.pdf
[CONSULTADO: MAYO, 2015]
CHAVES ARIAS, MICHAEL. LA INGENIERIA DE REQUERIMIENTOS Y SU
IMPORTANCIA EN EL DESARROLLO DE PROYECTOS DE SOFTWARE. (2005).
[DOCUMENTO EN LINEA] DISPONIBLE EN:
http://www.redalyc.org/articulo.oa?id=66661111
[CONSULTADO: MAYO, 2015]
MAITA, YETSI. LOS REQUERIMIENTOS Y SU IMPORTANCIA EN EL
DESARROLLO DEL SOFTWARE. (2012). [BLOG] DISPONIBLE EN:
http://kuainasi.ciens.ucv.ve/red_educativa/blogs/user/YetsiMaita
[CONSULTADO: MAYO, 2015]