lunes, 29 de mayo de 2017

COCOMO

COCOMO  (Constructive Cost Model) fue desarrollado por B. W. Boehm a finales de los 70 y comienzos de los 80. Es una jerarquía de modelos de estimación de costes de software que incluye submodelos básico, intermedio y detallado. En ese modelo se establecen ecuaciones matemáticas para describir la relación que existe entre el tamaño del software  y otros factores secundarios que buscan capturar ciertas características del producto, proceso, personas y plataforma. Estos factores se conocen como Cost Drivers.

Una de las principales virtudes de COCOMO II es ofrecer una estimación de plazo y esfuerzo, y a partir de estos sugerir el tamaño del equipo y no lo opuesto.


Para realizar dicha estimaciones del esfuerzo de desarrollo se debe usar la siguiente  ecuacion matemática la cual  tiene la forma: 
                                 E=aisbm(X)
donde: 

  • S es el número de miles de líneas de código fuente
  • m(X) es un multiplicador que depende de 15 atributos
En la siguiente tabla se muestran los coeficientes para los diferentes modos



Básico

Intermedio

              Modo
ai
bi
ai
bi
Orgánico
2.4
1.05
3.2
1.05
Semiencajado
3.0
1.12
3.0
1.12
Empotrado
3.6
1.2
2.8
1.2




El modelo básico: en este modelo se estima el coste del proyecto -pequeño o mediano- en función del número de líneas de código estimados. En su algoritmo establece varios criterios de desarrollo los cuales depende de las posibles dificultades que se pueden encontrar en el desarrollo o limitaciones del hardware usado en el desarrollo del software.



El modelo intermedio es mas utilizado cuando se trata de hacer estimaciones más complejas pues en este se incluyen 15 atributos dentro de 4 categorías que son los que determinaran el coste del proyecto.
Las cuatro categorías son las siguientes: 
  1. Atributos del Producto: se refiere a la garantía de funcionamiento requerida para la creación del software, el tamaño de la base de datos, entre otras cosas.
  2. Atributos del ordenador usado: incluye lo referente a la capacidad de almacenamiento, la rapidez del ordenador, versión del sistema operativo, etc.
  3. Atributos del personal: incluye lo que es la experiencia en el tipo de software a desarrollar, en el lenguaje en que se creará, etc.
  4. Atributos del proyecto: software usado para el desarrollo del proyecto, lenguaje necesario para la creación del software, entre otras cosas.

Todos atributos son tomados en cuenta para hacer la aproximación del coste estimado al real, lo máximo posible.


El modelo detallado se basa en incorporar las características del modelo intermedio ademas de que lleva acabo una evaluación del impacto de los atributos tomados en cuenta para el coste. Introduce 2 características principales
  1. Multiplicadores de esfuerzo sensitivos a la fase que van de acuerdo con cada atributo y de esta manera ayuda a determinar la asignación del personal para cada fase del proyecto.
  2. Jerarquía del producto a tres niveles los cuales son módulo, subsistema y sistema y la cuantificación se realiza al nivel que es más susceptible la variación.

Conclusiones sobre COCOMO.

El modelo COCOMO como ya lo hemos descrito es uno de los sistemas de estimación de costes mas utilizados en proyectos de desarrollo de software debido a que una una aproximación al coste real ademas de que es de fácil aplicación con una buena documentación.






"COCOMO" extraído el 28 de Mayo de 2017 desde la fuente:  https://www.ecured.cu/COCOMO_II

"El modelo COCOMO" extraído el 28 de Mayo de 2017 desde la fuente: http://www.sc.ehu.es/jiwdocoj/mmis/cocomo.htm

"El modelo COCOMO para estimar costes en un proyecto de software" extraído el 28 de Mayo de 2017 desde la fuente: http://www.eoi.es/blogs/cesaraparicio/2012/05/06/el-modelo-cocomo-para-estimar-costes-en-un-proyecto-de-software/

"Estimación de proyectos de software con COCOMO II: La métrica inmersa en un modelo de costos"
extraído el 28 de Mayo de 2017 desde la fuente http://www.fattocs.com/es/cursos/cocomo.html

domingo, 14 de mayo de 2017

¿QUÉ ES BIG DATA?

Se denomina Big Data al conjunto de datos que son tan grandes que no pueden ser manipuladas por una gestión de base de datos tradicional como las que suelen  usarse en los sistemas. Es por eso que los Big Data suelen distinguirse por las cuatro V para tener un mejor entendimiento, es decir, Velocidad, variedad, volumen y valor.



Toda la información que se ha ido acumulando es debido a la que almacenan las compañías para hacer transacciones o para tener la información personal de clientes, proveedores, operaciones, entre otras cosas.
Es por eso que si queremos usar los BigData debemos saber a que se refiere esto.

Volumen: Se refiere a la cantidad de datos. Los Big Data requieren procesar altos volúmenes de datos no estructurados y de baja densidad, es decir, datos con un valor desconocido, de este modo lo Big Data son encargados de convertir estos datos en información valiosa.

Velocidad: Se refiere al ritmo con el que se reciben los datos y se ponen en práctica. Esto es importante pues normalmente los datos que cuentan una velocidad alta fluyen a la memoria en lugar de escribirse en el disco.Es por eso que las experiencias de aplicaciones móviles tienen una mayor cantidad de usuarios, un mayor tráfico de red y la expectativa de una respuesta inmediata.

Variedad: Esta característica hace referencia a los nuevos tipos de datos no estructurados. Debemos entender que los datos no estructurados o semiestructurados como texto, audio y video requieren de un procesamiento adicional para extraer la información y los metadatos de respaldo. Una vez hecho esto los datos no estructurados cuentan con muchos de los requisitos de los datos estructurados como resumen, linaje, auditabilidad  y privacidad. Se debe tomar en cuenta que los cambios de esquema frecuentes o en tiempo real son una carga enorme para los entornos de transacción y análisis 

Valor: Existe una gran variedad de técnicas cuantitativas y de investigación para extraer el valor de los datos; desde descubrir una preferencia u opinión del consumidor o identificar una pieza del equipo que este a punto de fallar. Sin embargo el valor también requiere nuevos procesos de descubrimiento que involucran a analistas, usuarios empresariales y ejecutivos inteligentes.





Como podemos ver con el crecimiento de la tecnología debemos estar al día con las nuevas formas de almacenar datos y pues un ejemplo claro son los Big Data, pues representan un desafío real el cual es aprende a hacer las preguntas correctas, reconocer patrones, formular hipótesis  y predecir comportamiento algo que pues realmente no es sencillo pero con la práctica será fácil de manejar.















"La base de la innovación de datos" extraído el 13 de mayo de 2017 desde la fuente: https://www.oracle.com/lad/big-data/index.html

"¿Qué es el Big Data?" extraído el 13 de mayo de 2017 desde la fuente: http://www.analiticaweb.es/que-es-big-data/

 "¿Qué es BigData?" extraído el 13 de mayo de 2017 desde la fuente: https://www.ibm.com/developerworks/ssa/local/im/que-es-big-data/


domingo, 7 de mayo de 2017

MODELADO WEB

El modelado web nos sirve para garantizar la funcionalidad y calidad en nuestro sitio, prácticamente se basa en tomar en cuenta 3 puntos: Diseño de interfaz, Mapa de navegación y la distribución de contenidos y de que tipo son, es por eso que vamos a analizar 5 sitios web para entender un poco más a lo que se refiere el modelado web.




Sitios Web
Diseño de Interfaz
Mapa de Navegación
Contenidos


El diseño con el que cuenta es muy simple pues con tan solo un scrollbar de lado derecho podemos encontrar lo deseamos, además de que cuenta con un buscador.
Es muy simple pues es fácil de navegar en la página sin tener que andar regresando al inicio ni nada que se le parezca.
Los contenidos están muy bien ordenados y es fácil de encontrar lo que se quiere.


Tiene un carrusel de imágenes que hace más atractivo el sitio, además de que a pesar de que su fondo es blanco no satura tanto sus páginas pues tiene distribuido todo de forma organizada
Se puede visualizar que la manera en que se desarrolló la página fue muy bien estructurada pues es sencillo navegar en esta, puedes visualizar los diferentes contenidos sin perderte, pues está separado por secciones.
Los contenidos están muy bien organizados pues te permite visualizar la información de cada celular, la seguridad, diferentes tipos de tablets entre otras cosas.



Al ser una página visitada por muchos usuarios esta trata de ser amigable aunque su principal atractivo son los videos que muestra en inicio de la página.
Podemos observar que la manera en que distribuyeron los contenidos es muy fácil de entender pues se puede visualizar otras secciones sin salirte de la página de Inicio.
Tiene la información necesaria para que el usuario entienda como hacer uso de este sitio, la divide por secciones según las tendencias, los canales a los que estés suscrito, entre otras cosas.


Aunque es un sitio el cual suele ser visitado por muchas personas su diseño de interfaz se basa en una barra donde muestra la cuenta de la persona que lo está usando y pequeñas imágenes miniaturas de las películas/series/caricaturas que ofrece
El mapa de navegación es demasiado simple pues los contenidos principales se encuentran en una sola página de manera en que puedes navegar en las diferentes secciones sin ningún problema.
Gracias a que divide los contenidos por diferentes secciones es fácil saber dónde podemos encontrar lo que requerimos.


Es un sitio que tiene muy mal diseño pues los colores utilizados en lugar de atraer, lastiman. No se entiende de que es la página y está muy saturada de pequeñas publicaciones
No es sencillo navegar debido a que hay muchas publicaciones, apartados y es difícil saber cómo regresar al inicio o como llegar a lo que la página ofrece.
Los contenidos están un poco organizados pero se tarda mucho en cargarlos debido a todo lo que hay en este sitio, es poco entendible.


Como podemos notar es muy importante analizar el diseño que llevará nuestro sitio web, así como la distribución de los contenidos, pues nuestro sitio web tiene que ser amigable y entendible para el usuario de modo que sea sencillo para él entender que es lo que estamos ofreciendo, sea atractivo a la vista y de esta manera podremos llegar a mas audiencia.