SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
1
DESARROLLO EFICIENTE DE SOFTWARE
DESARROLLO EFICIENTEDE SOFTWARE
Alejandro Domínguez Torres
Fundación Arturo Rosenblueth
Instituto Tecnológico Rosenblueth
Junio de 1998
Conceptualización del Desarrollo Rápido
Existen diferentes enfoques del concepto de Desarrollo Rápido. Algunas de ellas
son:
 Para la gente común: Aplicación o utilización de una única herramienta o
método
 Para el hacker: Codificar el número de horas que el cuerpo resista y la
salud lo permita
 Para el ingeniero en sistemas: Combinación de herramientas de
software, participación del usuario y horarios estrictos
 Para el vendedor: Creación de prototipos con el lenguaje de moda o el
mas popular que permitan mostrar productos a los clientes
 Para los desesperados: Leer los libros cuyos subtítulos lleven las frases
“en 7 días”, “en 21 días”, “for dummies”, “for idiots”, etc.
En los textos también este concepto se ha definido:
 Para Roger Pressman [1, p. 25]: El Desarrollo Rápido de Aplicaciones
(DRA) (Rapid Application Development) es un modelo de proceso de
desarrollo del software lineal secuencial que enfatiza un ciclo de
desarrollo extremadamente corto. El modelo DRA es una adaptación a
<<alta velocidad>> del modelo lineal secuencial en el que logra el
desarrollo rápido utilizando un enfoque de construcción basado en
componentes. Si se comprenden bien los requisitos y se limita el ámbito
2
DESARROLLO EFICIENTE DE SOFTWARE
del proyecto, el proceso DRA permite al equipo de desarrollo crear un
<<sistema completamente funcional>> dentro de periodos cortos de
tiempo (p. ej. De 60 a 90 días). Cuando se utiliza principalmente para
aplicaciones de sistemas de información, el enfoque DRA comprende
las siguientes fases: Modelado de Gestión, Modelado de Datos,
Modelado de Proceso, Generación de Aplicaciones, Pruebas y
Entrega.
 Para David Ruble [2, p. 12]: El [Desarrollo Rápido de Aplicaciones] RAD
combina el enfoque espiral con una estrategia de división de un proyecto
grande en fases de desarrollo o “cuadros de tiempo”.
 Para Steve McConnell [3, p. 4]: <<desarrollo rápido>> es simplemente
una frase descriptiva opuesta a <<desarrollo lento y típico>>. No es
Desarrollo Rápido, una frase o palabras mágicas.  El desarrollo rápido
es un término genérico que significa lo mismo que <<desarrollo veloz>>
o <<planificaciones más cortas>>. Significa desarrollar software a una
velocidad superior a la alcanzada en este momento. Entonces, un
<<proyecto de desarrollo rápido>> es cualquier proyecto que necesite
hacer énfasis en la velocidad de desarrollo. En circunstancias actuales,
esta descripción se adapta a una gran cantidad de proyectos.
Estrategias del Desarrollo Rápido
En lo que sigue se describirán las estrategias del desarrollo rápido desarrolladas
por Pressman, Ruble y McConnell.
Estrategia de Desarrollo Rápido de Pressman [1, pp. 25-26]
Modelado de Gestión. El flujo de la información entre las funciones de gestión se
modela de forma que responda a las siguientes preguntas:
 ¿Qué información conduce al proceso de gestión?
 ¿Qué información se genera?
3
DESARROLLO EFICIENTE DE SOFTWARE
 ¿Adónde va la información?
 ¿Quién la procesa?
Modelado de Datos. El flujo de información definido como parte de la fase de
modelado de gestión se refina como un conjunto de objetos de datos necesarios
para apoyar la empresa. Se definen las características (Ilamadas atributos) de
cada uno de los objetos y las relaciones entre estos objetos
Modelado del Proceso. Los objetos de datos definidos en la fase de modelado de
datos quedan transformados para lograr el flujo de información necesario para
implementar una función de gestión. Las descripciones del proceso se crean para
añadir, modificar, suprimir, o recuperar un objeto de datos.
Generación de Aplicaciones. El DRA asume la utilización de técnicas de cuarta
generación. En lugar de crear software con lenguajes de programación de tercera
generación, el proceso DRA trabaja para volver a utilizar componentes de
programas ya existentes (cuando es posible) o a crear componentes reutilizables
(cuando sea necesario). En todos los casos se utilizan herramientas automáticas
para facilitar la construcción del software.
Pruebas y Entrega. Como el proceso DRA enfatiza la reutilización, ya se han
comprobado muchos de los componentes de los programas. Esto reduce tiempo
de pruebas. Sin embargo, se deben probar todos los componentes nuevos y se
deben ejercitar todas las interfaces a fondo.
El modelo de proceso DRA se ilustra en la figura siguiente. Obviamente, las
limitaciones de tiempo impuestas en un proyecto DRA demandan <<ámbito en
escalas>>. Si una aplicación de gestión puede modularse de forma que permita
completarse cada una de las funciones principales en menos de tres meses
(utilizando el enfoque descrito anteriormente), es un candidato del DRA. Cada una
de las funciones pueden ser afrontadas por un equipo DRA diferente y ser
integradas en un solo conjunto.
4
DESARROLLO EFICIENTE DE SOFTWARE
Al igual que todos los modelos de proceso, el enfoque DRA tiene inconvenientes:
 Para proyectos grandes aunque por escalas, el DRA requiere recursos
humanos suficientes como para crear el número correcto de equipos DRA.
 DRA requiere clientes y desarrolladores comprometidos en las rápidas
actividades necesarias para completar un sistema en un marco de tiempo
abreviado. Si no hay compromiso, por ninguna de las partes constituyentes,
los proyectos DRA fracasarán.
No todos los tipos de aplicaciones son apropiados para DRA. Si un sistema no se
puede modularizar adecuadamente, la construcción de los componentes
necesarios para DRA será problemático. Si está en juego el alto rendimiento, y se
va a conseguir el rendimiento convirtiendo interfaces en componentes de
5
DESARROLLO EFICIENTE DE SOFTWARE
sistemas, el enfoque DRA puede que no funcione. DRA no es adecuado cuando
los riesgos técnicos son altos. Esto ocurre cuando una nueva aplicación hace uso
de tecnologías nuevas, o cuando el nuevo software requiere un alto grado de
interoperabilidad con programas de computadoras existentes.
DRA enfatiza el desarrollo de componentes de programas reutilizables. La
reutilización es la piedra angular de las tecnologías de objetos.
Estrategia de Desarrollo Rápido de Ruble [2, pp. 12-14]
Como ya se mencionó esta estrategia se basa en fases o <<cuadros de tiempo>>.
Un cuadro de tiempo es una conjunto de características definido que promete
entregar a los usuarios dentro de un marco de tiempo fijo, digamos 90 días. Dentro
del cuadro de tiempo se realiza algo de análisis, un diseño breve y luego, usando
herramientas de desarrollo de alto poder, se construye un prototipo funcional. El
prototipo es revisado por los usuarios y se solicitan modificaciones. El ciclo de
codificación y de refinación se repite tres veces, yendo en espiral volviendo a
analizar, diseñar, y evaluar. Al final del cuadro de tiempo se instala la aplicación
resultante.
6
DESARROLLO EFICIENTE DE SOFTWARE
En la práctica, el RAD sufre de malas aplicaciones igual que la cascada. Muchos
gerentes y programadores ven el modelo espiral como tres iteraciones de ajuste
de “codificación”. La ventaja principal de RAD es la codificación temprana, y en
muchos establecimientos [?] la producción de código es vista como la única
medida tangible de que se ha realizado una actividad significativa. Esto lleva a la
mentalidad de “tres strikes y out”, en donde cualquier cosa que parezca análisis y
diseño es rápidamente abandonada, dando como resultado sistemas débiles que
se desempeñan de forma dudosa en la fase de mantenimiento del ciclo de vida.
Los puntos fuertes del RAD son que los usuarios se involucren intensamente, la
creación temprana de prototipos y la implementación en fases. Sus puntos débiles
incluyen una tendencia a la codificación temprana, lo que hace que pasen muchas
tareas de análisis y diseño a manos del programador y, por lo tanto, depende de
los técnicos con conocimientos generales. Se apoya en programadores que son
maestros en sus respectivas herramientas de desarrollo y ambientes de
programación y al mismo tiempo son adeptos al diseño de interfaces y al análisis
de negocios, además son comunicadores talentosos. El enfoque abrumador sobre
el cuadro de tiempo hace difícil la construcción de componentes reutilizables a
largo plazo, y cuando se acerca la fecha de entrega lo primero que se entrega es
la documentación. En vez de administrar contra una especificación tangible, el
administrador se encuentra armado con un látigo y un cronómetro. La medida de
avance principal se convierte en la cantidad de revisiones que se han hecho del
código.
Estrategia de Desarrollo Rápido de McConnell [3, pp. 9-34]
Se puede obtener un desarrollo rápido siguiendo una estrategia de cuatro partes:
1. Evitar los errores clásicos
2. Aplicar las bases de desarrollo
3. Gestionar los riesgos para evitar un retorno catastrófico
7
DESARROLLO EFICIENTE DE SOFTWARE
4. Aplicar métodos orientados a planificación: Métodos orientados a la
velocidad, métodos orientados a los riegos de planificación, y métodos
orientados a la visibilidad.
Las siguientes figuras ilustran el efecto de cada una de estos pilares de desarrollo
rápido:
8
DESARROLLO EFICIENTE DE SOFTWARE
Referencias
1. Pressman, R.S. Ingeniería del software: un enfoque práctico. Cuarta edición,
McGraw-Hill Interamericana de España. España, 1998.
2. Ruble, D.A. Análisis y diseño práctico de sistemas cliente servidor con GUI.
Prentice-Hall Hispanoamericana. México, 1998.
3. McConnell, S. Desarrollo y gestión de proyectos informáticos. McGraw-Hill
Interamericana de España, Microsoft Press. España, 1997.

Más contenido relacionado

La actualidad más candente

Trabajo finaldecalidaddesoftware
Trabajo finaldecalidaddesoftwareTrabajo finaldecalidaddesoftware
Trabajo finaldecalidaddesoftwareMariChR
 
Factores y caracteristicas que determinan la calidad
Factores y caracteristicas que determinan la calidadFactores y caracteristicas que determinan la calidad
Factores y caracteristicas que determinan la calidadJesus Eduardo Santoyo Chavez
 
La calidad del software
La calidad del softwareLa calidad del software
La calidad del softwareduberlisg
 
Control de Calidad del Software
Control de  Calidad del SoftwareControl de  Calidad del Software
Control de Calidad del SoftwareIntellimedia
 
Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Joan Manuel Zabala
 
Factores y métricas que determinan la calidad de un
Factores y métricas que determinan la calidad de unFactores y métricas que determinan la calidad de un
Factores y métricas que determinan la calidad de unLuis Angel Davila Elias
 
Ensayo modelo de mccall
Ensayo modelo de mccallEnsayo modelo de mccall
Ensayo modelo de mccallKimyJessahel
 
Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)Jeiner Gonzalez Blanco
 
Cuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareCuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareShaman King
 
Calidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de SoftwareCalidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de SoftwareConferencias FIST
 
Medición de la calidad de un software
Medición de la calidad de un softwareMedición de la calidad de un software
Medición de la calidad de un softwarepedroalexandercamarg
 
Roles del desarrollo de software1 (1)
Roles del desarrollo de software1 (1)Roles del desarrollo de software1 (1)
Roles del desarrollo de software1 (1)Laura González
 

La actualidad más candente (20)

Trabajo finaldecalidaddesoftware
Trabajo finaldecalidaddesoftwareTrabajo finaldecalidaddesoftware
Trabajo finaldecalidaddesoftware
 
Calidad de Softwaree
Calidad de SoftwareeCalidad de Softwaree
Calidad de Softwaree
 
Factores y caracteristicas que determinan la calidad
Factores y caracteristicas que determinan la calidadFactores y caracteristicas que determinan la calidad
Factores y caracteristicas que determinan la calidad
 
La calidad del software
La calidad del softwareLa calidad del software
La calidad del software
 
Control de Calidad del Software
Control de  Calidad del SoftwareControl de  Calidad del Software
Control de Calidad del Software
 
Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software Atributos de calidad en el desarrollo de software
Atributos de calidad en el desarrollo de software
 
Factores y métricas que determinan la calidad de un
Factores y métricas que determinan la calidad de unFactores y métricas que determinan la calidad de un
Factores y métricas que determinan la calidad de un
 
Caracteristicas del software
Caracteristicas del softwareCaracteristicas del software
Caracteristicas del software
 
Ensayo modelo de mccall
Ensayo modelo de mccallEnsayo modelo de mccall
Ensayo modelo de mccall
 
Diagrama conceptual
Diagrama conceptualDiagrama conceptual
Diagrama conceptual
 
Ingenieria en Software
Ingenieria en SoftwareIngenieria en Software
Ingenieria en Software
 
Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)
 
Cuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareCuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_software
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 
Calidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de SoftwareCalidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de Software
 
Medición de la calidad de un software
Medición de la calidad de un softwareMedición de la calidad de un software
Medición de la calidad de un software
 
Dpss u3 a2_nigm
Dpss u3 a2_nigmDpss u3 a2_nigm
Dpss u3 a2_nigm
 
Adrian adrianza
Adrian adrianzaAdrian adrianza
Adrian adrianza
 
Roles del desarrollo de software1 (1)
Roles del desarrollo de software1 (1)Roles del desarrollo de software1 (1)
Roles del desarrollo de software1 (1)
 
Dpss u3 a2_nigm
Dpss u3 a2_nigmDpss u3 a2_nigm
Dpss u3 a2_nigm
 

Destacado

The limiting absorption principle for the elastic equations
The limiting absorption principle for the elastic equationsThe limiting absorption principle for the elastic equations
The limiting absorption principle for the elastic equationsAlejandro Domínguez Torres
 

Destacado (20)

Requiero una oficina de proyectos
Requiero una oficina de proyectosRequiero una oficina de proyectos
Requiero una oficina de proyectos
 
Modelos curriculares de posgrado en ti
Modelos curriculares de posgrado en tiModelos curriculares de posgrado en ti
Modelos curriculares de posgrado en ti
 
Importancia de la teoría de operadores
Importancia de la teoría de operadoresImportancia de la teoría de operadores
Importancia de la teoría de operadores
 
It project development fundamentals
It project development fundamentalsIt project development fundamentals
It project development fundamentals
 
Calidad en el desarrollo de proyectos
Calidad en el desarrollo de proyectosCalidad en el desarrollo de proyectos
Calidad en el desarrollo de proyectos
 
Los hackers con ética
Los hackers con éticaLos hackers con ética
Los hackers con ética
 
Liderando proyectos de it
Liderando proyectos de itLiderando proyectos de it
Liderando proyectos de it
 
Fundamentos para el desarrollo de proyectos
Fundamentos para el desarrollo de proyectosFundamentos para el desarrollo de proyectos
Fundamentos para el desarrollo de proyectos
 
La ingeniera social y la seguridad en ti
La ingeniera social y la seguridad en tiLa ingeniera social y la seguridad en ti
La ingeniera social y la seguridad en ti
 
Representaciones de Fibonacci
Representaciones de FibonacciRepresentaciones de Fibonacci
Representaciones de Fibonacci
 
A short note on the history of B-splines
A short note on the history of B-splinesA short note on the history of B-splines
A short note on the history of B-splines
 
Pm in noisy environments
Pm in noisy environmentsPm in noisy environments
Pm in noisy environments
 
Regreso a los negocios
Regreso a los negociosRegreso a los negocios
Regreso a los negocios
 
El colapso de los proyectos
El colapso de los proyectosEl colapso de los proyectos
El colapso de los proyectos
 
The limiting absorption principle for the elastic equations
The limiting absorption principle for the elastic equationsThe limiting absorption principle for the elastic equations
The limiting absorption principle for the elastic equations
 
Existen los hackers con ética
Existen los hackers con éticaExisten los hackers con ética
Existen los hackers con ética
 
Un emprendedor nunca deja de capacitarse
Un emprendedor nunca deja de capacitarseUn emprendedor nunca deja de capacitarse
Un emprendedor nunca deja de capacitarse
 
La mejora de procesos en las empresas
La mejora de procesos en las empresasLa mejora de procesos en las empresas
La mejora de procesos en las empresas
 
Gestión del cambio caso de estudio
Gestión del cambio   caso de estudioGestión del cambio   caso de estudio
Gestión del cambio caso de estudio
 
A competency based human resources architecture
A competency based human resources architectureA competency based human resources architecture
A competency based human resources architecture
 

Similar a Desarrollo de software eficiente en

Metodologia rad luis c
Metodologia rad luis cMetodologia rad luis c
Metodologia rad luis cLuis Cambal
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radHenry Cambal
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radHenry Cambal
 
Insidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De SoftwareInsidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De SoftwareUniversidad De Cordoba
 
Metodología de desarrollo de software rad
 Metodología de desarrollo de software rad Metodología de desarrollo de software rad
Metodología de desarrollo de software radmarcosxm
 
Metodologiasagilesarquitectura
MetodologiasagilesarquitecturaMetodologiasagilesarquitectura
Metodologiasagilesarquitecturaroisbelfigueroa
 
Modelos de desarrollo de software separata
Modelos de desarrollo de software separataModelos de desarrollo de software separata
Modelos de desarrollo de software separataMarvin Romero
 
Rad sistemas de informacion
Rad sistemas de informacionRad sistemas de informacion
Rad sistemas de informacionDiego Sanchez
 
Acti deaprendizaje equipo_software1
Acti deaprendizaje equipo_software1Acti deaprendizaje equipo_software1
Acti deaprendizaje equipo_software1Dalia Sandiego
 
Díme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarDíme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarKiberley Santos
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rupmireya2022
 
modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software Brihany Rossell
 
Metodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesMetodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesJaqueline Luna
 

Similar a Desarrollo de software eficiente en (20)

Metodologia rad luis c
Metodologia rad luis cMetodologia rad luis c
Metodologia rad luis c
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion rad
 
Trabajo de sistemas de informacion rad
Trabajo de sistemas de informacion radTrabajo de sistemas de informacion rad
Trabajo de sistemas de informacion rad
 
Insidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De SoftwareInsidencias En Los Paradigmas De La Ingeniera De Software
Insidencias En Los Paradigmas De La Ingeniera De Software
 
Metodología de desarrollo de software rad
 Metodología de desarrollo de software rad Metodología de desarrollo de software rad
Metodología de desarrollo de software rad
 
Metodologiasagilesarquitectura
MetodologiasagilesarquitecturaMetodologiasagilesarquitectura
Metodologiasagilesarquitectura
 
Modelos de desarrollo de software separata
Modelos de desarrollo de software separataModelos de desarrollo de software separata
Modelos de desarrollo de software separata
 
Rad sistemas de informacion
Rad sistemas de informacionRad sistemas de informacion
Rad sistemas de informacion
 
Inf162 diapositiva...
Inf162 diapositiva...Inf162 diapositiva...
Inf162 diapositiva...
 
Los metodos agiles
Los metodos agilesLos metodos agiles
Los metodos agiles
 
Acti deaprendizaje equipo_software1
Acti deaprendizaje equipo_software1Acti deaprendizaje equipo_software1
Acti deaprendizaje equipo_software1
 
Díme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarDíme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usar
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
Modelo dra
Modelo draModelo dra
Modelo dra
 
modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software
 
Metodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móvilesMetodologías para el desarrollo de aplicaciones móviles
Metodologías para el desarrollo de aplicaciones móviles
 
Dsdm_f
Dsdm_fDsdm_f
Dsdm_f
 
Luis
LuisLuis
Luis
 
Metodologiasagiles
MetodologiasagilesMetodologiasagiles
Metodologiasagiles
 
Metodologias agiles
Metodologias agilesMetodologias agiles
Metodologias agiles
 

Más de Alejandro Domínguez Torres

La estrategia de Wile E. Coyote para atrapar al Correcaminos
La estrategia de Wile E. Coyote para atrapar al CorrecaminosLa estrategia de Wile E. Coyote para atrapar al Correcaminos
La estrategia de Wile E. Coyote para atrapar al CorrecaminosAlejandro Domínguez Torres
 
A historical note on schwartz space and test or bump functions
A historical note on schwartz space and test or bump functionsA historical note on schwartz space and test or bump functions
A historical note on schwartz space and test or bump functionsAlejandro Domínguez Torres
 
Cómo no crear una oficina de dirección de proyectos
Cómo no crear una oficina de dirección de proyectosCómo no crear una oficina de dirección de proyectos
Cómo no crear una oficina de dirección de proyectosAlejandro Domínguez Torres
 
Teoría y tendencias actuales de la administración
Teoría y tendencias actuales de la administraciónTeoría y tendencias actuales de la administración
Teoría y tendencias actuales de la administraciónAlejandro Domínguez Torres
 
¿Todos los PMPs pueden ser directores de proyectos?
¿Todos los PMPs pueden ser directores de proyectos?¿Todos los PMPs pueden ser directores de proyectos?
¿Todos los PMPs pueden ser directores de proyectos?Alejandro Domínguez Torres
 
La profesionalización de la dirección de proyectos
La profesionalización de la dirección de proyectosLa profesionalización de la dirección de proyectos
La profesionalización de la dirección de proyectosAlejandro Domínguez Torres
 
El valor profesional y organizacional de la dirección de proyectos
El valor profesional y organizacional de la dirección de proyectosEl valor profesional y organizacional de la dirección de proyectos
El valor profesional y organizacional de la dirección de proyectosAlejandro Domínguez Torres
 
Aplicaciones de los sistemas ecuaciones a la electricidad
Aplicaciones de los sistemas ecuaciones a la electricidadAplicaciones de los sistemas ecuaciones a la electricidad
Aplicaciones de los sistemas ecuaciones a la electricidadAlejandro Domínguez Torres
 

Más de Alejandro Domínguez Torres (20)

Cómo elegir un posgrado webinar
Cómo elegir un posgrado   webinarCómo elegir un posgrado   webinar
Cómo elegir un posgrado webinar
 
La estrategia de Wile E. Coyote para atrapar al Correcaminos
La estrategia de Wile E. Coyote para atrapar al CorrecaminosLa estrategia de Wile E. Coyote para atrapar al Correcaminos
La estrategia de Wile E. Coyote para atrapar al Correcaminos
 
A historical note on schwartz space and test or bump functions
A historical note on schwartz space and test or bump functionsA historical note on schwartz space and test or bump functions
A historical note on schwartz space and test or bump functions
 
Problemas actuales en la educación
Problemas actuales en la educaciónProblemas actuales en la educación
Problemas actuales en la educación
 
Vida Después de la Universidad
Vida Después de la UniversidadVida Después de la Universidad
Vida Después de la Universidad
 
Cómo no crear una oficina de dirección de proyectos
Cómo no crear una oficina de dirección de proyectosCómo no crear una oficina de dirección de proyectos
Cómo no crear una oficina de dirección de proyectos
 
Después de una carrera técnica
Después de una carrera técnicaDespués de una carrera técnica
Después de una carrera técnica
 
Teoría y tendencias actuales de la administración
Teoría y tendencias actuales de la administraciónTeoría y tendencias actuales de la administración
Teoría y tendencias actuales de la administración
 
Carreras con futuro
Carreras con futuroCarreras con futuro
Carreras con futuro
 
Cómo conseguir empleo
Cómo conseguir empleoCómo conseguir empleo
Cómo conseguir empleo
 
La vida después de la universidad
La vida después de la universidadLa vida después de la universidad
La vida después de la universidad
 
¿Todos los PMPs pueden ser directores de proyectos?
¿Todos los PMPs pueden ser directores de proyectos?¿Todos los PMPs pueden ser directores de proyectos?
¿Todos los PMPs pueden ser directores de proyectos?
 
La profesionalización de la dirección de proyectos
La profesionalización de la dirección de proyectosLa profesionalización de la dirección de proyectos
La profesionalización de la dirección de proyectos
 
El valor profesional y organizacional de la dirección de proyectos
El valor profesional y organizacional de la dirección de proyectosEl valor profesional y organizacional de la dirección de proyectos
El valor profesional y organizacional de la dirección de proyectos
 
Aplicaciones de los sistemas ecuaciones a la electricidad
Aplicaciones de los sistemas ecuaciones a la electricidadAplicaciones de los sistemas ecuaciones a la electricidad
Aplicaciones de los sistemas ecuaciones a la electricidad
 
Applications of analytic geometry
Applications of analytic geometryApplications of analytic geometry
Applications of analytic geometry
 
Plan estratégico de la calidad
Plan estratégico de la calidadPlan estratégico de la calidad
Plan estratégico de la calidad
 
Calidad en la empresa - curso
Calidad en la empresa - cursoCalidad en la empresa - curso
Calidad en la empresa - curso
 
Aplicaciones de los números complejos
Aplicaciones de los números complejosAplicaciones de los números complejos
Aplicaciones de los números complejos
 
Recursos humanos y capital humano
Recursos humanos y capital humanoRecursos humanos y capital humano
Recursos humanos y capital humano
 

Último

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 

Último (20)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 

Desarrollo de software eficiente en

  • 1. 1 DESARROLLO EFICIENTE DE SOFTWARE DESARROLLO EFICIENTEDE SOFTWARE Alejandro Domínguez Torres Fundación Arturo Rosenblueth Instituto Tecnológico Rosenblueth Junio de 1998 Conceptualización del Desarrollo Rápido Existen diferentes enfoques del concepto de Desarrollo Rápido. Algunas de ellas son:  Para la gente común: Aplicación o utilización de una única herramienta o método  Para el hacker: Codificar el número de horas que el cuerpo resista y la salud lo permita  Para el ingeniero en sistemas: Combinación de herramientas de software, participación del usuario y horarios estrictos  Para el vendedor: Creación de prototipos con el lenguaje de moda o el mas popular que permitan mostrar productos a los clientes  Para los desesperados: Leer los libros cuyos subtítulos lleven las frases “en 7 días”, “en 21 días”, “for dummies”, “for idiots”, etc. En los textos también este concepto se ha definido:  Para Roger Pressman [1, p. 25]: El Desarrollo Rápido de Aplicaciones (DRA) (Rapid Application Development) es un modelo de proceso de desarrollo del software lineal secuencial que enfatiza un ciclo de desarrollo extremadamente corto. El modelo DRA es una adaptación a <<alta velocidad>> del modelo lineal secuencial en el que logra el desarrollo rápido utilizando un enfoque de construcción basado en componentes. Si se comprenden bien los requisitos y se limita el ámbito
  • 2. 2 DESARROLLO EFICIENTE DE SOFTWARE del proyecto, el proceso DRA permite al equipo de desarrollo crear un <<sistema completamente funcional>> dentro de periodos cortos de tiempo (p. ej. De 60 a 90 días). Cuando se utiliza principalmente para aplicaciones de sistemas de información, el enfoque DRA comprende las siguientes fases: Modelado de Gestión, Modelado de Datos, Modelado de Proceso, Generación de Aplicaciones, Pruebas y Entrega.  Para David Ruble [2, p. 12]: El [Desarrollo Rápido de Aplicaciones] RAD combina el enfoque espiral con una estrategia de división de un proyecto grande en fases de desarrollo o “cuadros de tiempo”.  Para Steve McConnell [3, p. 4]: <<desarrollo rápido>> es simplemente una frase descriptiva opuesta a <<desarrollo lento y típico>>. No es Desarrollo Rápido, una frase o palabras mágicas.  El desarrollo rápido es un término genérico que significa lo mismo que <<desarrollo veloz>> o <<planificaciones más cortas>>. Significa desarrollar software a una velocidad superior a la alcanzada en este momento. Entonces, un <<proyecto de desarrollo rápido>> es cualquier proyecto que necesite hacer énfasis en la velocidad de desarrollo. En circunstancias actuales, esta descripción se adapta a una gran cantidad de proyectos. Estrategias del Desarrollo Rápido En lo que sigue se describirán las estrategias del desarrollo rápido desarrolladas por Pressman, Ruble y McConnell. Estrategia de Desarrollo Rápido de Pressman [1, pp. 25-26] Modelado de Gestión. El flujo de la información entre las funciones de gestión se modela de forma que responda a las siguientes preguntas:  ¿Qué información conduce al proceso de gestión?  ¿Qué información se genera?
  • 3. 3 DESARROLLO EFICIENTE DE SOFTWARE  ¿Adónde va la información?  ¿Quién la procesa? Modelado de Datos. El flujo de información definido como parte de la fase de modelado de gestión se refina como un conjunto de objetos de datos necesarios para apoyar la empresa. Se definen las características (Ilamadas atributos) de cada uno de los objetos y las relaciones entre estos objetos Modelado del Proceso. Los objetos de datos definidos en la fase de modelado de datos quedan transformados para lograr el flujo de información necesario para implementar una función de gestión. Las descripciones del proceso se crean para añadir, modificar, suprimir, o recuperar un objeto de datos. Generación de Aplicaciones. El DRA asume la utilización de técnicas de cuarta generación. En lugar de crear software con lenguajes de programación de tercera generación, el proceso DRA trabaja para volver a utilizar componentes de programas ya existentes (cuando es posible) o a crear componentes reutilizables (cuando sea necesario). En todos los casos se utilizan herramientas automáticas para facilitar la construcción del software. Pruebas y Entrega. Como el proceso DRA enfatiza la reutilización, ya se han comprobado muchos de los componentes de los programas. Esto reduce tiempo de pruebas. Sin embargo, se deben probar todos los componentes nuevos y se deben ejercitar todas las interfaces a fondo. El modelo de proceso DRA se ilustra en la figura siguiente. Obviamente, las limitaciones de tiempo impuestas en un proyecto DRA demandan <<ámbito en escalas>>. Si una aplicación de gestión puede modularse de forma que permita completarse cada una de las funciones principales en menos de tres meses (utilizando el enfoque descrito anteriormente), es un candidato del DRA. Cada una de las funciones pueden ser afrontadas por un equipo DRA diferente y ser integradas en un solo conjunto.
  • 4. 4 DESARROLLO EFICIENTE DE SOFTWARE Al igual que todos los modelos de proceso, el enfoque DRA tiene inconvenientes:  Para proyectos grandes aunque por escalas, el DRA requiere recursos humanos suficientes como para crear el número correcto de equipos DRA.  DRA requiere clientes y desarrolladores comprometidos en las rápidas actividades necesarias para completar un sistema en un marco de tiempo abreviado. Si no hay compromiso, por ninguna de las partes constituyentes, los proyectos DRA fracasarán. No todos los tipos de aplicaciones son apropiados para DRA. Si un sistema no se puede modularizar adecuadamente, la construcción de los componentes necesarios para DRA será problemático. Si está en juego el alto rendimiento, y se va a conseguir el rendimiento convirtiendo interfaces en componentes de
  • 5. 5 DESARROLLO EFICIENTE DE SOFTWARE sistemas, el enfoque DRA puede que no funcione. DRA no es adecuado cuando los riesgos técnicos son altos. Esto ocurre cuando una nueva aplicación hace uso de tecnologías nuevas, o cuando el nuevo software requiere un alto grado de interoperabilidad con programas de computadoras existentes. DRA enfatiza el desarrollo de componentes de programas reutilizables. La reutilización es la piedra angular de las tecnologías de objetos. Estrategia de Desarrollo Rápido de Ruble [2, pp. 12-14] Como ya se mencionó esta estrategia se basa en fases o <<cuadros de tiempo>>. Un cuadro de tiempo es una conjunto de características definido que promete entregar a los usuarios dentro de un marco de tiempo fijo, digamos 90 días. Dentro del cuadro de tiempo se realiza algo de análisis, un diseño breve y luego, usando herramientas de desarrollo de alto poder, se construye un prototipo funcional. El prototipo es revisado por los usuarios y se solicitan modificaciones. El ciclo de codificación y de refinación se repite tres veces, yendo en espiral volviendo a analizar, diseñar, y evaluar. Al final del cuadro de tiempo se instala la aplicación resultante.
  • 6. 6 DESARROLLO EFICIENTE DE SOFTWARE En la práctica, el RAD sufre de malas aplicaciones igual que la cascada. Muchos gerentes y programadores ven el modelo espiral como tres iteraciones de ajuste de “codificación”. La ventaja principal de RAD es la codificación temprana, y en muchos establecimientos [?] la producción de código es vista como la única medida tangible de que se ha realizado una actividad significativa. Esto lleva a la mentalidad de “tres strikes y out”, en donde cualquier cosa que parezca análisis y diseño es rápidamente abandonada, dando como resultado sistemas débiles que se desempeñan de forma dudosa en la fase de mantenimiento del ciclo de vida. Los puntos fuertes del RAD son que los usuarios se involucren intensamente, la creación temprana de prototipos y la implementación en fases. Sus puntos débiles incluyen una tendencia a la codificación temprana, lo que hace que pasen muchas tareas de análisis y diseño a manos del programador y, por lo tanto, depende de los técnicos con conocimientos generales. Se apoya en programadores que son maestros en sus respectivas herramientas de desarrollo y ambientes de programación y al mismo tiempo son adeptos al diseño de interfaces y al análisis de negocios, además son comunicadores talentosos. El enfoque abrumador sobre el cuadro de tiempo hace difícil la construcción de componentes reutilizables a largo plazo, y cuando se acerca la fecha de entrega lo primero que se entrega es la documentación. En vez de administrar contra una especificación tangible, el administrador se encuentra armado con un látigo y un cronómetro. La medida de avance principal se convierte en la cantidad de revisiones que se han hecho del código. Estrategia de Desarrollo Rápido de McConnell [3, pp. 9-34] Se puede obtener un desarrollo rápido siguiendo una estrategia de cuatro partes: 1. Evitar los errores clásicos 2. Aplicar las bases de desarrollo 3. Gestionar los riesgos para evitar un retorno catastrófico
  • 7. 7 DESARROLLO EFICIENTE DE SOFTWARE 4. Aplicar métodos orientados a planificación: Métodos orientados a la velocidad, métodos orientados a los riegos de planificación, y métodos orientados a la visibilidad. Las siguientes figuras ilustran el efecto de cada una de estos pilares de desarrollo rápido:
  • 8. 8 DESARROLLO EFICIENTE DE SOFTWARE Referencias 1. Pressman, R.S. Ingeniería del software: un enfoque práctico. Cuarta edición, McGraw-Hill Interamericana de España. España, 1998. 2. Ruble, D.A. Análisis y diseño práctico de sistemas cliente servidor con GUI. Prentice-Hall Hispanoamericana. México, 1998. 3. McConnell, S. Desarrollo y gestión de proyectos informáticos. McGraw-Hill Interamericana de España, Microsoft Press. España, 1997.