curso_tecnicas_desarrollo

Post on 03-Oct-2015

218 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

tecnicas de desarrollo

TRANSCRIPT

  • Curso de tcnicas de desarrollo

    Manual del alumno

    Profesor:CdricSimon CopyrightCdricSimon,20072012 Reproduccinprohibida

    Ing.CedricSim

    onTel:22680974C

    el:88882387Email:ce

    dric@

    solu

    cionja

    va.co

    mW

    eb:www.solucionjava.com

    Solu

    cionJava.com

  • Cursodetcnicasdedesarrollo Pagina2/13

    1 ndice1 ndice .................................................................................................................................................................................. 2

    1 Introduccin al curso ......................................................................................................................................................... 3

    1.1 Objetivo de este curso ................................................................................................................................................ 3

    1.2 Manual del alumno ..................................................................................................................................................... 3

    1.3 Requisitos para atender a este curso ........................................................................................................................ 3

    1.4 Soporte despus del curso .......................................................................................................................................... 3

    2 Ciclo de vida del desarrollo de una aplicacin ................................................................................................................. 4

    2.1 Objetivo ....................................................................................................................................................................... 4

    2.2 Establecimiento de los requisitos .............................................................................................................................. 4

    2.3 Estimacin de alta nivel ............................................................................................................................................. 4

    2.4 Diseo funcional ......................................................................................................................................................... 4

    2.5 Diseo tcnico ............................................................................................................................................................. 5

    2.6 Desarrollo .................................................................................................................................................................... 5

    2.7 Pruebas unitarias ........................................................................................................................................................ 5

    2.8 Plan de prueba ........................................................................................................................................................... 6

    2.9 Integracin .................................................................................................................................................................. 6

    2.10 Pruebas de usuarios ................................................................................................................................................. 6

    2.11 Pruebas de rendimiento ........................................................................................................................................... 6

    2.12 Produccin ................................................................................................................................................................ 6

    2.13 Parches ...................................................................................................................................................................... 7

    2.14 Seguimiento de problemas ....................................................................................................................................... 7

    3 Manejo de versiones ........................................................................................................................................................... 8

    3.1 Uso de programa de manejo de versiones ................................................................................................................ 8 3.1.1 Sistema de bloqueo ................................................................................................................................................ 8 3.1.2 Sistema de fusin .................................................................................................................................................. 9 3.1.3 CVS ..................................................................................................................................................................... 10 3.1.4 Subversion ........................................................................................................................................................... 10

    3.2 Ramas de desarrollo (Branches) ............................................................................................................................. 10

    3.3 Etiquetas (Tags) ........................................................................................................................................................ 10

    3.4 Integracin de CVS con herramientas de desarrollo : Eclipse y CVS ................................................................ 11

    4 Documentacin del cdigo .............................................................................................................................................. 12

    4.1 Uso ............................................................................................................................................................................. 12

    4.2 Objetivo ..................................................................................................................................................................... 12

    4.3 Estandartes ............................................................................................................................................................... 12

    5 Reglas de nombramiento ................................................................................................................................................. 13

    5.1 Objetivo ..................................................................................................................................................................... 13

    5.2 Ejemplos de reglas de nombramiento .................................................................................................................... 13

    5.3 Nombramiento de cdigos ....................................................................................................................................... 13

    5.4 Nombramientos de variables ................................................................................................................................... 13 CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina3/13

    1 Introduccinalcurso1.1 Objetivodeestecurso Estecursointentadaralalumnobuenascostumbresdedesarrolloyclavesparadesarrollaraplicacionesestables,sostenible,ylistasparacrecer.

    1.2 Manualdelalumno Estemanualdelalumnoesunaayudaparaelalumno,paratengaunrecuerdodelcurso.Estemanualcontieneunresumendelasmateriasquesevanaestudiarduranteelcurso,peroelalumnodeberadetomarnotaspersonalesparacompletasestemanual.

    1.3 Requisitosparaatenderaestecurso Nohayrequisitosparaseguirestecurso,perounaexperienciapreviaendesarrollodeaplicacionesesdeseableparaentendermejorelfindelcurso.

    1.4 Soportedespusdelcurso Sitienespreguntassobrelamateriadelcursoentusejerciciosprcticos,puedesescribirtuspreguntasacedric@solucionjava.com.

    Parainformacionessobreotroscursos,visitaelsitiowebwww.solucionjava.com.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

    http://www.solucionjava.com/mailto:cedric@solucionjava.com

  • Cursodetcnicasdedesarrollo Pagina4/13

    2 Ciclodevidadeldesarrollodeunaaplicacin

    2.1 Objetivo Paralograrundesarrollosostenibleesimportanteconoceryrespetarelciclodevidadeunaaplicacin.

    Elcicloexplicadoenseguidasirvetantoparaeldesarrollodenuevaaplicacionescomoparamodificarunaaplicacinexistente.

    Cuandosedeseacambiarunavariaspartesdeunaaplicacinseagrupanenunproyecto,yelproyectosigueelciclodevidaexplicadoabajo.

    Dependiendodeltamaodelaaplicacinydelaempresa,lasetapastomarnmsomenosimportancia.Entremsgrandeeslaaplicacin,msimportanteesdepegarseacadapaso.

    Paraaplicacionesgrandey/oimportantes,seutilizanvariosambientes.Esdecirquelaaplicacinexisteenvariosejemplares.Deberadetenersiempreunmnimodedosambientes:produccinydesarrollo.Otrosambientespuedenserelambientedeintegracin,eldepruebadeusuario,eldecapacitacin,yeldereferencia.

    2.2 Establecimientodelosrequisitos Esaveceslomsdifcildeconseguir,peroeslomsimportante.Losusuariooelclientedebeexplicarclaramentequeesloqueelquiere.

    Paraesoeldebelistartodossusrequisitosdemaneradetallada.'Hagacomoentalotromodulo...'nosepuedeaceptarcomounrequisitovlido,peroleconcedoqueaveceshayqueaceptarlo(elclienteesrey...).

    Cuandolosrequisitosnoestnmuydetallados,esmuyimportantedetallarlosenlaanlisisfuncional,paraestarseguroqueloquesevaadesarrollareslodeseado.

    2.3 Estimacindealtanivel Estepasoesopcional.Esunaestimacin'aprimeravista'delesfuerzo(trabajo)necesarioparaimplementarloscambiosodesarrollarlaaplicacinrequerida.

    Esosirveparaestimarelcostoyplanificarlosrecursosnecesarios.

    2.4 Diseofuncional Eslatraduccindelosrequisitos(punto2.2)enundiseo'informtico'.Porejemplo,sedescribircomoparecernlaspantallasdelGUI,losflujosdepantallasylosflujosdenegociosqueseimplementarn.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina5/13

    Lapersonaqueredactaeldiseofuncionaldebetenerunaideageneralquecomoseimplementaraniveltcnico,paraevitardeproponereneldiseoalgoquenosepuedeimplementar,oquepediraunesfuerzodemasiadograndeparaimplementar.

    Esbuenaideaqueunprogramadorrevisaestediseoantequeselepresentaalcliente,paratenerunacuerdotcitodeque,aprimeravista,sepuedeimplementaralniveltcnicodentrodelcosto(tiempo)estimado.

    Encasoquesehizounaestimacindealtanivel,elesfuerzo/costosepuedeconfirmar,afinar,omodificaraqu.

    Elobjetivoesqueelcliente'firma'eldiseofuncionalcomoacuerdodelosquesevaadesarrollar.Estedocumentoservirdebaseparalaevaluacin(prueba)delaaplicacin.

    Sialfinalalgonofuncionacomoesperado,hayqueregresaraldiseofuncionalparaaveriguarsielpuntoquedaproblemaestabapresenteeneldiseoono.Sinoestabanieneldiseonienlosrequisitos,setratadeunnuevorequisito(acargodelcliente).Siestpresenteyfuncionacomodescrito,essetratadeuncambioderequisito(acargodelcliente).Siestpresenteperonofuncionacomodescrito,esunerrordeprogramacinquehayquecorregir(acargodeldesarollador).

    UnejemplodediseofuncionalestdisponibleenelCD(AFSiminsaenlinea.pdf).

    2.5 Diseotcnico Eslatraduccindeldiseofuncionalenunasolucintcnica.Sedescribelaarquitecturatcnicaquesevaautilizarparaprogramarlorequerido.

    Eldiseotcniconodeberadecontenercdigofuente,sinolaestructuradelcdigoquesevaautilizarydeloscambiosnecesarios.Queseancambiosdelabasededatos,nuevosobjetosJava,servlet,...

    Unavezfinalizado,estediseodeberaserrevisadoyaprobadoporelanalistafuncionalantedeiniciareldesarrollo.

    2.6 Desarrollo Eslaaplicacindeldiseotcnicoyelpropiodesarrollodelaaplicacin.

    Encasoquesehizounaestimacindealtanivel,elesfuerzo/costosepuedeconfirmar,afinar,omodificaraqu.

    Encasoqueseencuentraalgnproblema(lasolucinimaginadanofuncionaodaproblemas),hayquerevisarlasituacinconelanalistafuncional,yeventualmenteelclientesielimpactoesgrande.

    2.7 Pruebasunitarias Despusdehaberhechosudesarrollo,elprogramadordebeprobarsucdigodemaneraunitaria.Esdecir,cadacdigoapartesintenerencuentalatotalidaddelaaplicacin.Laspruebassedeberandehacerencondicionessimilaralaproduccin.Esdecirquesilaaplicacinfuncionaen3tiers,hayqueprobarlaen3tierstambin.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina6/13

    Laspruebashechassedebenregistrarypresentaralanalistafuncionalparapoderconcluirqueelcdigoestlistoparapasaralambientedeintegracin.

    2.8 Plandeprueba Unavezeldiseofuncionalaprobado,elanalistafuncionalylosusuariosdeberan(cadauno)queescribirunplandeprueba.

    Elplandepruebadebecontenerademsdelaspruebasdelcdigonueva,pruebasderegresin,paraverificarquelasprincipalesfuncionesdelaaplicacinpreexistentenohansidoimpactadodemaneranodeseada.

    2.9 Integracin Estepasoeselpuestoencomndetodoslasmodificacionesdelaaplicacin,yaquevariosproyectosdiferentespuedendesarrollarseenparalelo,yquemsdeunprogramadorpuedetrabajarenelproyecto.

    Aquesqueelanalistafuncionalharsuspruebasparavalidarlaaplicacin,antesdeentregarlaalcliente.

    Lapruebasdeberanserdocumentadas,ascomolosproblemasencontrados.

    Ademsdeprobarlasnuevasfuncionesocambiosdelsistema,sedebesiempreefectuarpruebasderegresinparaasegurarsequetodaslasfuncionesimportantesdelaaplicacin,mismosinohansidomodificadadirectamente,siguenfuncionandocomoesperado.

    2.10Pruebasdeusuarios Aqusonlosusuariosquevanhacersuspruebas.

    Lapruebasdeberanserdocumentadas,ascomolosproblemasencontrados.

    Unavezlaspruebasterminadas,elclientedecidesielestdeacuerdoquelaaplicacinpasaaproduccinono.

    2.11Pruebasderendimiento Aqusevaaprobarelrendimientodelaaplicacin.Laspruebasderendimientosedeberanefectuarsobreunambientelomsparecidoposiblealaproduccin.

    Sevanaprobarentreotroslacargaquesoportaelsistema,eltiempodeejecucindelosinterfaces'batch',yelrendimientodelasdiferentespartesdelsistema.

    Elobjetivoesdetectarantesdeproduccinposiblesproblemasderendimientos(porejemploconsultaSQLnooptimizada),yconocerlaslimitesdecargadelsistema(usuarios,transacciones,...).Existenprogramasquepermitengenerarcargadelsistemasimulandomltiplesusuarios.,comoJMeter.

    2.12Produccin Aquesdondeseusafinalmentelaaplicacin.Debeserunambienteestable.Laproduccinnosedeberademodificarmuyseguido.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina7/13

    2.13Parches Losparchessoncorreccionesdecdigosporerroresquenofuerondetectadasantesdeproduccinoquelofueronperoquenoerancrticasynosepodancorregiratiempoparapasarenproduccin.Tambinpuedenservirparaimplementarcambiospequeos(requisitomodificadoencaminodeldesarrollodelproyecto).

    Losparchesdebendeseguirelmismociclo(puntos2.2a2.11),peromsligeramente.

    2.14Seguimientodeproblemas Paraseguirelestadodelosproblemasquefueronreportados,lesaconsejoelusodealgntipodeprograma.Lomssimpleseraunarchivotextoountabulador,hastaprogramasdiseadosparaestetipodeactividad(porejemploPeregrine).Personalmente,hediseadounprograma,basadoenmiexperienciaconPeregrine,paraelseguimientosdeactividades(proyectos,parches,problemas...)quedellamaVIDA,estescritoenJava(JSP)conbasededatosMySQL.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina8/13

    3 Manejodeversiones3.1 Usodeprogramademanejodeversiones Unodelosproblemasenlavidadeunaaplicacinesdesabercualeslaversinactual(enproduccin)delosarchivos,sintenerquesacarunacopiadelaproduccin,depoderretrocederhaciaunaversinanterior.Otroproblemaeseldesarrolloconcurrente(variosprogramadorestrabajandosobreunmismocdigo).

    Paracontestarestosproblemasexistenlosprogramasdemanejodeversiones.Estosprogramasvanaguardartodoslosarchivosenunrepositorio.Seincrementarautomticamenteelnmerodeversindeunarchivocadavezqueseguardaunanuevaversindelarchivoenelrepositorio,yselepodradjuntaruncomentarioconelfindepodertrazarelhistricodelarchivo.

    Enunsistematpicodeclienteservidor,unasolapersonapuedetenerelderechodeescribirenelarchivo,losdemssololopuedenleer.Sidospersonasleenelmismoarchivo,lomodificancadaunodesuladoyluegoloescriben,lasegundapersonavaasobrescribirloscambioshechosporlaprimerapersona,perdiendosutrabajo.

    Elproblemaaevitar

    Paraevitaresteproblemadesobreescritura,existendossoluciones:elbloqueodelarchivo,ylafusindearchivos.

    3.1.1 Sistemadebloqueo Conelsistemadebloqueo,unusuarioadquiereunbloqueodeunarchivo,loqueimpidecualquierotrousuariodemodificarlohastaqueelbloqueohagasidoquitado.

    Conestesistema,unarchivosolopuedeserutilizadoporunusuario.Nosepermiteeldesarrolloconcurrente.CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina9/13

    Estoaseguraquealmomentodeguardarsucopia,nadiehamodificadoenarchivodedesdeelbloqueo.Elpuedesobrescribirelarchivoenelrepositoriosinriesgodesobrescribirloscambioshechosporotrousuario.

    Lasolucindebloqueolecturaescrituradesbloqueo

    3.1.2 Sistemadefusin Conelsistemadefusin,losusuarioguardanunacopiadelarchivoenlocal,yalmomentodeguardarloelsistemadetectasialguiendeotromodificoelarchivoenelrepositoriodesdeelmomentodelacopiaenlocal.Encasoquesi,tendrqueocurrirunafusindeloscambiosantesdepoderguardarlos.Esopermiteeldesarrolloconcurrente.

    Lafusinsepuedepasarautomticamenteomanualmente.Encasodeconflictos(porejemplounamismalneamodificadapordospersonas),harqueresolverlosmanualmente.

    Hayquenotarquelafusinfuncionamuybiencuandoelcdigosefusionaysecompilanenlaherramientamisma(comoEclipse),peronotantocuandosefusionaafueradelentorno,amenosquesevalidaluegotodoelcdigofusionado,loquepuedeserfastidioso.Paraestosltimos,elbloqueoesunamejoraopcin.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina10/13

    Lasolucincopiarmodificarfusionar

    3.1.3 CVS CVSesunprogramalibrequepermitemanejarversionesdearchivos.Eselsistemamssoportados,ymuchasherramientassoportanpordefectolaconexinconunrepositoriodeCVS.

    Msinformacinenwww.cvs.org

    3.1.4 Subversion SubversionesunsistemadecontroldeversincomoCVS(elherededeCVS),peroconmsposibilidades.Entreotros,Subversionpermiteversionarcarpetas,sobrevivirenelhistricoauncambiodenombredeunarchivo,ysoportavariostiposdeconexin,entreotrosHTTPoHTTPS.SeesthaciendomuypopularporloquesuperaaCVSyesgratis.Msinformacinenhtt p://subversion.tigris.org/

    3.2 Ramasdedesarrollo(Branches) Losprogramasdecontroldeversinpermitencrearramasdentrodelrepositorio.

    Elcdigo'original'seencuentraeneltronco(TRUNK/HEAD).Cuandoseiniciaunproyectodemodificaciones,secreaunaramasaliendodeltronco,ysetrabajarenestarama.Cuandoelproyectopasaaproduccinseponealdaeltroncoconlasmodificaciones.

    3.3 Etiquetas(Tags) Lasetiquetaspermitenmarcarloscdigosconunnombreounafecha.Estopermiteenelfuturocompararloscdigosconestaversinetiquetada.Sirveporejemploparamarcarloscdigosquefueronpuestoenproduccinparaunaciertaversin.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

    http://subversion.tigris.org/http://subversion.tigris.org/http://www.cvs.org/

  • Cursodetcnicasdedesarrollo Pagina11/13

    3.4 IntegracindeCVSconherramientasdedesarrollo: EclipseyCVS

    EclipseseintegrademaneranativaconCVS,yvaunpluginconSubversin.

    Vamosacrearunnuevoproyecto,guardarloenCVS,yluegocargarelproyectoenotrocomputadora,modificarunarchivoenamboscomputadorasyvercomosecomportalafusindelasmodificaciones.

    Hayquenotarquelosentornosestneningles.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina12/13

    4 Documentacindelcdigo4.1 Uso Ladocumentacindelcdigosirvetantoparaelcreadordelcdigocomoparalosotrosprogramadoresqueluegomodificarnelcdigo.

    Ladocumentacinsepuedeencontrarendoslugaresdistintos:enelcdigomismooafueroenotroarchivo.

    Ladocumentacinqueseguardaafueraesdedostipos:eldiseotcnico,quedalaestructurageneral,ylaimplementacintcnica,quedalosdetallestcnicosobreelcdigomismo.UnejemplodeesaltimadocumentacinenlaJavaDoc.

    4.2 Objetivo Elobjetivodeladocumentacindelcdigoestantoparaqueotrapersonapuedaentendercomofuncionaelcdigo,comoconfinesdeauditoria,paraquealguienquetienequecambiaruncdigoqueelconocaantessepuededarcuentasialguiendeotrolotocyqueselehacambiado.

    4.3 Estandartes Sinoexistenestandartesinternacionalesdedocumentacindelcdigo,esmuyimportantequedentrodeunamismaorganizacinseimplementanestandartesparaquetodoelmundotrabajadelamismamanerayqueunprogramadorpuedeencontrarlainformacinfcilmente,sinimportanciadequiencreoocambielcdigo.

    Entonceshaydostipodeinformacinenladocumentacin:losdatoshistricosylosdetallestcnicos.

    UncasoespecialeslaJavaDoc.ParautilizarlaJavaDoc,quecreaunadocumentacinenformatoHTMLsobrelasclasesysusmtodosautomticamentebasndoseencomentariosestructuradosadentrodelcdigoJava,hayquerespetarunosestandartesparaquesepuedagenerarladocumentacin(queJavaDocsepacualessonloscomentariosaincluirenladocumentacin).

    Paralainformacinhistrica,leaconsejodecolocarlaencabezadelcdigo,conlosdatossiguiente:laversindelarchivoodelaaplicacin,lafechadelcambio,lasinicialesoelnombredelprogramadorquehizoelcambio,yladescripcingeneraldelcambio.

    Porejemplo:/** Version Fecha Programador Detalles* 1.0 10/03/06 Cedric Creacin del cdigo. Proyecto no 845.* 1.0.1 02/05/06 Cedric Correccin bug no 245* 1.1 05/10/06 Jose Adjunto de la posibilidad de mencionar origen de la* compra. Proyecto no 1545.*/

    Cuantoalladocumentacintcnicaenelcdigo,haynohayrealmenteestandartes.Hayqueprobardemetersuficienteinformacinparaqueotroprogramadorpueda'entrar'fcilmenteenelcdigoyentenderadondemodificarloparalograrsuproyecto.Lasreglasdenombramientotambinayudanadocumentarelcdigo.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

  • Cursodetcnicasdedesarrollo Pagina13/13

    5 Reglasdenombramiento5.1 Objetivo Lasreglasdenombramientopermitenquelosprogramadorespuedanentenderfcilmentelaestructuradeuncdigoyinteractuarmsfcilmenteconotroscdigos.

    Ciertoslenguajetienenestandartesinternacionalesmuyseguidos,comoellenguajeJava.Otrosno,ysetienequedefinirunestndaranivellocal.

    Existenrestriccionesdenombramientoquesonpropiasacadalenguaje,Porejemplo,porlogeneralunnombredevariablenopuedeserigualaunapalabrareservadadellenguaje.

    Tambin,ciertoslenguajessonsensiblesamaysculasyminsculas,yotrosno.Ciertoslenguajespermitenelusodeacentos,peronoseloaconsejoporquepuededarconfusinsiunoloutilizayotrono,ositrabajacondoslenguajedelcualunoaceptaacentosyotrono.Tambinciertasherramientasnosoportanlosacentos,ysitrabajaconLinuxoUnixyWindows,copiandoarchivosdeunsistemaalotropodradarproblemasconlosacentos.

    Essiempreimportanteelegirunnombrequeseainteligible,esdecirquecuentalosquecontieneelarchivo/cdigo/variable...

    5.2 Ejemplosdereglasdenombramiento Lasreglasdenombramientoayudanaencontrarfcilmenteunarchivo.Porejemplo,sepuededefinirquetodoslosnombresdearchivossernenminscula,consubrayaparasepararnombresinternos(porejemplopagina_de_inicio.html).

    5.3 Nombramientodecdigos Ademsdelcdigoprincipalvantambinpartesinternasdelcdigos(comolaclaseysusmtodos).Esbuenodefinirunaregladenombramientoparacadatipodepartedecdigo.

    Cuandohayvarioscdigosmuycercanos,conaccinmuyparecida(porejemplolosdisparadores),sepuedeusarprefijososufijosparadiferenciarlos.Porejemplo:'empleado_au'paraundisparador'afterupdate'sobrelatableempleado,'empleado_bi'paraundisparador'beforeinsert'sobrelatableempleado,

    5.4 Nombramientosdevariables Paraelnombramientodevariablesexistenvariosestandartesinternacionales,deloscualeselmsconocidoeslanotacinhungarina('Hungariannotation').Ustedsepuedepegarauno,ocrearelsuyo.

    Porlogeneralesbuenapracticadetenerporlomenosdospartesensunombredevariable:unprefijoindicadordealcance(variablelocal,global,parmetro)yelnombreinteligibledelavariable.

    Porejemplo:sinprefijoparavariableslocales,elprefijo'g_'paravariablesglobales,yelprefijo'p_'paraparmetros.

    Ciertosestandartestambinadjuntaneltipodevariableenelnombredealvariable.

    CopyrightCdricSimon,20072012 Versin1.2 Reproduccinprohibida

    1 ndice1 Introduccin al curso1.1 Objetivo de este curso1.2 Manual del alumno1.3 Requisitos para atender a este curso1.4 Soporte despus del curso

    2 Ciclo de vida del desarrollo de una aplicacin2.1 Objetivo2.2 Establecimiento de los requisitos2.3 Estimacin de alta nivel2.4 Diseo funcional2.5 Diseo tcnico2.6 Desarrollo2.7 Pruebas unitarias2.8 Plan de prueba2.9 Integracin2.10 Pruebas de usuarios2.11 Pruebas de rendimiento2.12 Produccin2.13 Parches2.14 Seguimiento de problemas

    3 Manejo de versiones3.1 Uso de programa de manejo de versiones3.1.1 Sistema de bloqueo3.1.2 Sistema de fusin3.1.3 CVS3.1.4 Subversion

    3.2 Ramas de desarrollo (Branches)3.3 Etiquetas (Tags)3.4 Integracin de CVS con herramientas de desarrollo : Eclipse y CVS

    4 Documentacin del cdigo4.1 Uso4.2 Objetivo4.3 Estandartes

    5 Reglas de nombramiento5.1 Objetivo5.2 Ejemplos de reglas de nombramiento5.3 Nombramiento de cdigos5.4 Nombramientos de variables

top related