Desarrollo de proyectos de software

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Desarrollo de proyectos de software por Mind Map: Desarrollo de proyectos de software

1. Modelos de procesos

1.1. Espiral

1.1.1. El proceso de creación transita constantemente entre 4 factores: planificación, análisis de riesgo, ingeniería y evaluación del cliente lo que da una retroalimentación de cada factor en lo que transcurre la creación.

1.2. Cascada

1.2.1. Es un modelo sencillo ya que sigue los procesos de manera lineal e intuitiva.

1.3. Incremental

1.3.1. Es la combinación entre el modelo cascada y evolutivo, su principal función es poder saltar entre ambos modelos dependiendo el manejo de conocimiento que se tenga del proceso que se va a implementar.

1.4. Desarrollo de aplicación rápida

1.4.1. Es un proceso de desarrollo lineal que tiene como objetivo las entregas rápidas de prototipo para obtener retroalimentación del usuario.

1.5. Evolutivo

1.5.1. Consiste en generar un sistema inicial, exponerla la retroalimentación del usuario y generar una nueva versión refinada hasta lograr llegar al producto final.

1.5.1.1. Exploratorio

1.5.1.1.1. Explorar junto al usuario los requisitos, se comienza con las partes más claras del proyecto.

1.5.1.2. Prototipado

1.5.1.2.1. Se inicia con los requisitos que no están tan claros y se lanza un prototipo para experimentar si funciona o no dichos requisitos.

2. Entornos de programación orientada a objetos

2.1. Eclipse

2.1.1. Es un entorno de código abierto, se puede usar en varias plataformas.

2.1.1.1. Lenguajes

2.1.1.1.1. C++,Perl, PHP, Java

2.2. Pycharm

2.2.1. Entorno de programación con diversas funcionalidades de la empresa JET BRAINS.

2.2.1.1. Lenguajes

2.2.1.1.1. Python, JavaScript, CSS

2.3. CodeLite

2.3.1. Es un entorno libre de código abierto y multiplataforma.

2.3.1.1. Lenguajes

2.3.1.1.1. C++, C, Node.js

2.4. Visual Studio

2.4.1. Es uno de los entornos mas utilizados, funciona en Windows y macOS, tiene fácil conexión con distintos programas.

2.4.1.1. Lenguajes

2.4.1.1.1. C++,C#, Java, Python, PHP

3. Procesos

3.1. Modelo de requisitos

3.1.1. Es el primero en desarrollarse, contiene todos los requisitos de funcionalidad que requiere el usuario a partir de una problemática.

3.1.1.1. Descripción del problema

3.1.1.1.1. es una especificación de las necesidades del cliente

3.1.1.1.2. no es una solución

3.1.1.2. modelo de casos de uso

3.1.1.2.1. es la descripción del sistema en diversas formas para utilizarlo. son ideas simples y practicas que se iran puliendo de manera gradual

3.1.1.3. modelo de interfaces

3.1.1.3.1. describe la presentación de información entre actores y elsistema

3.1.1.3.2. se especifica a detalle como se veran las interfases de usuario al ejecutar cada caso de uso

3.1.1.3.3. debe haber consistencia entre imagen conceptual del usuario y comportamiento del sistema

3.1.1.3.4. ayuda a evitar malos entendidos de comunicación entre cliente y desarrollador

3.1.1.4. modelo dominio del problema

3.1.1.4.1. es definir un modelo de clases comun para todos los involucrados en el proeso, incluido los clientes

3.1.1.4.2. ayuda a evitar malos entendidos de comunicación entre cliente y desarrollador

3.1.1.4.3. una de las tecnicas es pedirle al cliente que muestre graficamente como visualiza el sistema

3.2. Modelo de análisis

3.2.1. Genera una arquitectura de objetos general para el sistema en base al modelo de requisitos.

3.2.1.1. arquitectura de clases

3.2.1.1.1. se distinguen segun la organización de los objetos de acuerdo a su funcionalidad

3.2.1.1.2. trabaja por numero de dimensiones

3.2.1.1.3. tienen arquitecturas ya definidas

3.2.1.1.4. se maneja con estereptipos

3.2.1.2. identificar clases

3.2.1.2.1. se deben identificar los elementos para implementar en todos los casos de usos

3.2.1.2.2. se clasificacan segun los estereotipos

3.2.1.3. diagrama de secuencia

3.2.1.3.1. se describe la interacción entre las clases para lograr la funcionalidad de los casos de uso

3.2.1.4. casos de uso

3.2.1.4.1. se genera la descripcion completa de los casos de uso teniendo en cuenta los pasos anteriores

3.3. Modelo de diseño

3.3.1. Genera una arquitectura detallada de objetos, puliendo el resultado del modelo de análisis.

3.3.1.1. Se consideran aspectos como requisitos de rendimiento, lenguaje de programación, manejo de base de datos.

3.3.1.2. trabaja bajos las mismas estructuras del modelo de analisis pero enfocado a la implementación del codigo

3.3.1.3. se implementan dos modelos de diseño

3.3.1.3.1. diseño de objetos

3.3.1.3.2. diseño de sistema

3.3.1.4. estrategias de diseño

3.3.1.4.1. son desiciones importantes a tomar sobre la estrategia a seguir, se relaciona con los siguientes aspectos

3.3.1.5. diagrama de secuencias de diseño

3.3.1.5.1. permite revisar la logica del diseño

3.3.1.5.2. se pueden llegar a mostrar las interacciones internas del subsistema

3.3.1.5.3. corresponde a los protocolos diseñados y se especifican exactamente como se veria en el codigo final

3.4. Modelo de implementación

3.4.1. Genera el código final, se adapta el lenguaje de programación y la base de datos según las especificaciones del diseño.

3.4.1.1. se empieza por estructurar los modelos de casos en el lenguaje de programación seleccionado, definiendo metodos, clases, atributos, variables

3.4.1.2. se generan los diagrama de clases, sirven como apoyo visual al proceso de programación, se ograniza el resultado del paso anterior

3.5. Modelo de pruebas

3.5.1. Se realizan las pruebas finales para la certificación de la calidad del producto.

3.5.1.1. Se ejecuta durante todo el proceso de desarrollo para encontrar errores en los diversos modelos, se debe planificar desde el inicio y destinar el tiempo y presupuestos adecuados.

3.5.1.1.1. definiciones a tener en cuenta

3.5.1.1.2. tipos de pruebas

3.5.1.1.3. tecnicas de prueba

3.5.1.1.4. niveles de pruebas

3.5.1.2. procesos de pruebas

3.5.1.2.1. se realiza durante todo el proceso de desarrollo

3.6. Modelo de documentación

3.6.1. Es el proceso final donde se generan las documentaciones necesarias del proyecto.

3.6.1.1. documentos como: manuales de usuario, de administración, de mantenimiento.