SlideShare una empresa de Scribd logo
Instituto de educación superior tecnológico publico Túpac Amaru
cusco
Tema:
Docente:
 Roque Mamani, Ángel Mario
Alumnos:
 Ambur Quispe, Yessenia Frine
 Armuto Mamani, Hulderico
 Baez Cruz, Raul
Cusco…Perú
Presentación
METODOLOGÍADE DESARROLLO DE SOFTWARE
Introducción
En el presente monografía se explica muy brevemente los aspectos queinvolucra el proceso
de desarrollo de software y la metodología
INGENIERÍADELSOFTWARE
Eldesarrollodesistemasdesoftwarecomplejosnoesuna actividad trivial, que
puedaabordarsesin un análisisprevio. Elconsiderarque un proyectode desarrollode softwarepodía
abordarsecomo cualquierotro,hallevado auna serie deproblemasque limitan
nuestracapacidaddeaprovechar losrecursosqueelhardware pone anuestradisposición.
Noexiste una fórmula mágicapara solucionarestosproblemas,pero com-
binandométodosaplicablesacadauna de las fasesdeldesarrollode software, construyendo
herramientaspara automatizarestosmétodos,utilizando técnicaspara garantizarlacalidad de
losproductosdesarrolladosycoordinandotodaslaspersonasinvolucradaseneldesarrollode
unproyecto,podremosavanzarmucho enlasolución deestos.Deelloseencargaladisciplina
llamadaIngeniería delSoftware.
lasiguiente:
Unadelasprimerasdefinicionesque sediodelaingenieríadelsoftwarees
Elestablecimientoyuso de principios de ingeniería robustos,orientados a
obtenersoftware económico,que sea fiableyfuncionedemaneraeficiente sobre
máquinas reales.
Laingenieríadelsoftwareabarcaunconjunto detres elementosclave: mé- todos,
herramientasyprocedimientos,que facilitanalgestorelcontrolelprocesodedesarrollo
ysuministranalosdesarrolladoresbasespara construir de forma productiva softwarede alta calidad.
Los métodosindican cómo construir técnicamenteelsoftware,yabarcan una
amplia serie de tareasque incluyen laplanificación yestimaciónde proyectos,elanálisis de
requisitos,eldiseñode estructurasde datos,programasyprocedimientos,lacodificación, las
pruebasyelmantenimiento.Losmétodosintroducenfrecuentementeuna notaciónespecí- ficapara
latareaencuestión yunaserie decriteriosdecalidad.
Las herramientasproporcionanun soporteautomáticoo semiautomático para
utilizarlosmétodos.Existen herramientasautomatizadaspara cadauna de las fasesvis- tas
anteriormente,ysistemasque integranlas herramientasdecadafase deforma que sirven para
todoelprocesodedesarrollo.EstasherramientassedenominanCASE(ComputerAssis-
tedSoftwareEngineering).
Losprocedimientosdefinen lasecuenciaen que seaplican losmétodos,
losdocumentosque serequieren,loscontrolesque permitenasegurarlacalidad ylasdirectrices
quepermitenalosgestoresevaluarlosprogresos.
METODOLOGIAS DE DESARROLLO DE SOFTWARE
Se puededefinirmétodocomo laordenaciónyexplicitación formalde los mediosque
conduceneficazmente allogrodeunobjetivopredeterminadoódeuna tareacon- creta.
Apartirdeestadefinición, sepuededecirque una metodologíaeselcon- juntodemétodosque
seusanenuna determinadaactividad conelfindeformalizarla yoptimizarla.
Las Metodologías de Desarrollo de Software surgen ante la necesidad de utilizar una serie de procedimientos,
técnicas, herramientas y soporte documental a la hora de desarrollar un producto software.
Dichas metodologías pretenden guiar a los desarrolladores al crear un nuevo software, pero los requisitos de un
software a otro son tan variados y cambiantes, que ha dado lugar a que exista una gran variedad de
metodologías para la creación del software.
Conjunto de métodos, de reglas, que por una parte sirven de guía para realizar los trabajos que van dando
forma a los desarrollos y que por otra obligan a la dirección del proyecto y a los componentes de los equipos a
realizar ciertas comprobaciones sistemáticas de modo que el resultado final, al menos desde un punto de vista
formal, no presente incoherencias y esté dirigido a un objetivo claro y prefijado
Es conjunto ordenado de pasos a seguir para llegar a la solución de un problema u obtención de unproducto (el
software), son también los pasos generales que sigue el proceso de desarrollo de unproducto software Las
metodologías de desarrollo de software son un conjunto de procedimientos, técnicas y ayudas a
ladocumentación para el desarrollo de productos software
Una metodología está compuesta por:
Cómo dividir un proyecto en etapas.
Qué tareas se llevan a cabo en cada etapa.
Qué restricciones deben aplicarse.
Qué técnicas y herramientas se emplean.
Cómo se controla y gestiona un proyecto
CLASIFICACIÒN DE DESARROLLO DE SOFTWARE
Las metodologías se clasifican de la siguiente forma:
 Estructuradas.
Orientadas a procesos
Orientadas a datos
Mixtas
 No estructuradas.
Orientadas a objetos
Sistemas de tiempo real
METODOLOGÍAS ESTRUCTURADAS
Se basan en la forma top-Down
-Metodologías orientadas a procesos
La ingeniería del software se basa en el modelo básico de entrada/proceso/salida de un sistema.
Está compuesta por:
Diagrama de flujo de datos (DFD).
Diccionario de datos.
Especificaciones de proceso.
Ejemplos: metodologías de DeMarco, Gene y Sarson, Yourdon.
-Metodologías orientadas a datos
Son metodologías basadas en la información. Primero se definen las estructuras de datos y, a partir de éstos, se
derivan los componentes procedimentales.
Ejemplos: metodologías de Jackson, Warnier, Warnier-Orr.
METODOLOGÍAS NO ESTRUCTURADAS
-Metodologías orientadas a objeto
La orientación a objetos unifica procesos y datos encapsulándolos en el concepto de objetos.
Tiene dos enfoques distintos:
Revolucionario, puro u ortodoxo. Rompen con las metodologías tradicionales.
Ejemplos: metodologías OOD de Booch, CRC/RDD de Wirfs-Brock.
Sintetista o evolutivo. Toman como base los sistemas estructurados y conforman elementos de uno y
otro tipo.
Ejemplos: metodología OMT de Rumbourgh.
-Sistemas de tiempo real
Procesan información orientada al control más que a los datos.
Se caracterizan por concurrencia, priorización de procesos, comunicación entre tareas y acceso simultáneo a
datos comunes.
CARACTERISTICAS DE UNA METODOLOGIA DE DESARROLLO DE SOFTWARE
☺ Existencia de reglas predefinidas
☺ Cobertura total del ciclo de desarrollo
☺ Verificaciones intermedias
☺ Planificación y control
☺ Comunicación efectiva
☺ Utilización sobre un abanico amplio de proyectos
☺ Fácil formación
☺ Herramientas CASE
☺ Actividades que mejoren el proceso de desarrollo
☺ Soporte al mantenimiento
☺ Soporte de la reutilización de software
Forma disciplinada de asignar tareas y responsabilidades (quién hace
qué, cuándo y cómo)
Pretende implementar las mejores prácticas en Ingeniería de
Software
Desarrollo iterativo
Administración de requisitos
Uso de arquitectura basada en componentes
Control de cambios
Modelado visual del software
Verificación de la calidad del software
A su vez la misma se caracteriza por ser iterativo e incremental, estar
centrado en la arquitectura y guiado por los casos de uso.
OBJETIVOS DE LA METODOLOGIAS DE SOFTWARE
Lograr la construcción de un sistema informático eficiente,
que cumpla con los requerimientos planteados, es una tarea realmente intensa y sobre todo difícil
de cumplir.
Imponer un proceso disciplinado sobre el desarrollo de software con el fin de hacerlo más
predecible y eficiente.
como principal objetivo aumentar la calidad del software que se produce en todas y cada una de sus
fases de desarrollo.
Mejores Aplicaciones
Un mejor Proceso de Desarrollo que identifique salidas (o
productos intermedios) de cada fase de forma que se pueda
planificar y controlar el proyecto
METODOLOGIAS DE DESARROLLO DE SOFTWARE TRADICIONALES
Estas metodologías tradicionales imponen una disciplina de trabajo sobre el proceso de desarrollo del software,
con el fin de conseguir un software más eficiente. Para ello, se hace énfasis en la planificación total de todo el
trabajo a realizar y una vez que está todo detallado, comienza el ciclo de desarrollo del producto software. Se
centran especialmente en el control del proceso, mediante una rigurosa definición de roles, actividades,
artefactos, herramientas y notaciones para el modelado y documentación detallada. Además, las metodologías
tradicionales no se adaptan adecuadamente a los cambios, por lo que no son métodos adecuados cuando se
trabaja en un entorno, donde los requisitos no pueden predecirse o bien pueden variar.
Entre las metodologías tradicionales podemos citar:
• RUP (Rational Unified Procces)
• MSF (Microsoft Solution Framework)
• Win-WinSpiralModel
• Iconix
Las necesidades de un cliente pueden sufrir cambios importantes del momento de contratación de un software
al momento de su entrega; y es mucho más importante satisfacer estas últimas que las primeras. Esto requiere
procesos de software diferentes que en lugar de rechazar los cambios sean capaces de incorporarlos.
METODOLOGIAS DE DESARROLLO DE SOFTWARE ÀGILES
Las metodologías ágiles proporcionan una serie de pautas y principios junto a técnicas pragmáticas que puede
que no curen todos los males pero harán la entrega del proyecto menos complicada y más satisfactoria tanto
para los clientes como para los equipos de entrega. En la figura 1 se muestran los principios que rigen el
desarrollo ágil.
Entre las metodologías ágiles más destacadas hasta el momento se pueden nombrar:
• XP (Extreme Programming)
• Scrum
• Crystal Clear
• DSDM (Dynamic Systems Developmemt Method)
• FDD (Feature Driven Development)
• ASD (Adaptive Software Development)
• XBreed
• Extreme Modeling
Ciclo devidadeldesarrollosoftware
Todo proyectode ingenieríatiene unos fines ligados a laobtenciónde un producto,
procesooservicio que esnecesariogeneraratravés dediversasactividades.Algunas deestas
actividadespuedenagruparseenfasesporqueglobalmentecontribuyenaobtenerunproducto
intermedio,necesariopara continuarhacia elproductofinalyfacilitarlagestión delproyecto.
Alconjunto delasfasesempleadasseledenomina“ciclodevida”.
Sinembargo,laforma de agruparlas actividades,losobjetivos de cadafase, lostipos
deproductosintermediosque segeneran,etc.Puedenser muydiferentesdependiendodeltipo
deproductooprocesoagenerarydelastecnologías empleadas.
Lacomplejidaddelasrelacionesentre lasdistintasactividades creceexponencialmente con
eltamaño,con loque rápidamenteseharía inabordablesinofuera porlaviejatáctica de
“divideyvencerás”.Deestaformaladivisióndelosproyectosenfasessucesivasesunprimer pasopara
lareduccióndesucomplejidad,tratándosedeescogerlaspartesdemaneraquesus relaciones entre
síseanlomás simples posibles.
Ladefinicióndeunciclodevidafacilitaelcontrolsobrelos tiemposenque esnece-
sarioaplicarrecursosdetodotipo(personal,equipos,suministros,etc.)alproyecto.
Elcontroldecalidadtambiénsevefacilitadosilaseparaciónentre fasessehaceco-
rrespondercon puntosen los que éstadebaverificarse(mediantecomprobacionessobrelos
productos parcialesobtenidos).
Por ciclodevidareferido aldesarrollosoftware,seentiendelasucesióndeetapaspor
lasquepasaelsoftwaredesdequeunnuevo proyectoesconcebidohastaquesedejadeusar.
Cadauna de estasetapasllevaasociadauna seriede tareasque debenrealizarse,y una serie
de documentos(en sentidoamplio: software)que seránlasalida de cadauna de
estasfasesyservirándeentradaenlafase siguiente.
Existen diversostipos de ciclode vida,esdecir, diversasformas de verelprocesode
desarrollode software,ycadauno de ellos va asociadoa un paradigmade laingenieríadel
software,esdecir,aunaserie demétodos,herramientasyprocedimientosquedebemosusar a
lolargodeunproyecto.
Laeleccióndeunparadigmauotroserealizadeacuerdoconlanaturalezadelproyectoydelaaplicaci
ón,losmétodosausar yloscontrolesyentregasrequeridos.
Ingenieríayanálisisdelsistema
Elsoftwareessiempreparte deunsistemamayor, porloque siemprevaainterrelacio- narsecon
otros elementos,yaseahardware,máquinasopersonas.Por esto, elprimer paso del ciclode vida de un
proyectoconsisteen un análisisde las característicasyelcomporta-
mientodelsistemadelcualelsoftwarevaaformarparte. Enelcasodequequeramosconstruir
unsistemanuevo, porejemplo unsistemadecontrol,deberemosanalizarcuálesson losrequi-
sitosylafuncióndelsistema,yluego seasignaránunsubconjuntode estosrequisitosalsoft- ware. En el
casode un sistema ya existente (supongamos, por ejemplo, que queremos informatizar una
empresa)sedebeanalizarelfuncionamientode lamisma −las operaciones que sellevan a cabo en
ella−, yasignaremosal softwareaquellas funcionesque vamosa automatizar.
Laingenieríadelsistemacomprende,portanto, losrequisitosglobalesaniveldelsis-tema,así
como una cierta cantidaddeanálisisydediseñoanivelsuperior,esdecirsinentrar enmucho detalle.
Análisisderequisitosdelsoftware
Elanálisisde requisitosdebeser más detalladopara aquelloscomponentesdelsiste- maque
vamosaimplementarmediantesoftware.Elingenierodelsoftware debecomprender cuálesson
losdatosque sevan amanejar,cuál vaaser lafunción que tiene que cumplirel software,cuálesson
lasinterfaces requeridosycuáleselrendimientoqueseesperalograr.
Los requisitos,tanto del sistemacomo del softwaredebendocumentarseyrevisarse
conelcliente.
Diseño
Eldiseñoseaplica acuatro característicasdistintasdelsoftware:laestructurade los
datos,laarquitecturade las aplicaciones,laestructurainterna de losprogramasylas interfa- ces.
Eldiseñoeselprocesoque traducelosrequisitosen una representacióndelsoftware de forma
que puedaconocerselaarquitectura,funcionalidade incluso lacalidad del mismo
antesdecomenzarlacodificación.
Aligualque elanálisis,eldiseñodebedocumentarseyforma parte de laconfigura- cióndel
software(elcontrol de configuracionesesloque nos permite realizar cambiosen el
softwaredeformacontroladaynotraumáticapara elcliente).
Codificación
Lacodificación consiste enlatraduccióndeldiseño aunformato quesealegiblepara la
máquina.Sieldiseñoeslosuficientementedetallado,lacodificación esrelativamentesencilla,
ypuedehacerse−almenosenparte− deformaautomática,usandogeneradoresdecódigo.
Podemosobservarque estasprimerasfasesdel ciclode vidaconsistenbásicamente en una
traducción:en elanálisisdelsistema,losrequisitos,lafunciónylaestructurade este
setraducenaundocumento:elanálisisdelsistemaqueestáformado enparte pordiagramas y enparte
pordescripcionesenlenguajenatural.Enelanálisisderequisitosseprofundizaenel
estudiodelcomponentesoftwaredelsistemayesto setraduceaundocumento,tambiénfor-
madopordiagramasydescripcionesen lenguajenatural.Eneldiseño,losrequisitosdelsoft-
waresetraducenauna serie dediagramasque representanlaestructuradelsistemasoftware, desus
datos,desus programasydesus interfaces.Por último,enlacodificación setraducen
estosdiagramasdediseñoaunlenguajefuente,que luego setraduce−secompila− para obte-
nerunprogramaejecutable.
Prueba
Unavezque yatenemoselprogramaejecutable,comienzalafase depruebas. Elobje-
tivoescomprobarque nosehayanproducidoerroresenalgunadelasfasesdetraducciónan-
teriores,especialmenteen lacodificación. Paraellodebenprobarsetodaslas sentencias,no
sóloloscasosnormalesytodos losmódulosqueformanparte delsistema.
Utilización
Una vez superadalafase de pruebas,elsoftwareseentregaalcliente ycomienzala
vidaútildelmismo. Lafasedeutilización sesolapaconlasposteriores−elmantenimientoyla
sustitución−ydurahastaqueelsoftware,yareemplazado porotro,dejedeutilizarse.
Mantenimiento
Elsoftwaresufrirácambiosalolargodesuvidaútil. Estoscambiospuedenser debidos
atrescausas:
−Que, durantelautilización, elcliente detecteerroresenelsoftware:loserroreslaten- tes.
−Que seproduzcancambiosen alguno de loscomponentesdelsistema informático:
porejemplo cambios enlamáquina, enelsistemaoperativooenlosperiféricos.
−Que el cliente
requieramodificacionesfuncionales(normalmenteampliaciones)no
contempladasenelproyecto.
Encualquiercaso,elmantenimientosuponevolveratrásen elciclode
vida,alas etapas
decodificación,diseñooanálisisdependiendodelamagnituddelcambio.
Elmodelo en cascada,a pesarde ser lineal, contieneflujos que permitenla
vuelta atrás.Así,desdeelmantenimientosevuelve
alanálisis,eldiseñoolacodificación,ytambién desdecualquierfase
sepuedevolveralaanterior sisedetectanfallos.
DiferenciasentreMetodología,CiclodeVidayMétodo
–Una Metodologíapuede seguir unoo varios modelos de
CiclodeVida
–UnCiclo de Vidaindicaqué obtener, pero nocómo
–UnaMetodologíaes unconcepto másamplioqueMétodo
ƒSepuedeconsiderarcomounconjuntodemétodos.
ƒUnametodologíapuedeenglobarunconjuntodemétodos(de
análisis,diseño,programación,etc.)paraabarcarelciclodevida
completo
Conclusiones
Recomendación
Una metodología para el desarrollo de software debe ser un instrumento
que permita gestionar un proceso dado, existen hoy en día diferentes
METODOLOGÍA DE DESARROLLO DE SOFTWARE 29 DE MAYO DE 2013
1
metodologías las cuales no son en forma absoluta comparable, es decir, no
existe en forma absoluta una metodología mejor a otra sino que la
metodología debe estar alineadas a la cultura de la organización, tamaño y
complejidad del proyecto, así como al ciclo de vida del producto que
pretende desarrollar.
Bibliografía
•AnálisisyDiseñodeSistemas.EditorialMcGraw-Hill.
•IngenieríadelSoftware.EditorialMcGraw-Hill.
•GAIL,Linda,CHRISTIE, John. Enciclopediade Términosde
Computación. Edito- rialPHH,PenticeHall.
•PHANTHU.MeriseApliquée.Eyrolles.
•MATHERON,Merise. Metodologíadedesarrollo
deSistemas.Paraninfo.
•FISHER, A.C.A.S.E.UsingSoftwareDevelopmentTools.Wiley.
•WILSON,P.ComputerSupportedCooperativeWork.IntellectOxford.
Anexos.

Más contenido relacionado

La actualidad más candente

Semana 1 2-3 (3)
Semana 1 2-3 (3)Semana 1 2-3 (3)
Semana 1 2-3 (3)
J Martin Luzon
 
Informe de christian oblitas
Informe de christian oblitasInforme de christian oblitas
Informe de christian oblitas
Christian1705
 
M E T O D O L O G I A S D E D E S A R R O L L O D E S O F T W A R E
M E T O D O L O G I A S  D E  D E S A R R O L L O  D E  S O F T W A R EM E T O D O L O G I A S  D E  D E S A R R O L L O  D E  S O F T W A R E
M E T O D O L O G I A S D E D E S A R R O L L O D E S O F T W A R E
uloz
 
Unidad uno metodologia
Unidad uno metodologia Unidad uno metodologia
Unidad uno metodologia
guestc86431
 
Metodologias de desarrollo de software
Metodologias de desarrollo de softwareMetodologias de desarrollo de software
Metodologias de desarrollo de software
yinethperez
 
Metodologia merinde y rup
Metodologia merinde y rupMetodologia merinde y rup
Metodologia merinde y rup
Reinaldo Betancourt Garcia
 
Presentación MeRinde 6CNSL Abril 2010
Presentación MeRinde 6CNSL Abril 2010Presentación MeRinde 6CNSL Abril 2010
Presentación MeRinde 6CNSL Abril 2010
Kiberley Santos
 
Metodologías Ágiles para el Desarrollo de Software y Metodologias Para el de...
Metodologías Ágiles  para el Desarrollo de Software y Metodologias Para el de...Metodologías Ágiles  para el Desarrollo de Software y Metodologias Para el de...
Metodologías Ágiles para el Desarrollo de Software y Metodologias Para el de...
Joel Fernandez
 
Metodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemasMetodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemas
ignaciogonzalez107
 
Sistemas de información
Sistemas de información Sistemas de información
Sistemas de información
eduingonzalez2
 
Metodologia rup parte 1
Metodologia rup parte 1Metodologia rup parte 1
Metodologia rup parte 1
Marbella Castañeda
 
MeRinde
MeRindeMeRinde
3 proceso sw (caso de uso)
3 proceso sw  (caso de uso)3 proceso sw  (caso de uso)
3 proceso sw (caso de uso)
Carlos Andres Perez Cabrales
 
00000350
0000035000000350
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
Lis Pater
 
Metodologias para el desarrollo de software
Metodologias para el desarrollo de softwareMetodologias para el desarrollo de software
Metodologias para el desarrollo de software
Riverapatriciam
 
Metodología para el análisis de diseño del sistema
Metodología para el análisis de diseño del sistemaMetodología para el análisis de diseño del sistema
Metodología para el análisis de diseño del sistema
Freddy Ramos
 
Cmmi y moprosoft
Cmmi y moprosoftCmmi y moprosoft
Cmmi y moprosoft
Eduardo Cortes
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
bernardolimachi
 

La actualidad más candente (19)

Semana 1 2-3 (3)
Semana 1 2-3 (3)Semana 1 2-3 (3)
Semana 1 2-3 (3)
 
Informe de christian oblitas
Informe de christian oblitasInforme de christian oblitas
Informe de christian oblitas
 
M E T O D O L O G I A S D E D E S A R R O L L O D E S O F T W A R E
M E T O D O L O G I A S  D E  D E S A R R O L L O  D E  S O F T W A R EM E T O D O L O G I A S  D E  D E S A R R O L L O  D E  S O F T W A R E
M E T O D O L O G I A S D E D E S A R R O L L O D E S O F T W A R E
 
Unidad uno metodologia
Unidad uno metodologia Unidad uno metodologia
Unidad uno metodologia
 
Metodologias de desarrollo de software
Metodologias de desarrollo de softwareMetodologias de desarrollo de software
Metodologias de desarrollo de software
 
Metodologia merinde y rup
Metodologia merinde y rupMetodologia merinde y rup
Metodologia merinde y rup
 
Presentación MeRinde 6CNSL Abril 2010
Presentación MeRinde 6CNSL Abril 2010Presentación MeRinde 6CNSL Abril 2010
Presentación MeRinde 6CNSL Abril 2010
 
Metodologías Ágiles para el Desarrollo de Software y Metodologias Para el de...
Metodologías Ágiles  para el Desarrollo de Software y Metodologias Para el de...Metodologías Ágiles  para el Desarrollo de Software y Metodologias Para el de...
Metodologías Ágiles para el Desarrollo de Software y Metodologias Para el de...
 
Metodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemasMetodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemas
 
Sistemas de información
Sistemas de información Sistemas de información
Sistemas de información
 
Metodologia rup parte 1
Metodologia rup parte 1Metodologia rup parte 1
Metodologia rup parte 1
 
MeRinde
MeRindeMeRinde
MeRinde
 
3 proceso sw (caso de uso)
3 proceso sw  (caso de uso)3 proceso sw  (caso de uso)
3 proceso sw (caso de uso)
 
00000350
0000035000000350
00000350
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 
Metodologias para el desarrollo de software
Metodologias para el desarrollo de softwareMetodologias para el desarrollo de software
Metodologias para el desarrollo de software
 
Metodología para el análisis de diseño del sistema
Metodología para el análisis de diseño del sistemaMetodología para el análisis de diseño del sistema
Metodología para el análisis de diseño del sistema
 
Cmmi y moprosoft
Cmmi y moprosoftCmmi y moprosoft
Cmmi y moprosoft
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 

Similar a Monografia

METODOLOGIAS.pptx
METODOLOGIAS.pptxMETODOLOGIAS.pptx
METODOLOGIAS.pptx
juan gonzalez
 
Metodologia y prototipo
Metodologia y prototipoMetodologia y prototipo
Metodologia y prototipo
Arturo Jimenez
 
Administracion de proyectos software i estudiantes
Administracion de proyectos software i estudiantesAdministracion de proyectos software i estudiantes
Administracion de proyectos software i estudiantes
Cyber Brel'R
 
Herramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicacionesHerramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicaciones
HctorJessPonceCastil
 
Metodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemasMetodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemas
ignaciogonzalez107
 
JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL -
JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL - JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL -
JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL -
Jhon Kevin Mamani Pecho
 
¡Summit loxa ingenieria de software
¡Summit loxa ingenieria de software¡Summit loxa ingenieria de software
¡Summit loxa ingenieria de software
JorgeArmijosC
 
Introduccion a metodologias de desarrollo de software
Introduccion  a metodologias de desarrollo de softwareIntroduccion  a metodologias de desarrollo de software
Introduccion a metodologias de desarrollo de software
JuanCarlos1937
 
Presentacion diego
Presentacion diegoPresentacion diego
Presentacion diego
diegoching2
 
Procesos de desarrollo de software
Procesos de desarrollo de softwareProcesos de desarrollo de software
Procesos de desarrollo de software
Leynes Morán
 
4 Clase Metodologia De Desarrolo De Software
4 Clase Metodologia De Desarrolo De Software4 Clase Metodologia De Desarrolo De Software
4 Clase Metodologia De Desarrolo De Software
Julio Pari
 
Metodologías de Desarrollo de Software Jr
 Metodologías de Desarrollo de Software Jr Metodologías de Desarrollo de Software Jr
Metodologías de Desarrollo de Software Jr
Junior Leal
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructurado
waralivt
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructurado
waralivt
 
Clasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de softwareClasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de software
ElvisAR
 
clasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdf
clasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdfclasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdf
clasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdf
CESARAS4
 
Metodologías para el desarrollo de software en PYMES
Metodologías para el desarrollo de software en PYMESMetodologías para el desarrollo de software en PYMES
Metodologías para el desarrollo de software en PYMES
MarceloFalappa5
 
Lineas de Productos de Software & Método WATCH
Lineas de Productos de Software & Método WATCHLineas de Productos de Software & Método WATCH
Lineas de Productos de Software & Método WATCH
Rafael Ortiz Montiel
 
Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )
Fernand Bernowly
 
Grupo1
Grupo1Grupo1
Grupo1
Olarautn
 

Similar a Monografia (20)

METODOLOGIAS.pptx
METODOLOGIAS.pptxMETODOLOGIAS.pptx
METODOLOGIAS.pptx
 
Metodologia y prototipo
Metodologia y prototipoMetodologia y prototipo
Metodologia y prototipo
 
Administracion de proyectos software i estudiantes
Administracion de proyectos software i estudiantesAdministracion de proyectos software i estudiantes
Administracion de proyectos software i estudiantes
 
Herramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicacionesHerramientas para el desarrollo de aplicaciones
Herramientas para el desarrollo de aplicaciones
 
Metodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemasMetodologías para el análisis y diseño de sistemas
Metodologías para el análisis y diseño de sistemas
 
JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL -
JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL - JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL -
JHON MAMANI - METODOLOGIAS DE SOFTWARE - DIAGRAMA CAUSAL -
 
¡Summit loxa ingenieria de software
¡Summit loxa ingenieria de software¡Summit loxa ingenieria de software
¡Summit loxa ingenieria de software
 
Introduccion a metodologias de desarrollo de software
Introduccion  a metodologias de desarrollo de softwareIntroduccion  a metodologias de desarrollo de software
Introduccion a metodologias de desarrollo de software
 
Presentacion diego
Presentacion diegoPresentacion diego
Presentacion diego
 
Procesos de desarrollo de software
Procesos de desarrollo de softwareProcesos de desarrollo de software
Procesos de desarrollo de software
 
4 Clase Metodologia De Desarrolo De Software
4 Clase Metodologia De Desarrolo De Software4 Clase Metodologia De Desarrolo De Software
4 Clase Metodologia De Desarrolo De Software
 
Metodologías de Desarrollo de Software Jr
 Metodologías de Desarrollo de Software Jr Metodologías de Desarrollo de Software Jr
Metodologías de Desarrollo de Software Jr
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructurado
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructurado
 
Clasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de softwareClasificación de las metodologías de desarrollo de software
Clasificación de las metodologías de desarrollo de software
 
clasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdf
clasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdfclasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdf
clasificacindelasmetodologasdedesarrollodesoftware-151201230639-lva1-app6892.pdf
 
Metodologías para el desarrollo de software en PYMES
Metodologías para el desarrollo de software en PYMESMetodologías para el desarrollo de software en PYMES
Metodologías para el desarrollo de software en PYMES
 
Lineas de Productos de Software & Método WATCH
Lineas de Productos de Software & Método WATCHLineas de Productos de Software & Método WATCH
Lineas de Productos de Software & Método WATCH
 
Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )
 
Grupo1
Grupo1Grupo1
Grupo1
 

Último

Los acontecimientos finales de la tierra.pdf
Los acontecimientos finales de la tierra.pdfLos acontecimientos finales de la tierra.pdf
Los acontecimientos finales de la tierra.pdf
Alejandrino Halire Ccahuana
 
Fundamentos filosóficos de la metodología de la enseñanza .pdf
Fundamentos filosóficos de la metodología de la enseñanza .pdfFundamentos filosóficos de la metodología de la enseñanza .pdf
Fundamentos filosóficos de la metodología de la enseñanza .pdf
AnaisMundaray
 
PRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdf
PRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdfPRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdf
PRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdf
Fernanda Salazar
 
Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...
Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...
Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...
Shirley Vásquez Esparza
 
USO DEL MODELO DE CAPAS TCP/IP Y MODELO OSI
USO DEL MODELO DE CAPAS TCP/IP Y MODELO OSIUSO DEL MODELO DE CAPAS TCP/IP Y MODELO OSI
USO DEL MODELO DE CAPAS TCP/IP Y MODELO OSI
J Martin Luzon
 
Los Recursos Naturales como Base de la Economía
Los Recursos Naturales como Base de la EconomíaLos Recursos Naturales como Base de la Economía
Los Recursos Naturales como Base de la Economía
JonathanCovena1
 
UESJLS Robótica Clase 18 - Escenarios de Vex - Polígonos
UESJLS Robótica Clase 18 - Escenarios de Vex - PolígonosUESJLS Robótica Clase 18 - Escenarios de Vex - Polígonos
UESJLS Robótica Clase 18 - Escenarios de Vex - Polígonos
Docente Informático
 
La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.
DobbieElfo
 
ELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdf
ELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdfELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdf
ELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdf
DaliaAndrade1
 
La orientación educativa en el proceso de enseñanza-aprendizaje.pptx
La orientación educativa en el proceso de enseñanza-aprendizaje.pptxLa orientación educativa en el proceso de enseñanza-aprendizaje.pptx
La orientación educativa en el proceso de enseñanza-aprendizaje.pptx
PaolaAlejandraCarmon1
 
UESJLS Robótica Clase 19 - Dibujo de un polígono sobre otro
UESJLS Robótica Clase 19 - Dibujo de un  polígono sobre otroUESJLS Robótica Clase 19 - Dibujo de un  polígono sobre otro
UESJLS Robótica Clase 19 - Dibujo de un polígono sobre otro
Docente Informático
 
Fundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanzaFundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanza
iamgaby0724
 
Apoplejia_UNIVERSIDAD CENTRAL DEL ECUADOR
Apoplejia_UNIVERSIDAD CENTRAL DEL ECUADORApoplejia_UNIVERSIDAD CENTRAL DEL ECUADOR
Apoplejia_UNIVERSIDAD CENTRAL DEL ECUADOR
NicoleEnriquez19
 
modulo de sistema educativo peruano 2024
modulo de sistema educativo peruano 2024modulo de sistema educativo peruano 2024
modulo de sistema educativo peruano 2024
RubnTAIPEHAQQUEHUA1
 
Presentación sector la arenita_paijan pptx
Presentación sector la arenita_paijan pptxPresentación sector la arenita_paijan pptx
Presentación sector la arenita_paijan pptx
Aracely Natalia Lopez Talavera
 
Módulo de lectoescritura para primer grado
Módulo de lectoescritura para primer gradoMódulo de lectoescritura para primer grado
Módulo de lectoescritura para primer grado
marilynfloresyomona1
 
CUADRO COMPARATIVO Aylen.docx............
CUADRO COMPARATIVO Aylen.docx............CUADRO COMPARATIVO Aylen.docx............
CUADRO COMPARATIVO Aylen.docx............
LuanaJaime1
 
FRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLA
FRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLAFRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLA
FRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLA
JAVIER SOLIS NOYOLA
 
Fundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanzaFundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanza
iamgaby0724
 
Calidad de vida laboral - Ética y Responsabilidad Social Empresarial
Calidad de vida laboral - Ética y Responsabilidad Social EmpresarialCalidad de vida laboral - Ética y Responsabilidad Social Empresarial
Calidad de vida laboral - Ética y Responsabilidad Social Empresarial
JonathanCovena1
 

Último (20)

Los acontecimientos finales de la tierra.pdf
Los acontecimientos finales de la tierra.pdfLos acontecimientos finales de la tierra.pdf
Los acontecimientos finales de la tierra.pdf
 
Fundamentos filosóficos de la metodología de la enseñanza .pdf
Fundamentos filosóficos de la metodología de la enseñanza .pdfFundamentos filosóficos de la metodología de la enseñanza .pdf
Fundamentos filosóficos de la metodología de la enseñanza .pdf
 
PRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdf
PRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdfPRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdf
PRESENTO TRABAJO DE APLICACIONES EN INTERNET.pdf
 
Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...
Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...
Leyes de los gases según Boyle-Marriote, Charles, Gay- Lussac, Ley general de...
 
USO DEL MODELO DE CAPAS TCP/IP Y MODELO OSI
USO DEL MODELO DE CAPAS TCP/IP Y MODELO OSIUSO DEL MODELO DE CAPAS TCP/IP Y MODELO OSI
USO DEL MODELO DE CAPAS TCP/IP Y MODELO OSI
 
Los Recursos Naturales como Base de la Economía
Los Recursos Naturales como Base de la EconomíaLos Recursos Naturales como Base de la Economía
Los Recursos Naturales como Base de la Economía
 
UESJLS Robótica Clase 18 - Escenarios de Vex - Polígonos
UESJLS Robótica Clase 18 - Escenarios de Vex - PolígonosUESJLS Robótica Clase 18 - Escenarios de Vex - Polígonos
UESJLS Robótica Clase 18 - Escenarios de Vex - Polígonos
 
La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.
 
ELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdf
ELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdfELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdf
ELEMENTOS DE LA COMPRENSION ORAL-ESCUCHA ACTIVA.pdf
 
La orientación educativa en el proceso de enseñanza-aprendizaje.pptx
La orientación educativa en el proceso de enseñanza-aprendizaje.pptxLa orientación educativa en el proceso de enseñanza-aprendizaje.pptx
La orientación educativa en el proceso de enseñanza-aprendizaje.pptx
 
UESJLS Robótica Clase 19 - Dibujo de un polígono sobre otro
UESJLS Robótica Clase 19 - Dibujo de un  polígono sobre otroUESJLS Robótica Clase 19 - Dibujo de un  polígono sobre otro
UESJLS Robótica Clase 19 - Dibujo de un polígono sobre otro
 
Fundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanzaFundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanza
 
Apoplejia_UNIVERSIDAD CENTRAL DEL ECUADOR
Apoplejia_UNIVERSIDAD CENTRAL DEL ECUADORApoplejia_UNIVERSIDAD CENTRAL DEL ECUADOR
Apoplejia_UNIVERSIDAD CENTRAL DEL ECUADOR
 
modulo de sistema educativo peruano 2024
modulo de sistema educativo peruano 2024modulo de sistema educativo peruano 2024
modulo de sistema educativo peruano 2024
 
Presentación sector la arenita_paijan pptx
Presentación sector la arenita_paijan pptxPresentación sector la arenita_paijan pptx
Presentación sector la arenita_paijan pptx
 
Módulo de lectoescritura para primer grado
Módulo de lectoescritura para primer gradoMódulo de lectoescritura para primer grado
Módulo de lectoescritura para primer grado
 
CUADRO COMPARATIVO Aylen.docx............
CUADRO COMPARATIVO Aylen.docx............CUADRO COMPARATIVO Aylen.docx............
CUADRO COMPARATIVO Aylen.docx............
 
FRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLA
FRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLAFRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLA
FRASE CÉLEBRE OLÍMPICA EN ROMPECABEZAS. Por JAVIER SOLIS NOYOLA
 
Fundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanzaFundamentos filosóficos de la metodología de la enseñanza
Fundamentos filosóficos de la metodología de la enseñanza
 
Calidad de vida laboral - Ética y Responsabilidad Social Empresarial
Calidad de vida laboral - Ética y Responsabilidad Social EmpresarialCalidad de vida laboral - Ética y Responsabilidad Social Empresarial
Calidad de vida laboral - Ética y Responsabilidad Social Empresarial
 

Monografia

  • 1. Instituto de educación superior tecnológico publico Túpac Amaru cusco Tema: Docente:  Roque Mamani, Ángel Mario Alumnos:  Ambur Quispe, Yessenia Frine  Armuto Mamani, Hulderico  Baez Cruz, Raul Cusco…Perú Presentación METODOLOGÍADE DESARROLLO DE SOFTWARE
  • 2. Introducción En el presente monografía se explica muy brevemente los aspectos queinvolucra el proceso de desarrollo de software y la metodología INGENIERÍADELSOFTWARE Eldesarrollodesistemasdesoftwarecomplejosnoesuna actividad trivial, que puedaabordarsesin un análisisprevio. Elconsiderarque un proyectode desarrollode softwarepodía abordarsecomo cualquierotro,hallevado auna serie deproblemasque limitan nuestracapacidaddeaprovechar losrecursosqueelhardware pone anuestradisposición. Noexiste una fórmula mágicapara solucionarestosproblemas,pero com- binandométodosaplicablesacadauna de las fasesdeldesarrollode software, construyendo herramientaspara automatizarestosmétodos,utilizando técnicaspara garantizarlacalidad de losproductosdesarrolladosycoordinandotodaslaspersonasinvolucradaseneldesarrollode unproyecto,podremosavanzarmucho enlasolución deestos.Deelloseencargaladisciplina llamadaIngeniería delSoftware. lasiguiente: Unadelasprimerasdefinicionesque sediodelaingenieríadelsoftwarees Elestablecimientoyuso de principios de ingeniería robustos,orientados a obtenersoftware económico,que sea fiableyfuncionedemaneraeficiente sobre máquinas reales. Laingenieríadelsoftwareabarcaunconjunto detres elementosclave: mé- todos, herramientasyprocedimientos,que facilitanalgestorelcontrolelprocesodedesarrollo ysuministranalosdesarrolladoresbasespara construir de forma productiva softwarede alta calidad. Los métodosindican cómo construir técnicamenteelsoftware,yabarcan una amplia serie de tareasque incluyen laplanificación yestimaciónde proyectos,elanálisis de requisitos,eldiseñode estructurasde datos,programasyprocedimientos,lacodificación, las pruebasyelmantenimiento.Losmétodosintroducenfrecuentementeuna notaciónespecí- ficapara latareaencuestión yunaserie decriteriosdecalidad. Las herramientasproporcionanun soporteautomáticoo semiautomático para utilizarlosmétodos.Existen herramientasautomatizadaspara cadauna de las fasesvis- tas anteriormente,ysistemasque integranlas herramientasdecadafase deforma que sirven para todoelprocesodedesarrollo.EstasherramientassedenominanCASE(ComputerAssis- tedSoftwareEngineering).
  • 3. Losprocedimientosdefinen lasecuenciaen que seaplican losmétodos, losdocumentosque serequieren,loscontrolesque permitenasegurarlacalidad ylasdirectrices quepermitenalosgestoresevaluarlosprogresos. METODOLOGIAS DE DESARROLLO DE SOFTWARE Se puededefinirmétodocomo laordenaciónyexplicitación formalde los mediosque conduceneficazmente allogrodeunobjetivopredeterminadoódeuna tareacon- creta. Apartirdeestadefinición, sepuededecirque una metodologíaeselcon- juntodemétodosque seusanenuna determinadaactividad conelfindeformalizarla yoptimizarla. Las Metodologías de Desarrollo de Software surgen ante la necesidad de utilizar una serie de procedimientos, técnicas, herramientas y soporte documental a la hora de desarrollar un producto software. Dichas metodologías pretenden guiar a los desarrolladores al crear un nuevo software, pero los requisitos de un software a otro son tan variados y cambiantes, que ha dado lugar a que exista una gran variedad de metodologías para la creación del software. Conjunto de métodos, de reglas, que por una parte sirven de guía para realizar los trabajos que van dando forma a los desarrollos y que por otra obligan a la dirección del proyecto y a los componentes de los equipos a realizar ciertas comprobaciones sistemáticas de modo que el resultado final, al menos desde un punto de vista formal, no presente incoherencias y esté dirigido a un objetivo claro y prefijado Es conjunto ordenado de pasos a seguir para llegar a la solución de un problema u obtención de unproducto (el software), son también los pasos generales que sigue el proceso de desarrollo de unproducto software Las metodologías de desarrollo de software son un conjunto de procedimientos, técnicas y ayudas a ladocumentación para el desarrollo de productos software Una metodología está compuesta por: Cómo dividir un proyecto en etapas. Qué tareas se llevan a cabo en cada etapa. Qué restricciones deben aplicarse. Qué técnicas y herramientas se emplean. Cómo se controla y gestiona un proyecto CLASIFICACIÒN DE DESARROLLO DE SOFTWARE Las metodologías se clasifican de la siguiente forma:  Estructuradas. Orientadas a procesos Orientadas a datos Mixtas  No estructuradas. Orientadas a objetos Sistemas de tiempo real
  • 4. METODOLOGÍAS ESTRUCTURADAS Se basan en la forma top-Down -Metodologías orientadas a procesos La ingeniería del software se basa en el modelo básico de entrada/proceso/salida de un sistema. Está compuesta por: Diagrama de flujo de datos (DFD). Diccionario de datos. Especificaciones de proceso. Ejemplos: metodologías de DeMarco, Gene y Sarson, Yourdon. -Metodologías orientadas a datos Son metodologías basadas en la información. Primero se definen las estructuras de datos y, a partir de éstos, se derivan los componentes procedimentales. Ejemplos: metodologías de Jackson, Warnier, Warnier-Orr. METODOLOGÍAS NO ESTRUCTURADAS -Metodologías orientadas a objeto La orientación a objetos unifica procesos y datos encapsulándolos en el concepto de objetos. Tiene dos enfoques distintos: Revolucionario, puro u ortodoxo. Rompen con las metodologías tradicionales. Ejemplos: metodologías OOD de Booch, CRC/RDD de Wirfs-Brock. Sintetista o evolutivo. Toman como base los sistemas estructurados y conforman elementos de uno y otro tipo. Ejemplos: metodología OMT de Rumbourgh. -Sistemas de tiempo real Procesan información orientada al control más que a los datos. Se caracterizan por concurrencia, priorización de procesos, comunicación entre tareas y acceso simultáneo a datos comunes.
  • 5. CARACTERISTICAS DE UNA METODOLOGIA DE DESARROLLO DE SOFTWARE ☺ Existencia de reglas predefinidas ☺ Cobertura total del ciclo de desarrollo ☺ Verificaciones intermedias ☺ Planificación y control ☺ Comunicación efectiva ☺ Utilización sobre un abanico amplio de proyectos ☺ Fácil formación ☺ Herramientas CASE ☺ Actividades que mejoren el proceso de desarrollo ☺ Soporte al mantenimiento ☺ Soporte de la reutilización de software Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo) Pretende implementar las mejores prácticas en Ingeniería de Software Desarrollo iterativo Administración de requisitos Uso de arquitectura basada en componentes Control de cambios Modelado visual del software Verificación de la calidad del software A su vez la misma se caracteriza por ser iterativo e incremental, estar centrado en la arquitectura y guiado por los casos de uso. OBJETIVOS DE LA METODOLOGIAS DE SOFTWARE Lograr la construcción de un sistema informático eficiente, que cumpla con los requerimientos planteados, es una tarea realmente intensa y sobre todo difícil de cumplir. Imponer un proceso disciplinado sobre el desarrollo de software con el fin de hacerlo más predecible y eficiente. como principal objetivo aumentar la calidad del software que se produce en todas y cada una de sus fases de desarrollo. Mejores Aplicaciones Un mejor Proceso de Desarrollo que identifique salidas (o productos intermedios) de cada fase de forma que se pueda planificar y controlar el proyecto METODOLOGIAS DE DESARROLLO DE SOFTWARE TRADICIONALES Estas metodologías tradicionales imponen una disciplina de trabajo sobre el proceso de desarrollo del software, con el fin de conseguir un software más eficiente. Para ello, se hace énfasis en la planificación total de todo el
  • 6. trabajo a realizar y una vez que está todo detallado, comienza el ciclo de desarrollo del producto software. Se centran especialmente en el control del proceso, mediante una rigurosa definición de roles, actividades, artefactos, herramientas y notaciones para el modelado y documentación detallada. Además, las metodologías tradicionales no se adaptan adecuadamente a los cambios, por lo que no son métodos adecuados cuando se trabaja en un entorno, donde los requisitos no pueden predecirse o bien pueden variar. Entre las metodologías tradicionales podemos citar: • RUP (Rational Unified Procces) • MSF (Microsoft Solution Framework) • Win-WinSpiralModel • Iconix Las necesidades de un cliente pueden sufrir cambios importantes del momento de contratación de un software al momento de su entrega; y es mucho más importante satisfacer estas últimas que las primeras. Esto requiere procesos de software diferentes que en lugar de rechazar los cambios sean capaces de incorporarlos. METODOLOGIAS DE DESARROLLO DE SOFTWARE ÀGILES Las metodologías ágiles proporcionan una serie de pautas y principios junto a técnicas pragmáticas que puede que no curen todos los males pero harán la entrega del proyecto menos complicada y más satisfactoria tanto para los clientes como para los equipos de entrega. En la figura 1 se muestran los principios que rigen el desarrollo ágil. Entre las metodologías ágiles más destacadas hasta el momento se pueden nombrar: • XP (Extreme Programming) • Scrum • Crystal Clear • DSDM (Dynamic Systems Developmemt Method) • FDD (Feature Driven Development) • ASD (Adaptive Software Development) • XBreed • Extreme Modeling Ciclo devidadeldesarrollosoftware Todo proyectode ingenieríatiene unos fines ligados a laobtenciónde un producto, procesooservicio que esnecesariogeneraratravés dediversasactividades.Algunas deestas actividadespuedenagruparseenfasesporqueglobalmentecontribuyenaobtenerunproducto intermedio,necesariopara continuarhacia elproductofinalyfacilitarlagestión delproyecto. Alconjunto delasfasesempleadasseledenomina“ciclodevida”.
  • 7. Sinembargo,laforma de agruparlas actividades,losobjetivos de cadafase, lostipos deproductosintermediosque segeneran,etc.Puedenser muydiferentesdependiendodeltipo deproductooprocesoagenerarydelastecnologías empleadas. Lacomplejidaddelasrelacionesentre lasdistintasactividades creceexponencialmente con eltamaño,con loque rápidamenteseharía inabordablesinofuera porlaviejatáctica de “divideyvencerás”.Deestaformaladivisióndelosproyectosenfasessucesivasesunprimer pasopara lareduccióndesucomplejidad,tratándosedeescogerlaspartesdemaneraquesus relaciones entre síseanlomás simples posibles.
  • 8. Ladefinicióndeunciclodevidafacilitaelcontrolsobrelos tiemposenque esnece- sarioaplicarrecursosdetodotipo(personal,equipos,suministros,etc.)alproyecto. Elcontroldecalidadtambiénsevefacilitadosilaseparaciónentre fasessehaceco- rrespondercon puntosen los que éstadebaverificarse(mediantecomprobacionessobrelos productos parcialesobtenidos). Por ciclodevidareferido aldesarrollosoftware,seentiendelasucesióndeetapaspor lasquepasaelsoftwaredesdequeunnuevo proyectoesconcebidohastaquesedejadeusar. Cadauna de estasetapasllevaasociadauna seriede tareasque debenrealizarse,y una serie de documentos(en sentidoamplio: software)que seránlasalida de cadauna de estasfasesyservirándeentradaenlafase siguiente. Existen diversostipos de ciclode vida,esdecir, diversasformas de verelprocesode desarrollode software,ycadauno de ellos va asociadoa un paradigmade laingenieríadel software,esdecir,aunaserie demétodos,herramientasyprocedimientosquedebemosusar a lolargodeunproyecto. Laeleccióndeunparadigmauotroserealizadeacuerdoconlanaturalezadelproyectoydelaaplicaci ón,losmétodosausar yloscontrolesyentregasrequeridos. Ingenieríayanálisisdelsistema Elsoftwareessiempreparte deunsistemamayor, porloque siemprevaainterrelacio- narsecon otros elementos,yaseahardware,máquinasopersonas.Por esto, elprimer paso del ciclode vida de un proyectoconsisteen un análisisde las característicasyelcomporta-
  • 9. mientodelsistemadelcualelsoftwarevaaformarparte. Enelcasodequequeramosconstruir unsistemanuevo, porejemplo unsistemadecontrol,deberemosanalizarcuálesson losrequi- sitosylafuncióndelsistema,yluego seasignaránunsubconjuntode estosrequisitosalsoft- ware. En el casode un sistema ya existente (supongamos, por ejemplo, que queremos informatizar una empresa)sedebeanalizarelfuncionamientode lamisma −las operaciones que sellevan a cabo en ella−, yasignaremosal softwareaquellas funcionesque vamosa automatizar. Laingenieríadelsistemacomprende,portanto, losrequisitosglobalesaniveldelsis-tema,así como una cierta cantidaddeanálisisydediseñoanivelsuperior,esdecirsinentrar enmucho detalle. Análisisderequisitosdelsoftware Elanálisisde requisitosdebeser más detalladopara aquelloscomponentesdelsiste- maque vamosaimplementarmediantesoftware.Elingenierodelsoftware debecomprender cuálesson losdatosque sevan amanejar,cuál vaaser lafunción que tiene que cumplirel software,cuálesson lasinterfaces requeridosycuáleselrendimientoqueseesperalograr. Los requisitos,tanto del sistemacomo del softwaredebendocumentarseyrevisarse conelcliente. Diseño Eldiseñoseaplica acuatro característicasdistintasdelsoftware:laestructurade los datos,laarquitecturade las aplicaciones,laestructurainterna de losprogramasylas interfa- ces. Eldiseñoeselprocesoque traducelosrequisitosen una representacióndelsoftware de forma que puedaconocerselaarquitectura,funcionalidade incluso lacalidad del mismo antesdecomenzarlacodificación. Aligualque elanálisis,eldiseñodebedocumentarseyforma parte de laconfigura- cióndel software(elcontrol de configuracionesesloque nos permite realizar cambiosen el softwaredeformacontroladaynotraumáticapara elcliente).
  • 10. Codificación Lacodificación consiste enlatraduccióndeldiseño aunformato quesealegiblepara la máquina.Sieldiseñoeslosuficientementedetallado,lacodificación esrelativamentesencilla, ypuedehacerse−almenosenparte− deformaautomática,usandogeneradoresdecódigo. Podemosobservarque estasprimerasfasesdel ciclode vidaconsistenbásicamente en una traducción:en elanálisisdelsistema,losrequisitos,lafunciónylaestructurade este setraducenaundocumento:elanálisisdelsistemaqueestáformado enparte pordiagramas y enparte pordescripcionesenlenguajenatural.Enelanálisisderequisitosseprofundizaenel estudiodelcomponentesoftwaredelsistemayesto setraduceaundocumento,tambiénfor- madopordiagramasydescripcionesen lenguajenatural.Eneldiseño,losrequisitosdelsoft- waresetraducenauna serie dediagramasque representanlaestructuradelsistemasoftware, desus datos,desus programasydesus interfaces.Por último,enlacodificación setraducen estosdiagramasdediseñoaunlenguajefuente,que luego setraduce−secompila− para obte- nerunprogramaejecutable. Prueba Unavezque yatenemoselprogramaejecutable,comienzalafase depruebas. Elobje- tivoescomprobarque nosehayanproducidoerroresenalgunadelasfasesdetraducciónan- teriores,especialmenteen lacodificación. Paraellodebenprobarsetodaslas sentencias,no sóloloscasosnormalesytodos losmódulosqueformanparte delsistema. Utilización Una vez superadalafase de pruebas,elsoftwareseentregaalcliente ycomienzala vidaútildelmismo. Lafasedeutilización sesolapaconlasposteriores−elmantenimientoyla sustitución−ydurahastaqueelsoftware,yareemplazado porotro,dejedeutilizarse. Mantenimiento Elsoftwaresufrirácambiosalolargodesuvidaútil. Estoscambiospuedenser debidos atrescausas: −Que, durantelautilización, elcliente detecteerroresenelsoftware:loserroreslaten- tes. −Que seproduzcancambiosen alguno de loscomponentesdelsistema informático: porejemplo cambios enlamáquina, enelsistemaoperativooenlosperiféricos.
  • 11. −Que el cliente requieramodificacionesfuncionales(normalmenteampliaciones)no contempladasenelproyecto. Encualquiercaso,elmantenimientosuponevolveratrásen elciclode vida,alas etapas decodificación,diseñooanálisisdependiendodelamagnituddelcambio. Elmodelo en cascada,a pesarde ser lineal, contieneflujos que permitenla vuelta atrás.Así,desdeelmantenimientosevuelve alanálisis,eldiseñoolacodificación,ytambién desdecualquierfase sepuedevolveralaanterior sisedetectanfallos. DiferenciasentreMetodología,CiclodeVidayMétodo –Una Metodologíapuede seguir unoo varios modelos de CiclodeVida –UnCiclo de Vidaindicaqué obtener, pero nocómo –UnaMetodologíaes unconcepto másamplioqueMétodo ƒSepuedeconsiderarcomounconjuntodemétodos. ƒUnametodologíapuedeenglobarunconjuntodemétodos(de análisis,diseño,programación,etc.)paraabarcarelciclodevida completo Conclusiones Recomendación Una metodología para el desarrollo de software debe ser un instrumento que permita gestionar un proceso dado, existen hoy en día diferentes
  • 12. METODOLOGÍA DE DESARROLLO DE SOFTWARE 29 DE MAYO DE 2013 1 metodologías las cuales no son en forma absoluta comparable, es decir, no existe en forma absoluta una metodología mejor a otra sino que la metodología debe estar alineadas a la cultura de la organización, tamaño y complejidad del proyecto, así como al ciclo de vida del producto que pretende desarrollar. Bibliografía •AnálisisyDiseñodeSistemas.EditorialMcGraw-Hill. •IngenieríadelSoftware.EditorialMcGraw-Hill. •GAIL,Linda,CHRISTIE, John. Enciclopediade Términosde Computación. Edito- rialPHH,PenticeHall. •PHANTHU.MeriseApliquée.Eyrolles. •MATHERON,Merise. Metodologíadedesarrollo deSistemas.Paraninfo. •FISHER, A.C.A.S.E.UsingSoftwareDevelopmentTools.Wiley. •WILSON,P.ComputerSupportedCooperativeWork.IntellectOxford. Anexos.