71 lines
3.1 KiB
Org Mode
71 lines
3.1 KiB
Org Mode
#+title: 16 4
|
|
|
|
* Producto
|
|
** Documentacion
|
|
Para poder hacer un sistema necesitamos poder hacer un analisis de los requerimientos necesarios por el cliente. En esto se engloba la creacion de documentacion (manuales, diagramas de clases).
|
|
|
|
** Programas
|
|
Cuando hacemos el sistema creamos distintos artefactos, ejecutables, etc.
|
|
|
|
** Datos
|
|
El diseño logico de datos.
|
|
|
|
* Ciclos de vida
|
|
** Hardware
|
|
#+begin_quote
|
|
Un disco duro se rompe o con su tiempo de vida o por errores de fabricacion
|
|
#+end_quote
|
|
|
|
[[src][title]]
|
|
|
|
** Software
|
|
Cuando hacemos un sistema nunca vamos a tener una version final al primer intento por lo cual vamos a necesitar editar el codigo para poder adecuar el sistema a los nuevos requerimientos.
|
|
|
|
Llegado a un punto el software si no fue hecho con la idea de soportar cambios en un futuro
|
|
|
|
Si no se hace de esa forma llegado a un punto el desarrollo del sistema va a sufrir de un mal diseño a lo largo del tiempo por lo cual el cliente queda con las opciones de o hacer una reingenieria o cambiar el sistema.
|
|
|
|
*Por lo que encontrar un error en una etapa tardia es 50x más caro que en una temprana*
|
|
|
|
* Proceso
|
|
** Incremental
|
|
- Cascada \\
|
|
ir => A => D => C => P => I
|
|
|
|
- Incremental \\
|
|
Repite el desarrollo cascada pero con la diferencia de que luego de terminar la implementacion vuelve a empezar otra etapa cascada para ponerle más caracteristicas al sistema.
|
|
|
|
- ORA \\
|
|
Desde el *ir* se puede dividir el trabajo entre diferentes equipos, de forma paralela
|
|
|
|
** Iteractivos
|
|
- Prototipos \\
|
|
|
|
- Espiral \\
|
|
** Iterativos & Incremental
|
|
- Unificado \\
|
|
|
|
- ICONIX \\
|
|
|
|
** Agile
|
|
- XP \\
|
|
|
|
- Scrum \\
|
|
|
|
- Kanban \\
|
|
|
|
|
|
* Principios del agile
|
|
1. Nuestra principal prioridad es satisfacer al cliente a través de la entrega temprana y continua de software de valor.
|
|
2. Son bienvenidos los requisitos cambiantes, incluso si llegan tarde al desarrollo. Los procesos ágiles se doblegan al cambio como ventaja competitiva para el cliente.
|
|
3. Entregar con frecuencia software que funcione, en periodos de un par de semanas hasta un par de meses, con preferencia en los periodos breves.
|
|
4. Las personas del negocio y los desarrolladores deben trabajar juntos de forma cotidiana a través del proyecto.
|
|
5. Construcción de proyectos en torno a individuos motivados, dándoles la oportunidad y el respaldo que necesitan y procurándoles confianza para que realicen la tarea.
|
|
6. La forma más eficiente y efectiva de comunicar información de ida y vuelta dentro de un equipo de desarrollo es mediante la conversación cara a cara.
|
|
7. El software que funciona es la principal medida del progreso.
|
|
8. Los procesos ágiles promueven el desarrollo sostenido. Los patrocinadores, desarrolladores y usuarios deben mantener un ritmo constante de forma indefinida.
|
|
9. La atención continua a la excelencia técnica enaltece la agilidad.
|
|
10. La simplicidad como arte de maximizar la cantidad de trabajo que se hace, es esencial.
|
|
11. Las mejores arquitecturas, requisitos y diseños emergen de equipos que se autoorganizan.
|
|
12. En intervalos regulares, el equipo reflexiona sobre la forma de ser más efectivo y ajusta su conducta en consecuencia.
|