Вы находитесь на странице: 1из 11

Resumen 2do Parcial Ing SW 1.

Modelos de proceso
Proceso: Conjunto ordenado de tareas.
Proceso de SW: Actividades y resultados asociados que producen un producto de
sw.
Un MODELO de proceso es una representacin simplificada de ese proceso , y
puede mostrar tambin el rol de las personas involucradas.
Un modelo del sistema consiste en una conceptualizacin del dominio del
problema y acta como una especificacin precisa de los requerimientos
que el sistema de software debe satisfacer. (Abstraccin de elementos del
problema, comunicacin, negociacin con el usuario)

Caractersticas
- Establece todas las actividades.

-Utiliza recursos, est sujeto a restricciones y genera productos intermedios y


finales.
-Puede estar compuesto por subprocesos.
-Cada actividad tiene entradas y salidas definidas.
-Las actividades se organizan en una secuencia.
-Existen principios que orientan sobre las metas de cada
actividad.
-Las restricciones pueden aplicarse a una actividad, recurso o producto.
Sinnimos:
Modelo de proceso
Paradigma de software
Ciclo de vida del software
Hay modelos:
- Prescriptivos.
- Descriptivos.
Modelos de Proceso:
- Modelo en Cascada:
Cada etapa se debe completar antes de comenzar la siguiente.
Bueno para diagramar lo que se necesita hacer.
Simple para explicar a clientes.
Dificultades:
No hay resultados concretos hasta que todo este terminado.
Fallas triviales al ppio, graves al final.
Difcil eliminar fallas.
Muchas pruebas en las etapas finales.
- Modelo en V:
Muestra la relacin entre prueba, anlisis y diseo.
Prueba unitaria y de integracin para verificar el diseo.
(Recursivo)

- Modelo de Prototipos:
Producto parcialmente desarrollado para ver si es adecuado o correcto.

* Evolutivos: Obtener el sistema a entregar. Obtener todo el sistema o unas


partes para ver que es lo que se necesita y si esta bien
* Descartables: No tiene funcionalidad. Utilizan herramientas de modelado.
Son modelos econmicos que el usuario pueda probar, de rpido desarrollo,
orientados a la interfaz e i/o.
- Desarrollo por fases:

Se desarrolla de modo que pueda ser entregado en piezas. Dos sistemas


paralelos funcionando (usr, dev).
-Incremental: Subsistema particionado de acuerdo a funcionalidad. Se agregan
nuevas funciones.
-Iterativo: Entrega del sistema completo y aumenta funcionalidad con las
nuevas versiones.

- El modelo espiral:
Combina las actividades de desarrollo con la gestin del riesgo
Trata de mejorar los ciclos de vida clsicos y prototipos.
Incorpora objetivos de calidad
Elimina errores y alternativas no atractivas al comienzo
Permite iteraciones, vuelta atrs y finalizaciones rpidas
Cada ciclo empieza identificando:

Los objetivos de la porcin correspondiente


Las alternativas

Restricciones
Cada ciclo se completa con una revisin que incluye todo el ciclo anterior y el
plan para el siguiente

Funciones de desarrollo: Necedidades de los usuarios vs Capacidades reales del


sistema en el tiempo.

Metodologas giles
Es un enfoque iterativo (repasar y mejorar) e incremental (partes se desarrollan por
separado y luego se integran) de desarrollo de SW.
Nacen como una solucin a proyectos donde el entorno del sistema es muy
cambiante y es necesaria una reduccin de tiempo.
SW de calidad en poco tiempo y $.
Valores y principios para que locs equipos desarrollen SW rpido y puedan
responder a los cambios que surgen.
Una Metodologa gil es aquella en la que se da prioridad a las tareas que dan
resultados directos y que reducen la burocracia
tanto como sea posible [Fowler], adaptndose adems rpidamente al cambio de
los proyectos.
Valores
Individuos e interacciones ms que procesos y herramientas.
Software operante ms que documentaciones completas.
Colaboracin con el cliente ms que negociaciones contractuales.

Respuesta al cambio ms que apegarse a una rigurosa planificacin.


Principios
Entregas faciles y continuas de SW valuable.
Los cambios son bienvenidos.
Entregas frecuentes.
Trabajo conjunto entre diseadores y clientes.
Proyectos alrededor de motivaciones individuales.
Dialogo cara a cara e intercambio entre desarrolladores.
El sw que funciona es la medida del progreso.
Excelencia tecnica y buen diseo implican ms agilidad.
Simplicidad.
Las mejores arquitecturas, requerimientos y diseos surgen de la propia
organizacin de los equipos.
Reflexion periodica del equipo.
XP eXtreme Programming

Simplicidad
Comunicacin
Retroalimentacin
Coraje

* Historias de usuario: Tcnica para especificar requisitos. Requisitos


funcionales o no-funcionales que el sistema debe poseer. Dinmico y flexible.
* Roles:

Programadores (Programmer): desiciones tecnicas, construyen el


sistema, todos disean programan y prueban.

Jefe de proyecto (Manager): Organiza y guia reuniones, asegura


condiciones adecuadas para el proyecto.

Cliente (Customer): Es parte del equipo. Determina que y cuando.


Establece las pruebas funcionales.

Encargado de pruebas (Tester): Ayuda al cliente con las pruebas y que


estas se superen.

Rastreador (Tracker): Observa y conserva datos historicos, sin


molestar.

Entrenador (Coach) : Responsable del proceso, segundo plano a


medida que el equipo madura.
* Proceso :
1) Exploracin -> prototipo.
2) Planificacin -> prioridades.

3) Iteraciones
4) Produccin -> pruebas y revisiones.
5) Mantenimiento
6) Muerte -> documentacion final
* Prcticas:

Testing

Refactoring

Pair programming

Propiedad colectiva del cdigo.

Integracin continua.

Semana de 40hs.

Cliente en el lugar de desarrollo.

Estandares de codificacion.
SCRUM
Equipos altamente productivos. Entregas parciales y regulares (priorizadas) del
proyecto.

Eliminar el desperdicio.
Construir el cdigo con calidad.
Crear conocimiento.
Diferir (postergar) las desiciones.
Entrega rpida.
Respeto a las personas.
Optimizacinon total.
* Roles:

Propietario (Product Owner): Marca las prioridades.

Jefe (Scrum master): seguimiento y guia.

Equipo (Scrum team): Encargados de la implementacin.

Usuarios y clientes: aportan ideas.


* Artefactos

Product backlog: Lista de todas las funcionalidades, en orden de


prioridad.

Sprint backlog: Funcionalidad que el equipo se compromete a


desarrollan en un sprint.

Burndown Chart: trabajo hecho dia-a-dia.


* Proceso:

Iterativo e incremental.

Los sprints (fases de diseo) se solapan.

Se usa cuando hay muchos requerimientos dinamicos y se utiliza tecnologia de


punta. (Con los enfoques tradicionales es imposible)

Desarrollo de SW basado en modelos (MBS)


Desarrollo de SW dirigido por modelos (MDD)
Platform Independent Model (PIM): Un modelo de un sistema que no contiene
informacin acerca de la plataforma o la tecnologa que es usada para
implementarlo
Platform Specific Model (PSM): Un modelo de un sistema que incluye informacin
acerca de la tecnologa especfica que se usar para su implementacin sobre una
plataforma especfica
Transformacin de modelos: Especifica el proceso de conversin de un modelo en
otro modelo del mismo sistema.
Cada transformacin incluye (al menos):
- un PIM,
- un Modelo de la Plataforma,
- una Transformacin, y
- un PSM.
Agrega transformaciones automaticas. No agrega ideas nuevas.

Beneficios de MDD:

Incremento en la productividad (modelos y transformaciones).


Adaptacin a los cambios tecnolgicos.
Adaptacin a los cambios de requisitos.
Consistencia (automatizacin).

Re-uso (de modelos y transformaciones).


Mejoras en la comunicacin con los usuarios y la comunicacin entre los
desarrolladores (los modelos permanecen actualizados).
Captura de la experiencia (cambio de experto).
Los modelos son productos de larga duracin (resisten cambios).
Posibilidad de demorar decisiones tecnolgicas.

Calidad
Filsofos de la Calidad:
Philip B. Crosby conformidad de los requerimientos
W. Edwards Deming Calidad en trminos de la satisfaccin del cliente
Armand Feigenbaum Calidad como una relacin directa entre los productos y
servicios, y las necesidades del cliente
Kaoru Ishikawa Establece que los requerimientos y necesidades de los
clientes van cambiando lo que conlleva a una definicin cambiante
Que caracteristicas nos interesa evaluar y como?
En sintesis:

Capacidad de un producto o servicio para servir satisfactoriamente a los


propsitos del usuario mediante su utilizacin.

Conformidad con los requisitos explcitos e implcitos de un cliente.

Ausencia de defectos e imperfecciones.


Componentes de la calidad:

Calidad de la Infraestructura

incluye, por ejemplo,la calidadde las redes,y sistemas de software.

Calidad de Software

de lasaplicaciones de softwareconstruidas,o mantenidas,ocon el


apoyo deIS.

Calidad de Datos
que ingresan en el sistema de informacin.

Calidad de Informacin
est relacionada con lacalidad de los datos.

Calidadde gestin
incluye el presupuesto, planificacin yprogramacin.

Calidad de servicio
incluye los procesos deatencin al cliente.

Modelos para la calidad del proceso


CMM (Capability Maturity Model)/ CMMI (Modelo de Madurez de las Capacidades
- Integracion)

CMM escalonado 5 niveles de madurez.

CMMI

Escalonado: madurez de la organizacion.

Continuo: capacidad de los diferentes procesos por area. 6 niveles.


Nivel 1: Por reaccin, poca planificacion a largo plazo.
Nivel 2: Hay gestion de proyectos y documentacion. Hay politicas
organizacionales. Riesgos al presentarse nuevos desafios

Nivel 3: Proceso estandar para la orga.


Nivel 4: Gestion estadistica de procesos para controlar
Nivel 5: Mejora el desempeo. Foco en la mejora del proceso y tecnologia.

ISO 9000: Gestin de la calidad para cualquier organizacion para competir en el


mercado global.
Ultima versin menos burocratica para todo tipo de empresas.

Вам также может понравиться