Top Banner
CENSURADO CENSURADO
23

Factoria software

Dec 05, 2014

Download

Documents

Lenin Lozano

Esto es algo de nuestros trabajos desde el 2006...
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Factoria software

CENSURADO

CENSURADO

Page 2: Factoria software

Necesidades Universales

• Despliegue de nuevos servicios de forma rápida.

• Acomodar una demanda creciente de nuevos productos en

un amplio espectro de categorías de características.

• Conectar los productos de formas sin precedentes.

• Explotar una tecnología que cambia rápidamente.

• Ganar un limite competitivo.

Page 3: Factoria software

Objetivos de Negocio Universales

Alta calidad

Rápido time to market

Agilidad del mercado

Alineación del producto

Producción a bajo costo

Bajo costo de mantenimiento

Personalización en masa

Mind share

Page 4: Factoria software

Razones!!!!

• Incesante demanda de software.

• Es una actividad riesgosa.

• Fuerza de trabajo cada vez mas productiva.

• No se puede seguir con el modelo “maestro-aprendiz”

• Se ha intentado antes:

– Herramientas CASE.

– Metodologías Formales

– OOP

Page 5: Factoria software
Page 6: Factoria software

Industrialización del Software

• “El Software es en ciertos aspectos como productos tangibles de las disciplinas de ingeniería convencionales tales como puentes, edificios y computadores. Pero también existen ciertas diferencias importantes que dan al desarrollo de software un sabor único. Ya que el Software es lógico y no físico, sus costos están concentrados en su desarrollo en vez de su producción, y ya que el software no se ve, su confiabilidad depende de cualidades lógicas como correctitud y robustez, en vez de las características físicas como maleabilidad y dureza.” Peter Wegner

Page 7: Factoria software

Software Factories 1

• Economías de Escala

• Se producen instancias idénticas de un solo diseño

colectivamente, en vez de individualmente.

Page 8: Factoria software

Software Factories 2

• Economías de Alcance

• El software no se fabrica.

• Pero el software no es un diseño único y replicable.

• No es un nuevo producto, tampoco una nueva metodología ni proceso; es un enfoque sobre como hacer sistemas; y que va directo a que los equipos de desarrollo hagan lo que tienen que hacer.

PROGRAMAR

Page 9: Factoria software

Cambio Cultural • Construcción Monolítica

– Protocolos Específicos para una plataforma

– Empaquetamiento débil

– Encapsulación Fuerte

– Síndrome de “No inventado aquí”

• Generalidad Gratuita – Lenguajes de Modelado Débiles.

– Generación de Código Débil.

– Débiles metadatos para integración.

• One off development

• Inmadurez del proceso. – Formalismo Excesivo

– Excesiva Autonomía

We hire people who build doghouses, give them cranes and ask them to build skyscrapers. Then we're surprised when they fail. Eileen Steets Quann

Page 10: Factoria software

Cambio Cultural – Que es lo innovador?

• Reuso sistemático

• Software Product Lines

• Salir del One-Off Development

• Desarrollo por Ensamble – Protocolos Independientes de la plataforma

– Auto Descripción

– Encapsulación Separada

– Desarrollo Dirigido por la Arquitectura

– Orquestación

Page 11: Factoria software

Cambio Cultural – Que es lo innovador?

• Desarrollo Dirigidos por Modelos

– Lenguajes Específicos de Dominio

– Uso de Frameworks

– Transformación de Modelos

• Frameworks de Procesos

– Vigilancia Activa

– Cronogramas basados en restricciones

Page 12: Factoria software

Software Product Lines

• A software product line (SPL) is a set of

software-intensive systems that share a

common, managed set of features satisfying

the specific needs of a particular market

segment or mission and that are developed

from a common set of core assets in a

prescribed way.

Logo del SEI Product Line Practice ™

Page 13: Factoria software

Que no son Software Product Lines

• Reuso fortuito en pequeñas cantidades – Reusar librerías que contienen algoritmos, módulos, objetos o componentes.

• Desarrollo de un solo sistema con reuso – Modificar el código que se necesita para ese sistema

• Solo desarrollo basado en componentes o servicios. – Seleccionar componentes o servicios de una librería in-house, mercado o la web sin foco

arquitectónico.

• Solo versiones de un solo producto

• En vez, releases simultáneos y soporte de múltiples productos.

• Solo una arquitectura configurable – Un buen inicio, pero solo una parte del potencial de reuso

• Solo un conjunto de estándares técnicos. – Restringiendo elecciones sin una estrategia de reuso basada en la arquitectura.

Page 15: Factoria software

Que es una fabrica de software

A software factory is a software product line that

configures extensible tools, processes, and content using a

software factory template based on a software factory

schema to automate the development and maintenance of

variants of an archetypical product by adapting,

assembling, and configuring framework-based

components.

Page 16: Factoria software

Que se necesita?

• En una fabrica de software hay 2 elementos centrales:

– El esquema de fabrica de software.

– La plantilla de fabrica de software basada en ese esquema.

Page 17: Factoria software

Software Factory Schema

• Necesitamos categorizar y resumir los artefactos de desarrollo. – De una manera ordenada.

• Generalmente se usa una matriz.

– Columnas: Intereses

– Filas: Niveles de abstracción.

• Each cell defines a perspective or viewpoint from which we can build some aspect of the software

Page 18: Factoria software

Esquema como Grafico

Page 19: Factoria software

Software Factory Template

• Son los activos que implementan la fabrica de software.

• Incluye código, metadatos, frameworks, etc.

• Es como las plantillas en Word o Excel.

Page 20: Factoria software

Construyendo la fabrica de software

Page 21: Factoria software

Construyendo la fabrica de software

Page 22: Factoria software

Que enfoque debe adoptar Avansoft?

• Por Tradición

– En el mercado empresarial en el que aplicaciones de negocio

verticales no consiguen producirse masivamente, el software se

comporta como una economía de alcance

• Por Futuro

– En el mercado de consumo masivo como aplicaciones de

escritorio en el cual sistemas operativos y suites de oficina se

producen en grandes cantidades, el sofware se comporta como

una economía de escala

Page 23: Factoria software

Objetivos de la adopción

• Los objetivos son tangibles:

– Tener un core de activos base, procesos de soporte y estructura

organizacional

– Desarrollar productos a partir de esos activos base de tal

manera que logremos las metas de negocio

– Institucionalizar mecanismos para mejorar y extender el

esfuerzo en la adopción de líneas de productos de software a

medida que esto tiene sentido.