Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
UNIVERSIDAD DE CARTAGENA SOFTWARE EDUCATIVO TUTOR: JUAN CARLOS CUESTA DIAZ INTEGRANTES JENNIFER LLAMAS VARGAS ENA MARIA RUIZ MARTINEZ ALFREDO ALVAREZ YEPEZ INGENIERIA DE SISTEMAS IX SEMESTRE CENTRO TUTORIAL EL CARMEN DE BOLIVAR 23/NOV/2016 TRABAJO DE INGENIERIA DE SOFTWARE 1. Investigar los métodos y métricas para estimación de proyectos de software MODELOS PARA ESTIMACIÓN DE PROYECTOS DE SOFTWARE PROCESO DE ESTIMACIÓN: Al momento de realizar un proyecto de software, es necesario calcular y estimar el esfuerzo y el tamaño del proyecto en etapas muy tempranas del desarrollo del mismo, se hacen las estimaciones en estas fases iniciales, ya que pueden estar basadas en unos requerimientos erróneos o incompletos, por lo que disminuye mucho su fiabilidad. El proceso de estimación del coste de un producto software está formado por un conjunto de técnicas y procedimientos que se usan en la organización para poder llegar a una predicción fiable. Éste es un proceso continuo, que debe ser usado y consultado a lo largo del proyecto. Se divide en los siguientes pasos: - Estimación del tamaño. - Estimación del costo y del esfuerzo. - Estimación de la programación temporal. - Estimación de la cantidad de recursos computacionales. - Asunción de riesgos. - Inspección y aprobación. - Redacción de informes de estimación. En el siguiente diagrama se muestra las interacciones entre cada paso del proceso de estimación La cantidad de esfuerzo y tiempo dedicada a la estimación depende del tamaño del proyecto, del equipo de desarrollo y del objetivo a cumplir. La naturaleza del Proyecto y el entorno en el que se desarrolla son factores determinantes en esta tarea, y afectan en gran medida al método de estimación que se utilice. Los diferentes modelos de estimación para proyectos pueden ser clasificados de diversas maneras, de entre las cuales se deben destacar las aportadas por dos autores principales. Según Basili existen tres modelos: Modelos con una o varias variables estáticas, que se basan en aplicar funciones y constantes a algunas propiedades del proyecto, por ejemplo el LOC (Lines Of Code). Modelos con varias variables dinámicas, que miden el tiempo del proyecto frente a su costo, usando una distribución obtenida de manera empírica. Modelos teóricos con algoritmos prediseñados, que se basan en una hipótesis para realizar una predicción a través de una función obtenida teniendo en cuenta información histórica. Según Kitchenham propone una clasificación más simple para estos modelos, basada en distinguir entre aquellos que especifican la relación entre varios parámetros de costo, llamados modelos de restricción, y los que predicen el valor de un parámetro de costo, llamado modelos de factor empírico. Como ejemplo de esta clasificación podemos encontrar entre los modelos de restricción los de Putnam, Jensen, Cocomo, o Parr. Algunos modelos de factor empírico son Esfuerzo de Cocomo, Wolverton, Softcost, Estimacs, o Price. Otras clasificaciones: JUICIO EXPERTO La técnica más utilizada para la estimación de costos es el uso del juicio experto. El juicio experto se basa en la experiencia, en el conocimiento anterior y en el sentido comercial de uno o más individuos dentro de la organización. Ejemplo: El experto, puede hacer una estimación de costos razonando de la siguiente manera: - El sistema que se va a desarrollar es muy similar a uno que se desarrolló anteriormente y que costó $ 8,000.00 y tardó 4 meses. - Se puede reutilizar la base del proyecto anterior. - Se utilizará el mismo equipo de cómputo y a muchos de los programadores que participaron en el proyecto anterior, por lo que la estimación se puede reducir en un 20 %. Modelos algorítmicos: se basan en fórmulas y parámetros con los que realizan las estimaciones. Son también muy conocidos y empleados en la actualidad, encontrándose en este grupo el modelo COCOMO o puntos de función. COCOMO Modelo COCOMO básico Calcula el esfuerzo y el coste del desarrollo en función del tamaño estimado del programa (LDC). Se utiliza para obtener una aproximación más pronto del esfuerzo Cantidad de personas por mes E es el esfuerzo aplicado en personas-mes Duración del proyecto D es el tiempo de desarrollo en meses cronológicos Modelo Cocomo Intermedio Modelo que permite estimar el coste, esfuerzo y tiempo cuando se planifica ina nueva actividad de desarrollo de software. Donde E es el esfuerzo aplicado en personas-mes FAE: Factor de ajuste de esfuerzo. Atributos Del Modelo Según El Software RELY: indica las consecuencias para el usuario si falla el producto DATA: relación tamaño de la base de datos / líneas de código CPLX: complejidad del producto Atributos Del Modelo Según El Proyecto MODP: uso de prácticas modernas de programación TOOL: uso de herramientas de desarrollo de software SCED: limitaciones en el cumplimiento de la planificación. COCOMO está definido para tres tipos de proyectos: Modo orgánico: Proyectos de software pequeño y sencillo. Modo semi acoplado: Proyectos de software intermedio en cuanto a tamaño y nivel de complejidad. Modo empotrado: Proyectos muy restringidos. ANALOGÍA: Puede ser tomada como una variante del juicio experto, ya que también intervienen las opiniones de los estimadores, pero a diferencia de este tipo, necesita caracterizar claramente el proyecto que se va a estimar y almacenar los proyectos previos para buscar entre ellos el más parecido al actual. El costo se calcula por comparación con proyectos similares en el mismo dominio de aplicación (Métricas). Ventajas: Preciso si se dispone de datos previos Desventajas: Imposible de realizar si no se han desarrollado proyectos comparables. Es necesario mantener una base de datos con la información necesaria. MÉTRICAS PARA ESTIMACIÓN DE PROYECTOS DE SOFTWARE Una métrica es cualquier medida o conjunto de medidas destinadas a conocer o estimar el tamaño u otra característica de un software o un sistema de información, generalmente para realizar comparativas o para la planificación de proyectos de desarrollo. TIPOS DE MÉTRICAS “MILES DE LÍNEAS DE CÓDIGO”(KLOC) Las líneas de código en sí mismas no son una métrica adecuada para medir el tamaño de un sistema Es necesaria una métrica que sea independiente de la tecnología utilizada. Ejemplo: PUNTOS DE FUNCIÓN Es una medida de estimación fuera del lenguaje de programación o la tecnología utilizada para crear el código. Las características que requiere este tipo de métrica son: Entradas: datos proporcionados por el usuario a la aplicación. Salidas: datos o informes proporcionados por la aplicación al usuario. Interacciones con el usuario: respuestas que hace el software a las peticiones de los usuarios. Interfaces externas: interacción con aplicaciones ya sean bases de datos externas al sistema. Archivos utilizados por el sistema: integración con archivos del mismo sistema. La métrica fue fundamentalmente diseñada para sistemas de información de gestión (de negocios, empresariales). Es decir; miden el tamaño de un sistema en términos de la cantidad de funcionalidad del sistema. De esta forma hacemos la estimacion pero ¿De donde salen estas cantidades? Cada uno de los elementos de las categorías anteriores se vuelve a clasificar según su complejidad en simples, promedio y complejo, asignando pesos adicionales que van de 3 a 15 (respectivamente) siendo estos 3, 7 y 15. Donde cantidad total es igual a la suma del número de veces que se realiza una categoría en diferentes niveles de complejidad. Sabiendo el nivel decomplejidad en el caso de las entradas simples se registra (1), promedio se registran (2) y en complejos se registra (1). La cantidad total es (4) posteriormente se multiplica el peso adicional por el número de entradas en cada nivel, los resultados de las multiplicaciones se suman para hallar el punto de función. Y así sucesivamente con cada una de las categorías. Por último se define el total de puntos de función mediante la sumatoria de estos. ¿Quién decide la complejidad de un PF? Es decir simple, promedio y complejo; se toman en cuenta las características no funcionales (Aspectos Generales del Sistema). Teniendo en cuenta la siguiente tabla de los valores de Rating (Clasificación) 0 1 2 3 4 5 No influencia Incidental Moderado Medio Significativo Esencial Por último se realiza a siguiente formula: PF = cuenta total x [0.65 + 0.01 x Σ (N)] Asumiendo: Cuenta total = Total PF 114 Σ (N) = 43 Los valores 0.65 y 0.01 ya están predeterminados por la función de ajuste de la complejidad. 2. Tome uno de esos métodos o métricas y aplíquelo en un proyecto de software que usted considere. El ejercicio consiste en crear una idea para un proyecto de software y aplicarle uno o varios de esos métodos para así tener una estimación del costo de ese proyecto. Debe explicar en qué consiste su proyecto o su idea de software. TITULO DEL PROYECTO Software educativo como estrategia de aprendizaje significativo en el área de las matemáticas para la educación básica primaria. RESUMEN El propósito de esta investigación es crear un Software Educativo que permita la integración del uso de TICS al Aprendizaje Significativo del área de las matemáticas para niños y niñas que están en básica Primaria. Este software nace desde la observación directa donde nos muestra claramente que a los niños no les llaman tanto la atención lo que tiene que ver con las matemáticas, por ello decidimos darle vida a este proyecto, para que ellos de una manera interactiva muestren más interés por esta. El procedimiento que se llevó a cabo en esta investigación se dividió en tres fases: Análisis: se investigaron y analizaron las teorías, estrategias y etapas que existen para el desarrollo de software educativo. Diseño del Software Educativo: se planteó la incorporación del computador como instrumento para el aprendizaje de las matemáticas, a través del software educativo. Implantación y evaluación: Las técnicas e instrumentos utilizados para recolección de datos fueron la observación directa, la observación participativa y las evidencias documentales. Para saber el costo de este proyecto implementaremos la métrica de estimación de punto de función. PLANTEAMIENTO DEL PROBLEMA En la actualidad prevalece la tecnología, podemos ver que un niño ya maneja un computador, juegue y navegue en la internet sin inconvenientes; pero sería más educativo que a través de estas estrategias puedan lograrse un mayor aprendizajes; por tal motivo se plantea una pregunta con el fin de investigar ¿Cómo generar procesos de aprendizaje significativo en el área de las matemáticas para los niños de básica primaria mediante el diseño de un software educativo? Con el fin de utilizar el software como estrategia para el aumento del rendimiento académico; al ser este interactivo permite un apoyo mutuo entre el estudiante y la computadora, causando así un mejor desarrollo de sus habilidades cognitivas y analíticas. Esta interacción le permite al niño poder desarrollar su imaginación, como a su vez confrontar los conocimientos previos que traía antes de conocerlo y utilizarlo, también le permite prepararse para hacer cálculos mentales y perderle el miedo a los números permitiendo así incrementar su interés y su aprendizaje significativo. OBJETIVOS Objetivo general Generar procesos de aprendizaje significativo en el área de las matemáticas para los niños de básica primaria mediante el diseño de un software educativo. Objetivo específicos Crear habilidades cognitivas y analíticas mediante el uso de las matemáticas. Diseñar un software educativo que responda a las exigencias de la básica primaria en las competencias matemáticas. Analizar el conocimiento adquirido de los niños mediante la utilización del software educativo. COMO SE REALIZARÍA ESTE SOFTWARE EDUCATIVO Como ya se especificó antes la idea de software nace con la necesidad de que los niños aprendan las matemáticas de una forma más interactiva y mejorar el nivel académico de una forma más dinámica; para la realización de este se pensó en actividades lúdicas que incluyan imágenes, sonidos, colores, para hacerlas llamativas a los niños y así se motiven a realizarlas y al mismo tiempo logren un aprendizaje significativo Según la documentación que realizamos, identificamos que debíamos implementar niveles de complejidad en los que tanto el niño y profesor avanzaran paso a paso, en estos incluimos como primer nivel números, suma, resta, conjuntos, conteos, como segundo nivel se apropiaron las actividades más avanzadas como la multiplicación, divisiones, números fraccionarios, clasificación de los números (números naturales, enteros, irracionales, primos). Interfaz del Software con el Usuario (Niño) Este material está diseñado con el fin de apoyar el proceso pedagógico y didáctico de los profesores, donde se exponen actividades educativas que favorecen en el niño el desarrollo del pensamiento lógico, competencias analíticas y cognitivas; a través de diferentes actividades que permiten potenciar el trabajo colaborativo en el niño(a), siendo protagonista de su propio aprendizaje. Estas actividades se han desarrollado teniendo en cuenta la estructura de aprendizaje de los niños en básica primaria. La idea del interfaz de este software seria de la siguiente manera: Al abrir el programa los niños encontraran en la pantalla de inicio el mensaje “HOLA COMO ESTAN AMIGUITOS” con una serie de imágenes animadas y divertidas, pidiendo su nombre y contraseña. Luego se abrirá una nueva ventana en la cual se encuentran 2 botones para elegir el nivel de aprendizaje en el cual se desea trabajar; y en la parte superior derecha se encontrara el botón para salir del programa y otro para solicitar Calificación de igual forma en la parte inferior mostrará mediante una imagen el tiempo que empleó realizando la actividad. Si hacemos clic en el primer botón (nivel uno) se abrirá otra pantalla con los contenidos de este (operaciones básicas). Si hacemos clic en el segundo botón (nivel dos) nos lleva a otra pantalla que nos muestra los contenidos más complejos en el proceso de aprendizaje de las matemáticas. PROCESO DE ESTIMACION DE FUNCIONALIDAD DEL PROYECTO DE SOFTWARE Software educativo como estrategia de aprendizaje significativo en el área de las matemáticas para la educación básica primaria. Para el proceso de estimación hemos elegido la métrica de puntos de función Diagrama de cálculo de los PF De este modo hallamos los valores de dominio. Contabilizamos los valores de dominio de cada tipo en este caso son todos simples, entonces procedemos a multiplicar la cantidad total por este nivel de complejidad. categoría Cantidad total simples promedio complejos Puntos de función Entradas 2 2x3 0x4 0x6 6+0+0=6 Salidas 1 1x4 0x5 0x7 4+0+0=4 interacciones 2 2x3 0x4 0x6 6+0+0=6 Interfaces externas 1 1x7 0x10 0x15 7+0+0=7 Archivos internos 1 1x5 0x7 0x10 5+0+0=5 Total PF 28 Al final hallamos el total de puntos de función mediante la sumatoria de todas las multiplicaciones realizadas. ASPECTO GENERALES DEL SISTEMAS RATING(0…5) 1 ¿Se requiere comunicación de datos? 4 2 ¿Existen funcioneso procedimientos distribuidos? 3 3 ¿Es crítico el rendimiento? 4 4 ¿Se ejecutará el sistema en un entorno operativo existente y fuertemente utilizado? ¿Hay restricciones de plataforma? 2 5 ¿El sistema tendrá una carga transaccional alta o baja? 2 6 Nivel de Disponibilidad 5 7 Eficiencia del Usuario Final Requerida (Usabilidad) 5 8 Actualización en Línea 4 9 Complejidad del Procesamiento 1 10 ¿El sistema debe estar diseñado e implementado para ser reutilizable? 5 11 ¿El sistema debe ser diseñado para ser fácil de instalar y de portar? 4 12 Facilidad de Uso 5 13 ¿El sistema debe soportar múltiples instalaciones en diferentes organizaciones? 4 14 ¿El sistema debe estar diseñado e implantado para facilitar cambios? 5 Total N 53 Teniendo en cuenta la siguiente tabla le damos valores al campo de Rating (Clasificación) 0 1 2 3 4 5 No influencia Incidental Moderado Medio Significativo Esencial PF = cuenta total x [0.65 + 0.01 x Σ (N)] Asumiendo: Cuenta total = Total PF = 28 Σ (N) = 53, entonces PF = 28 x (0.65 + 0.01 x 53) = 33, 04 La estimación de funcionalidad arrojada por la métrica de puntos de función fue de un 33, 04 CONCLUSIONES SOBRE LA ESTIMACIÓN DE PROYECTOS DE SOFTWARE Los métodos y las métricas de estimación de proyectos de software son importantes a la hora de estimar estos, ya que nos permiten tener una visión tanto de costo, funcionalidad y esfuerzo al momento de realizarlo. La medición no es la meta, la meta es la mejora a través de la medición, análisis y retroalimentación. De este modo al finalizar tendremos un producto de buena calidad. BIBLIOGRAFIA Ingeniería del software II métricas del software – Fernando Pereñiguez García – UCAM Universidad Católica de Murcia. https://www.youtube.com/watch?v=kh7tIcXOB1E Estimación de costos y planificación de proyectos – Damián Gutiérrez – Universidad de los Andes. http://www.codecompiling.net/files/slides/clase_06_costos.pdf Ingeniería de software – estimación de costos – Cristian Vargas https://www.youtube.com/watch?v=yO7nWbt3RMk Propuesta - Jesús Álvarez Sáez http://sinbad2.ujaen.es/cod/archivosPublicos/pfc/pfc_jesus_alvarez.pdf https://www.youtube.com/watch?v=kh7tIcXOB1E http://www.codecompiling.net/files/slides/clase_06_costos.pdf https://www.youtube.com/watch?v=yO7nWbt3RMk http://sinbad2.ujaen.es/cod/archivosPublicos/pfc/pfc_jesus_alvarez.pdf
Compartir