domingo, 28 de mayo de 2017

Modelo constructivo de costos

El Modelo Constructivo de Costes (Constructive Cost Model) fue desarrollado por B. W. Boehm a finales de los 70 y comienzos de los 80, exponiéndolo detalladamente en su libro "Software Engineering Economics"  (Prentice-Hall, 1981). COCOMO es una jerarquía de modelos de estimación de costes software que incluye submodelos básico, intermedio y desarrollado.
Las ecuaciones de estimación del esfuerzo de desarrollo tienen la forma:
Con:
• S 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

Modelo Básico
Este modelo trata de estimar, de una manera rápida y más o menos burda, la mayoría de proyectos pequeños y medianos. Se consideran tres modos de desarrollo en este modelo: orgánico, semiencajado y empotrado.

Modo orgánico.
En este modo, un pequeño grupo de programadores experimentados desarrollan software en un entorno familiar. El tamaño del software varía de unos pocos miles de líneas (tamaño pequeño) a unas decenas de miles de líneas (medio), mientras que en los otros dos modos el tamaño varía de pequeño a muy grandes. En este modo, al igual que en los otros, el coste se incrementa a medida que el tamaño lo hace, y el tiempo de desarrollo se alarga.
Se utilizan dos ecuaciones para determinar el esfuerzo de personal y el tiempo de desarrollo. El coste es: Km = 2.4 Sk1.05  ; donde Km se expresa en personas-mes y Sk es el tamaño expresado en miles de líneas de código fuente. El tiempo de desarrollo se da por: td = 2.5 Km0.38  ; donde Km se obtiene de la ecuación anterior y td es el tiempo de desarrollo en meses. Estas ecuaciones se han obtenido por medio de ajustes de curvas realizado por Boehm en TRW sobre 63 proyectos.

Modo Empotrado.
En este modo, el proyecto tiene unas fuertes restricciones, que pueden estar relacionadas con el procesador y el interface hardware. El problema a resolver es único y es difícil basarse en la experiencia, puesto que puede no haberla. Las estimaciones de tiempo y coste se basan en las mismas ecuaciones que en el modo orgánico, pero con diferentes constantes. Así el coste se da por: Km = 3.6 Sk1.20 y el tiempo de desarrollo por td = 2.5 Km0.32 .

Modo Semiencajado.
Es un modo intermedio entre los dos anteriores. Dependiendo del problema, el grupo puede incluir una mezcla de personas experimentadas y no experimentadas. Las ecuaciones son: Km = 3.0 Sk1.12 y el tiempo de desarrollo por td = 2.5 Km0.35.

Modelo Intermedio
En este modelo se introducen 15 atributos de coste para tener en cuenta el entorno de trabajo. Estos atributos se utilizan para ajustar el coste nominal del proyecto al entorno real, incrementando la precisión de la estimación.

Atributos de coste.
Estos atributos tratan de capturar el impacto del entorno del proyecto en el coste de desarrollo. De un análisis estadístico de más de 100 factores que influencian el coste, Boehm retuvo 15 de ellos para COCOMO. Estos atributos se agrupan en cuatro categorías: atributos del producto, atributos del ordenador, atributos del personal y atributos del proyecto.

Modelo Detallado
Este modelo puede procesar todas las características del proyecto para construir una estimación. Introduce dos características principales:
(1)   Multiplicadores de esfuerzo sensitivos a la fase. Algunas fases se ven más afectadas que otras por los atributos. El modelo detallado proporciona un conjunto de multiplicadores de esfuerzo para cada atributo. Esto ayuda a determinar la asignación del personal para cada fase del proyecto.
(2)   Jerarquía del producto a tres niveles. Se definen tres niveles de producto. Estos son módulo, subsistema y sistema. La cuantificación se realiza al nivel apropiado, esto es, al nivel al que es más susceptible la variación.

Conclusion
Es uno de los modelos más documentados en la actualidad y es muy fácil de utilizar. Es correcto con referencia a los 63 proyectos utilizados, aunque de ello no se debe desprender que deba ser válido siempre. Una preocupación es la adaptación de las ecuaciones exponenciales a organizaciones específicas, cosa que no parece inmediatamente fácil.


domingo, 14 de mayo de 2017

Big Data

Introducción
Se pueden tratar conceptos que guardan una estrecha relación con el Big Data, como Business Intelligence, minería de datos u open data. Asimismo, frente a las denominadas”3V” que constituyen la esencia del Big Data  (volumen, variabilidad, velocidad), se sugiere una Big Data cuarta V, la de la visualización. Finalmente, tras anticipar la previsible problemática en torno a la gestión de la privacidad de la información, concluye con una reflexión acerca de la dimensión del concepto  en Big un contexto de crecimiento exponencial de la información y la seguridad que debe proporcionar la misma.

Desarrollo
Big Data apareció en el año 2015 como uno de los términos de moda en todas las revistas de temática científica, sociológica o tecnológica, también en  y redes sociales e incluso ya ha dado el salto a las blogs publicaciones económicas y empresariales y las de divulgación más popular.

Tradicionalmente, los principales conceptos agrupados que han definido este nombre han sido las denominadas ‘3 V’: volumen, variabilidad y velocidad. Macro datos es todo aquello que tiene que ver con grandes Volúmenes de información que se mueven o analizan a alta Velocidad y que pueden presentar una compleja Variabilidad en cuanto a la estructura de su composición. Siempre me ha parecido que debería añadirse una cuarta uve, la Visualización, ya que no solo forma también parte de ello, sino que muchas de las imágenes que nos traen a la memoria el trabajo con  tienen que ver con estas Big Data nuevas formas de ‘ver’ estos datos.


También al  Big Data se lo puede definir como aquel conjunto de datos que excede la capacidad de procesamiento de los sistemas de bases de datos convencionales.

Ventajas y desventajas
Es importante comprender que además de los datos estructurados, aquellos otros que provienen de fuentes de información conocidas y que, por tanto, son fáciles de medir y analizar a través de los sistemas tradicionales, empezamos a poder y querer manejar datos no estructurados: los que llegan de la Web, de las cámaras de los móviles y vídeos, redes sociales, sensores de las ciudades y edificios.

Por ende aquí se pueden mencionar a los atributos principales para considerar un conjunto de datos como Big Data:

Volumen: Cantidad masiva del orden de los cientos de Terabytes.
Velocidad: El flujo de entrada de datos, ingesta, puede resultar tan alto que la información sea muy difícil de procesar y esto condicione la comprensión sobre los datos.
Variedad: En la estructura de los datos: estructurados, semiestructurados (ficheros con formato conocido tipo Word, Excel) y desestructurados (imágenes, video, audio).
Valor: La mayoría de los datos tiene poco valor hasta su análisis y procesamiento. Para esta tarea se hacen necesarios sistemas distribuidos y recursos avanzados de análisis de datos.

Herramientas

Existe ya una gama amplia de utilidades (principalmente en la ayuda de toma de decisiones en situaciones críticas) es una de las herramientas fundamentales para la creación de valor sobre Big Data. En este sentido, además de las herramientas de procesamiento, son totalmente necesarios sistemas de visualización avanzada e interfaces que permitan interactuar con la propia visualización. La llegada de HTML-5 ha impulsado la aparición de un gran número de herramientas de visualización web adecuadas para la visualización científica y Visual Analytics.
El problema que posee Big Data es el de la privacidad que es en donde se deben enfatizar así como también en la seguridad, en la propiedad intelectual, e incluso con la responsabilidad, estos son los aspectos que deben ser abordados para que se pueda continuar con el desarrollo de los sistemas de Big Data.

Conclusión
Big Data es un concepto con un gran potencial que ya empieza a tener una importante difusión pero aún el potencial del concepto no ha sido todavía explorado en su totalidad. Son muchos los nuevos campos y oportunidades que se abren en torno a este mundo. Es en la capacidad de analizar la gran cantidad de información que nos ofrece el Big Data donde las herramientas avanzadas de visualización son y serán un factor clave en el éxito del desarrollo de estas tecnologías.

domingo, 7 de mayo de 2017

Analisis de Diseño

Introducción
 Antes de comenzar con el proyecto de creación, diseño y estructura de nuestra página web, debemos haber planificado ya previamente las estrategias a llevar a cabo si queremos tener éxito en nuestro proyecto de posicionamiento natural web en internet.
Antes de nada tenemos que analizar todos los aspectos que hacen referencia a nuestra nueva página web, desde el diseño de la página web, análisis de la estructura interna de la página web, análisis de los textos web, análisis de las keywords de la web, análisis y estudio de nuestra competencia en internet, del sector o empresa al que pertenece, análisis del tipo de cliente idealal que ofrecemos nuestros productos, nuestros servicios.
Una vez hayamos analizado todos estos aspectos tanto los internos como los aspectos externos de nuestra página web, nos pondremos a analizar globalmente todos los datos recabados, haciendo si fuera el caso, una completa auditoría del negocio web al que deseamos un posicionamiento natural, para, posteriormente llevar a cabo todas las estrategias de marketing estudiadas previamente para que todos nuestros productos a la venta o servicios que ofrezcamos a los posibles clientes o visitantes a nuestra página web.

Analisis, Diseño y estructura de paginas WEB
En un proyecto de creación de páginas web de nueva, el estudio del diseño, geometría, colores corporativos, código a usar en el sitio web se realiza a cargo de nuestros diseñadores y creativos que, en conjunción con nuestros técnicos de marketing, realizarán el diseño global de la página web, estudiando la estructura tanto a nivel de diseño como en la programación del código html del sitio, la estructura lógica de la página y depuración del mismo.

SEARS
-Diseño de interfaz
Su interfaz es bastante llamativa, porque su inicio muestra un producto de cada sección que manejan como celulares, TV o electrodomésticos,  que son los últimos que han salido, con lo cual es llamativo para alguien que entra buscando lo que cubra sus necesidades. Todos los botones son claros y es bastante limpia con un fondo blanco y frases bastante llamativas eh inspiradoras.

-Mapa de navegación
Su mapa de navegación es sencillo, consta de cuatro secciones principales que es los tipos de productos que manejan, al meterte a alguno se muestran todos los artículos disponibles de esa sección con imágenes y comparaciones.

-Contenidos
Su contenido se basa en la demostración de todos los artículos que la marca maneja, explicando todas las especificaciones de cada uno con imágenes para mostrarlo de diferentes ángulos y con sus respectivos costos.

SPOTIFY
-Diseño de Interfaz
El css de la página esta bueno, con sus respectivas animaciones y no es molesto para los ojos, son simples pero no exageradas.

-Mapa de Navegación
El mapa de navegación es de un solo nivel y consta de 3 ramas, asi que el usuario no se satura de información o se pierde buscando algo.

-Contenidos
La página está completa, ya que tiene el contenido necesario para que descargues el software y hasta te persuada de comprarlo. En la página principal viene todo lo que se necesita.

lunes, 1 de mayo de 2017

Calidad del Software

La calidad del software requiere de mucho esfuerzo y preocupación, las personas encargadas de llevar a cabo el trabajo anterior deberán ser aquellas que conozcan profundamente cada una de las partes del proyecto tanto teóricas como prácticas. La calidad debe aplicarse a todos los niveles de la organización, sin embargo es necesario que sea adoptada una estructura organizacional, la cual ayudará a evitar el desperdicio de esfuerzo y de recursos; el software puede tener errores, incidencias; ya que casi nunca es perfecto. La calidad del software no se puede medir de forma correcta debido a su naturaleza, la calidad del software depende de quien la juzgue o del correcto funcionamiento del mismo garantiza un buen software.
Los puntos que se tocaran son los siguientes:
•  Facilidad de Uso: Conjunto de características que influyen en el esfuerzo requerido para el uso y la evaluación individual de cada uso por parte de un conjunto de usuarios dados. Se divide en las subcaracteríticas comprensión, facilidad de aprendizaje, operatividad, atractivo.
•  Funcionalidad: Funcionalidad es lo que un producto puede hacer. Probar la funcionalidad significa asegurar que el producto funciona tal como estaba especificado.
•  Confiabilidad: La habilidad que tiene un sistema o componente de realizar sus funciones requeridas bajo condiciones específicas en periodos de tiempo determinados
•  Eficiencia: Se define como la capacidad de disponer de alguien o de algo para conseguir un efecto especifico. No debe confundirse con eficacia que se define como la capacidad de lograr el efecto que se desea o se espera.
•  Facilidad de mantenimiento: Respecto a la calidad de un programa, la facilidad de mantenimiento hace referencia a establecer en qué medida el programa es susceptible de ser corregido.
Conclusión
Siempre es importante tener en cuenta la calidad de nuestra aplicación para satisfacción del cliente y con los puntos vistos en este trabajo, ya será fácil identificar que tan completa es nuestra aplicación.
Referencias