Está en la página 1de 15

El proceso de desarrollo de software

Conceptos: Abstraccin
Extraer lo relevante, lo fundamental de un objeto

o evento. Permite conceptualizar Permite categorizar Esencial para especificar y disear La base para la creacin de modelos es la abstraccin Diferentes modelos de un mismo ente corresponden con diferentes niveles de abstraccin

Conceptos: Abstraccin
Ejercicio del plano inclinado

Analoga con los diferentes proyectos de una

obra civil:
Modelos, proyectos y planos civiles Se requieren ingenieros y arquitectos? Existen obras de SW monumentales? Existen

programas monumentales?

Conceptos: Ingeniera
The creative application of scientific

principles to design or develop structures, machines, apparatus, or manufacturing processes, or works utilizing them singly or in combination; or to construct or operate the same with full cognizance of their design; or to forecast their behavior under specific operating conditions; all as respects an intended function, economics of operation or safety to life and property [American Engineers' Council for Professional Development]

Conceptos: Desarrollo de SW
Se hace necesariamente Ingeniera para la

creacin de SW? Realmente no, no siempre se requiere el rigor ingenieril Se hace siempre Ingeniera para la construccin de casas? Realmente no, no siempre se requiere el rigor ingenieril! Qu es el Desarrollo de Software? Anlogo a la produccin en la industria, y a la construccin en las obras civiles Existe un proceso de desarrollo? S

Ciclos de vida (Modelos)


Cascada: Clsico, naturalmente ligado al proceso

general de abstraccin para resolver un problema Sashimi: Busca aprovechar de mejor manera el cronograma Otras variaciones de Cascada: Como cascadas iterativas, el Modelo V, etc. Ciclos o modelos Evolutivos
Espiral: De Bohem, introduce el concepto de riesgo Espiral ganar-ganar: El cliente gana, el desarrollador

gana Otras sofisticaciones: Ciclo de vida de RUP, de gil, etc.

Ciclos de vida (Modelos)


Algn ciclo de vida es mejor que los dems?

No, depende del proyecto, de las personas, del presupuesto. Existen pasos estandarizados? Dentro de un proceso o metodologa, s los hay, pero en general siempre obedecern al proceso natural de abstraccin Existe alguna estandarizacin para el proceso de desarrollo? No, pero existen varios marcos metodolgicos

Metodologas de Desarrollo
Agile Development Extreme Programming ICONIX (UML-based object modeling with use cases) Incremental funding methodology Model-driven engineering

Service-oriented modeling
Software prototyping Specification and Description Language Topdown and bottomup design Unified Process User experience

UML y el Proceso Unificado


UML: Lenguaje de modelado estandarizado til

para crear modelos visuales (diagramas) de software orientado a objetos. Acogido por OMG y por ISO como estndar. UP: De los creadores de UML, es un proceso y un marco de desarrollo de software OO. Es iterativo e incremental, dirigido por casos de uso y centrado en la arquitectura. Cuenta con variaciones como AUP y EssUP. Actualmente incluye 9 disciplinas.

UML y el Proceso Unificado


Desarrollo del PU en el tiempo:

UML y el Proceso Unificado


Disciplinas (trabajos) del proceso

Desarrollo gil
Basado en incrementos e iteraciones (modelo

evolutivo) Las iteraciones se realizan en tiempos fijos (timeboxed) Supone auto organizacin en los equipos Equipos interdisciplinarios Planificacin adaptiva Liberaciones peridicas

Desarrollo gil
No es una tendencia moderna, pero se

formaliza en varias metodologas durante la dcada de 1990; de hecho, TDD se aplica primero en la NASA para el proyecto Mercury en los 60s Sigue el llamado Manifiesto gil:
Individuals and interactions over processes and

tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan

Desarrollo gil
Ciclo de vida:

Comparacin

También podría gustarte