SlideShare una empresa de Scribd logo
PROYECTO DE SOFTWARE & ESTIMACION DE COSTO
INTRODUCCION •El Objetivo general de la Ingeniería del Software es Producir.  • Se entiende la adecuación del SOFTWARE a los Requisitos exigidos. • El camino para Obtener software de es calidad Mediante Un planteamiento riguroso del problema. • El Proceso de Desarrollo de software es aquel en el que las Necesidades del usuario son traducidas en Requisitos de software, Estos transformados en Diseño y el diseño implementado en código.  El proceso de desarrollo de software requiere por un lado un conjunto de conceptos, una metodología y un lenguaje propio. A este Proceso,  también  se le denomina Ciclo de vida del software .
LA CALIDAD Y SUS FACTORES •Pueden distinguirse dos tipos de factores de calidad: –Los factores de calidad externos son aquellos que son perceptibles por los usuarios •Corrección •Robustez •Extensibilidad •Reutilización •Compatibilidad –Los factores de calidad internos son los perceptibles por los profesionales en computación •Modularidad •Legibilidad •Eficiencia •Portabilidad •Facilidad de uso •Funcionalidad
FACTORES DE CALIDAD DEFINICIONES •Corrección –Habilidad de un sistema o producto software para desempeñar las funciones, exactamente como le fueron definidas en los requisitos y especificaciones •Solidez o robustez –Habilidad para funcionar aún en condiciones anormales, es decir, con aquellos casos no explicitados en las especificaciones. Si se presentan el sistema termina “limpiamente” •Confiabilidad= Corrección + Robustez.
•Extensibilidad –Facilidad para adaptarse a los cambios en las especificaciones. Se logra haciendo simples los diseños de los módulos autónomos •Reutilización –Habilidad para utilizar de nuevo productos de software completos o partes de ellos en nuevas aplicaciones •Compatibilidad –Facilidad con la que un producto software puede combinarse con otros. Se logra homogeneidad en el diseño y estandarización en la comunicación entre programas. •Eficiencia –Facilidad de utilizar el mínimo de recursos de cómputo para conseguir mayor rapidez y menor necesidad de almacenamiento •Portabilidad –Facilidad de transferir productos a diferentes plataformas •Facilidad de uso –Facilidad con la que personas con diferentes niveles de experiencia pueden aprender a usar los productos software y aplicarlos a resolver problemas.
¿QUE ES EL DISEÑO? •El proceso de aplicar distintas técnicas y principios con el propósito de definir un producto con los suficientes detalles como para permitir su realización física. •Con el diseño se pretende construir un sistema que: –Satisfaga determinada especificación del sistema –Se ajuste a las limitaciones impuestas por el medio de destino –Respete requisitos sobre forma, rendimiento utilización de recursos, coste, etc. •El diseño es la primera etapa técnica del proceso de Ingeniería del Software, consiste en producir un modelo o representación técnica del software que se va a desarrollar •El diseño es el proceso sobre el que se asienta la calidad del software •El diseño de software es un proceso iterativo a través del cual se traducen los requisitos en una representación del software •El diseño se representa a un alto nivel de abstracción, un nivel que se puede seguir hasta requisitos específicos de datos, funcionales y de comportamiento.
METODOLOGIAS DEL DISEÑO •Diseño de datos: –Modelo de información a estructuras de datos •Diseño arquitectónico: –Define las relaciones entre los elementos estructurales de nuestro programa •Diseño procedimental: –Se transforman los elementos estructurales de nuestro programa en una descripción procedimental del software •Diseño de interfaz: –Describe cómo se comunica el software consigo mismo y con su entorno.
DIFRECTRICES PARA UN BUEN DISEÑO •El diseño debe implementar todos los requisitos explícitos contenidos en el modelo de análisis y debe acomodar todos los requisitos implícitos que desee el cliente •El diseño debe ser una guía que puedan leer y entender los que construyan el código y los que prueban y mantienen el software •El diseño debería proporcionar una completa idea de lo que es el software, enfocando los dominios de datos, funcional y de comportamiento desde la perspectiva de la implementación.
PRINCIPIOS BASICOS DE DISEÑO •El diseñador debe considerar enfoques alternativos juzgando a cada uno en base a los requisitos del problema, los resultados disponibles y los criterios de calidad interna •Se deberían poder seguir los pasos de diseño hasta el modelo de análisis •El diseño no va a reinventar nada que ya esté inventado •El diseño debería presentar uniformidad e integración •Debe estructurarse para admitir cambios •El diseño no es escribir código y escribir código no es diseñar •Se debería valorar la calidad del diseño mientras se crea, no después de terminado.
CONCEPTOS DEL DISEÑO •A la hora de realizar el diseño del software debes plantearte –¿Qué criterios se pueden usar para dividir el software en componentes individuales? –¿Cómo se separan los detalles de una función o de la estructura de datos de la representación conceptual del software? –¿Existen criterios uniformes que definan la calidad técnica de un diseño de programas?. •Para ayudar a resolver las anteriores preguntas se han establecido unos conceptos fundamentales del diseño del software –Abstracción –Refinamiento –Modularidad –Arquitectura del software –Jerarquía de control –Partición estructural (horizontal y vertical) –Estructura de datos –Procedimientos –Ocultamiento de la información
•El diseño modular efectivo reduce la complejidad, facilita los cambios y produce como resultado una implementación más sencilla, permitiendo el desarrollo paralelo de las diferentes partes del sistema •La independencia funcional se adquiere desarrollando módulos con una clara función evitando una excesiva interacción con otros módulos. Este concepto está derivado de la modularidad, la abstracción y el ocultamiento de la información. •La independencia funcional se mide con dos criterios: –Cohesión: extensión del concepto de ocultamiento de información. Un módulo cohesivo ejecuta una tarea sencilla de un procedimiento de software y requiere poca interacción con procedimientos que ejecutan otras partes de un programa –Acoplamiento: medida de la interconexión entre módulos de un programa •Interesa una cohesión alta y un acoplamiento bajo.
MODULARIDAD •Criterios –Descomposición modular –Composición modular –Comprensibilidad modular –Continuidad modular –Protección modular •Reglas –Correspondencia directa –Pocas interfaces –Interfaces pequeñas –Interfaces explicitas –Ocultación de la información •Principios –Unidades modulares lingüísticas –Auto-documentación –Acceso uniforme –Principio de abierto-cerrado –Elección única
PROGRAMACION ORIENTADA A OBJETOS •Como paradigma es una filosofía de la que surge una cultura nueva que incorpora técnicas y metodologías diferentes •En ella el universo computacional está poblado por objetos, cada uno responsable de si mismo, y comunicándose con los demás por medio de mensajes. Cada objeto representa una instancia de alguna clase, y estas clases son miembros de una jerarquía de clases unidas vía relaciones de herencia •La diferencia entre un objeto y una clase es que un objeto es una entidad concreta que existe en tiempo y espacio, mientras que una clase representa una abstracción, la esencia de un objeto.
PRINCIPIOS DEL MODELADO ORIENTADO A OBJETOS •Abstracción –Descripción simplificada del sistema que resalta unos detalles y suprime otros •Encapsulación –Ocultar detalles de un objeto que no contribuyen a sus características esenciales •Modularidad –Propiedad de un sistema que ha sido descompuesto en un conjunto de módulos coherentes e independientes •Jerarquía o herencia –Abstracciones organizadas por niveles.
EVOLUCION HISTORICA •Programación estructurada •Programación modular •Programación orientada a objetos •Programación orientada a aspectos •Programación orientada a componentes
PRINCIPIOS DE CONSTRUCCION FUNCTION búsqueda Colección (x: elemento, t:colección): BOOLEAN VAR pos: posición; BEGINpos = Comenzar(x, t);WHILE not Completa(pos, t) and not Encontrado(pos, t) DOpos = Siguiente(pos, x, t);busqueda Colección= not Completa(pos, t); END; Variación de tipos Variación en implementación Independencia de la representación Agrupación de rutinas Factorizarlos comportamientos comunes
RESUMEN •El diseño es el proceso sobre el que se asienta la calidad del software •Por calidad se entiende la adecuación del software a los requisitos exigidos •El diseño modular efectivo reduce la complejidad, reduce la complejidad, facilita los cambios y produce como resultado una implementación más sencilla •Los principios del modelo orientado a objetos son: abstracción, encapsulación, modularidad y jerarquía
ESTIMACION DEL COSTO DEL SOFWARE
Una parte importante de la toma de decisiones al comenzar un nuevo proyecto de desarrollo de software está dada por el costo que éste tendrá. La estimación de estos costos ha preocupado a analistas de sistema, gerentes de proyecto e ingenieros de software durante décadas. El primer obstáculo es clarificar el alcance del proyecto. ¿Qué debería ser capaz de hacer el sistema? La captura de los requisitos funcionales en casos de uso ha ayudado considerablemente a comunicar los requisitos de una forma que sea comprensible a los usuarios y a otros expertos en el campo. Al comienzo del proyecto debe hacerse un modelo de caso de uso que contenga una lista de todos los actores (usuarios o sistemas externos) y casos de uso del sistema, así como sus nombres y una breve descripción de los mismos. Esta información hace más fácil alcanzar un acuerdo sobre el tamaño del sistema al comienzo del proyecto. El método de puntos en casos de uso, que esbozaremos a continuación, es un método de estimación prometedor que se adapta bien al enfoque de caso de uso para la descripción de los requisitos. En sus bases yace el concepto de transacción de caso de uso, la unidad más pequeña de medición. Lamentablemente, hay muchas suposiciones disidentes sobre el concepto. En este artículo examinaremos algunas de estas visiones y cómo funcionan en la práctica. Comenzaremos con un bosquejo del método de puntos de caso de uso, seguido de una discusión sobre cuál es la definición de transacción de caso de uso que mejor funciona. También mostraremos cómo están relacionadas con otros conceptos en torno a los casos de uso. Concluiremos con una discusión sobre cómo contar estas transacciones (y cómo no hacerlo).
PUNTOS EN CAOS DE USO El método de puntos en casos de uso es un enfoque bien documentado para estimar las actividades de desarrollo de software.1 Sin embargo, ningún método de estimación se debe usar de manera aislada, sino que se lo debe equilibrar con otros métodos.2 Aquí nos concentramos en los puntos en casos de uso. La Figura 1 presenta sus fundamentos principales.3 En sus bases yace el modelo de caso de uso, que consiste en actores y casos de uso. El número y el peso de los casos de uso identificados representan el componente más importante para el cálculo de los llamados puntos de caso de uso sin ajustar. El tamaño de un sistema se calcula a partir de los puntos de caso de uso sin ajustar, ajustándolos según el factor de complejidad técnico obtenido tras considerar las propiedades técnicas del sistema. Una vez que se tiene una estimación del tamaño del sistema, se puede comenzar a pensar en el cálculo del esfuerzo. Es posible hacer esto calculando el factor ambiental (FE) a partir de las calificaciones del equipo y otras influencias ambientales. Un factor ambiental muy importante es la estabilidad de los requisitos. Se deberá también examinar cuántas horas (H) serán necesarias por cada punto en caso de uso. Finalmente, se deberá añadir el esfuerzo suplementario (ES) no tenido en cuenta en el modelo (como horas de gestión del proyecto, pruebas de integración, etc.) para poder completar la estimación del esfuerzo.
Figura 1: Conceptos principales del método de puntos en casos de uso. El peso de un caso de uso está dado por el número de transacciones de casos de uso diferentes en la interacción entre el actor y el sistema que se ha de crear. Según el método de puntos en casos de uso, los criterios para asignar peso a un determinado caso son: Caso de uso simple – de 1 a 3 transacciones, peso = 5  Caso de uso medio – de 4 a 7 transacciones, peso = 10  Caso de uso complejo – más de 7 transacciones, peso = 15 Por consiguiente, las suposiciones sobre la naturaleza de una transacción y la estrategia usada para contar las transacciones influyen notoriamente sobre la estimación.

Más contenido relacionado

La actualidad más candente

Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
Jose Patricio Bovet Derpich
 
Diseño de arquitectura del software
Diseño de arquitectura del softwareDiseño de arquitectura del software
Diseño de arquitectura del softwaredeahesy najera garcia
 
Arquitectura software capitulo i
Arquitectura software capitulo iArquitectura software capitulo i
Arquitectura software capitulo i
Cathy Guevara
 
Conceptos y principios de diseño
Conceptos y principios de diseñoConceptos y principios de diseño
Conceptos y principios de diseño
Nataly Adelaida
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Softwarelcastillo110
 
Presentaciondefundamentosdesoftware
PresentaciondefundamentosdesoftwarePresentaciondefundamentosdesoftware
Presentaciondefundamentosdesoftware
Luisana Mia Leon Rengel
 
¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?
Israel Rey
 
Proceso de desarrollo de software
Proceso de desarrollo de softwareProceso de desarrollo de software
Proceso de desarrollo de softwareduberlisg
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
Andrés Felipe Montoya Ríos
 
Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1
Marta Silvia Tabares
 
Arquitecturas de software - Parte 2
Arquitecturas de software - Parte 2Arquitecturas de software - Parte 2
Arquitecturas de software - Parte 2
Marta Silvia Tabares
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de Software
Maricela Ramirez
 
Principios de la Ingeniería de requerimientos
Principios de la Ingeniería de requerimientosPrincipios de la Ingeniería de requerimientos
Principios de la Ingeniería de requerimientos
RicardoAlbertoBalzaP
 
Desarrollo de software diapositiva
Desarrollo  de software diapositivaDesarrollo  de software diapositiva
Desarrollo de software diapositivaNorma Rodriguez
 
Fundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareFundamentos del Diseño de Software
Fundamentos del Diseño de Software
Nelson Guanipa
 
Principios Ingenieria
Principios IngenieriaPrincipios Ingenieria
Principios Ingenieriatoryneutral
 

La actualidad más candente (18)

Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
 
Diseño de arquitectura del software
Diseño de arquitectura del softwareDiseño de arquitectura del software
Diseño de arquitectura del software
 
Arquitectura software capitulo i
Arquitectura software capitulo iArquitectura software capitulo i
Arquitectura software capitulo i
 
Conceptos y principios de diseño
Conceptos y principios de diseñoConceptos y principios de diseño
Conceptos y principios de diseño
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Software
 
Presentaciondefundamentosdesoftware
PresentaciondefundamentosdesoftwarePresentaciondefundamentosdesoftware
Presentaciondefundamentosdesoftware
 
¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?¿Qué es la arquitectura de software?
¿Qué es la arquitectura de software?
 
Proceso de desarrollo de software
Proceso de desarrollo de softwareProceso de desarrollo de software
Proceso de desarrollo de software
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
 
Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1
 
Software exposicion
Software exposicionSoftware exposicion
Software exposicion
 
Arquitecturas de software - Parte 2
Arquitecturas de software - Parte 2Arquitecturas de software - Parte 2
Arquitecturas de software - Parte 2
 
Arquitectura
ArquitecturaArquitectura
Arquitectura
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de Software
 
Principios de la Ingeniería de requerimientos
Principios de la Ingeniería de requerimientosPrincipios de la Ingeniería de requerimientos
Principios de la Ingeniería de requerimientos
 
Desarrollo de software diapositiva
Desarrollo  de software diapositivaDesarrollo  de software diapositiva
Desarrollo de software diapositiva
 
Fundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareFundamentos del Diseño de Software
Fundamentos del Diseño de Software
 
Principios Ingenieria
Principios IngenieriaPrincipios Ingenieria
Principios Ingenieria
 

Destacado

AIT - breve história
AIT - breve históriaAIT - breve história
AIT - breve história
ligarj
 
62 curso patrimonio histórico como recurso turístico
62 curso patrimonio histórico como recurso turístico62 curso patrimonio histórico como recurso turístico
62 curso patrimonio histórico como recurso turísticoJuan Miguel Moreno Magaña
 
Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...
Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...
Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...
PonenciesASPCAT
 
Alianza Francesa3
Alianza Francesa3Alianza Francesa3
Alianza Francesa3Ricardo
 
Tecnica piaget
Tecnica piagetTecnica piaget
Tecnica piaget
Alfonso Amaya Hernández
 
Ventajas y desventajas Redes Sociales
Ventajas y desventajas Redes SocialesVentajas y desventajas Redes Sociales
Ventajas y desventajas Redes Socialesmarujo
 
L’economia social i solidària
L’economia social i solidàriaL’economia social i solidària
L’economia social i solidàriaL'Apòstrof, sccl
 

Destacado (9)

AIT - breve história
AIT - breve históriaAIT - breve história
AIT - breve história
 
62 curso patrimonio histórico como recurso turístico
62 curso patrimonio histórico como recurso turístico62 curso patrimonio histórico como recurso turístico
62 curso patrimonio histórico como recurso turístico
 
Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...
Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...
Procediments d’avaluació de la incapacitat temporal per treballar. Adaptació ...
 
Informe De Tics 1
Informe De Tics 1Informe De Tics 1
Informe De Tics 1
 
Alianza Francesa3
Alianza Francesa3Alianza Francesa3
Alianza Francesa3
 
cuentas nacionales
cuentas nacionales cuentas nacionales
cuentas nacionales
 
Tecnica piaget
Tecnica piagetTecnica piaget
Tecnica piaget
 
Ventajas y desventajas Redes Sociales
Ventajas y desventajas Redes SocialesVentajas y desventajas Redes Sociales
Ventajas y desventajas Redes Sociales
 
L’economia social i solidària
L’economia social i solidàriaL’economia social i solidària
L’economia social i solidària
 

Similar a Presentacion de Software y Estimacion de Coste

FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptxFASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
JenifferJuliethPalen
 
1_1 Introduccion
1_1 Introduccion1_1 Introduccion
1_1 Introduccionlandeta_p
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de software
José Antonio Sandoval Acosta
 
2017.10.16-senati-powerpoint sesion8.pptx
2017.10.16-senati-powerpoint sesion8.pptx2017.10.16-senati-powerpoint sesion8.pptx
2017.10.16-senati-powerpoint sesion8.pptx
Fernando Espinoza Muñoz
 
Proyecto
ProyectoProyecto
Proyecto
ProyectoProyecto
Conceptosdemodelado.pdf
Conceptosdemodelado.pdfConceptosdemodelado.pdf
Conceptosdemodelado.pdf
ssuser20fade
 
M.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptx
M.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptxM.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptx
M.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptx
HawkMartnez
 
IngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdfIngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdf
AnaliaEC
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
manuel alfredo chacon valero
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
Jahiro Bojorquez
 
Software y Coste
Software y CosteSoftware y Coste
Software y Coste
CAMILO
 
Plan
PlanPlan
Plan
liss2014
 
Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015
Lucero Mtz
 
Fundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdfFundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdf
BibliotecaenlineaUNI
 
Fundamento del Diseño de Software
Fundamento del Diseño de SoftwareFundamento del Diseño de Software
Fundamento del Diseño de Software
Glamisleidys Chourio
 
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
AlejandroCoronado26
 
Diseño del software
Diseño del softwareDiseño del software
Diseño del software
genesisptc_
 

Similar a Presentacion de Software y Estimacion de Coste (20)

FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptxFASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
 
1_1 Introduccion
1_1 Introduccion1_1 Introduccion
1_1 Introduccion
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de software
 
2017.10.16-senati-powerpoint sesion8.pptx
2017.10.16-senati-powerpoint sesion8.pptx2017.10.16-senati-powerpoint sesion8.pptx
2017.10.16-senati-powerpoint sesion8.pptx
 
Arquitectura de Software
Arquitectura de SoftwareArquitectura de Software
Arquitectura de Software
 
Proyecto
ProyectoProyecto
Proyecto
 
Proyecto
ProyectoProyecto
Proyecto
 
Conceptosdemodelado.pdf
Conceptosdemodelado.pdfConceptosdemodelado.pdf
Conceptosdemodelado.pdf
 
M.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptx
M.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptxM.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptx
M.G.E-y-R.L.E.A-Diseño-Arquitectonico.pptx
 
IngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdfIngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdf
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 
Software y Coste
Software y CosteSoftware y Coste
Software y Coste
 
Plan
PlanPlan
Plan
 
Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015
 
Modelo cascada
Modelo cascadaModelo cascada
Modelo cascada
 
Fundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdfFundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdf
 
Fundamento del Diseño de Software
Fundamento del Diseño de SoftwareFundamento del Diseño de Software
Fundamento del Diseño de Software
 
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
 
Diseño del software
Diseño del softwareDiseño del software
Diseño del software
 

Más de CAMILO

E Comerce
E ComerceE Comerce
E Comerce
CAMILO
 
E Comerce
E ComerceE Comerce
E Comerce
CAMILO
 
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTEPRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
CAMILO
 
presentacion de software y estimacion de doste
presentacion de software y estimacion de dostepresentacion de software y estimacion de doste
presentacion de software y estimacion de doste
CAMILO
 
Trabajo Crusigrama Sopa De Letras Rodolfo
Trabajo Crusigrama Sopa De Letras RodolfoTrabajo Crusigrama Sopa De Letras Rodolfo
Trabajo Crusigrama Sopa De Letras RodolfoCAMILO
 
PROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOSPROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOS
CAMILO
 
Proyecto de Software y Coste
Proyecto de Software y CosteProyecto de Software y Coste
Proyecto de Software y Coste
CAMILO
 
Proyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de CostoProyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de Costo
CAMILO
 

Más de CAMILO (8)

E Comerce
E ComerceE Comerce
E Comerce
 
E Comerce
E ComerceE Comerce
E Comerce
 
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTEPRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
 
presentacion de software y estimacion de doste
presentacion de software y estimacion de dostepresentacion de software y estimacion de doste
presentacion de software y estimacion de doste
 
Trabajo Crusigrama Sopa De Letras Rodolfo
Trabajo Crusigrama Sopa De Letras RodolfoTrabajo Crusigrama Sopa De Letras Rodolfo
Trabajo Crusigrama Sopa De Letras Rodolfo
 
PROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOSPROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOS
 
Proyecto de Software y Coste
Proyecto de Software y CosteProyecto de Software y Coste
Proyecto de Software y Coste
 
Proyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de CostoProyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de Costo
 

Último

Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
TatianaVanessaAltami
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Demetrio Ccesa Rayme
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
auxsoporte
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
https://gramadal.wordpress.com/
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
20minutos
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
El Fortí
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
Fase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoFase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometrico
YasneidyGonzalez
 
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
Ruben53283
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
LorenaCovarrubias12
 
CUENTO EL TIGRILLO DESOBEDIENTE PARA INICIAL
CUENTO EL TIGRILLO DESOBEDIENTE PARA INICIALCUENTO EL TIGRILLO DESOBEDIENTE PARA INICIAL
CUENTO EL TIGRILLO DESOBEDIENTE PARA INICIAL
DivinoNioJess885
 
El fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amorEl fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amor
Alejandrino Halire Ccahuana
 
Fase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaFase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría Analítica
YasneidyGonzalez
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
https://gramadal.wordpress.com/
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
20minutos
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
Mercedes Gonzalez
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
SandraBenitez52
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
Edurne Navarro Bueno
 
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptxc3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
Martín Ramírez
 
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNETPRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
CESAR MIJAEL ESPINOZA SALAZAR
 

Último (20)

Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
Fase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoFase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometrico
 
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
 
CUENTO EL TIGRILLO DESOBEDIENTE PARA INICIAL
CUENTO EL TIGRILLO DESOBEDIENTE PARA INICIALCUENTO EL TIGRILLO DESOBEDIENTE PARA INICIAL
CUENTO EL TIGRILLO DESOBEDIENTE PARA INICIAL
 
El fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amorEl fundamento del gobierno de Dios. El amor
El fundamento del gobierno de Dios. El amor
 
Fase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaFase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría Analítica
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
 
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptxc3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
c3.hu3.p3.p2.Superioridad e inferioridad en la sociedad.pptx
 
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNETPRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
 

Presentacion de Software y Estimacion de Coste

  • 1. PROYECTO DE SOFTWARE & ESTIMACION DE COSTO
  • 2. INTRODUCCION •El Objetivo general de la Ingeniería del Software es Producir. • Se entiende la adecuación del SOFTWARE a los Requisitos exigidos. • El camino para Obtener software de es calidad Mediante Un planteamiento riguroso del problema. • El Proceso de Desarrollo de software es aquel en el que las Necesidades del usuario son traducidas en Requisitos de software, Estos transformados en Diseño y el diseño implementado en código.  El proceso de desarrollo de software requiere por un lado un conjunto de conceptos, una metodología y un lenguaje propio. A este Proceso, también se le denomina Ciclo de vida del software .
  • 3. LA CALIDAD Y SUS FACTORES •Pueden distinguirse dos tipos de factores de calidad: –Los factores de calidad externos son aquellos que son perceptibles por los usuarios •Corrección •Robustez •Extensibilidad •Reutilización •Compatibilidad –Los factores de calidad internos son los perceptibles por los profesionales en computación •Modularidad •Legibilidad •Eficiencia •Portabilidad •Facilidad de uso •Funcionalidad
  • 4. FACTORES DE CALIDAD DEFINICIONES •Corrección –Habilidad de un sistema o producto software para desempeñar las funciones, exactamente como le fueron definidas en los requisitos y especificaciones •Solidez o robustez –Habilidad para funcionar aún en condiciones anormales, es decir, con aquellos casos no explicitados en las especificaciones. Si se presentan el sistema termina “limpiamente” •Confiabilidad= Corrección + Robustez.
  • 5. •Extensibilidad –Facilidad para adaptarse a los cambios en las especificaciones. Se logra haciendo simples los diseños de los módulos autónomos •Reutilización –Habilidad para utilizar de nuevo productos de software completos o partes de ellos en nuevas aplicaciones •Compatibilidad –Facilidad con la que un producto software puede combinarse con otros. Se logra homogeneidad en el diseño y estandarización en la comunicación entre programas. •Eficiencia –Facilidad de utilizar el mínimo de recursos de cómputo para conseguir mayor rapidez y menor necesidad de almacenamiento •Portabilidad –Facilidad de transferir productos a diferentes plataformas •Facilidad de uso –Facilidad con la que personas con diferentes niveles de experiencia pueden aprender a usar los productos software y aplicarlos a resolver problemas.
  • 6. ¿QUE ES EL DISEÑO? •El proceso de aplicar distintas técnicas y principios con el propósito de definir un producto con los suficientes detalles como para permitir su realización física. •Con el diseño se pretende construir un sistema que: –Satisfaga determinada especificación del sistema –Se ajuste a las limitaciones impuestas por el medio de destino –Respete requisitos sobre forma, rendimiento utilización de recursos, coste, etc. •El diseño es la primera etapa técnica del proceso de Ingeniería del Software, consiste en producir un modelo o representación técnica del software que se va a desarrollar •El diseño es el proceso sobre el que se asienta la calidad del software •El diseño de software es un proceso iterativo a través del cual se traducen los requisitos en una representación del software •El diseño se representa a un alto nivel de abstracción, un nivel que se puede seguir hasta requisitos específicos de datos, funcionales y de comportamiento.
  • 7. METODOLOGIAS DEL DISEÑO •Diseño de datos: –Modelo de información a estructuras de datos •Diseño arquitectónico: –Define las relaciones entre los elementos estructurales de nuestro programa •Diseño procedimental: –Se transforman los elementos estructurales de nuestro programa en una descripción procedimental del software •Diseño de interfaz: –Describe cómo se comunica el software consigo mismo y con su entorno.
  • 8. DIFRECTRICES PARA UN BUEN DISEÑO •El diseño debe implementar todos los requisitos explícitos contenidos en el modelo de análisis y debe acomodar todos los requisitos implícitos que desee el cliente •El diseño debe ser una guía que puedan leer y entender los que construyan el código y los que prueban y mantienen el software •El diseño debería proporcionar una completa idea de lo que es el software, enfocando los dominios de datos, funcional y de comportamiento desde la perspectiva de la implementación.
  • 9. PRINCIPIOS BASICOS DE DISEÑO •El diseñador debe considerar enfoques alternativos juzgando a cada uno en base a los requisitos del problema, los resultados disponibles y los criterios de calidad interna •Se deberían poder seguir los pasos de diseño hasta el modelo de análisis •El diseño no va a reinventar nada que ya esté inventado •El diseño debería presentar uniformidad e integración •Debe estructurarse para admitir cambios •El diseño no es escribir código y escribir código no es diseñar •Se debería valorar la calidad del diseño mientras se crea, no después de terminado.
  • 10. CONCEPTOS DEL DISEÑO •A la hora de realizar el diseño del software debes plantearte –¿Qué criterios se pueden usar para dividir el software en componentes individuales? –¿Cómo se separan los detalles de una función o de la estructura de datos de la representación conceptual del software? –¿Existen criterios uniformes que definan la calidad técnica de un diseño de programas?. •Para ayudar a resolver las anteriores preguntas se han establecido unos conceptos fundamentales del diseño del software –Abstracción –Refinamiento –Modularidad –Arquitectura del software –Jerarquía de control –Partición estructural (horizontal y vertical) –Estructura de datos –Procedimientos –Ocultamiento de la información
  • 11. •El diseño modular efectivo reduce la complejidad, facilita los cambios y produce como resultado una implementación más sencilla, permitiendo el desarrollo paralelo de las diferentes partes del sistema •La independencia funcional se adquiere desarrollando módulos con una clara función evitando una excesiva interacción con otros módulos. Este concepto está derivado de la modularidad, la abstracción y el ocultamiento de la información. •La independencia funcional se mide con dos criterios: –Cohesión: extensión del concepto de ocultamiento de información. Un módulo cohesivo ejecuta una tarea sencilla de un procedimiento de software y requiere poca interacción con procedimientos que ejecutan otras partes de un programa –Acoplamiento: medida de la interconexión entre módulos de un programa •Interesa una cohesión alta y un acoplamiento bajo.
  • 12. MODULARIDAD •Criterios –Descomposición modular –Composición modular –Comprensibilidad modular –Continuidad modular –Protección modular •Reglas –Correspondencia directa –Pocas interfaces –Interfaces pequeñas –Interfaces explicitas –Ocultación de la información •Principios –Unidades modulares lingüísticas –Auto-documentación –Acceso uniforme –Principio de abierto-cerrado –Elección única
  • 13. PROGRAMACION ORIENTADA A OBJETOS •Como paradigma es una filosofía de la que surge una cultura nueva que incorpora técnicas y metodologías diferentes •En ella el universo computacional está poblado por objetos, cada uno responsable de si mismo, y comunicándose con los demás por medio de mensajes. Cada objeto representa una instancia de alguna clase, y estas clases son miembros de una jerarquía de clases unidas vía relaciones de herencia •La diferencia entre un objeto y una clase es que un objeto es una entidad concreta que existe en tiempo y espacio, mientras que una clase representa una abstracción, la esencia de un objeto.
  • 14. PRINCIPIOS DEL MODELADO ORIENTADO A OBJETOS •Abstracción –Descripción simplificada del sistema que resalta unos detalles y suprime otros •Encapsulación –Ocultar detalles de un objeto que no contribuyen a sus características esenciales •Modularidad –Propiedad de un sistema que ha sido descompuesto en un conjunto de módulos coherentes e independientes •Jerarquía o herencia –Abstracciones organizadas por niveles.
  • 15. EVOLUCION HISTORICA •Programación estructurada •Programación modular •Programación orientada a objetos •Programación orientada a aspectos •Programación orientada a componentes
  • 16. PRINCIPIOS DE CONSTRUCCION FUNCTION búsqueda Colección (x: elemento, t:colección): BOOLEAN VAR pos: posición; BEGINpos = Comenzar(x, t);WHILE not Completa(pos, t) and not Encontrado(pos, t) DOpos = Siguiente(pos, x, t);busqueda Colección= not Completa(pos, t); END; Variación de tipos Variación en implementación Independencia de la representación Agrupación de rutinas Factorizarlos comportamientos comunes
  • 17. RESUMEN •El diseño es el proceso sobre el que se asienta la calidad del software •Por calidad se entiende la adecuación del software a los requisitos exigidos •El diseño modular efectivo reduce la complejidad, reduce la complejidad, facilita los cambios y produce como resultado una implementación más sencilla •Los principios del modelo orientado a objetos son: abstracción, encapsulación, modularidad y jerarquía
  • 18. ESTIMACION DEL COSTO DEL SOFWARE
  • 19. Una parte importante de la toma de decisiones al comenzar un nuevo proyecto de desarrollo de software está dada por el costo que éste tendrá. La estimación de estos costos ha preocupado a analistas de sistema, gerentes de proyecto e ingenieros de software durante décadas. El primer obstáculo es clarificar el alcance del proyecto. ¿Qué debería ser capaz de hacer el sistema? La captura de los requisitos funcionales en casos de uso ha ayudado considerablemente a comunicar los requisitos de una forma que sea comprensible a los usuarios y a otros expertos en el campo. Al comienzo del proyecto debe hacerse un modelo de caso de uso que contenga una lista de todos los actores (usuarios o sistemas externos) y casos de uso del sistema, así como sus nombres y una breve descripción de los mismos. Esta información hace más fácil alcanzar un acuerdo sobre el tamaño del sistema al comienzo del proyecto. El método de puntos en casos de uso, que esbozaremos a continuación, es un método de estimación prometedor que se adapta bien al enfoque de caso de uso para la descripción de los requisitos. En sus bases yace el concepto de transacción de caso de uso, la unidad más pequeña de medición. Lamentablemente, hay muchas suposiciones disidentes sobre el concepto. En este artículo examinaremos algunas de estas visiones y cómo funcionan en la práctica. Comenzaremos con un bosquejo del método de puntos de caso de uso, seguido de una discusión sobre cuál es la definición de transacción de caso de uso que mejor funciona. También mostraremos cómo están relacionadas con otros conceptos en torno a los casos de uso. Concluiremos con una discusión sobre cómo contar estas transacciones (y cómo no hacerlo).
  • 20. PUNTOS EN CAOS DE USO El método de puntos en casos de uso es un enfoque bien documentado para estimar las actividades de desarrollo de software.1 Sin embargo, ningún método de estimación se debe usar de manera aislada, sino que se lo debe equilibrar con otros métodos.2 Aquí nos concentramos en los puntos en casos de uso. La Figura 1 presenta sus fundamentos principales.3 En sus bases yace el modelo de caso de uso, que consiste en actores y casos de uso. El número y el peso de los casos de uso identificados representan el componente más importante para el cálculo de los llamados puntos de caso de uso sin ajustar. El tamaño de un sistema se calcula a partir de los puntos de caso de uso sin ajustar, ajustándolos según el factor de complejidad técnico obtenido tras considerar las propiedades técnicas del sistema. Una vez que se tiene una estimación del tamaño del sistema, se puede comenzar a pensar en el cálculo del esfuerzo. Es posible hacer esto calculando el factor ambiental (FE) a partir de las calificaciones del equipo y otras influencias ambientales. Un factor ambiental muy importante es la estabilidad de los requisitos. Se deberá también examinar cuántas horas (H) serán necesarias por cada punto en caso de uso. Finalmente, se deberá añadir el esfuerzo suplementario (ES) no tenido en cuenta en el modelo (como horas de gestión del proyecto, pruebas de integración, etc.) para poder completar la estimación del esfuerzo.
  • 21. Figura 1: Conceptos principales del método de puntos en casos de uso. El peso de un caso de uso está dado por el número de transacciones de casos de uso diferentes en la interacción entre el actor y el sistema que se ha de crear. Según el método de puntos en casos de uso, los criterios para asignar peso a un determinado caso son: Caso de uso simple – de 1 a 3 transacciones, peso = 5 Caso de uso medio – de 4 a 7 transacciones, peso = 10 Caso de uso complejo – más de 7 transacciones, peso = 15 Por consiguiente, las suposiciones sobre la naturaleza de una transacción y la estrategia usada para contar las transacciones influyen notoriamente sobre la estimación.