Introducción a la Ingeniería del Software

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Introducción a la Ingeniería del Software"

Transcripción

1 Introducción a la Ingeniería del Software Ingeniería de Sistemas de Información! Grado en Ingeniería en Tecnologías de Telecomunicación" GSyC"

2 2012 Departamento GSyC, URJC" Algunos derechos reservados. Este trabajo se distribuye bajo la licencia Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License" 2012 Armando Armando Fox & David Patterson" Licensed under Creative Commons Attribution- NonCommercial-ShareAlike 3.0 Unported License" 2"

3 Libro de texto" Beta edition (0.9.0)" Ebook ($10) en formatos:" Kindle" Nook" Apple ibook" Impreso: $20" 3"

4 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 4"

5 La Ingeniería de Software es distinta a la ingeniería de Hardware (Libro Engineering Long Lasting Software )"

6 Ingeniería de SW!= Ing de HW" Pregunta: Por qué tantos desastres debidos al SW y tan pocos HW?" Explosión del cohete Ariane 5" Sobredosis mortal de radiacción del Therac-25" Desintegración del Mars Climate Orbiter" Abandono del proyecto FBI Virtual Case" " Respuesta: " Naturaleza del sustrato tecnológico, más maleable en el caso del SW" Culturas de las comunidades de ingenieros HW / SW: mejora continua en el caso del SW => se acepta que es peor al principio" 6"

7 Producto independiente vs. Mejoras continuas" Coste de las actualizaciones" HW " Los diseños de HW tienen que estar terminados antes de que se pase a producción y distribución" Si ocurren errores: se devuelve el HW (pérdidas si hay devoluciones masivas)" SW 0" Usuarios esperan que el SW mejore con el paso del tiempo" Si ocurren errores: se espera a que se actualice" El HW queda obsoleto, el SW se actualiza" 7"

8 SW heredado vs. SW elegante" Código heredado (legacy code): SW antiguo que sigue satisfaciendo las necesidades de los usuarios pero que es difícil de actualizar y evolucionar debido a su diseño poco elegante o al uso de tecnología anticuada" 60% del coste de mantenimiento del SW: añadir nueva funcionalidad a código heredado" 17% del coste es para arreglar fallos" Código elegante: SW que sigue satisfaciendo los requisitos de los usuarios y que es fácil de actualizar y evolucionar" Código muerto: el código que deja de ser usado al cabo de poco tiempo" 8"

9 SW heredado/legado: es vital pero no se le presta atención" Los problemas que plantea no suelen ser estudiados en los cursos y libros de texto de Ingeniería de SW" Sin embargo es algo que reclaman los expertos de la industria" En este curso abordaremos más adelante cómo abordar los problemas del código heredado/legado" 9"

10 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 10"

11 Metodologías de desarrollo de SW: Cascada vs. Espiral vs. Ágil (Libro Engineering Long Lasting Software 1.3)"

12 Ciclo de vida en cascada" Conocido por precisar un diseño detallado por adelantado ( Big Design Up Front BDUF)" 1. Especificación y análisis de requisitos" 2. Diseño de la arquitectura" 3. Implementación e integración" 4. Verificación" 5. Operación y mantenimiento" Se termina una fase antes de empezar la siguiente" Justificación: cuanto antes se detecte un error más barato será eliminarlo" Para facilitar la incorporación de nuevos miembros a un equipo se hace hincapié en la generación de documentación en cada fase" 12"

13 Cuál ha sido el resultado?" Sólo funciona bien con SW que tiene especificaciones que no cambian: naves sector aeroespacial, " En el resto de SW los usuarios sugieren cambios en cuanto empiezan a usarlo" También los desarrolladores, al terminar de construirlo tienen ideas sobre cómo mejorarlo ya que han aprendido." 13"

14 Cuál ha sido la experiencia?" Prevé tirar una [implementación]; en cualquier caso lo acabarás haciendo. " - Fred Brooks, Jr. (recibió el ACM Turing Award en 1999 por sus contribuciones a la arquitectura de ordenadores, sistemas operativos e ing. SW)" (Foto de Carola Lauber of SD&M CC-BY-SA-3.0.) 14"

15 Ciclo de vida en espiral" Combina el diseño detallado por adelantado con prototipos! En lugar de documentar todos los requisitos al principio se van documentando incrementalmente en varias iteraciones del prototipo según se va desarrollando éste" 15"

16 Ciclo de vida en espiral" (Figure 1.1, Engineering Long Lasting Software por Armando Fox and David Patterson, Beta edition, 2012.) 16"

17 Análisis del ciclo de v. en espiral" Las iteraciones incluyen al cliente antes de que el producto esté acabado, lo que reduce malinterpretaciones de lo que quiere" Pero las iteraciones son largas, de 6 a 24 meses, lo que deja mucho tiempo para que los clientes cambien de idea y modifiquen los requisitos" Es lo que habíamos pedido, pero no lo que queremos! 17"

18 2001: Manifiesto Ágil" Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A través de este trabajo hemos aprendido a valorar: " Individuos e interacciones sobre procesos y herramientas" Software funcionando sobre documentación extensiva" Colaboración con el cliente sobre negociación contractual" Respuesta ante el cambio sobre seguir un plan" Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda. " 18"

19 Ciclo de vida ágil" Acepta el cambio como algo inevitable: mejora continua en lugar de fases" Los desarrolladores mejoran continuamente un prototipo funcional pero incompleto hasta que los clientes están contentos, con realimentación de los usuarios en cada iteración (más o menos cada 2 semanas) " Usa Test-Driven Development (TDD) para verificar ausencia errores, User Stories para validar requisitos de los usuarios, Velocity para medir progreso" 19"

20 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 20"

21 Garantía de calidad (assurance): Pruebas y Métodos formales (Engineering Long Lasting Software 1.4)"

22 Garantías de calidad" Verificación: Lo has construído correctamente?" Cumple las especificaciones?" Validación: Has construído lo que te habían pedido? " Es lo que quería el cliente? " Es la especificación correcta?" El HW se centra en " El SW se centra en " 2 opciones: Pruebas y Métodos formales" 22"

23 Garantías de calidad" Verificación: Lo has construído correctamente?" Cumple las especificaciones?" Validación: Has construído lo que te habían pedido? " Es lo que quería el cliente? " Es la especificación correcta?" El HW se centra en Verificación! El SW se centra en Validación! 2 opciones: Pruebas y Métodos formales" 23"

24 Pruebas (Testing)" Es inviable realizar pruebas exhaustivas" Divide y vencerás: pruebas distintas en fases de desarrollo distintas" Un nivel superior no repite pruebas de uno inferior" Pruebas de sistema o de aceptación: el programa integrado satisface la especificación Pruebas de integración: las interfaces entre subsistemas son consistentes, se comunican correctamente (varios módulos) Pruebas de módulo o funcionales: varias unidades funcionan bien en conjunto (varias clases, un módulo) Pruebas unitarias: método/función/clase hace lo esperado 24"

25 Pruebas (Testing)" Cobertura: % de caminos probados" Pruebas de regresión: asegurarnos de no se ha estropeado lo que funcionaba corriendo pruebas antiguas cuando se añaden modificaciones" Pruebas de integración continuas: pruebas de regresión inmediatas, no en fases posteriores" Test Driven Design (TDD): asociado a Ágil: escribir las pruebas antes de escribir el código a probar (tests drive coding)" 25"

26 Límites de las pruebas" Las pruebas de programas pueden usarse para mostrar la presencia de errores, pero no para mostrar su ausencia!! Edsger W. Dijkstra" (recibió el ACM Turing Award de 1972 por sus" contribuciones fundamentales al desarrollo" de lenguajes de programación)" (Foto: Hamilton Richards. CC-BY- SA-3.0.) 26"

27 Métodos formales" Se parte de una especificación formal y se prueba que el código satisface la especificación. Opciones:" 1. Un humano realiza el análisis formal del código" 2. Prueba de teoremas automatizada (authomatic theorem proving)" Programa que usa inferencia + axiomas lógicos para producir pruebas" 3. Model checking! Programa Verifica algunas propiedades buscando exhaustivamente todos los estados que podría alcanzar el sistema durante su ejecución" 27"

28 Métodos formales" Es costoso computacionalmente por lo que sólo se usa para:" Pocas líneas de código" Cuando es muy costoso reparar o muy difícil de realizar pruebas" Ejemplo: protocolos de comunicaciones, SW con requisitos críticos de confiabilidad (aeroespacial)" Los ejemplos más grandes: " kernel de un SO: 10K $500/LOC (Line Of Code) " SW NASA para space shuttle: K $80/LOC anuales" En este curso nos centraremos en SW que cambia rápidamente, fácil de reparar, fácil de realizar pruebas => no estudiaremos métodos formales" 28"

29 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 29"

30 Productividad: Concisión, Síntesis, Reutilización, y Herramientas (Libro Engineering Long Lasting Software 1.5)"

31 Productividad" Ley de Moore: los recursos mejoran 2x cada 1ʼ5 años, lo que implica" diseños HW son cada vez más complejos" procesadores más rápidos y memorias más grandes" diseños de SW se hacen cada vez mayores" Surge la necesidad de mejorar la productividad de HW y SW! 4 técnicas" 1. Simplicidad mediante concisión" 2. Síntesis" 3. Reutilización" 4. Automatización y herramientas" 31"

32 Simplicidad mediante concisión" 1. Sintaxis: legibilidad del código assert_greater_than_or_equal_to(a,7) vs. a.should be 7 2. Elevar el nivel de abstracción: " Lenguajes de programación de alto nivel vs ensamblador" Gestión automática de memoria (Java vs.c)" Lenguajes de scripting: reflexión/instrospección, metaprogramación" 32"

33 Síntesis" Ej: Metaprogramación en Ruby: method_missing, attr_writer, attr_reader, attr_accessor Ej: Síntesis de SW" BitBlt: primitiva gráfica para combinar dos mapas de bit mediante operaciones lógicas: ahorra programar SW par calcular pixel a pixel" Ej: Programación basada en ejemplos" Aún en fase de investigación" 33"

34 Reutilización" Reusar código existente vs. escribir código nuevo" Técnicas en orden histórico y cantidad de código que permiten reutilizar:" 1. Procedimientos y funciones" 2. Bibliotecas estándar de los lenguajes" 3. Programación Orientada a Objetos" 4. Patrones de diseño: reutiliza estrategias incluso si cambia la implementación" 34"

35 Automatización y herramientas" Se trata de automatizar tareas manuales tediosas para ahorrar tiempo y evitar fallos:" Las herramientas pueden ayudar (ej. scripts en general, make, apt-get, git, )" Problemas de las nuevas herramientas: hay que conocer su confiabilidad, no siempre tienen la mejor interfaz de usuario (aprendizaje), elegir la mejor de las existentes " Hay que aprender constantemente nuevas herramientas para trabajar menos y mejor" En este curso: Cucumber, RSpec, Pivotal Tracker, git, " 35"

36 Principio DRY" Don't Repeat Yourself (DRY)" Cuando haya que reparar algo no hay que ir a múltiples lugares" Cada pieza de conocimiento debe tener una única representación dentro del sistema que sea simple, con autoridad y no ambigua. " Andy Hunt and Dave Thomas, 1999" Hay que refactorizar el código para que sólo se hagan una misma función en un único lugar" Cut & Paste de código? No: funciones/procedimientos" Constantes" 36"

37 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 37"

38 Software as a Service (SaaS) (Libro Engineering Long Lasting Software 1.6)

39 Software as a Service: SaaS" SW tradicional: código binario que instalan y operan los clientes en sus dispositivos" SaaS ofrece SW y datos como un servicio a través de Internet mediante un cliente ligero (p.ej., navegador) que corre en el dispositivo del cliente" Tradicionalmente para búsqueda, redes sociales, vídeo" Ahora también ofimática: Microsoft Office 365, TurboTax Online, Google Docs" Visión de hace más de 40 años: General Electric con Multics y John McCarthy (creador de Lisp)" Entre medias: mainframes, minis, PCs, Internet" 39"

40 6 razones a favor de SaaS" 1. Elimina preocupaciones al instalar (requisitos HW capability, SO, )" 2. Elimina preocupaciones respecto a la pérdida de datos (en el servidor, no backups por parte del usuario)" 3. Facilita colaboración entre usuarios que usan unos mismos datos " 4. Si la cantidad de datos es grande o cambia frecuentemente se simplifica su gestión si están en un solo sitio" 5. 1 única copia del SW y un entorno controlado de HW => facilita tarea de desarrolladores: no hay problemas de compatibilidad" 6. 1 única copia => simplifica distribución de actualizaciones a los desarrolladores y usuarios tienen siempre actualizado el SW" Y en contra?" Quién controla el servicio? Proveedor, gobierno de proveedor " Disponibilidad dependiente de la red" " 40"

41 Relación entre SaaS, Agil, RoR" Las actualizaciones frecuentes de SaaS cuadran con Agile" Hay muchos frameworks para Agile/SaaS" Python Django, Ruby Rails, Ruby Sinatra, CLR ASP.NET, Java EJB, Java JSP, Java Sprint, PHP Zend" Nosotros usaremos Ruby on Rails" Ruby ya lo dominas: lenguaje de scripting OO, functional, garbage collection, tipado dinámico, reutilización via mix-ins, síntesis de SW mediante metaprogramación" Alguien usa Rails? Twitter!, " 41"

42 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 42"

43 Service Oriented Architecture (SOA) (Libro Engineering Long Lasting Software 1.7)

44 Service Oriented Architecture" SOA: Arquitectura SW en la que todos los componentes se diseñan como servicios" Las aplicaciones están compuestas de servicios interoperables" Es más fácil generar una nueva versión adaptada para un subconjunto de usuarios" Esta modularidad hace que sea más fácil recuperarse de fallos en el diseño reemplazando componentes " La alternativa a SOA: SW silo, código sin APIs internas bien definidas entre los módulos, impide reutilización de componentes" 44"

45 El CEO de Amazon " 1. Todos los equipos expondrán en adelantes sus datos y funcionalidad a través de interfaces de servicio. " 2. Los equipos deben comunicarse entre sí a través de estas interfaces." 3. No se permitirán otras formas de comunicación entre procesos: ni enlazar directamente, ni leer bases datos de otros equipos, ni memoria compartida, ni puertas traseras de ningún tipo. La única comunicación permitida es a través de llamadas a las interfaces a través de la red." 45"

46 El CEO de Amazon " 4. No importa qué [protocolo de API, CORBA, SOA, REST] tecnología uses. (CORBA, SOA, REST, ) " 5. Las interfaces de servicios, sin excepción, deben diseñarse de principio a fin para que sean externalizables. Es decir, el equipo debe planear y diseñar para que se pueda exponer la interfaz a desarrolladores de fuera de la compañía. No hay excepciones. " 6. El que no haga esto será despedido. " 7. Gracias, que pases un buen día " Amazon, Facebook siguen estos principios, Google no" 46"

47 Ejemplo: librería como silo" Los subsistemas internos pueden compartir datos directamente" Una única API para todos los subsistemas, que permanecen ocultos" (Figura 1.3 de llibro Engineering Long Lasting Software, Armando Fox and David Patterson, Beta edition, 2012.) 47"

48 Libreríacon SOA" Subsistemas independientes que podrían estar en lugares distintos" Se pueden generar nuevos servicios fácilmente ( Favorite Books )" (Figura 1.4 de llibro Engineering Long Lasting Software, Armando Fox and David Patterson, Beta edition, 2012.) 48"

49 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 49"

50 Cloud Computing (Libro Engineering Long Lasting Software 1.8, 1.9, 1.12)

51 Qué infraestructura para SaaS?" SaaS impone 3 requisitos a la infraestructura:" 1. Comunicación: para permitir que los usuarios interaccionen con el servicio" 2. Escalabilidad: " 1. según el día, la hora del día, varía el número de usuarios" 2. servicios exitosos atraen aluviones de usuarios en cortos espacios de tiempo" 3. Confiabilidad: el servicio y la red deben estar disponibles 24x7" 51"

52 Clusters" Clusters: HW estándar (PCs) conectados con switches Ethernet estándar" 1. PCs más escalables que los servidores especializados (Sun, IBM, )" 2. Mucho más baratos" 20X para servidores equivalentes" 3. Necesitan pocos operadores para mantener miles de servidores" Para ello todo el HW/SW ha de ser idéntico" Máquinas virtuales simplifican la operación (flexibilidad para arrancar/mover máquinas con estado)" 4. Redundancia masiva aporta confiabilidad" 52"

53 Computadores-edificio (warehouse scale computer)" La demanda de aplicaciones SaaS (Facebook, ) ha hecho que los clusters pasen de los miles de PCs a cientos de miles en un único CPD (Centro de proceso" Las economías de escala (1K -> 100K) han reducido costes entre 1/3 y 1/8" Un centro de datos tradicional utiliza 10% - 20% de la capacidad" Amazon, Google, Microsoft comenzaron a externalizar la capacidad sobrante" Y acabaron encontrando nuevo modelo de negocio" 53"

54 Utility Computing / Public Cloud Computing" Ofrece computación, almacenamiento y comunicación al precio de céntimos/hora" Ilusión de escalabilidad infinita para el usuario:" Tantos ordenadores como te puedas permitir" Proveedores: Amazon Web Services, Google App Engine, Microsoft Azure" Puede beneficiarse una compañía montando su Private Cloud?" No: la escalabilidad es lo que reduce costes!" 54"

55 2012 AWS: precios de instancias" Instance Per Hour Ratio to Small Compute Units Virtual Cores Compute Unit/ Core Memory (GB) Disk (GB) Address Standard Small $ bit Standard Large $ bit Standard Extra Large $ bit High-Memory Extra Large $ bit High-Memory Double Extra Large $ bit High-Memory Quadruple Extra Large $ bit High-CPU Medium $ bit High-CPU Extra Large $ bit Cluster Quadruple Extra Large $ bit Eight Extra Large $ bit 55"

56 Usos actuales" Competición de los 500 mayores supercomputadores" Puesto 72 de 500 a ~$1300 por hora" Disponible para cualquiera con una tarjeta de crédito" FarmVille, juego disponible en Facebook, alojado en AWS" Fue el mayor juego online: 5 Millones" Reducción de costes: no tienen ordenadores (en AWS): no compras, no admin, no CPD, " Escalabilidad: a los 4 days 1M, a los 2 meses 10M, a los 9 meses 75M" Piensa en el impacto para la innovación que puede tener este nuevo paradigma" Es SaaS/Cloud sólo marketing o está cambiando algo como lo cambiaron los PCs, Internet, los móviles?" 56"

57 Contenidos" La ingeniería de SW es diferente de la ingeniería de HW (Libro Engineering Long Lasting Software Secciones )" Procesos de desarrollo de SW: Cascada vs. Espiral vs. Ágil ( 1.3)" Garantía de calidad (Assurance) ( 1.4)" Productividad ( 1.5)" Software as a Service (SaaS) ( 1.6)" Service Oriented Architecture ( 1.7)" Cloud Computing ( )" Pair Programming ( 9.3)" 57"

58 Programación en pareja (pair programming) (Libro Engineering Long Lasting Software 9.3)!

59 Programación en pareja" Objetivo: mejorar la calidad del software, y reducir el tiempo de desarrollo poniendo a dos programadores a trabajar juntos" Programación en pareja < Programación Extrema < Agil" 59"

60 Programación en pareja" Se se ponen al lado con dos ordenadores" Para evitar distracciones: ni correo ni navegador web" 60"

61 Programación en pareja" Conductor (driver): va escribiendo el código, piensa en tácticas para realizar la tarea que tiene entre manos, y va explicando lo que hace al copiloto" Copiloto (observer): revisa cada línea de código escrita por el conductor según la va tecleando y le indica correcciones" El copiloto está pensando en estrategias para resolver futuros problemas, va haciendo sugerencias al conductor" Hablan continuamente entre ellos" Van alternando los papeles entre la pareja" 61"

62 Vale para algo la programación en pareja?" Parece que terminan antes cuando la tarea tiene baja complejidad" Cuando tiene mayor complejidad se obtiene un SW de mayor calidad" Además se obtiene código más legible" Implica más gasto que si se usan programadores individuales? " Pivotal Labs (San Francisco) dice que no" Bueno para ecualizar conocimientos en la pareja" Usos idiomáticos, trucos de herramientas, procesos de la compañía, nuevas tecnologías, " Algunos equipos rehacen las parejas => todos se emparejan con todos" 62"

63 Consejos para la pareja" NO te despistes: el copiloto no se pone a usar el teléfono mientras el conductor teclea" Emparéjate con gente de diferente experiencia para ecualizar" Cambia de papel el aprendizaje se produce en ambos sentidos, conductor copiloto" El copiloto aprende cómo explicar sus pensamientos al conductor" 63"

Organización de Equipos de desarrollo de SW!

Organización de Equipos de desarrollo de SW! Organización de Equipos de desarrollo de SW! Ingeniería de Sistemas de Información! Grado en Ingeniería en Tecnologías de Telecomunicación! GSyC! 1! 2012 Departamento GSyC, URJC! Algunos derechos reservados.

Más detalles

CENTRO DE RESGUARDO ARQUITECTURA AVANZADA PROF.: JUAN JOSÉ MUÑOZ BUSSI AUTOR: MARIANA FERRETTO

CENTRO DE RESGUARDO ARQUITECTURA AVANZADA PROF.: JUAN JOSÉ MUÑOZ BUSSI AUTOR: MARIANA FERRETTO CENTRO DE RESGUARDO ARQUITECTURA AVANZADA PROF.: JUAN JOSÉ MUÑOZ BUSSI AUTOR: MARIANA FERRETTO CENTRO DE RESGUARDO Centro de Cómputos de Resguardo Sitio para reubicarse luego de un desastre Sitio manejado

Más detalles

Historia de revisiones

Historia de revisiones Binary Rain Glosario Versión 1.1 Historia de revisiones Fecha Versión Descripción Autor 17/08/2012 1.0 Creación del documento Carolina Trias 18/08/2012 1.1 Revisado y corregido por SQA Mercedes Marzoa

Más detalles

III. INTRODUCCIÓN AL CLOUD COMPUTING

III. INTRODUCCIÓN AL CLOUD COMPUTING III. INTRODUCCIÓN AL CLOUD COMPUTING Definición (I) Qué es el cloud computing? Nuevo paradigma de computación distribuida Provee un servicio de acceso a recursos computacionales: servidores, almacenamiento,

Más detalles

Metodología AGIL para el desarrollo SaaS

Metodología AGIL para el desarrollo SaaS WICC 2012 577 Metodología AGIL para el desarrollo SaaS Susana Chavez1, Adriana Martín2, Nelson Rodríguez3, María Murazzo4, Adriana Valenzuela5 Departamento e Instituto de Informática - F.C.E.F. y N. -

Más detalles

Modelos de desarrollo de software. septiembre de 2007 1

Modelos de desarrollo de software. septiembre de 2007 1 Modelos de desarrollo de software septiembre de 2007 1 Referencias básicas Ingeniería de software. Un enfoque práctico. Pressman, R. Quinta edición. Mc. Graw Hill 2002 Ingeniería de software. Sommerville,

Más detalles

Arquitectura de Aplicaciones Web

Arquitectura de Aplicaciones Web Servicios y Aplicaciones Telemáticas gsyc-profes@gsyc.escet.urjc.es 5 de noviembre de 2008 c 2008 Grupo de Sistemas y Comunicaciones. Algunos derechos reservados. Este trabajo se distribuye bajo la licencia

Más detalles

CICLO DE VIDA DEL SOFTWARE

CICLO DE VIDA DEL SOFTWARE CICLO DE VIDA DEL SOFTWARE 1. Concepto de Ciclo de Vida 2. Procesos del Ciclo de Vida del Software 3. Modelo en cascada 4. Modelo incremental 5. Modelo en espiral 6. Prototipado 7. La reutilización en

Más detalles

Ciclo de vida del Software

Ciclo de vida del Software Tema 2: Ciclo de vida del Software Marcos López Sanz Índice Qué es el ciclo de vida del Software? La norma 12207-2008 Modelos de desarrollo Qué es el Ciclo de Vida del SW? Es una sucesión de etapas por

Más detalles

Tema 2. El Ciclo de Vida del Software (ISG1-ITIG)

Tema 2. El Ciclo de Vida del Software (ISG1-ITIG) Tema 2. El Ciclo de Vida del Software (ISG1-ITIG) Grupo de Ingeniería del Software Antonio José Sáenz Albanés (C.T.O) Reconocimiento No Comercial Compartir Igual - 3.0 - España 1 Objetivos del Tema Qué

Más detalles

http://www.cem.itesm.mx/extension/ms

http://www.cem.itesm.mx/extension/ms Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos

Más detalles

Tema 2. Ingeniería del Software I feliu.trias@urjc.es

Tema 2. Ingeniería del Software I feliu.trias@urjc.es Tema 2 Ciclo de vida del software Ingeniería del Software I feliu.trias@urjc.es Índice Qué es el ciclo de vida del Software? El Estándar 12207 Modelos de proceso Qué es el Ciclo de Vida del SW? Definición

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

Trabajo N 6: Virtualización de Servidor

Trabajo N 6: Virtualización de Servidor Trabajo N 6: Virtualización de Objetivos Objetivo General: Migrar ERP del host físico local de la empresa a un Virtual Private Server (VPS). Objetivos Específicos: Adquirir un VPS y configurarlo. Respaldar

Más detalles

Historia de revisiones

Historia de revisiones Binary-Rain Glosario Versión 1.2 Historia de revisiones Fecha Versión Descripción Autor 18/08/2012 1.0 Versión inicial Paul Green 18/08/2012 1.1 Revisión de calidad Camilo Servetti 25/08/2012 1.2 Se agregaron

Más detalles

INTRODUCCIÓN A LA COMPUTACION EN LA NUBE Y BIG DATA (1) Ing. Carlos Ormella Meyer

INTRODUCCIÓN A LA COMPUTACION EN LA NUBE Y BIG DATA (1) Ing. Carlos Ormella Meyer INTRODUCCIÓN A LA COMPUTACION EN LA NUBE Y BIG DATA (1) Ing. Carlos Ormella Meyer En los últimos años, el interés por la Computación en la Nube (Cloud Computing), tanto para uso personal como para negocios,

Más detalles

Framework para el desarrollo ágil de aplicaciones

Framework para el desarrollo ágil de aplicaciones Framework para el desarrollo ágil de aplicaciones 1 Índice INTRODUCCIÓN... 3 QUÉ ES UN FRAMEWORK?... 3 VENTAJAS DE UTILIZAR UN FRAMEWORK... 4 DESVENTAJAS DE UTILIZAR UN FRAMEWORK... 5 CARACTERÍSTICAS DE

Más detalles

PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR:

PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR: CLOUD COMPUTING PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR: 1. Introducción 1. Qué es el Cloud Computing? La computación en nube es un sistema informático basado en Internet y centros de

Más detalles

Indice 1. Introducción a la computación en nube (cloud computing)

Indice 1. Introducción a la computación en nube (cloud computing) Tema 9. Centros de datos: computación en nube y organización física Indice 1. Introducción a la computación en nube (cloud computing) 2. Virtualización de recursos: consolidación de servidores 3. Arquitectura

Más detalles

La Arquitectura de las Máquinas Virtuales.

La Arquitectura de las Máquinas Virtuales. La Arquitectura de las Máquinas Virtuales. La virtualización se ha convertido en una importante herramienta en el diseño de sistemas de computación, las máquinas virtuales (VMs) son usadas en varias subdiciplinas,

Más detalles

Centro de Resguardo por Mariana Ferretto. Índice. Página 1

Centro de Resguardo por Mariana Ferretto. Índice. Página 1 CENTRO DE RESGUARDO ARQUITECTURA AVANZADA PROF.: JUAN JOSÉ MUÑOZ BUSSI AUTOR: MARIANA FERRETTO Índice CENTRO DE RESGUARDO 2 Centro de Cómputos de Resguardo... 2 Tipos de Centro de Cómputos de Resguardo...

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes. Definiciones

Más detalles

Medellín, martes 27 de octubre del 2015

Medellín, martes 27 de octubre del 2015 Medellín, martes 27 de octubre del 2015 José Flavio Guerra Gerente de Innovación OasisCom Introducción Administre con eficiencia sus recursos Servicios En la nube? ERP? Nada? Contenido ERP Definición Características

Más detalles

Subir o no subir al Cloud, esa es la cuestión.

Subir o no subir al Cloud, esa es la cuestión. Subir o no subir al Cloud, esa es la cuestión. Conoce los conceptos clave y toma tú la decisión! Para empezar conoce el primer concepto qué es el Cloud o la Nube? Significa Computación en la Nube y no

Más detalles

Introducción a la plataforma.net

Introducción a la plataforma.net Introducción a la plataforma.net Autora: Mª del Pilar Pavón Rosano DNI: 52.923.715-W INTRODUCCIÓN Este artículo está dirigido a los profesores y profesoras del módulo Diseño y Realización de Servicios

Más detalles

TEMA 37: Arquitecturas Cliente / Servidor. Tipos de cliente. Tipos de Servidor. Clasificación del software.

TEMA 37: Arquitecturas Cliente / Servidor. Tipos de cliente. Tipos de Servidor. Clasificación del software. . TEMA 37: Arquitecturas Cliente / Servidor. Tipos de cliente. Tipos de Servidor. Clasificación del software. Índice 1 INTRODUCCIÓN 2 2 CARACTERÍSTICAS 2 2.1 Características del cliente...2 2.2 Características

Más detalles

Cloud Computing. Rodrigo Moreno Rosales DN-11

Cloud Computing. Rodrigo Moreno Rosales DN-11 Cloud Computing Rodrigo Moreno Rosales DN-11 Cloud Computing La computación en la nube,conocido también como servicios en la nube, informática en la nube, nube de cómputo o nube de conceptos, es un paradigma

Más detalles

CICLO DE VIDA DEL SOFTWARE. Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software

CICLO DE VIDA DEL SOFTWARE. Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software 3.010 CONCEPTO DE CICLO DE VIDA Una aproximación lógica a la adquisición, el suministro, el desarrollo, la explotación y el mantenimiento del software IEEE 1074 Un marco de referencia que contiene los

Más detalles

Curso de Android con Java

Curso de Android con Java Todos los Derechos Reservados Global Mentoring Experiencia y Conocimiento para tu Vida 1 Este es un tiempo único para el mundo de los celulares, en particular de los Smartphones. Este tipo de dispositivos

Más detalles

Modelos de Proceso Tradicionales

Modelos de Proceso Tradicionales Modelos de Proceso Tradicionales Capitulo 2,QJHQLHUtDGHO6RIWZDUH (VSHFLDOL]DFLyQHQ*HUHQFLDGH6LVWHPDVGH,QIRUPDFLyQ 8QLYHUVLGDG6DQWLDJRGH&DOL Profesor: MSc. MIGUEL ANGEL NIÑO ZAMBRANO Programación: Tiempo

Más detalles

Cristian Blanco www.cristianblanco.es

Cristian Blanco www.cristianblanco.es 3.1.- INTRODUCCIÓN Para realizar el desarrollo de cualquier proyecto de software es necesario llevar una sistemática de trabajo, que nos asegure el éxito del mismo. Lo que tenemos que evitar, en el desarrollo

Más detalles

Tema 1 Introducción a la Ingeniería de Software

Tema 1 Introducción a la Ingeniería de Software Tema 1 Introducción a la Ingeniería de Software Curso Ingeniería de Software UMCA Profesor Luis Gmo. Zúñiga Mendoza 1. Software En la actualidad todo país depende de complejos sistemas informáticos. Podemos

Más detalles

Servicios de infraestructura. Aplicaciones web

Servicios de infraestructura. Aplicaciones web 10 Julio 2013 Servicios de infraestructura Compílela o tráigala y nosotros la ejecutamos Windows Azure proporciona infraestructura a petición que se escala y se adapta a las necesidades cambiantes de cada

Más detalles

Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular.

Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular. El proceso software Un conjunto estructurado de actividades y resultados asociados que conducen a la creación de un producto de software Especificación: Definir la funcionalidad y las restricciones en

Más detalles

Software CRM On Premise ó CRM On Demand (SaaS)

Software CRM On Premise ó CRM On Demand (SaaS) Software CRM On Premise ó CRM On Demand (SaaS) 5 factores a considerar antes de tomar una decisión. Las alternativas de software disponibles en el mercado para apoyar una estrategia de CRM son muy amplias.

Más detalles

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Bienvenidos a la presentación: Introducción a conceptos básicos de programación. Bienvenidos a la presentación: Introducción a conceptos básicos de programación. 1 Los programas de computadora son una serie de instrucciones que le dicen a una computadora qué hacer exactamente. Los

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

CURSOS DE VERANO 2014

CURSOS DE VERANO 2014 CURSOS DE VERANO 2014 CLOUD COMPUTING: LA INFORMÁTICA COMO SERVICIO EN INTERNET LA PLATAFORMA GOOGLE CLOUD PLATFORM. GOOGLE APP ENGINE Pedro A. Castillo Valdivieso Universidad de Granada http://bit.ly/unia2014

Más detalles

Arquitectura de Software

Arquitectura de Software Arquitectura de Software (Estilos Arquitectónicos) Universidad de los Andes Demián Gutierrez Mayo 2011 1 Diseño Arquitectónico Diseño Arquitectónico Arquitectura del Software Estilos Arquitectónicos Frameworks

Más detalles

Integración HMI-PLC. una ventaja competitiva real.

Integración HMI-PLC. una ventaja competitiva real. La manufactura esbelta es una poderosa herramienta probada que aumenta la eficiencia en los procesos de producción. Conceptos y prácticas similares que eliminan "desperdicios" (equipo innecesario y los

Más detalles

Cloud Computing. Octubre 2011 / White paper

Cloud Computing. Octubre 2011 / White paper Cloud Computing Octubre 2011 / White paper Cloud Computing El modelo de Computación en la Nube está reemplazando el modelo tradicional de TI para numerosas organizaciones que no han podido seguir el ritmo

Más detalles

Modelos de Negocio sobre Java, Software Libre y Cloud Computing

Modelos de Negocio sobre Java, Software Libre y Cloud Computing Modelos de Negocio sobre Java, Software Libre y Cloud Computing Sergio Montoro Ten KnowGate Objetivos de la sesión 1 Porqué escribir un proyecto en Java? 2 Porqué escribir un proyecto en absoluto? 3 Qué

Más detalles

INFORME TÉCNICO ESTANDARIZACIÓN DE LOS SOFTWARES DE LA MARCA MICROSOFT. 3. Cargos : Gerente de Sistemas (e) Analista de Sistemas Gestor de Proyectos

INFORME TÉCNICO ESTANDARIZACIÓN DE LOS SOFTWARES DE LA MARCA MICROSOFT. 3. Cargos : Gerente de Sistemas (e) Analista de Sistemas Gestor de Proyectos INFORME TÉCNICO ESTANDARIZACIÓN DE LOS SOFTWARES DE LA MARCA MICROSOFT I-OS-39-2015 1. Nombre del Área : Oficina de Sistemas 2. Responsables de la Evaluación : Eduardo Vásquez Díaz Ronald Mallqui Meza

Más detalles

Preguntas y respuestas (rebatibles) sobre metodologías de desarrollo de software

Preguntas y respuestas (rebatibles) sobre metodologías de desarrollo de software Preguntas y respuestas (rebatibles) sobre metodologías de desarrollo de software Introducción Este documento recopila las preguntas, opiniones y respuestas que se produjeron en un pequeño curso sobre las

Más detalles

CLOUD AND SKY COMPUTING

CLOUD AND SKY COMPUTING Universidad Simón Bolívar Sistemas de Operación III (CI-4822) Septiembre Diciembre 2013 CLOUD AND SKY COMPUTING Carlos Gómez Pedro Romero TEMAS Cloud Computing Historia Concepto Características Arquitectura

Más detalles

Tema 13. Metodologías en el desarrollo de Sistemas de Software. Prof. Oscar Adolfo Vallejos

Tema 13. Metodologías en el desarrollo de Sistemas de Software. Prof. Oscar Adolfo Vallejos Tema 13 Metodologías en el desarrollo de Sistemas de Software Prof. Oscar Adolfo Vallejos Desarrollo de Sistemas de Software Objetivo Conceptos en el contexto más amplio de Software e Ingeniería de Software

Más detalles

MADS 1.2- Introducción a la asignatura. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ.

MADS 1.2- Introducción a la asignatura. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. MADS 1.2- Introducción a la asignatura Datos de la asignatura Grado en Ingeniería Informática (4º curso) Especialidad: Ingeniería del Software Ficha de la asignatura Departamento de Ciencia de la Computación

Más detalles

DPTO. DE CIENCIAS DE LA COMPUTACIÓN CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA

DPTO. DE CIENCIAS DE LA COMPUTACIÓN CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA DPTO. DE CIENCIAS DE LA COMPUTACIÓN CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA ANÁLISIS, DESARROLLO E IMPLANTACIÓN DE UN SISTEMA ORIENTADO A LA WEB PARA GESTIÓN ACADÉMICA. CASO PRÁCTICO: JOHN OSTEEN

Más detalles

PRINCIPIOS DE PRUEBAS. ENFOQUE ESTRATEGICO.

PRINCIPIOS DE PRUEBAS. ENFOQUE ESTRATEGICO. PRINCIPIOS DE PRUEBAS. ENFOQUE ESTRATEGICO. 0. Consideraciones iniciales. Las pruebas son un conjunto de actividades que se pueden planificar por adelantado y llevar a cabo sistemáticamente. Por esta razón,

Más detalles

Software Reutilizable. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1

Software Reutilizable. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reutilizable Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1 Objetivos Para explicar los beneficios del software reutilizable y algunos de sus problemas Para discutir

Más detalles

CENTRO DE DATOS Y POP

CENTRO DE DATOS Y POP Virtual y física. Pública y privada. Por horas o por meses. Nuestra plataforma unificada proporciona infraestructuras en la nube a nivel de Internet. Todo lo que quiera, desplegado bajo demanda y en tiempo

Más detalles

Técnicas Avanzadas de Testing Automático

Técnicas Avanzadas de Testing Automático Técnicas Avanzadas de Testing Automático Marcelo Frias ITBA - Buenos Aires, Argentina CONICET Preliminares: Calidad Validación y Verificación Especificaciones y V&V Análisis estático y dinámico Inspecciones

Más detalles

TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo II: Amazon EC2

TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo II: Amazon EC2 CIMSI Configuración, Implementación y Mantenimiento de Sistemas Informáticos TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo II: Amazon EC2 Daniel Cascado Caballero Rosa Yáñez Gómez Mª José Morón Fernández

Más detalles

Historia de revisiones

Historia de revisiones Binary-Rain Glosario Versión 1.4 Historia de revisiones Fecha Versión Descripción Autor 18/08/2012 1.0 Versión inicial Paul Green 18/08/2012 1.1 Revisión de calidad Camilo Servetti 25/08/2012 1.2 Se agregaron

Más detalles

Beneficios estratégicos para su organización. Beneficios

Beneficios estratégicos para su organización. Beneficios La solución ideal para controlar la totalidad de su infraestructura IT mediante un inventario automatizado, control remoto y Gestión de activos informáticos. Beneficios Características Inventario actualizado

Más detalles

Tema 3. 3.3 Tecnologías de Desarrollo

Tema 3. 3.3 Tecnologías de Desarrollo Tema 3 3.3 Tecnologías de Desarrollo HTML pronto pasa a ser insuficiente para todas las posibilidades de la Red No se puede interactuar con el servidor Aparecen los primeros scripts para propocionar dichar

Más detalles

CL_50466 Windows Azure Solutions with Microsoft Visual Studio 2010

CL_50466 Windows Azure Solutions with Microsoft Visual Studio 2010 Windows Azure Solutions with Microsoft Visual Studio 2010 www.ked.com.mx Av. Revolución No. 374 Col. San Pedro de los Pinos, C.P. 03800, México, D.F. Tel/Fax: 52785560 Introducción Este curso es una introducción

Más detalles

1.- DATOS DE LA ASIGNATURA. Nombre de la asignatura: Desarrollo de aplicaciones para. dispositivos móviles. Carrera:

1.- DATOS DE LA ASIGNATURA. Nombre de la asignatura: Desarrollo de aplicaciones para. dispositivos móviles. Carrera: 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: SATCA 1 Desarrollo de aplicaciones para dispositivos móviles Ingeniería en Sistemas Computacionales TIA-1305 0-4 4 2.-

Más detalles

De la Integración Continua a la Entrega Continua

De la Integración Continua a la Entrega Continua Febrero 2014 Eder Castro Lucas Arquitecto de soluciones en atsistemas De la Integración Entrega Continua Qué es la? La es una disciplina de desarrollo de software que hace uso de un conjunto de patrones

Más detalles

Computación en Red. Máster en Ingeniería de Telecomunicación. 2 º Curso. Curso Académico 2014/15

Computación en Red. Máster en Ingeniería de Telecomunicación. 2 º Curso. Curso Académico 2014/15 Computación en Red Máster en Ingeniería de Telecomunicación Curso Académico 2014/15 2 º Curso GUÍA DOCENTE Nombre de la asignatura: Computación en Red Código: 201816 Titulación en la que se imparte: Carácter:

Más detalles

COMPUTACIÓN EN LA NUBE YULIANA SAAVEDRA HECTOR JAIME USMA MONTAÑO CARLOS ANDRES FLOREZ VILLARRAGA PROFESORA LINA MARIA QUINTERO MARTÍNEZ

COMPUTACIÓN EN LA NUBE YULIANA SAAVEDRA HECTOR JAIME USMA MONTAÑO CARLOS ANDRES FLOREZ VILLARRAGA PROFESORA LINA MARIA QUINTERO MARTÍNEZ COMPUTACIÓN EN LA NUBE YULIANA SAAVEDRA HECTOR JAIME USMA MONTAÑO CARLOS ANDRES FLOREZ VILLARRAGA PROFESORA LINA MARIA QUINTERO MARTÍNEZ ESPACIO ACADÉMICO HERRAMIENTAS WEB 2.0 PARA EL DESARROLLO PROFESIONAL

Más detalles

Introducción. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art143.asp - Gráfica tomada del Artículo de José David Parra

Introducción. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art143.asp - Gráfica tomada del Artículo de José David Parra Si en otros tiempos el factor decisivo de la producción era la tierra y luego lo fue el capital... hoy día el factor decisivo es cada vez más el hombre mismo, es decir, su conocimiento... Juan Pablo II

Más detalles

Empresa Financiera Herramientas de SW Servicios

Empresa Financiera Herramientas de SW Servicios Empresa Financiera Herramientas de SW Servicios Resulta importante mencionar que ésta es una empresa cuya actividad principal está enfocada a satisfacer las necesidades financieras de los clientes, a través

Más detalles

Principales beneficios para una pyme del uso de la plataforma Microsoft Office 365

Principales beneficios para una pyme del uso de la plataforma Microsoft Office 365 Portal de la competitividad - Office 365. Escenario Necesito movilidad y colaboración: estar fuera de la oficina y tener acceso a la información Hoja de Producto Técnica (para Pymes). Todas las empresas

Más detalles

Contenidos. Sistemas operativos Tema 3: Estructura del sistema operativo. Componentes típicos de un SO. Gestión de procesos.

Contenidos. Sistemas operativos Tema 3: Estructura del sistema operativo. Componentes típicos de un SO. Gestión de procesos. Contenidos Sistemas operativos Tema 3: Estructura del sistema operativo Componentes típicos del SO Servicios del SO Llamadas al sistema Programas del sistema El núcleo o kernel Modelos de diseño del SO

Más detalles

Alcanzando la superioridad en la Nube: beneficios de los Servicios de Asesoramiento

Alcanzando la superioridad en la Nube: beneficios de los Servicios de Asesoramiento Alcanzando la superioridad en la Nube: beneficios de los Servicios de Asesoramiento Un e-book de Tangoe La nube nació de la necesidad de computación en movimiento. Ella brinda a los usuarios el acceso

Más detalles

Los 6 beneficios del Cloud para los profesionales de RRHH

Los 6 beneficios del Cloud para los profesionales de RRHH Los 6 beneficios del Cloud para los profesionales de RRHH Copyright 2013, Meta4 Spain, S.A. All rights reserved Copyright 2014, Meta4 Spain, S.A. All rights reserved Agenda Introducción al Cloud Beneficios

Más detalles

MARCANDO LA DIFERENCIA

MARCANDO LA DIFERENCIA MARCANDO LA DIFERENCIA INTEGRACIÓN RÁPIDA Y CONFIABLE entre sus sistemas Simplifique la integración y el mantenimiento de su lógica de negocio con nuestra arquitectura orientada a servicios. Ahorre dolores

Más detalles

WebRatio. Otro camino para el BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8

WebRatio. Otro camino para el BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 WebRatio Otro camino para el BPM Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 El BPM El BPM (Business Process Management) no es solo una tecnología, además a grandes rasgos es una disciplina

Más detalles

NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR

NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE IGNACIO BAYUGAR Ignacio.bayugar@mercadolibre.com, i id nachobayugar@gmail.com NUEVAS TENDENCIAS EN LA CALIDAD DEL SOFTWARE El desarrollo ágil El nuevo rol de

Más detalles

Antoni Rovira Responsable Industria de Proceso. Copyright 2007 Rockwell Automation, Inc. All rights reserved.

Antoni Rovira Responsable Industria de Proceso. Copyright 2007 Rockwell Automation, Inc. All rights reserved. Antoni Rovira Responsable Industria de Proceso Copyright 2007 Rockwell Automation, Inc. All rights reserved. La arquitectura integrada de Rockwell Automation ofrece una plataforma escalable y multidisciplina

Más detalles

TFM Comunicación, Redes y Gestión de Contenidos

TFM Comunicación, Redes y Gestión de Contenidos TFM Comunicación, Redes y Gestión de Contenidos Aplicación móvil hibrida para control de asistencia y servicio técnico a domicilio y gestión de partes de trabajo Autor: Patricia Paguay Lara Tutorizado

Más detalles

Temario III Testing in the Large

Temario III Testing in the Large Temario III Testing in the Large 1ra Parte Verificación y Validación de Software UNS 1 Contenidos Testing de Integración Testing de Sistema Testing de Regresión Verificación y Validación de Software UNS

Más detalles

Sistemas de Información para la Gestión

Sistemas de Información para la Gestión Sistemas de Información para la Gestión UNIDAD 2: RECURSOS DE TI Bases de Datos UNIDAD 2: RECURSOS DE TECNOLOGÍA DE INFORMACIÓN Información 1. La Información: Propiedades de la Información. Sistemas de

Más detalles

IaaS en los estudios de informática

IaaS en los estudios de informática IaaS en los estudios de informática Proyecto de Innovación. Implantación y puesta a punto de la infraestructura de un cloud computing privado para el despliegue de servicios en la nube IES Gonzalo Nazareno

Más detalles

Virtualización del puesto de trabajo como servicio de movilidad en las nuevas infraestructuras de red

Virtualización del puesto de trabajo como servicio de movilidad en las nuevas infraestructuras de red Virtualización del puesto de trabajo como servicio de movilidad en las nuevas infraestructuras de red Presentación basada en el foro de la virtualizacion del puesto de trabajo www.ibm.zitralia.com Zaragoza

Más detalles

pymegnu v2.0 PRESENTACIÓN DE PRODUCTOS

pymegnu v2.0 PRESENTACIÓN DE PRODUCTOS PRESENTACIÓN DE PRODUCTOS pymegnu v2.0 1 INTRODUCCIÓN Nuestros sistemas 100% web le permitirán poder obtener todas las ventajas competitivas que ofrece Internet, como la disponibilidad de tener sus sistemas

Más detalles

Figura 1. Fuente: elaborada en el MSLab

Figura 1. Fuente: elaborada en el MSLab PLATAFORMA TECNOLÓGICA DEL LABORATORIO DE MODELACIÓN Y SIMULACIÓN Centro de Estudios Empresariales para la Perdurabilidad CEEP Facultad de Administración Universidad Colegio Mayor de Nuestra Señora del

Más detalles

Novedades de Microsoft Dynamics 2011

Novedades de Microsoft Dynamics 2011 Novedades de Microsoft Dynamics 2011 Microsoft Dynamics CRM 2011 ofrece características nuevas y mejoradas que le ayudarán a aumentar la eficacia y la productividad de su organización. Interfaz de Microsoft

Más detalles

toda la potencia de un Dedicado con la flexibilidad del Cloud

toda la potencia de un Dedicado con la flexibilidad del Cloud Cloud Dedicado: toda la potencia de un Dedicado con la flexibilidad del Cloud Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com Qué es un Cloud Privado Virtual? El término

Más detalles

Alumno: Jorge Sordo Balbín Profesor: Luis Joyanes Aguilar Nº Expediente: 126013 Correo Electrónico: jorge_sordo@hotmail.com

Alumno: Jorge Sordo Balbín Profesor: Luis Joyanes Aguilar Nº Expediente: 126013 Correo Electrónico: jorge_sordo@hotmail.com UNIVERSIDAD PONTIFICIA DE SALAMANCA CAMPUS MADRID INGENIERÍA DE ORGANIZACIÓN INDUSTRIAL TRABAJO ACADÉMICO I Modelos de despliegue y Modelos de servicio Noviembre 2012 Alumno: Jorge Sordo Balbín Profesor:

Más detalles

Las aplicaciones en la era del cliente. Miguel Rial HP Software Iberia

Las aplicaciones en la era del cliente. Miguel Rial HP Software Iberia Las aplicaciones en la era del cliente Miguel Rial HP Software Iberia Copyright Copyright 2013 2012 Hewlett-Packard Development Development Company, Company, L.P. The L.P. information The information contained

Más detalles

LA COLABORACIÓN, UNA REALIDAD GRACIAS A LA ARQUITECTURA TECNOLÓGICA HP EGOVERNMENT FRAMEWORK

LA COLABORACIÓN, UNA REALIDAD GRACIAS A LA ARQUITECTURA TECNOLÓGICA HP EGOVERNMENT FRAMEWORK 1 LA COLABORACIÓN, UNA REALIDAD GRACIAS A LA ARQUITECTURA TECNOLÓGICA HP EGOVERNMENT FRAMEWORK Miguel Angel Abellán Juliá Gerente de Soluciones para Administraciones Públicas. Hewlett-Packard Española,

Más detalles

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes. SISTEMAS DISTRIBUIDOS DE REDES 2.- MODELOS ORIENTADOS A OBJETOS DISTRIBUIDOS 2.1. Tecnologías de sistemas distribuidos Para la implementación de sistemas distribuidos se requiere de tener bien identificados

Más detalles

Cloud Computing. Huibert Aalbers Senior Certified Executive IT Architect

Cloud Computing. Huibert Aalbers Senior Certified Executive IT Architect Cloud Computing Huibert Aalbers Senior Certified Executive IT Architect Cloud Computing Orígenes y Visión Soluciones actuales Grid interno Soluciones de infraestructura App engines Utility Computing Este

Más detalles

Redes sociales: todos para uno o todos para todos?

Redes sociales: todos para uno o todos para todos? Redes sociales: todos para uno o todos para todos? Arquitecturas centralizadas o federadas jgb@gsyc.es http://identi.ca/jgbarah http://twitter.com/jgbarah GSyC/LibreSoft, Universidad Rey Juan Carlos Colmux

Más detalles

Plan de estudios ISTQB: Nivel Fundamentos

Plan de estudios ISTQB: Nivel Fundamentos Plan de estudios ISTQB: Nivel Fundamentos Temario 1. INTRODUCCIÓN 2. FUNDAMENTOS DE PRUEBAS 3. PRUEBAS A TRAVÉS DEL CICLO DE VIDA DEL 4. TÉCNICAS ESTÁTICAS 5. TÉCNICAS DE DISEÑO DE PRUEBAS 6. GESTIÓN DE

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

Virtualización. Betzabeth González Jhon Villamizar

Virtualización. Betzabeth González Jhon Villamizar Virtualización Betzabeth González Jhon Villamizar PUNTOS A TRATAR Virtualización Hipervisor Tipos de Hipervisor La Virtualización de plataforma Tipos de Virtualización de plataforma Tipos de Virtualización

Más detalles

Herramientas Libres para Desarrollo de Aplicaciones en la Industria del Software. Por Gustavo González

Herramientas Libres para Desarrollo de Aplicaciones en la Industria del Software. Por Gustavo González Herramientas Libres para Desarrollo de Aplicaciones en la Industria del Software Por Gustavo González Contenido Introducción Tipos de Herramientas de Desarrollo Diseño y Modelamiento de Software Ambientes

Más detalles

CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS. USB Ing. De Software. Prof. I. C. Martínez

CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS. USB Ing. De Software. Prof. I. C. Martínez CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS USB Ing. De Software. Prof. I. C. Martínez Ing. De Software Ingeniería de Software La Ingeniería de Software es la ciencia

Más detalles

DESARROLLO DE UNA NUBE DE ALMACENAMIENTO INTELIGENTE CON IBM SMARTCLOUD STORAGE ACCESS

DESARROLLO DE UNA NUBE DE ALMACENAMIENTO INTELIGENTE CON IBM SMARTCLOUD STORAGE ACCESS INFORME DE SOLUCIÓN DESARROLLO DE UNA NUBE DE ALMACENAMIENTO INTELIGENTE CON IBM SMARTCLOUD STORAGE ACCESS ENERO DE 2013 Muchas organizaciones descubren que sus grandes implementaciones de almacenamiento

Más detalles

INTRODUCCIO N AL SOFTWARE TESTING. Luis González Varela. Validación y pruebas. 2012.

INTRODUCCIO N AL SOFTWARE TESTING. Luis González Varela. Validación y pruebas. 2012. INTRODUCCIO N AL SOFTWARE TESTING Luis González Varela. Validación y pruebas. 2012. Tabla de contenido. Introducción.... 2 Un poco de historia.... 3 Evolución del Software Testing... 5 Definiendo el Software

Más detalles

Procesos de Diseño. Andrés Djordjalian Seminario de Sistemas Embebidos Facultad de Ingeniería de la U.B.A.

Procesos de Diseño. Andrés Djordjalian <andres@indicart.com.ar> Seminario de Sistemas Embebidos Facultad de Ingeniería de la U.B.A. Procesos de Diseño Andrés Djordjalian Seminario de Sistemas Embebidos Facultad de Ingeniería de la U.B.A. 02:47 1de 28 Éxito Técnico vs. Éxito Económico Como desarrolladores y

Más detalles

GUÍA PARA PRESENTACIÓN DE PROYECTO DE INVESTIGACIÓN (SEMINARIO DE INVESTIGACIÓN) CLOUD COMPUTING

GUÍA PARA PRESENTACIÓN DE PROYECTO DE INVESTIGACIÓN (SEMINARIO DE INVESTIGACIÓN) CLOUD COMPUTING (SEMINARIO DE ) CLOUD COMPUTING EDWIN JAIR GOMEZ ESPINEL GINA PAOLA MUÑOZ MARTINEZ JULIETH MARCELA SANCHEZ CARDONA EDISON ANDRES SANCHEZ GARCIA ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES FACULTAD DE INGENIERIA

Más detalles

La Universidad Internaciones a través de su programa CEI Presenta Diplomado en Seguridad Informática. Por Mayalin Contreras y Carlos Santizo

La Universidad Internaciones a través de su programa CEI Presenta Diplomado en Seguridad Informática. Por Mayalin Contreras y Carlos Santizo La Universidad Internaciones a través de su programa CEI Presenta Diplomado en Seguridad Informática Por Mayalin Contreras y Carlos Santizo Seguridad Informática Programa de hoy: Síntesis de la sesión

Más detalles

Mejor Framework PythonOO + SOLID. Vivir sin Frameworks

Mejor Framework PythonOO + SOLID. Vivir sin Frameworks Mejor Framework PythonOO + SOLID Vivir sin Frameworks Presentaciones Alea Soluciones Bifer Team @eferro @pasku1 @apa42 @nestorsalceda Un placer... Qué es un framework? Django Rails Grails Spring AppEngine

Más detalles

Programación orientada a objetos TEMA 1 INTRODUCCIÓN AL PARADIGMA ORIENTADO A OBJETOS POO

Programación orientada a objetos TEMA 1 INTRODUCCIÓN AL PARADIGMA ORIENTADO A OBJETOS POO Programación orientada a objetos TEMA 1 INTRODUCCIÓN AL PARADIGMA ORIENTADO A OBJETOS Cristina Cachero Pedro J. Ponce de León (1 Sesión) Versión 0.7 POO Indice El progreso de la abstracción Definición

Más detalles