miércoles, 28 de noviembre de 2012


Arquitectura cliente-servidor

Esta arquitectura se divide en dos partes claramente diferenciadas, la primera es la parte del servidor y la segunda la de un conjunto de clientes.

Normalmente el servidor es una máquina bastante potente que actúa de depósito de datos y funciona como un sistema gestor de base de datos (SGBD).

Por otro lado los clientes suelen ser estaciones de trabajo que solicitan varios servicios al servidor.

Ambas partes deben estar conectadas entre sí mediante una red.
Una representación gráfica de este tipo de arquitectura sería la siguiente. 





Este tipo de arquitectura es la más utilizada en la actualidad, debido a que es la más avanzada y la que mejor ha evolucionado en estos últimos años.

Podemos decir que esta arquitectura necesita tres tipos de software para su correcto funcionamiento: 
Software de gestión de datos: Este software se encarga de la manipulación y gestión de los datos almacenados y requeridos por las diferentes aplicaciones. Normalmente este software se aloja en el servidor.
Software de desarrollo: este tipo de software se aloja en los clientes y solo en aquellos que se dedique al desarrollo de aplicaciones.
Software de interacción con los usuarios: También reside en los clientes y es la aplicación gráfica de usuario para la manipulación de datos, siempre claro a nivel usuario (consultas principalmente).
A parte de estos existen más aplicaciones software para el correcto funcionamiento de esta arquitectura pero ya están condicionados por el tipo de sistema operativo instalado, el tipo de red en la que se encuentra.

Arquitectura en tres capas


El Patrón de arquitectura por capas es una de las técnicas más comúnes que los arquitectos de software utilizan para dividir sistemas de software complicados. Al pensar en un sistema en términos de capas, se imaginan los principales subsistemas de software ubicados de la misma forma que las capas de un pastel, donde cada capa descansa sobre la inferior. En este esquema la capa más alta utiliza varios servicios definidos por la inferior, pero la ultima es inconsciente de la superior. Además, normalmente cada capa oculta las capas inferiores de las siguientes superiores a esta.

Los beneficios de trabajar un sistema en capas son:

- Se puede entender una capa como un todo, sin considerar las otras.
- Las capas se pueden sustituir con implementaciones alternativas de los mismos servicios básicos
- Se minimizan dependencias entre capas.
- Las capas posibilitan la estandarización de servicios
- Luego de tener una capa construida, puede ser utilizada por muchos servicios de mayor nivel.
La imagen que se muestra a continuación presenta el esquema de una arquitectura siguiendo este patrón:



A continuación se describen las tres capas principales de un patrón de arquitectura por capas:


1. Capa de Presentación: Referente a la interacción entre el usuario y el software.  Puede ser tan simple como un menú basado en líneas de comando o tan complejo como una aplicación basada en formas.  Su principal responsabilidad es mostrar información al usuario, interpretar los comandos de este y realizar algunas validaciones simples de los datos ingresados.

2. Capa de Reglas de Negocio (Empresarial): También denominada Lógica de Dominio, esta capa contiene la funcionalidad que implementa la aplicación.  Involucra cálculos basados en la información dada por el usuario y datos almacenados y validaciones.  Controla la ejecución de la capa de acceso a datos y servicios externos.  Se puede diseñar la lógica de la capa de negocios para uso directo por parte de componentes de presentación o su encapsulamiento como servicio y llamada a través de una interfaz de servicios que coordina la conversación con los clientes del servicio o invoca cualquier flujo o componente de negocio.

3. Capa de Datos: Esta capa contiene la lógica de comunicación con otros sistemas que llevan a cabo tareas por la aplicación.  Estos pueden ser monitores transaccionales, otras aplicaciones, sistemas de mensajerías, etc.  Para el caso de aplicaciones empresariales, generalmente esta representado por una base de datos, que es responsable por el almacenamiento persistente de información.  Esta capa debe abstraer completamente a las capas superiores (negocio) del dialecto utilizado para comunicarse con los repositorios de datos (PL/SQL, Transact-SQL, etc.).

jueves, 25 de octubre de 2012

CASO DE USO



Un caso de uso es una descripción de los pasos o las actividades que deberán realizarse para llevar a cabo algún proceso. Los personajes o entidades que participarán en un caso de uso se denominan actores.En el contexto de ingeniería del software, un caso de uso es una secuencia de interacciones que se desarrollarán entre un sistema y sus actores en respuesta a un evento que inicia un actor principal sobre el propio sistema. Los diagramas de casos de uso sirven para especificar la comunicación y el comportamiento de un sistema mediante su interacción con los usuarios y/u otros sistemas. O lo que es igual, un diagrama que muestra la relación entre los actores y los casos de uso en un sistema. Una relación es una conexión entre los elementos del modelo, por ejemplo la especialización y la generalización son relaciones. Los diagramas de casos de uso se utilizan para ilustrar los requerimientos del sistema al mostrar cómo reacciona a eventos que se producen en su ámbito o en él mismo.
Los más comunes para la captura de requisitos funcionales, especialmente con el desarrollo del paradigma de la programación orientada a objetos, donde se originaron, si bien puede utilizarse con resultados igualmente satisfactorios con otros paradigmas de programación.


  • La posición o contexto del caso de uso entre otros casos de uso. Dado que es un mecanismo de organización, un conjunto de casos de uso coherentes y consistentes promueven una imagen fácil de comprender del comportamiento del sistema, un entendimiento común entre el cliente/propietario/usuario y el equipo de desarrollo.
en esta practica es comun crear especificaciones suplementarias para capturar detalles de requisitos que caen fuera del ámbito de las descripciones de los casos de uso. Ejemplos de esos temas incluyen restricciones de diseño como: rendimiento, temas de escalabilidad/gestión, o cumplimiento de estándares.
Casos de uso UML para un modelo simple de restaurante
El diagrama de la derecha describe la funcionalidad de un Sistema Restaurante muy simple. Los casos de uso están representados por elipses y los actores están, por ejemplo, los casos de uso se muestran como parte del sistema que está siendo modelado, los actores no.
La interacción entre actores no se ve en eldiagrama de casos de uso. Si esta interacción es esencial para una descripción coherente del comportamiento deseado, quizás los límites del sistema o del caso de uso deban de ser re-examinados. Alternativamente, la interacción entre actores puede ser parte de suposiciones usadas en el caso de uso. Sin embargo, los actores son una especie de rol, un usuario humano u otra entidad externa puede jugar varios papeles o roles. Así el Chef y el Cajero podrían ser realmente la misma persona.




ciclo de vida rup



de entre todos los modelos de ciclo de vida, existe el modelo rup que asegura la producion de software de alta calidad que cumpla con las necesidades de los usuarios, con una planeacion  y presupuesto predecible


FASES  DEL CICLO DE VIDA DE RUP




En cuanto a tiempo el ciclo de vida de RUP se descompone en 4 FASES secuenciales, cada cual concluye con un producto intermedio.
Al terminar cada fase se realiza una evaluación para determinar si se ha cumplido o no con los objetivos de la misma.
     
INICIO

•    El objetivo general de esta fase es establecer un acuerdo entre todos los interesados acerca de los objetivos del proyecto.
•    Es significativamente importante para el desarrollo de nuevo software, ya que se asegura de identificar los riesgos relacionados con el negocio y requerimientos.
•    Para proyectos de mejora de software existente, esta fase es más breve y se centra en asegurar la viabilidad de desarrollar el proyecto.

ELABORACIÓN

•    El objetivo en esta fase es establecer la arquitectura base del sistema para proveer bases estables para el esfuerzo de diseño e implementación en la siguiente fase.
•    La arquitectura debe abarcar todas las consideraciones de mayor importancia de los requerimientos y una evaluación del riesgo.

CONSTRUCCIÓN
•    El objetivo de la fase de construcción es clarificar los requerimientos faltantes y completar el desarrollo del sistema basados en la arquitectura base.
•    Vista de cierta forma esta fase es un proceso de manufactura, en el cual el énfasis se torna hacia la administración de recursos y control de la operaciones para optimizar costos, tiempo y calidad.

TRANSICIÓN
•    Esta fase se enfoca en asegurar que el software esté disponible para sus usuarios.
•    Se puede subdividir en varias iteraciones, además incluye pruebas del producto para poder hacer el entregable del mismo, así como realizar ajuste menores de acuerdo a ajuste menores propuestos por el usuario.
•    En este punto, la retroalimentación de los usuarios se centra en depurar el producto, configuraciones, instalación y aspectos sobre utilización.

windows 8

microsoft windows 8 es el sistema operativo de mayor difusión internacional. como tal es el principal intermediario entre los usuarios y sus computadoras




es el nombre oficial de la próxima versión de Microsoft Windows, familia de sistemas operativos producidos por Microsoft para su uso en computadoras personales, incluidas computadoras de escritorio en casa y de negocios, computadoras portátiles,netbookstabletsservidores y centros multimedia. Añade soporte paramicroprocesadores ARM, además de los microprocesadores tradicionales x86 de Intel yAMD. Su interfaz de usuario ha sido modificada para hacerla más adecuada para su uso con pantallas táctiles, además de los tradicionales ratón y teclado. Microsoft también anunció que Aero Glass no estará presente en la versión final de Windows 8. Microsoft no ha anunciado aún una fecha de lanzamiento para Windows 8, pero fuentes no oficiales afirman que será lanzado en octubre de 2012,[4] . Se lanzó al público general una versión de desarrollo ("Consumer Preview") el 29 de febrero de 2012. Microsoft finalmente anunció una versión casi completa de Windows 8, la Release Preview, que fue lanzada el 31 de mayo de 2012 y será la última versión preliminar de Windows 8 antes de su lanzamiento oficial.



 características:


compatibilidad con usb 3.0

interfaz en el explorador de windows

nueva tienda de aplicaciones

sistemas de ficheros protogon

windows to go


windows 8 poseerá la opción system re set. la cual permite eliminar todo el software instalado y reiniciar los ajustes iniciales del sistema operativo, y en tan solo dos minutos


el nuevo sistema operativo sera diseñado de tal forma que todas las plataformas de microsoft puedan funcionar en el pc o computadoras personales, teléfonos, celulares, tabletas electrónicas.

habrá una versión de prueba de windows 8 a finales del 2011, y se espera su lanzamiento comercial a finales del 2012


métricas y calidad de software





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. 




Las métricas del Software comprenden
un amplio rango de actividades
diversas, estas son algunas:



‣Aseguramiento y control de calidad

‣Modelos de fiabilidad

‣Modelos y evaluación de ejecución

‣Modelos y medidas de productividad



clasificación de las métricas de software



de complejidad

Métricas que definen la medición de la complejidad: volumen, tamaño, 
anidaciones, y configuración.

de calidad

Métricas que definen la calidad del software: exactitud, estructuración o 
modularidad, pruebas, mantenimiento.

de competencia

Métricas que intentan valorar o medir las actividades de productividad
de los programadores con respecto a su certeza, rapidez, eficiencia y 
competencia

de desempeño

Métricas que miden la conducta de módulos y sistemas de un software, 
bajo la supervisión del SO o hardware.


estilizadas

Métricas de experimentación y de preferencia: estilo de código, 
convenciones, limitaciones, etc.





tecnología de la información y la comunicación


Las tecnologías de la información y la comunicación (TICo bien NTIC para nuevas tecnologías de la información y de la comunicación) agrupan los elementos y las técnicas usadas en el tratamiento y la transmisión de la información, principalmente la informáticaInternet y las telecomunicaciones.
Por extensión, designan un sector de actividad económica.

El uso de las tecnologías de la información y la comunicación ayudaría a disminuir la brecha digital aumentando el conglomerado de usuarios que las utilicen como medio tecnológico para el desarrollo de sus actividades.

tecnologías




Las TIC conforman el conjunto de recursos necesarios para manipular la información: los ordenadores, los programas informáticos y las redes necesarias para convertirla, almacenarla, administrarla, transmitirla y encontrarla.
Se pueden clasificar las TIC según:
  • Las redes.
  • Los terminales.
  • Los servicios.

Telefonía fija

A continuación se analizan las diferentes redes de acceso disponibles actuales.
El método más elemental para realizar una conexión a Internet es el uso de un módem en un acceso telefónico básico. A pesar de que no tiene las ventajas de la banda ancha, este sistema ha sido el punto de inicio para muchos internautas y es una alternativa básica para zonas de menor poder adquisitivo.

Banda ancha
En casi todos los países de la Unión Europea, el grado de disponibilidad de línea telefónica en los hogares es muy alto, excepto enAustriaFinlandia y Portugal. En estos países la telefonía móvil está sustituyendo rápidamente a la fija.13 De todas maneras, enEspaña, el acceso a Internet por la red telefónica básica (banda estrecha) prácticamente ha desaparecido. En el año 2003 la mitad de las conexiones a Internet era de banda estrecha. En 2009, el 97% de los accesos a Internet era ya por banda ancha y casi el 95% era superior o igual a 1 Mbps.14
Mapa de la distribución de clientes de banda ancha del 2005.
La banda ancha originariamente hacía referencia a una capacidad de acceso a Internet superior al acceso analógico (56 kbps en un acceso telefónico básico o 128 kbps en un acceso básico RDSI). El concepto ha variado con el tiempo en paralelo a la evolución tecnológica. Según la Comisión Federal de Comunicaciones de los EEUU (FCC) se considera banda ancha al acceso a una velocidad igual o superior a los 200 kbps, como mínimo en un sentido. Para la Unión Internacional de Telecomunicaciones el umbral se sitúa en los 2 Mbps.15
Según los países, se encuentran diferentes tecnologías: la llamada FTTH (fibra óptica hasta el hogar), el cable (introducido en principio por distribución de TV), el satélite, laRDSI (soportada por la red telefónica tradicional) y otras en fase de desarrollo. El modelo de desarrollo de la conectividad en cada país ha sido diferente y las decisiones de los reguladores de cada país han dado lugar a diferentes estructuras de mercado.
En el gráfico se ve la evolución del acceso a Internet desde 1999 hasta 2007 y se puede apreciar cómo se incrementó en ese periodo el uso de la banda ancha.
Internet está evolucionando muy rápidamente y está aumentando enormemente la cantidad de contenidos pesados (vídeos, música...). Por este motivo, los operadores se están encontrando en muchas ocasiones que las redes tradicionales no tienen suficiente capacidad para soportar con niveles de calidad adecuada el tránsito que se comienza a generar y prevén que el problema aumente con el tiempo, debido al ritmo actual de crecimiento. Algunos operadores de países de la Organización para la Cooperación y el Desarrollo Económico (OCDE) están actualizando sus redes, llevando fibra hasta los hogares (FTTH- Fibre-to-the-home) y fibra a los edificios (FTTB- Fibre-to-the-building). En diciembre de 2007, el número de accesos a banda ancha mediante fibra suponía ya un 9% del total en los países de la OCDE, un punto porcentual más que un año antes. El ADSL seguía siendo la tecnología más empleada con un 60% de las líneas de banda ancha y el cable mantenía la segunda posición con un 29%.
Acceso a internet: Evolución y distribución en la Europa del los 15.
Este desarrollo de la tecnología de la fibra óptica no es uniforme entre los diferentes países de la OCDE. En Japón y Corea del Sur se da un 44,5% y un 39,2% de las conexiones de banda ancha, respectivamente con esta tecnología, después de crecimientos espectaculares de 14,5 puntos y 15 puntos porcentuales respectivamente en año y medio, que absorben prácticamente todo el crecimiento de este tipo de tecnología; en Europa, con un 1% de las conexiones, acaba de empezar la renovación de la tecnología actual por la fibra óptica.
Durante el año 2007, en los países de la Unión Europea el porcentaje de líneas ADSL sobre el total de accesos de banda ancha era del 80,3%. Juega a favor de las tecnologías xDSL los costes de implantación y el desarrollo del ADSL 2+, de mayor capacidad y abasto.


Telefonía móvil



Los motivos para preferir conexiones de banda ancha son el no tener la línea telefónica ocupada, la velocidad del acceso y la posibilidad de estar siempre conectado. Así como el acceso a nuevos servicios relacionados con la fotografía, la descarga de música o vídeos. De menor manera, en el hogar, el equipo de conexión a Internet (módem/router) permite crear un entorno de red.
Mensaje MMS en un terminal móvil.
A pesar de ser una modalidad más reciente, en todo el mundo se usa más la telefonía móvil que la fija. Se debe a que las redes de telefonía móvil son más fáciles y baratas de desplegar.
El número de líneas móviles en el mundo continúa en crecimiento, a pesar de que el grado de penetración en algunos países está cerca de la saturación. De hecho, en Europa la media de penetración es del 119%.17
Las redes actuales de telefonía móvil permiten velocidades medias competitivas en relación con las de banda ancha en redes fijas: 183 kbps en las redes GSM, 1064 kbps en las 3G y 2015 kbps en las WiFi.18 Esto permite a los usuarios un acceso a Internet con alta movilidad, en vacaciones o posible para quienes no disponen de acceso fijo. De hecho, se están produciendo crecimientos muy importantes del acceso a Internet de banda ancha desde móviles y también desde dispositivos fijos pero utilizando acceso móvil. Este crecimiento será un factor clave para dar un nuevo paso en el desarrollo de la sociedad de la información. Las primeras tecnologías que permitieron el acceso a datos, aunque a velocidades moderadas, fueron el GPRS y el EDGE, ambas pertenecientes a lo que se denomina 2.5G. Sin embargo, la banda ancha en telefonía móvil empezó con el 3G, que permitía 384 kbps y que ha evolucionado hacia el 3.5G, también denominado HSPA (High Speed Packet Access), que permite hasta 14 Mbps de bajada HSDPA (High Speed Downlink Packet Access) y, teóricamente, 5,76 Mbps de subida si se utiliza a más HSUPA (High Speed Uplink Packet Access). Estas velocidades son, en ocasiones, comparables con las xDSL y en un futuro no muy lejano se prevé que empiecen a estar disponibles tecnologías más avanzadas, denominadas genéricamente Long Term Evolution o redes de cuarta generación y que permitirán velocidades de 50 Mbps.19
El ritmo de implantación de la tecnología 3G en el mundo es muy irregular: mientras en Japón los usuarios de 3G son mayoría, en otras zonas también desarrolladas, como Bélgica, su uso es residual.
Estas tecnologías son capaces en teoría de dar múltiples servicios (imagen, voz, datos) a altas velocidades, aunque en la práctica la calidad del servicio es variable.
La evolución del teléfono móvil ha permitido disminuir su tamaño y peso, lo que permite comunicarse desde casi cualquier lugar. Aunque su principal función es la transmisión de voz, como en el teléfono convencional, su rápido desarrollo ha incorporado otras funciones como son cámara fotográfica, agenda, acceso a Internet, reproducción de vídeo e incluso GPS y reproductor mp3.