2. Expectativas para un ambiente
de desarrollo de sw
Ambiente conjunto de métodos, lenguajes, librerías,
herramientas y servicios de bases de datos.
Las expectativas:
i. Los usuarios esperan ser desarrolladores.
ii. Miembros de equipos dentro de equipos esperan coordinar esfuerzos.
iii. Se espera sistemas portátiles.
iv. Las redes presentan sistemas c/s, los desarrolladores esperan crear
y entregar productos sw.
v. Las organizaciones esperan conservar la primera versión.
3. Usuarios como desarrolladores
Diferentes clases de Desarrolladores
Desarrolladores de sistemas (sw para otros
desarrolladores a nivel de so, comunicación de redes,
administración.
Desarrolladores de framework de aplicación de negocios
(sw para otros desarrolladores, para aplicaciones de
negocios)
Desarrollador de aplicación de negocios (para usuarios
finales, para mejorar dominios específicos de negocio)
Gente de negocio como desarrolladores (programas de
uso personal, que se comparte con colegas. Ej. lenguajes
encriptados)
4. Desarrolladores con diferentes niveles
1 Personas de negocios Aplicación que derivan de
como desarrollador componentes existentes
2 Desarrolladores de Nuevos componentes
aplicaciones de negocio Nuevas aplicaciones
Especialización en framework de
negocios
3 Desarrolladores de Nuevos framework
framework Nuevos componentes
Especialización en framework de
utilidad
4 Dpto. de ing. De sw Aplicaciones
Framework de utilidad, de interfase y
db
5 Sistemas de sw Framework de utilidad
provistos por Componentes de utilidad
vendedores Compiladores
Ambientes de ejecución
5. Coordinación de personas,
de procesos y recursos
Es esencial para la creación exitosa de productos
Es importante para la creación de artefactos intermedios
El manejo de la configuración es un método para
identificar el arreglo de artefactos y las versiones
Políticas de coordinación:
i. Seguridad
ii. Concurrencia
iii. Basadas en la propiedad
iv. La responsabilidad del equipo
v. Relación entre la coordinación y los objetos
6. Portabilidad e
Interoperatividad
Elección del Ambiente para el Desarrollo.
Lograr un cambio de ambiente:
Los Desarrolladores esperan que el ambiente
apoye el desarrollo de sistemas portátiles a
través de plataformas abiertas.
7. Portabilidad a través de
Plataforma
Es la habilidad de implementar
aplicaciones de sw en una clase de
maquina y ejecutarla en otra diferente.
Hay 2 Clases de Portabilidad:
Por Por Maquina
Recompilación Virtual
(Portabilidad Binaria)
8. Sistemas Abiertos Distribuidos
En Sist. Abiertos el sw ínteropera
porque es distribuido en forma de
componentes que tienen interfases bien
definidas. Ej:
Editor de Texto
Dan la Apariencia de
Hoja de Calculo haber sido
desarrollado como un
Programa Grafico
TODO
COMPONENTES
9. Sistemas Abiertos Distribuidos
La interoperatividad, se logra a través
de los servicios nombrados en la API
(aplicación de programa de interfase).
API
Objeto en Objeto en
PC1 PC2
Aplicación 1 Aplicación 2
10. Sistemas Abiertos Distribuidos
La combinación de sistemas
distribuidos y abiertos introduce una
oportunidad para la TOO:
Apropiada para Objetos que usan los servicios
de uno y otros objetos, y no consideran la
ubicación de los objetos y donde los protocolos
de redes son usados para la comunicación de
objetoa objeto
Solic. Servicios OBJECT Ofrece Servicio
Aplicaciones Aplicaciones
BROKER
Servicios
11. Arquitectura cliente servidor
En esta arquitectura interactúan múltiples procesos
usando los servicios de uno y del otro.
La similitud de los sistemas c/s y los objetos, hace
que los objetos sean una buena elección.
Presenta un significativo ahorro, al usar
computadores de bajo costo como clientes de
escritorio y compartir servicios de Servidores de Alta
Performance.
¿La TOO requiere el uso de la arquitectura
Cliente/Servidor? Una elección de objetos y c/s
creara una poderosa sinergia.
12. Reteniendo Inversión en la
Primera Tecnología
Nueva Aplicación con Aplicación Existente
TOO sin TOO
Sistemas Heredados
Causan un problema:
Han sido creados para un conjunto de supuestos, que no
fueron mantenido por más tiempo.
Fueron escritos sin el Beneficio de manejo de Base de
Datos independientes.
Pocos Sist. brindaron al usuario Interfaz Grafica
Retener a personas del sw heredado, solo para el
mantenimiento del Sist. Heredado.
(Esto puede generar ventajas, además del mantenimiento, el
conocimiento del negocio y la facilidad de entrenar)
13. Mantenimiento, como es y
coexistir
Enfoque Conservador: “lo que trabaja bien debe
continuar siendo usado como es”.
llamada mensajes
Wrapper Nuevo Software
Sist. Heredado
con TOO
resultado resultado
interoperatividad
• El Codigo Wrapper encapsula el sw heredado y
permite ínteroperar, el mantenimiento crece, porque
los cambios tienen que ser reflejados en el código
wrapper.
14. Mantener Temporalmente hasta
la Transición Completa
Si se intenta reemplazar el sistema
heredado con uno O.O.
Se puede usar un desarrollo incremental y una
estrategia de integración, reemplazando partes
del sistema a medida que pase el tiempo.
O bien, reemplazar el sist. heredado de una
vez, esto NO es práctico y es muy Riesgoso.
15. Mantener Temporalmente hasta
la Transición Completa
Andamio de sw: es un código usado temporalmente
para construir un puente a través de la brecha entre
las partes de un sistema.
Sist. Heredado Andamio de
Sist. Heredado
modificado Software
Parte del Sist. Heredado
BD no Independiente NUEVA BD puede quedar, entonces
(antigua) Independiente hay que reescribirlo para
(formato compartido) que interopere con el
Nuevo Software.