Post on 23-Jan-2016
Administración de SoftwareAdministración de Software / Casos Reales
Pág 1
La seguridad físca
PROGRAMACION
CASOS DE LA VIDA REAL
Administración de SoftwareAdministración de Software / Casos Reales
Pág 2
La seguridad físca
CASO 01
“BELLO ETIQUETADO DE SOFTWARE”
Administración de SoftwareAdministración de Software / Casos Reales
Pág 3
La seguridad físca
Administración de SoftwareAdministración de Software / Casos Reales
Pág 4
La seguridad físca
CASO 02
“CODIGO FUENTE COMPARTIDO”
Administración de SoftwareAdministración de Software / Casos Reales
Pág 5
La seguridad físca
copia01copia05
copia01-1
copia03
copia04
copia02
Copias de código fuente individual Filtro manual y resultado no esperado
Administración de SoftwareAdministración de Software / Casos Reales
Pág 6
La seguridad físca
CASO 03
“REVISANDO CODIGO FUENTE”
Administración de SoftwareAdministración de Software / Casos Reales
Pág 7
La seguridad físca
Jul2007
2011
Ene2006Ene06-Ok
2005
Mar2001
Copias de código fuente disponibles
Public Function Evalua(ByVal id as String) as Boolean
Dim id_aval as StringDim status as Boolean
' Cambio Solicitado por Jefe RR.HH ' Fecha: 20 Mar 2001 - Julio Deza id_aval = get_aval(id) 'status = get_status(id_aval,id)
' Se volvió a considerar el status (Juan Roque) status = get_status(id, id_aval)
' (Rocio17) – La gerencia aprobo todo credito Evalua = True ...
Control de Versiones / Casos Reales
Pág 8
La seguridad físca
Desorden en el Area de TI
Baja productividad del personal
Aumento del costo de desarrollo de software
Proyectos muy difíciles de mantener
CONSECUENCIAS
Administración de SoftwareAdministración de Software / Casos Reales
Pág 9
La seguridad físca
RESULTADOS CONOCIDOS
Administración de SoftwareAdministración de Software / Casos Reales
Pág 10
La seguridad físca
“SOFTWARE TENEBROSO”
Administración de SoftwareAdministración de Software / Casos Reales
Pág 11
La seguridad físca
“SOFTWARE MYNT”
Administración de SoftwareAdministración de Software / Casos Reales
Pág 12
La seguridad físca
“SOFTWARE ENREDADO”
Sistemas de Control de Sistemas de Control de VersionesVersiones
Aplicando SubversionAplicando SubversionAplicando SubversionAplicando Subversion
Control de Versiones / Resumen
Pág 14
La seguridad físca
Herramientas Disponibles
Conceptos de los SCV
Uso de un Repositorio
Desarrollo en Perú
Control de Versiones / Herramientas
Pág 15
La seguridad físca
Herramientas Disponibles
Conceptos de los SCV
Uso de un Repositorio
Desarrollo en Perú
CVS Subversion
Git
Visual Sourcesafe
Mercurial
BitKeeper
Control de Versiones / Conceptos
Pág 16
La seguridad físca
Herramientas Disponibles
Conceptos de los SCV
Uso de un Repositorio
Desarrollo en Perú
Repositorio y Copias de Trabajo
Formas de Acceso
Revisiones
Esquema trunk, tags & branches
Control de Versiones / Conceptos
Pág 17
La seguridad físca
Herramientas Disponibles
Conceptos de los SCV
Uso de un Repositorio
Desarrollo en Perú
REPOSITORIO
Pág 18
La seguridad físca Formas de Acceso al repositorio
Control de Versiones / Conceptos
Método Descripción
file:/// Acceso directo al repositorio
http:// Acceso via protocolo web_dav
https:// Acceso vía protocolo web_dav con seguridad
svn:// Acceso via protocolo svn
svn+ssh:// Acceso vía protocolo svn a través de un tunel ssh
Control de Versiones / Conceptos
Pág 19
La seguridad físca Revisiones
REPOSITORIO
Control de Versiones / Conceptos
Pág 20
La seguridad físca Esquema trunk, tags, branches
REPOSITORIO
Rama trunk : Rama principal
Rama tags : Rama de releases
Rama branches : Rama mejoras
Control de Versiones / Uso del Repositorio
Pág 21
La seguridad físca
Herramientas Disponibles
Conceptos de los SCV
Uso de un Repositorio
Desarrollo en Perú
Subversion instalado
Crear repositorio con svnadmin
Importar datos con svn import
Copia de trabajo con svn checkout
Control de Versiones / Uso del Repositorio
Pág 22
La seguridad físca
Tener Instalado Subversion en algún equipo o servidor
Crear el usuario y grupo “svn”
Crear a los usuarios (programadores, visualizadores, etc)
Colocar el proyecto de software inicial en el equipo o servidor
Crear el repositorio y asignarle un nombre
Importar el proyecto
PASOS PARA CREACION DE REPOSITORIO EN LINUX
Control de Versiones / Uso del Repositorio
Pág 23
La seguridad físca
Tener Instalado algún cliente Subversion (Tortoise, SmartSvn, etc)
Realizar la operación “update” para verificar posibles cambios
Realizar la operación “checkout” para descargar el proyecto
Cambiar el programa (agregar, eliminar, modificar)
Realizar la operación “commit” para subir los cambios
PASOS PARA USAR EL REPOSITORIO CREADO
Control de Versiones / Operaciones Principales
Pág 24
La seguridad físca OPERACIONES PRINCIPALES EN SUBVERSION
Checkout Crea una copia de trabajo local
Update Actualiza la copia de trabajo local
Commit Guarda los cambios realizados en subversion
Log Muestra el historial de cambios
Add Agrega un nuevo archivo al repositorio
Delete Elimina un archivo del repositorio
Control de Versiones / Desarrollo en Perú
Pág 25
La seguridad físca
Herramientas Disponibles
Conceptos de los SCV
Uso de un Repositorio
Desarrollo en Perú
Poco uso de SCV
Muchas copias de código fuente
Uso de Tickets
Un solo usuario guarda en el SCV
Versionamiento de Ejecutables
Administración de SoftwareAdministración de Software / Casos Reales
Pág 26
La seguridad físca
RECOMENDACIONES
Control de Versiones / Recomendaciones
Pág 27
La seguridad físca Tener definido un Estándar de Programación
Definir claramente los roles en el equipo de trabajo
Dividir el trabajo de forma clara
Comunicarse continuamente
Registrar cada cambio realizado en el proyecto
Evitar crear mas de una copia de trabajo local en una misma PC
Guardar backups diarios de los proyectos y repositorios
Pág 28
Esta presentación fue diseñada en Microsoft PowerPoint 2003
Fecha: 21 de Junio de 2012
Actualizado al: 21 de Junio de 2012
Esta presentación fue elaborada por:
Fernando Díaz Sánchez
Ing. en Computación e Informática
E-Mail: fids@minisoft.com.pe
GRACIAS