INGENIERIA DE SOFTWARE
-
Upload
christian-zlatan-ccoto -
Category
Documents
-
view
214 -
download
2
description
Transcript of INGENIERIA DE SOFTWARE
INGENIERIA DE SOFTWARE (PROYECTO DE SOFTWARE).- CRONOGRAMA (TIEMPO),
PERSONAS, PRESUPUESTO, CALIDAD, METODOLOGIA, DESARROLLO DE SOFTWARE - TECNICO(
PROGRAMACION, TRABAJO EN EQUIPO, PRUEBAS DE SOFTWARE, HERRAMIENTAS DE
PROGRAMACION.
INGENIERIA DE SOFTWARE.- ES EL AREA DE LAS CIENCIAS DE LA COMPUTACION QUE TRATA
CON LA CONSTRUCCION DE SISTEMAS DE SOFTWARE, LOS CUALES SON TAN GRANDES Y
COMPLEJOS QUE SE CONSTRUYEN CON EQUIPOS DE INGENIEROS.
PROCESO DE SOFTWARE.- ES UN PROCESO DEFINIDO PASO A PASO QUE FACILITA LA
ESPECIFICACION, EL DISEÑO, LA IMPLEMENTACION Y LAS PRUEBAS DE UNA SOLUCION DE
SOFTWARE. DE MODO EFICIENTE Y EFICAZ.
CUALIDADES DE SOFTWARE
- CORRECTO.- SI SE COMPORTA DE ACUERDO CON SU ESPECIFICACION.
- CONFIABLE.- SE COMPORTA DE ACUERDO CON LO ESPERADO POR EL USUARIO.
- ROBUSTO.- DATOS DE ENTRADA INCORRECTOS O FALLAS DE HARDWARE.
- EFICIENTE.- SI USA SUS RECURSOS EN FORMA ECONOMICA.
- AMIGABLE.- SI LOS USUARIOS LOS ENCUENTRAN FACIL DE UTILIZAR (INTERFAZ)
- VERIFICABLE.- SI LA CORRECCION PUEDE VERIFICARSE FACILMENTE.
- REUSABLE.- SI EL SOFTWARE LO PODEMOS VOLVER A UTILIZAR. EJEMPLO APIS NUEVOS.
- PORTABLE.- SI EL SOFTWARE SE PUEDE EJECUTAR EN DISTINTOS AMBIENTES
(SO,HARDWARE)
- INTEROPERABLE.- SI PUEDE COEXISTIR Y COOPERAR CON OTROS SISTEMAS.
- PRODUCTIVO.- ES LA EFICIENCIA DEL PROCESO DE DESARROLLO DEL SOFTWARE (EQUIPO DE
DESARROLLO).
- A TIEMPO.- SE DEBE OBTENER SU PRODUCTO EN EL TIEMPO PLANEADO.
- VISIBLE.- SI TODOS SUS PASOS ESTAN CLARAMENTE DOCUMENTADOS, Y SE SABE SUS
AVANCES.
- COHESION.- ES LA MEDIDA DE LA RELACION ENTRE LAS PARTES DEL COMPONENTE (LOGICA
SECUENCIAL, TIEMPO FUNCIONAL).
- DESACOPLADO.- O ACOPLAMIENTO.- TRABAJO EN MODULOS POR EJEMPLO A, B, C, D.
- COMPRENSIBLE.- SI ES FACIL DE COMPROBAR COMO FUNCIONA.
- MANTENIBLE.- ES FACIL MODIFICARLO EL SISTEMA (SOFTWARE).
TDD (TEST DRIVEN DEVELOPMENT) DESARROLLO GUIADO POR PRUEBAS
ES UNA PRACTICA DE PROGRAMACION QUE INVOLUCRA UN CAMBIO DE PARADIGMA:
PRIMERO HACER QUE FALLE Y LUEGO CORREGIR.
CARACTERISTICAS DEL TDD:
1. ESCRIBIR EL TEST
2. HACER QUE EL TEST FALLE
3. DESARROLLAR LA FUNCIONALIDAD
4. HASCER QUE EL TEST PASE
5. REFACTORIZAR EL CODIGO
6. REPETIR LA ITERACION (PROCESO)
COCOMO (CONSTRUCTIVE COST MODEL)
1) MODELO BASICO: SE BASA EN EL TAMAÑO EXPRESADO EN MILES DE LINEAS DE
CODIGO (KLOC).
Y SU FORMULA ES: E=a.(KLOC)b
T Dev= C.(E)d
P= E / T Dev
- MODO ORGANICO.- UN PEQUEÑO GRUPO DE PROGRAMADORES DESARROLLAN
SISTEMAS EN UN ENTORNO FAMILIAR.
- MODO SEMILIBRE.- ES UN MODO INTERMEDIO (MILES DE LINEAS DE CODIGO).
INTERACTUA CON SISTEMAS GRANDES.
- MODO RIGIDO.- FUERTES RESTRICCIONES QUE PUEDEN ESTAR RELACIONADOS CON
EL PROCESADOR Y EL INTERFACE HARDWARE.
2. MODELO INTERMEDIO: TOMA COMO ENTRADAS MILES DE LINEAS DE CODIGO KLOC
Y UN MULTIPICADOR (m(x)).
ATRIBUTOS RELATIVOS AL SOFTWARE
EN TOTAL SE DEFINEN 3 ATRIBUTOS DEPENDIENTES DEL SOFTWARE, Y SE EVALUA EN
EL MODELO “COCOMO”.
LOS FACTORES SELECCIONADOS SE AGRUPAN EN 4 CATEGORIAS:
1. ATRIBUTOS DEL PRODUCTO SOFTWARE
2. ATRIBUTOS DEL HARDWARE
3. ATRIBUTOS DEL PERSONAL INVOLUCRADO EN EL PROYECTO
4. ATRIBUTOS PROPIOS DEL PROYECTO
CMMI (MODELO DE CAPACIDAD Y MADUREZ INTEGRADO)
ES UN MODELO DE EVALUACION DE LOS PROCESOS DE UNA ORGANIZACIÓN.
NIVELES: EL MODELO PARA SOFTWARE (CMMI) ESTABLECE 5 NIVELES DE MADUREZ.
1. INICIAL.- NO DIPONE DE UN AMBIENTE DE DESARROLLO Y MANTENIMIENTO DE
SOFTWARE.
2. REPETIBLE.- DISPONEN DE UNAS PRACTICAS INSTITUCIONALIZADOS DE GESTION DE
PROYECTOS.
3. DEFINIDO.- DISPONEN CORRECTOS PROCEDIMIENTOS DE COORDINACION ENTRE
GRUPOS.
4. GESTIONADO.- DISPONEN DE UN CONJUNTO DE METRICAS SIGNIFICATIVAS DE
CALIDAD Y PRODUCTIVIDAD.
5. OPTIMIZADO.- MEJORA CONTINUA DE LOS PROCESOS.
PF (PRUEBAS DE SOFTWARE)
TIPOS DE PRUEBA
1. PRUEBAS DE CAJA NEGRA.- SOLO EL INSTALADOR.
2. PRUEBAS DE CAJA BLANCA.-
ESTRUCTURAS DE CONTROL
- IF
- ELSE
- REPEAT
- FOR
OPERADORES LOGICOS
- AND
- OR
- NAND
- NOR
- XOR
3. PRUEBAS DE COMPATIBILIDAD.- SISTEMAS OPERATIVOS, NAVEGADORES, ROLES,
HARDWARE.
4. PRUEBAS DE MANUALES.- WEB.
5. PRUEBAS AUTOMATIZADOS.- IBM RATIONAL ROSE.
6. PRUEBAS DE UNITARIAS.- TDD.
7. PRUEBAS DE INTEGRACION.- TRABAJO EN EQUIPO.
8. PRUEBAS DE ACEPTACION.- REALIZADOS CON EL USUARIO. ALFA.- SE REVISA EN
EL LUGAR DE TRABAJO CON LOS PROGRAMADORES. BETA.- SE REVISA EN
PRESENCIA DEL CLIENTE.
PF (PUNTOS DE FUNCION)
METRICA QUE SE BASA EN LA FUNCIONALIDAD O UTILIDAD DEL PROGRAMA
CREADO.
TIPOS DE METRICAS DE PF
- FEATURE POINT (PUNTOS DE CARACTERISTICAS).
- MK II FPA
- 3 – D FUNCTION POINT
- FULL FUNCTION POINTS (PUNTOS DE FUNCION COMPLETOS)
- COSMIC FFP
PF (VISION GENERAL)
OBJETIVO: TRADUCIR EN UN NUMERO EL TAMAÑO DE LA FUNCIONALIDAD.
TRANSACCIONES
1. FORMULARIOS DE ENTRADA
2. FORMULARIOS DE SALIDA
DATOS
3. CONSULTAS
4. NRO DE ARCHIVOS
5. INTERFAZ EXTERNA
FORMULA:
CALCULO: PF= PFNA* FA
PFNA= SUMA PF NO AJUSTADOS
FA= (0,01 + (SUMATORIA FC)) +0.65