aspectos de economia en la computacion dr. pedro mejia alvarez. cinvestav-ipn, mexico
Post on 23-Jan-2016
221 Views
Preview:
TRANSCRIPT
Aspectos de Economia en la Computacion
Dr. Pedro Mejia Alvarez.
CINVESTAV-IPN, Mexico.
1. Introduccion
• Como se ve afectada la economia por la Industria de la Computacion ?
• Que tipos de Industrias de Software hay cual es su influencia en la Economia de algun pais.
• Economia del proceso de Desarrollo de Software.
• Casos Tipicos: Comercio Electronico, Software de Telecomunicaciones, Software de Entretenimiento.
• Grandes Industrias de Desarrollo de Software: Microsoft, IBM, Netscape, Sun, Akamai, etc.
1.1. Software: un bien unico
• El software, asi como la informacion no es un bien material. Este hecho lo hace dificil de cuantificar.
• Requiere de un medio de almacenamiento y acceso.• Requiere de continuo mantenimiento.• El software requiere siempre de un medio de ejecucion. Una
computadora o un dispositivo que incluya un microprocesador.• Requiere de un gran costo de desarrollo y mantenimiento, pero de un
costo pequeño de almacenamiento y reproduccion.• Se mide y se paga por el, por los servicios que provee y por como se ve,
y no por su peso o tamaño.• Puede ser utilizado para sustituir algunos servicios que anteriormente
realizaban personas.• No solo se ejecuta sobre PC’s, estaciones de trabajo o super-
computadoras.
1.2. Ejemplos de Sistemas de Computo
Sistema de oficina y equipo mobiles
Sistemas en Edificios Fabricacion y control de procesos
Maquinas contestadoras
Copiadoras
Faxes
Laptops y notebooks
Telefonos moviles
PDAs, Organizadores personales
Still and video cameras
Sistemas de Telefonia
Grabacion de tiempo
Impresoras
Hornos de Microondas
Aire acondicionado
Respaldo y generadores de luz
Administracion de edificios
Television por cable
Controladores de Fuego
Calefaccion y Ventilacion
Elevadores, Escaleras
Iluminacion
Seguridad
Camaras de Seguridad
Extintores
Fabricas automatizadas
Plantas embotelladoras
Sist. Control de energia
Plantas de manufactura
Estaciones nucleares
Refinerias y almacenes relacionados
Sistemas de Energia
Estaciones de Poder
Robots
Sistemas de switching
Sist. Agua y alcantarillado
1.2. Ejemplos de Sistemas de Computo
Transporte Comunicaciones Otros equipos
Aereoplanos
Trenes
Autobuses
Barcos
Muelles
Automobiles
Cntr.de Trafico aereo
Sist. de senalizacion
Radares
Luces de Trafico
Maquinas de boletos
Camaras de velocidad
Detects.de velocidad
Telefonia
Cable
Switches de telefonos
Satelites
Posicionamiento Global
Maquinas contestadoras
Sist. Tarjetas de credito
Equipos de Imagenes Medicas
Ctrl. De calefaccion domestica
VCRs
1.3. Software: una Industria unica
• Los productos de software nacen de alguna necesidad de la sociedad.
• La Industria del Software es distinta a otras industrias. Su cadena de produccion es unica. La cadena de produccion de software esta poco entendida, y carece de estandares.
• El software se compone de diversos modulos desarrollados por distintas empresas.
• Es facil crear una Industria de Software, pero es dificil mantenerla en operación.
• Monopolios del Software: Por que fueron creados, y por que siguen operando ?.
• Startups: Fabricas de Software de Alta Tecnologia.
1.4. Clasificacion de Industrias de Software
De desarrollo de Productos de Software: Se venden en cualquier parte– Herramientas: bases de datos, compiladores, web-browsers, hojas de calculo
y procesamiento de texto.– Software de Entretenimiento.
De desarrollo de aplicaciones a la medida: se realizan bajo contrato.– Administrativas, bancarias, comerciales y legales.– Telecomunicaciones: telefonia, satelites, aeropuertos.– Medicas.– Criticas: avionica, trenes, industrias nucleares.– Embebidas
De desarrollo de productos de acceso masivo: se accesan en el web.– Comercio electronico, internet y busqueda de informacion. – Software de Libre distribucion
2. Tecnologias de la Informacion
• El software consiste de instrucción que ejecutan sobre una computadora (hardware) para realizar algun servicio a un usuario.
• La tecnologia de la Informacion se creo con el fin de adquirir, manipular, y obobtener informacion.
• La informacion puede ser: texto, imágenes, audio, etc).
• IT: procesamiento, almacenamiento, y comunicación.
• El tener acceso a las tecnologias de la informacion permite mejorar la economia.
2.1. Rol de la Ingenieria de Software en IT
Arquitecturas y metodos de diseño
GrandesComponentes de IT
Ingenieria de software Sistemas Grandes=
Redes
OS, DBMS,Middleware
AI, Agentes
Aplicaciones de suaurio
Interfaces de Usuarios Desarrolladores Usuarios Operacionales
Procesos deEspecificacionDesarrollo,Evaluaciony Evoluciondel Sistema
Modeacion y analisis
IHM & Colaboracion
Aplicaciones de usuario
AdministracionDel sistema
Conectividad &Acceso a la informacion
Tecnologiasde Calidadde Servicio
Prueba y verificacionEvaluacion del uso
++
3. Aspectos y perspectivas que afectan al software comercial
Perspectivas:
• Usuarios, desarrolladores, administradores, abogados, dueños, economistas.
Aspectos:
• Tecnologia: caracteristicas tecnicas del software y su ambiente de ejecucion.
• Procesos: pasos requeridos para el desarrollo, entrega, y uso del software.
• Valor: valor agregado del software.
3.1. Aspectos y perspectivas que afectan al software comercial
Tecnologia Processos Valor
Necesidades (usuarios)
Diseño(Ingenieros de software)
Flexibilidad
Representacion, languajes, execucion, portabilidad, modularidad
Seguridad y privacidad
Arquitectura, composicion vs. decomposicion, estandardizacion
Funcionalidad Impacto
Requerimientos, funcionalidad, calidad, desempeño P
arti
cip
ante
s
3.2. Aspectos y perspectivas que afectan al software comercial
Tecnologia Procesos Valor
Roles (administradores)
Aspectos legales y de normas (abogados y reguladores)
Organizacion Industrial (propietarios)
Infraestructura
Propiedad Intelectual (papentes, copyright, convenios)
Componentes. Portabilidad
Desarrollo
Provisionamiento
Operacion
Licensiacion,
Patentes de procesos,
“antitrust”
Licenciar vs susbribir,
Outsourcing
Usos
Propiedad,
Marcas registradas (trademark)
Entrega de software, desarrollo tipo outsourcing, integracion de sistema, provicion de servicio
Fac
ilita
dor
es
3.3. Aspectos y perspectivas que afectan al software comercial
Tecnologia Procesos Valor
Economia (economistas)
Costos
Relaciones de negocios, terminos y condiciones
Oferta,
Demanda,
precios
Ob
serv
ador
es
4. El Software desde la Perspectiva del Usuario
• A mi como usuario que me podria proporcionar el software ?.
• El proposito principal del software es servir a las necesidades del usuario final, asi sea un individuo, grupos, organizaciones, al comercio en general, o a la sociedad en general.
• Para el usuario, el impacto del uso de la tecnologia de software, consiste en la necesidad de adquirir, operar y utilizar el software para una aplicacion especifica que satisfaga sus demandas y necesidades.
• Ventajas del uso del software: Ahorra trabajo el software, automatiza procesos, agiliza el trabajo, distribuye el trabajo,
• Desventajas del uso del software: sustituye personal, requiere altos conocimientos tecnicos para desarrollarlo y (tal vez para) operarlo, dificultad en la compra del software (no se sabe si es barato o caro).
4. El Software desde la Perspectiva del Usuario
• Productividad e Impacto.
• Efectos de Red.
• Usabilidad.
• Calidad y Desempeno
• Seguridad y Privacia
• Composabilidad.
4.1. Productividad e Impacto
• Una forma de evaluar una aplicación de software en una Industria es mediante el impacto que ha tenido en la organización (o usuarios individuales), en su desempeño o su valor agregado.
• El software puede mejorar la productividad de la organización.
• El software puede permitir una mayor colaboracion entre los miembros de la organizacion.
• El software puede lograr llevar una mejor administracion de los conocimientos de la empresa.
• Software puede lograr cosas dentro de la organización que por ningun otro medio se podrian lograr.
4.2. Efectos de Red
El contar con una red de computo puede ayudarme a:• incrementar el numero de usuarios que colaboran entre si.• acceso de varios usuarios a una sola fuente de informacion• Acceso de un usuario a varias fuentes de informacion.
Efecto de red directa:• La aplicación de software soporta la interaccion directa entre distintos
usuarios, y su valor se incrementa cuando mas usuario la utilizan. El primer usuario no introduce ningun valor:
• Ejemplo: aplicación de video conferencias. Efectos secundarios de la red:• Contenido de la informacion en la red, o de los servicios que son
posibles accesar, asistencia tecnica necesaria.
4.3. Uso del Software
El uso del software tiene mas valor entre mas usuarios existan
El uso tiene dos factores:
• Numero de usuarios
• Cantidad de tiempo que cada usuario gasta en dicha aplicación de software.
• Tiempo que lleva en aprender a utilizar la aplicación de software.
4.4. Calidad y Desempeño.
La calidad del software podria medirse de acuerdo a:
• La funcionalidad del software.
• La severidad de sus defectos.
• El grado de dificultad para utilizar el software.
El desempeño podria medirse de acuerdo a:
• Volumen de trabajo realizado (p.ej numero de paginas de web servidas
por unidad de tiempo).
• Rapidez de acceso a la informacion yo a los servicios de la aplicación.
• Grado de interactividad.
• Grado de mantenimiento y mejoras.
4.5. Seguridad y Privacia
• La seguridad consiste en evitar ataques externos que revelen secretos
organizacionales o produzcan daños al sistema, al software o a la
informacion.
• La privacia consiste en eliminar la posible injerencia de usuarios externos en las actividades de la empresa o en las actividades de algun individuo en particular.
• Existen politicas para crear uan seguridad y privacia en las Industrias.
• Estas politicas definen que acciones son posibles y cuales no en el acceso a la informacion o el sistema de una Industria.
• La seguridad implica tambien, el acceso ordenado a los datos que derive en una consistencia de los mismos.
4.6. Flexibilidad y Extensibilidad
• En aplicaciones de software de negocios es importante la flexibilidad debido a que las aplicaciones cambian constantemente.
• Existen cambios frecuentes de usuarios del software, re-organizacion del negocio o de la empresa, o cambios a productos existentes o a nuevos productos o servicios.
• Las organizaciones que son usuarios finales del software, por lo general hacen grandes inversiones cuando adoptan nuevas tecnologias de software o de informacion. Especialmente en la re-organización del negocio o de los procesos de la empresa.
4.7. Composabilidad.
• Una solucion de software cerrada ofrece mas valor si se combina con otras soluciones de software que proporcionen mayor funcionalidad.
• Ejemplo: Aplicaciones de MS-Office, como Word, Excel, en donde es posible compartir informacion entre estas aplicaciones.
• Se obtiene un mayor valor si se consigue conjuntar diversas aplicaciones de negocios para realizar aplicaciones conjuntas o acceso compartido.
5. Perspectiva del Ingeniero de Software.
La funcion principal de un Ingeniero de Software es el desarrollo de software de aplicaciones(que incluye diseno, implementacion, mantenimiento, pruebas, mantenimiento y mejoras).
• Tecnologia avanzada• Ejecucion de programas• Proceso de Desarrollo de Software• Construccion de Software.• Impacto de la red.• Estandarizacion.
5.1. Teconologia Avanzada.
• El procesamiento, almacenamiento y las comunicaciones se encuentran en una etapa de muy rapido crecimiento en terminos de costo por unidad y desempeno.
• El desempeño de las computadoras ha crecido al doble cada 1.5 o 2 años, y mas rapido para los dispositivos de almacenamiento y comunicaciones.
• Los proveedores de tecnologia hacen inversiones de nuevas tecnologias de acuerdo a las ganacias que se preveen con nuevos productos o servicios, nuevos mercados, tiempos de desarrollo y riesgos esperados.
• Los avances en tecnologia tienen un impacto considerable en la industria del software.
5.2. Ejecucion de Programas.
• Un programa de software conlleva las acciones requeridas para procesar,almacenar, y comunicar informacion. • El software solo no es util, debe ser ejecutado por lo cual
se requiere de un procesador . El procesador contiene un numero finito de instrucciones, y un programa consiste de una secuencia ordenada de estas instrucciones.
• Existe distintos procesadores con distintos conjuntos de instrucciones.
5.2. Ejecucion de Programas.
• En la ejecucion de programas se debe de tener en cuenta:
• Plataforma y ambiente.• Portabilidad.• Compilacion e interpretacion.• Confiabilidad.• Sistema Operativo.
5.3. Proceso de Desarrollo de Software.
• El interes primario de un ingeniero de software es el desarrollo.
• Los programas han alcanzado actualmente un gran tamaño y complejidad que requiere de un especial cuidado para su desarrollo.
• Las limitaciones fisicas (capacidad de procesamiento o de memoria) no son una limitate en la actualidad.
• La mayor limitante consiste en el manejo de la complejidad, el proceso de desarrollo y los recursos financieros disponibles.
5.3. Proceso de Desarrollo de Software.
En el proceso de desarrollo de software es necesario considerar:
• Modelo de Desarrollo: cascada, incremental, espiral, prototipos, etc.
• Metodo de Desarrollo: Funcional, OO, Formal, Reuso, etc.• Herramientas de Desarrollo.• Arquitectura: descomposicion, funcionalidad, interaccion.• Interfaces y API's.• Composabilidad.• Ambiente de Aplicacion: Uniprocesador, Distribuido, Web
5.4. Construccion de Software.
Por que es tan dificil construir software ?Por que no existen estandares o normas en el desarrollo desoftware ?
• Similaridades entre el software y otros bienes de consumo.• Factores que distinguen el software y a su proceso de
desarrollo de otros bienes (p.ej. automobiles).• Existen Fabricas de Software ?• Fabrica de Software vs Fabrica de Automobiles
5.5. Estandarizacion.
Un estandard industrial abierto es un conjunto deespecificaciones bien documentadas de un proceso, productoo servicio, sin restricciones de propiedad intelectual
Estandares conocidos:Productos: Compiladores, SO's (UNIX, DOS, POSIX), MPEG (video), lenguajes (Ansi C, Cobol, Fortran, Pascal,JAVA), Internet (FTP, TELNET, HTML, XML, VDRL)Procesos o Modelos: OO, UML, GUI's, CASE.Redes: TCP/IP, OSI.Calidad: ISO, SPICE, CMM,
5.6. Impacto de las Redes.
Impacto de la Internet (o de las redes de computadoras) en elSoftware:
• Conectividad, • Interactividad, • Portabilidad (ambientes heterogeneos), • Interoperabilidad (incremento en capacidad y en
memoria),• Transportabilidad (codigo mobil),
6. Perspectiva del Administrador del Sistema.
Administracion del Software
• Son las actividades que permiten asegurar que el software se lleva a cabo a tiempo y de acuerdo a la planificación así como de acuerdo a los requerimientos del software.
• Ademas, la administracion se encarga de la planeacion, organizacion de la empresa de software, de las finanzas, y de la venta del producto o sistema y del soporte tecnico.
• Actividades: Desarrollo, provisionamiento, operacion y uso.
• Costos totales del sistema.
6.1. Perspectiva del Administrador del Sistema.
Administracion del Software
• La Ingeniería de software es una actividad económica importante, que esta sujeta a restricciones económicas y a restricciones no técnicas.
• Los proyectos bien administrados a veces fallan. Los proyectos mal administrados siempre fallan.
• Un buen producto no siempre se vende, pero un mal producto nunca se vende.
6.2. Fases de la cadena de trabajo del administrador del software
Planeacion Construccion Procuracion Mantenimiento Evolucion
Requerimientos
funcionales y de
desempeño
Construccion del Sistema
Soporte de Herramientas de Software
Reparacion de defectos, mejora del desempeño
Evaluacion de requerimientos,
y mejoras
Des
arol
lo
6.3. Fases de la cadena de trabajo del administrador del software
Planeacion Construccion Procuracion Mantenimiento Evolucion
Diseño organizacional,
requerimientos
de desempeño
Instalacion, integracion, configuracion y pruebas
Procuracion de software y hardware, finanzas.
Instalacion, integracion, configuracion y pruebas
Pro
visi
onam
ien
to
6.4. Fases de la cadena de trabajo del administrador del software
Planeacion Construccion Procuracion Mantenimiento Evolucion
Administracion del sistema
Seguimiento
Op
erac
ion
6.5. Fases de la cadena de trabajo del administrador del software
Planeacion Construccion Procuracion Mantenimiento Evolucion
Organizacion Ajustes organizacionales y entrenamiento
Soporte tecnico y consultoria
Organizacion y entrenamiento
Uso
6.6. Retos del Administrador de Software• Que software diseñar ?, por que ?, con que calidad ?• - necesidades de usuarios vs necesidades del negocio• con quien asociarse para diseñar ? en donde ?
- personal, organizacion, outsourcing;• Como disenar el software ? cuando; en que orden?
-Procesos, metodos, herramientas, componentes, software y hardware de soporte
• Como adaptarse al cambio ?-necesidades de los usuarios, tecnologia, necesidades del mercado, riesgos
• Que tanto es suficiente ?-Funcionalidad, calidad, especificacion, prototipado, pruebas, finanzas, soporte tecnico
6.7. Arbol de oportunidades en Aplicaciones de Desarrollo Rapido
Eliminar Tareas
Reduccion de tiempo por tareas
Reduccion de riesgos de fallos
Reduccion del Backtracking
Red de Actividades
Incremento en la productividad
Mejor personal e incentivosManejode transiciones en el aprendisajeen la organizacion
ReIngenieria de Procesos del Negocio
Reuso de recursos
Generacion de aplicaciones.
Planificacion Optima.
Herramientas y Automatizacion.
Organizacin de la linea del producto y del trabajo.Incremento del paralelismo.
Reducccion de fallas - RESL
Reducccion de sus efectos -RESL
Eliminacion temprana de errores
Puntos clave de los procesos
Mejora de la madurez del proceso
Tecnologia de Colaboracion
Minimizacion de dependencias entre tareas
Evitar cuellos de botella
Reduccion de la varianza en el desarrollo
Remover tareas de la ruta critica
Lenguajes de alto nivel
Elimina Tareas
Elimina Trabajar Doble
Seccion de personal
Generacion de aplicaciones
Work Streaming
Tecnologia de Colaboracion
Eliminacion pronta de errores
Information Hiding
Desarrollo Incremental
Prototipado
Analisis de Negocios
Cost del Proceso
Librerias de compoentes y productos COTS
Mejora la
Productivudad
Obten lo mejor de la gente
Mas tareas mas eficientemente
Construye productos mas simples
Reusa Componentes
Laboratorios, herramientas
Herramientas y Automatizacion
Procesos de ReIngenieria
Puntos de cuellos de botella
Ingenieria de Dominios y Arquitectura
Documentacion AutomatizadaReuso, Generacion de Aplicaciones
Madurez del proceso
Generacion de aplicaciones
6.8. Arbol de Oprtunidades
6.9. Problemas de la Administracion de Software
53
16 31
En tiempo,en presupuesto
En sobre-tiempo,y fuera del presupuesto
Descontinuados
Promedios• 189% del presupesto original• 221% del tiempo original • 61% de la funcionalidad original
7. Perspectiva Economica del Software
• El éxito comercial del software se basa en su alto valor agregado y la facilidad en que puede distribuirse.
• Oferta y Demanda.• Precios (valor y versiones, precios variables,
componentes).• Tipos de software (producto comercial, producto
complementario, producto de infraestructura, producto de acceso multiple, producto bajo contrato especifico)
• Evolucion del Software.• Riesgos y Fallas en los Proyectos.
7.1 Demanda de Software
• Por que se demanda tanto el software ?.• Cual es la influencia del software en la mejora de
los procesos Industriales, de negocios y en la sociedad en general.
• Demanda de mejor acceso a la informacion: Internet.
• Mejora de procesos (cambio de software en la industria).
7.2 Oferta del Software
• Como debe de comercializarse (distribuirse) el software ?.
• Como llegar a mas mercados ?.• Como proveer productos siempre competitivos ?.• Como hacer que el producto siempre proporcione
un valor agregado y que proporcione utilizdades ?.
8. Organizacion de la Industria del Software• La organización de una Industria de Software depende de
la tecnologia, de los procesos y del mercado. • La Industria del Software es altamente competetiva y su
sobrevivencia dependera de el valor agregado de su producto.
• Si el producto es “bueno”, lo que falta es tener un buen proceso.
• Aspectos a considerar:– Distribucion del software.– Precios del software.– Tipos del clientes.– Adquisicion de aplicaciones e infraestructura.– Soporte.
8.1. Organizacion de la Industria del Software
top related