jueves, 28 de febrero de 2019

¿Que son los requerimientos?


Cuando hablamos de requerimientos, nos referimos a la función que va a cumplir el sistema con el fin de obtener los resultados esperados tanto por parte del usuario como del cliente. Además, el sistema debe presentarse con un diseño adecuado y óptimo para el usuario.

miércoles, 27 de febrero de 2019

Tipos de requerimientos

1. Ambiente físico.
2. Interfaces.
3. Usuarios y factores humanos.
4. Funcionalidad.
5. Documentación.
6. Datos.
7. Recursos.
8. Seguridad.
9. Aseguramiento de la calidad.

martes, 26 de febrero de 2019

Interfaces

 - ¿La entrada proviene de uno o más sistemas?
 - ¿La salida va a uno o más sistemas?
                         - ¿Existe una manera preestablecida en que deben formatearse los datos?

lunes, 25 de febrero de 2019

Ambiente físico

- ¿Dónde esta el equipo que el sistema necesita para funcionar?
- ¿Existe una localización o varias?
 - ¿Hay restricciones ambientales como temperatura, humedad o interferencia magnética?

domingo, 24 de febrero de 2019

Usuarios y factores humanos

- ¿Quien usará el sistema?
 - ¿Habrá varios tipos de usuario?
 - ¿Cuál es el nivel de habilidad de cada tipo de usuario?
- ¿Qué clase de entrenamiento requerirá cada tipo de usuario?
 - ¿Cuán fácil le será al usuario comprender y utilizar el sistema?
- ¿Cuán difícil le resultará al usuario hacer uso indebido del sistema?

sábado, 23 de febrero de 2019

Funcionalidad

- ¿Qué hará el sistema?
- ¿Cuándo lo hará?
- ¿Existen varios modos de operación?
- ¿Cómo y cuando puede cambiarse o mejorarse un sistema?
 - ¿Existen restricciones de la velocidad de ejecución, tiempo de respuesta o rendimiento?

viernes, 22 de febrero de 2019

Documentación

- ¿Cuánta documentación se requiere?
 - ¿Debe estar en línea, en papel o en ambos?
- ¿A que audiencia está orientado cada tipo de información?

jueves, 21 de febrero de 2019

Recursos

- ¿Qué recursos materiales, personales o de otro tipo se requieren para construir, utilizar y mantener     el sistema?
- ¿Qué habilidades deben tener los desarrolladores?
- ¿Cuánto espacio físico será ocupado por el sistema?
- ¿Cuáles son los requerimientos de energía, calefacción o acondicionamiento de aire?
- ¿Existe un cronograma prescrito para el desarrollo?
- ¿Existe un límite sobre la cantidad de dinero a gastar en el desarrollo o en hardware y software?

miércoles, 20 de febrero de 2019

Datos

- ¿Cuál será el formato de los datos, tanto para la entrada como para la salida?
- ¿Cuán a menudo serán recibidos o enviados?
- ¿Cuán exactos deben ser?
- ¿Con qué grado de precisión deben hacerse los cálculos?
- ¿Cuántos datos fluyen a través del sistema?
- ¿Debe retenerse algún dato por algún período de tiempo?

martes, 19 de febrero de 2019

Seguridad

- ¿Debe controlarse el acceso al sistema o a la información?
- ¿Cómo se podrán aislar los datos de un usuario de los de otros?
- ¿Cómo podrán aislarse los programas de usuario de los otros programas y del sistema operativo?
- ¿Con qué frecuencia deben hacerse copias de respaldo?
- ¿Las copias de respaldo deben almacenarse en un lugar diferente?
- ¿Deben tomarse precauciones contra el fuego, el daño provocado por agua o el robo?

lunes, 18 de febrero de 2019

Características de los requerimientos

Los requerimientos deben ser correctos con esto  nos referimos a que tanto el cliente como el desarrollador deben revisarlos para asegurar que no tienen errores. Otra característica de los requerimientos es que debe ser consistentes con esto nos referimos  a que los requerimientos se deben cumplir simultáneamente o no se podrían desarrollar.
También hablamos de que estos requerimientos deben ser realistas pues tienen que tener un alcance fijo para llegar a cumplir con todos los propósitos ademas de esto los requerimientos deben estar completos.
¿Cada requerimiento describe algo que es necesario para el cliente?  
 Los requerimientos deben ser revisados para conservar sólo aquellos que inciden directamente en la resolución del problema del cliente.

domingo, 17 de febrero de 2019

Métodos de entrevistas

La entrevista es una forma de recoger información de otra persona a través de una comunicación interpersonal.

Preparación:
El entrevistador debe documentarse y presentarse a la hora establecida por la empresa, el lugar donde se va a llevar a cabo la entrevista debe ser acogedor para así llevar a cabo un proceso correcto.


Realización: 
Hay tres fases:
Apertura: Presentarse e informar al entrevistado sobre la razón de la entrevista.
Desarrollo: Cumplir las reglas del protocolo, hay que llegar a un acuerdo sobre como se va a registrar la información obtenida.
Terminación: Se termina recapitulando la entrevista agradeciendo el esfuerzo y dejando abierta la posibilidad de volver a contactar para aclarar conceptos o bien citándole para otra entrevista.

Análisis:Consiste en leer las notas, pasarlas en limpio, reorganizar la información, contrastarlas con otras entrevistas o fuentes de información, evaluar como ha ido la entrevista.

sábado, 16 de febrero de 2019

Tipos de entrevistas

Las entrevistas pueden ser de dos tipos:

Cerrada: Consiste en que los entrevistados responden a preguntas que ya están definidas para cada uno de los entrevistados.

Abiertas: Este tipo de entrevistas consiste en que la persona encargada de la entrevista tiene a su disposición diferentes preguntas que pueden ir surgiendo en el proceso de dicha entrevista.

viernes, 15 de febrero de 2019

Procesos de la Ingeniería de Requerimientos.

Es un proceso en el que se realiza un documento en el cual se especifican los diferentes requerimientos para el desarrollo del sistema, se realiza teniendo en cuenta las siguientes partes:

El estudio de viabilidad, que evalúa si el sistema es útil para el negocio.
Obtención y análisis de requerimientos. 
Especificación de requerimientos: transformación de los requerimientos en formularios estándar.  Validación: verificar que los requerimientos realmente definen el sistema que quiere el cliente.


jueves, 14 de febrero de 2019

Estudio de viabilidad

 El estudio de viabilidad no debe requerir más de dos o tres semanas. El resultado de este estudio es un informe que recomiende si vale o no la pena seguir con la ingeniería de requerimientos y el proceso de desarrollo del sistema. En el informe se pueden proponer cambios en el alcance, el presupuesto o sugerir requerimientos adicionales de alto nivel.

miércoles, 13 de febrero de 2019

Obtención y análisis de requerimientos

La siguiente etapa del proceso de ingeniería de requerimientos es la obtención y análisis de requerimientos. En esta actividad, los ingenieros de software trabajan con los clientes y los usuarios finales del sistema para determinar el dominio de la aplicación, qué servicios debe proporcionar el sistema, el rendimiento requerido del sistema, las
restricciones hardware, etcétera.

Tomado de: Análisis de requerimientos

martes, 12 de febrero de 2019

Especificación de requerimientos

Es un documento que define, de forma completa, precisa y verificable, los requisitos, el diseño y el comportamiento u otras características, de un sistema o componente de un sistema. Para realizar bien el desarrollo de software es esencial tener una especificación completa de los requerimientos. Independientemente de lo bien diseñado o codificado que esté, un sistema pobremente especificado decepcionará al usuario y hará fracasar el desarrollo.

Tomado de: Análisis de requerimientos

lunes, 11 de febrero de 2019

Validación de requerimientos

La 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. Esta validación es importante porque la detección de errores durante el proceso de análisis de requerimientos reduce mucho los costos. Si se detecta un cambio en los requerimientos una vez que el sistema esta hecho, los costos son muy altos, ya que significa volver a cambiar el diseño, modificar la implementación del sistema y probarlo nuevamente.

sábado, 9 de febrero de 2019

Requerimientos funcionales

Los requisitos funcionales son declaraciones de los servicios que prestará el sistema, en la forma en que reaccionará a determinados insumos. Cuando hablamos de las entradas, no necesariamente hablamos sólo de las entradas de los usuarios. Pueden ser interacciones con otros sistemas, respuestas automáticas, procesos predefinidos.

viernes, 8 de febrero de 2019

Requerimientos no funcionales

Los requerimientos no funcionales representan características generales y restricciones de la aplicación o sistema que se esté desarrollando.

Suelen presentar dificultades en su definición dado que su conformidad o no conformidad podría ser sujeto de libre interpretación, por lo cual es recomendable acompañar su definición con criterios de aceptación que se puedan medir.

jueves, 7 de febrero de 2019

Modelo evolutivo

El desarrollo evolutivo consta del desarrollo de una versión inicial que luego de exponerse se va refinando de acuerdo de los comentarios o nuevos requerimientos por parte del cliente o del usuario final. Las fases de especificación, desarrollo y validación se entrelazan en vez de separarse.

miércoles, 6 de febrero de 2019

Modelo cascada

También llamado Lineal secuencial, es el enfoque metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal forma que el inicio de cada etapa debe esperar a la finalización de la etapa anterior.

martes, 5 de febrero de 2019

COMPONENTES REUTILIZABLES DEL SOFTWARE

El principal objetivo de lo que se conoce como Ingeniería del Software es producir software de calidad. El ideal que siempre persigue un informático es que sus programas sean rápidos fiables, fáciles de usar, legibles, modulares, estructurados, etc. Estas características describen dos tipos diferentes de cualidades software. Por un lado estamos considerando propiedades como facilidad de uso y rapidez, que son detectadas por los usuarios del producto, entendiendo por usuarios no sólo las personas que interactúan con el producto final, sino aquellas que trabajan en su desarrollo y evolución. Por otro lado, existen características inherentes al producto que sólo son percibidas por profesionales de la informática, como modularidad o legibilidad. Esta diferencia en la detección de la ausencia o presencia de una propiedad en el software nos permite distinguir entre factores de calidad externos e internos. En el primer grupo podríamos incluir básicamente factores como corrección, robustez, extensibilidad, reutilización, compatibilidad, transportabilidad, eficiencia, facilidad de verificación, integridad y facilidad de
uso.

lunes, 4 de febrero de 2019

Metodologías Estructuradas

Desarrollo de sistemas la unidad básica de construcción es la función, es decir, modelan a un sistema en términos de conjuntos de instrucciones que ejecutan una tarea. En otras palabras, las metodologías estructuradas se enfocan principalmente en la descomposición funcional de un sistema. El objetivo es lograr una definición completa del sistema en términos de funciones, estableciendo los datos de entrada y salida correspondientes. Existen tres herramientas gráficas de modelado, también llamadas artefactos, que sirven para construir una especificación de los requerimientos del usuario usando una metodología estructurada, éstas son: los Diagramas de Entidad-Relación (DER), los Diagramas de Flujo de Datos (DFD) y los Diagramas de Transición de Estados (DET). Cada uno de ellos brinda una visión diferente del sistema.

sábado, 2 de febrero de 2019

Diagrama de flujo de datos

Las herramientas gráficas más importantes del análisis estructurado son los Diagramas de Flujo de Datos (DFD). Un diagrama de flujo de datos (DFD), es una técnica gráfica que describe el flujo de información y las transformaciones que se aplican a los datos, conforme se mueven de la entrada a la salida, visualiza a un sistema como una red de procesos conectados entre sí. Los Diagramas de Flujo de datos son una notación operacional semiformal que ha sido ampliamente adoptada para la especificación de sistemas de información. Un DFD es independiente del tamaño y de la complejidad del sistema, consiste en un diagrama en forma de red que representa el flujo de datos y las transformaciones que se aplican sobre ellos al moverse desde la entrada hasta la salida del sistema. El DFD se apoya en otras 2 técnicas: Diccionario de Datos, y Especificaciones de procesos.

viernes, 1 de febrero de 2019

Diccionario de Datos

El Diccionario de Datos es una lista organizada de todos los datos pertinentes al sistema con definiciones precisas y rigurosas para que tanto el usuario como el analista tengan un entendimiento común de todas las entradas, salidas, componentes de almacenes y cálculos intermedios. Un análisis del dominio de la información puede ser incompleto si solo se considera el flujo de datos. Cada flecha de un diagrama de flujo de datos representa uno o más elementos de información. Por tanto, el analista debe disponer de algún otro método para representar el contenido de cada flecha de un DFD.

jueves, 31 de enero de 2019

Diagramas Entidad-Relación (DER).

Sirven para modelar un almacenamiento de datos. En muchos casos, los datos manipulados por el sistema determinan las acciones que se realizan. Puede ser útil definir los requerimientos concentrándose en los datos en lugar de las funciones. La abstracción de datos es una técnica para describir para qué son los datos, en lugar de cuál es su apariencia o como se denominan. Para describir los datos se utiliza el diccionario de tipo de datos. La idea central es categorizar los datos y agrupar los elementos semejantes. El Modelo Entidad /Relación fue desarrollado por Chen en 1976. Es un modelo muy utilizado en el campo de diseños de bases de datos. Su principal ventaja es que es traducible casi automáticamente a un esquema de bases de datos bajo modelo relacional. El aspecto de datos es más estable que el funcional en la mayoría de los sistemas; también es mucho más difícil pensar en modelo de datos. La mayor dificultad se presenta en poder establecer la estructura de los objetos y las relaciones entre los mismos.

miércoles, 30 de enero de 2019

Diagramas de Transición de Estados (DTE)


Se utilizan cuando el aspecto más importante a considerar es el comportamiento del sistema a través del tiempo. Los Diagramas de Transición de Estados (DTE) es una notación operacional semi-formal que permite construir modelos de comportamiento dependientes del tiempo. Los principales componentes de un DTE son los estados y las transiciones (flechas que representan cambios de estado). Además, tenemos las condiciones y las acciones asociadas a las transiciones.

martes, 29 de enero de 2019

Sistemas de biblioteca - Nivel 0 (DFD)

En el diagrama de contexto se caracterizan todas las interacciones que realiza un sistema con su entorno (entidades externas), estas pueden ser otros sistemas, sectores internos a la organización, o factores externos a la misma. Se dibuja un sólo proceso que representa al sistema en cuestión y se escribe su nombre en dicha burbuja como un sustantivo común más adjetivos. De él solamente parten los flujos de datos que denotan las interrelaciones entre el sistema y sus agentes externos, no admitiéndose otros procesos ni almacenamientos en el dibujo.

domingo, 27 de enero de 2019

Sistema de biblioteca - Nivel 1 (DFD)

En el diagrama de nivel superior se plasman todos los procesos que describen al proceso principal. En este nivel los procesos no suelen interrelacionarse directamente, sino que entre ellos debe existir algún almacenamiento o entidad externa que los una. Esta regla de construcción sirve como ayuda al analista para contemplar que en un nivel tan elevado de abstracción (DFD Nivel 1) es altamente probable que la información que se maneja requiera ser almacenada en el sistema aunque no esté especificado por un Requisito funcional, siendo en realidad un Requisito no funcional.

sábado, 26 de enero de 2019

Sistema de biblioteca - Nivel 2 (DFD)

En un diagrama de nivel 2 o mayor, comienzan a explotarse las excepciones a los caminos principales de la información dado que aumenta progresivamente el nivel de detalle. De aquí en adelante se permiten los flujos entre procesos.
El DFD (Diagrama De Flujo De Datos) nivel 2 puede considerarse el máximo para ser validado en forma conjunta con el usuario dado que en los niveles posteriores el alto grado de complejidad del diagrama puede resultar de muy difícil lectura para personas ajenas al equipo de sistemas. También se recomienda el diagrama de nivel superior.