lunes, 23 de octubre de 2017

obtencion y analisis de requerimientos

2.3 Especificación de los requerimientos funcionales.

VALIDACIÓN DE REQUERIMIENTOS
Sirve para demostrar que éstos realmente definen el sistema que el cliente desea. Asegura que los requerimientos están completos, son exactos y consistentes. Debe garantizar que lo descrito es lo que el cliente pretende ver en el producto final.
¿Por qué ES IMPORTANTE?

Esta validación es importante porque la detección de errores durante el proceso de análisis de requerimientos reduce mucho los costos. Estos procesos se evalúan con los siguientes aspectos:
VERIFICACIÓN DE VALIDEZ
 El análisis puede identificar que se requieren, funciones adicionales o diferentes a las que solicitaron los stakeholders.
 VERIFICACIÓN DE CONSISTENCIA
 No debe haber restricciones o descripciones contradictorias en el sistema.
 VERIFICACIONES DURANTE EL PROCESO DE VALIDACIÓN
VERIFICACIÓN DE COMPLETITUD
 El documento de requerimientos debe incluir requerimientos que definan todas las funciones y restricciones propuestas por el usuario del sistema. 
VERIFICACIÓN DE REALISMO
Asegurar que los requerimientos pueden cumplirse teniendo en cuenta la tecnología existente, el presupuesto y el tiempo disponible.
 VERIFICABILIDAD

Para reducir la posibilidad de discusiones con el cliente, los requerimientos del sistema siempre deben redactarse de tal forma que sean verificables. Esto significa que se debe poder escribir un conjunto de pruebas que demuestren que el sistema a entregar cumple cada uno de los requerimientos especificados. 

Especificación de requerimientos
El objetivo principal de la Especificación de Requisitos del Sistema (ERS) es servir como medio de comunicación entre clientes, usuarios, ingenieros de requisitos y desarrolladores. En la ERS deben recogerse tanto las necesidades de clientes y usuarios (necesidades del negocio, también conocidas como requisitos de usuariorequisitos de clientenecesidades de usuario, etc.)
Esto ayuda a distinguir los
 Requerimientos Funcionales (ventajas y desventajas)
Los requerimientos funcionales definen las funciones que el sistema será capaz de realizar.
 Describen las transformaciones que el sistema realiza sobre las entradas para producir salidas.

 Dificultades para definir los requerimientos
 Los requerimientos no son obvios y vienen de muchas fuentes.
Son difíciles de expresar en palabras (el lenguaje es ambiguo).
Existen muchos tipos de requerimientos y diferentes niveles de detalle.
La cantidad de requerimientos en un proyecto puede ser difícil de manejar.
 Nunca son iguales. Algunos son más difíciles, más riesgosos, más importantes o más estables que otros.
 Los requerimientos están relacionados unos con otros, y a su vez se relacionan con otras partes del proceso.
Cada requerimiento tiene propiedades únicas y abarcan áreas funcionales específicas.
Un requerimiento puede cambiar a lo largo del ciclo de desarrollo.
Son difíciles de cuantificar, ya que cada conjunto de requerimientos es particular para cada proyecto
TIPOS DE REQUERIMIENTOS:
Requerimientos funcionales: Expresan la naturaleza del funcionamiento del sistema (cómo interacciona el sistema con su entorno y cuáles van a ser su estado y funcionamiento)
Requerimientos no funcionales: Restricciones sobre el espacio de posibles soluciones.
 Rendimiento del sistema: Fiabilidad, tiempo de respuesta, disponibilidad…
 Interfaces: Dispositivos de E/S, usabilidad, interoperabilidad…
Proceso de desarrollo: Estándares, herramientas, plazo de entrega…
 La distinción entre requerimientos funcionales y no funcionales no siempre resulta evidente (ej. la seguridad puede interpretarse inicialmente como un requerimiento no funcional al principio, pero, tras elaborarlo, conduce a la aparición de requerimientos funcionales como la necesidad de autentificar a los usuarios del sistema).
  

OBTENCIÓN DE REQUERIMIENTOS 

La actividad de análisis, diseño y construcción de sistemas de información involucra básicamente a tres tipos de actores: los desarrolladores, que codifican los programas en un lenguaje de programación determinado, los analistas, que especifican la funcionalidad que debe tener el sistema resultante y los usuarios, que poseen requerimientos acerca de lo que debería hacer el sistema para satisfacer sus necesidades de información para la toma de decisiones.  El análisis de requisitos es la fase más importante en el desarrollo de un proyecto software, ya que de un correcto análisis dependerá la correcta implementación de la aplicación.

Esto ayudara a los clientes a describir claramente lo que se desea obtener mediante un determinado software: El cliente debe participar activamente en la especificación de requisitos, ya que éste tiene una visión mucho más detallada de los procesos que se llevan a cabo.  2. Ayudar a los desarrolladores a entender qué quiere exactamente el cliente: En muchas ocasiones el cliente no sabe exactamente qué es lo que quiere. La ERS permite al cliente definir todos los requisitos que desea y al mismo tiempo los desarrolladores tienen una base fija en la que trabajar.
La validación del software tiene lugar dentro del ambiente del ciclo de vida establecido del software. El ciclo de vida del software contiene las tareas de ingeniería de software y la documentación necesaria para soportar la validación del software. Además, el ciclo de vida del software contiene las tareas específicas de verificación y validación que son apropiadas para el uso previsto del software. En la presente nota técnica no recomendamos un modelo particular de ciclo de vida (modelo lineal secuencial, modelo de construcción de prototipos, modelo de desarrollo rápido de aplicaciones, entre otros), sólo establecemos que se deben seleccionar los modelos más apropiados a utilizar en el proyecto de desarrollo del software. Varios modelos del ciclo de vida del software son definidos en la ingeniería del software. El ciclo de vida puede ser seguido completamente o tener variaciones en su desarrollo, debido a las propias características y naturaleza del software que se desea desarrollar y su dominio de implementación. 


ESTUDIO DE FACTIBILIDAD
El estudio de factibilidad es un instrumento que sirve para orientar la toma de decisiones en la evaluación de un proyecto y corresponde a la última fase de la etapa pre-operativa o de formulación dentro del ciclo del proyecto. 
Cuando hablamos de factibilidad técnica, nos referimos al conjunto tecnologías que la organización deberá tener, para que el software que se desarrolle funcione tal y como ellos esperan que funcione, en este sentido comprende:
·         Computadoras
·         Periféricos
·         Instalaciones y servicios de red e Internet
·         Instalaciones eléctricas
·         Espacios físicos.

Factibilidad Económica

En esta etapa, hay que comprobar que el proyecto es sustentable económicamente justificar que la inversión genera una ganancia, demostrar que si el sistema no cumple con su objetivo no habrá perdidas económicas o serán las mínimas.
Las Ventas: demostrar cómo se ha definido el costo del producto y cuáles son los estimados de ventas por el periodo de al menos un año, justificando cada calculo, investigación de mercado y estadísticas.
Se refiere a todos aquellos recursos donde interviene algún tipo de actividad (procesos), depende de los recursos humanos que participen durante la operación del proyecto. Durante esta etapa se identifican todas aquellas actividades que son necesarias para lograr el objetivo y se evalúa y determina todo lo necesario para llevarla a cabo.

Factibilidad Operativa

·         Tiene como objetivo comprobar que una empresa u organización será capaz de darle uso al sistema, que cuenta con el personal capacitado para hacerlo o tiene los recursos humanos necesarios para mantener el sistema. Para esto, el sistema debe contemplar cuatro puntos importantes al momento de desarrollarse.
 El sistema no debe ser complejo para los usuarios de la organización o los que operan el sistema, hay que evitar que el usuario ocupe el sistema de manera que pueda ocasionar errores o darle un uso indebido, simplificar las funciones y dar todo por servido. 


factibilidad