viernes, 18 de julio de 2008

Resumen Libro Ingeniería de Softwawre Capítulo 6

LA PRODUCTIVIDAD Y LA EVOLUCIÓN
Uno de los objetivos principales de información de ingeniería es mejorar la productividad en la construcción de aplicaciones de ordenador. Puede ayudar a mejorar la productividad de varias maneras. Dos de los más importantes son el uso de herramientas automatizadas y de su identificación común de datos y procesos a fin de que estos deben ser diseñados por una sola vez en lugar de por separado para múltiples aplicaciones.

Al principio puede haber una preocupación de que IE se ralentiza el desarrollo del sistema, ya que aboga por que detallado modelado de datos y modelado de procesos se realizan antes de diseño comienza.

IE se basa en un marco diseñado por separado que los sistemas de ajuste. Este marco tiene en algún momento de construir, pero una vez que exista, los sistemas se pueden construir rápidamente en el marco.

En la ingeniería de software un problema en relación con el análisis estructurado y el diseño es que requiere un trabajo importante por hacer antes de que comience la codificación. Algunos ejecutores se sienten incómodos acerca de retrasar el código. Tienen una gran necesidad de construir algo, incluso si aún no está diseñado adecuadamente. Es sólo una leve exageración decir que muchos de esos sistema están diseñados de pruebas. Tan poco se sabe sobre los requisitos de sistema que está a menudo después de que se construya que sale a luz la verdad. Abogado del análisis estructurado y del diseño que hace más trabajo en las partes frontales del ciclo vital y menos trabajo en el extremo trasero, especialmente si se utilizan las idiomas de cuarta generación o los generadores de código.
El IE requiere aún más el trabajo antes de la codificación porque el sistema debe caber en las infraestructuras de otros sistemas. Sin embargo, uno los modelos de datos y los modelos de proceso existe en una enciclopedia del IE, diseño individual del systtem y la construcción puede proceder rápidamente si se utilizan las herramientas convenientemente automatizadas.

I.S. Productividad. Muchos estudios se han hecho de los efects de las herramientas de la productividad de I.S., y éstos demuestran mejoras importantes en algunas organizaciones pero mejoras bajas en otra usando las mismas herramientas. Para alcanzar alta productividad, es necesario no sólo seleccionar las mejores herramientas pero también adaptar la organización y métodos de I.S. para aprovechar completo de estas herramientas.
Los procesadores de textos de los abogados dan lugar a menudo a lejos más texto que es creado; el diagramming filetea a menudo resultado en lejos más diagramas que son creados.

Un efecto más valuoso de instrumentos de Caso buenos es el retiro de errores e inconsistencies en la etapa de diseño. Los diseños son de calidad más alta, conduciendo a menos problemas y menos tiempo tomado en el retiro de errores del código.
Los generadores de código permiten a ejecutores producir un programa de trabajo rápidamente. Sin embargo, si el generador no se liga a un diccionario, a un modelo de datos, o a herramientas de diseño, los programas generados pueden ser fragmentos incompatibles, enfermedad diseñada y que no liga juntos. Para alcanzar alta productividad, las herramientas para el diseño necesitan ser juntadas firmemente al generador de código. Las herramientas de diseño deben emplear un modelo de datos y deben permitir al diseño ser representado en un de gran alcance, visual, fácil-a-modifique la forma de las cuales cifran se genera adentro directamente. Los programas deben ser rápidamente ejecutables de modo que el diseñador pueda observar lo que él hace, ajusta o agrega al diseño, vuelve a efectuar los programas, realza el diseño, y así sucesivamente, hasta que se cree un sistema comprensivo. El principio qué usted ve es lo que usted consigue debe aplicarse a la combinación de herramienta de diseño y de generador de código visuales. La necesidad de la codificación manual se debe quitar al máximo.
El generador primero produce el código estructurado que se relaciona con las pantallas del diseño. Este código se puede utilizar para la creación de un prototipo y el depuración. El código estructurado no da perfomance óptimo de la máquina, así pues, para los usos resistentes, el código se puede alimentar en un optimizador que cree código con funcionamiento óptimo de la máquina. Este código nunca será tocado por los programadores de mantenimiento.

La herramienta del generador del diseñador debe facilitar los prototipos que son construidos y modificados rápidamente. Debe generar datos de prueba y proporcionar las herramientas de prueba. Debe generar código de la base de datos y código de control de trabajo, para poder ejecutar rápidamente el programa cuando se realizan los cambios de diseño. Con creación de un prototipo de gran alcance filetea un ciclo vital iterativo del desarrollo se utiliza. El ejecutor diseña algo en la pantalla de una herramienta del I-caso, genera código, ejecuta el código y lo prueba, después se modifica o agrega al diseño, regenera código, y así sucesivamente. Cuanto más rápido es el ciclo de la diseñar-generar-prueba puede ser, más productivo el ejecutor es probable ser. Las herramientas de diseño de gran alcance con los generadores interpretativos son necesarias que hacen este ciclo tan rápido como sea posible.

EL EFECT DE EQUIPOS GRANDES
La productividad del desarrollo de sistema es afectada fuertemente por el número de gente en el equipo de desarrollo de sistema. Los equipos grandes tienden a dar productividad baja del desarrollo. La razón es que el número de interacciones entre los miembros de equipo aumenta rápidamente mientras que el tamaño del equipo aumenta. Si hay gente de N en el equipo, obrando recíprocamente todo, el número de interacciones personales es N (N-1) /2. Cuando obra recíprocamente la gente, hay miscommunication. La tentativa de disminuir el miscommunication documentando las interacciones es desperdiciadora de tiempo y no trabaja a menudo bien. Los efectos de productividad-reducción son aproximadamente proporcionales al cuadrado del número de miembros de equipo que obran recíprocamente.
Estadísticas para la demostración programada convencional mucha una gran cantidad de líneas de código por persona para el equipo muy pequeño que para los equipos grandes. Los proyectos del desarrollo de aplicaciones con muy una gran cantidad de gente son a menudo desastrosos. Los proyectos de una persona exhiben la productividad más alta.
Cuadro 6.2 estadísticas de las demostraciones para la programación de COBOL. El número medio de línea de código por personas-año varía a partir el 800 a 15.000, dependiendo del tamaño del programa. Esto refleja en gran parte el efecto de equipos grandes: 500 la línea programa es escrita por una persona; 500.000 la línea programas es escrita por los equipos grandes.


Diseño y código reutilizables.Los programadores de hoy reinventan constantemente la rueda. Luchan para crear algo que se ha creado las épocas sin fin antes. Los aumentos de la productividad del alcalde resultarán de emplear diseños, modelos de datos, o código reutilizables. Los componentes reutilizables se deben catalogar en una enciclopedia del caso para poderlos ser seleccionados cuando son necesarios y modificarse como sea necesario. Una empresa grande debe emplear el mismo juego de herramientas del Yo-caso en todas las localizaciones en donde se construyen los sistemas para poder utilizar modelos de datos, diseños, y componets comunes del programa por localizaciones múltiples. Las telecomunicaciones tienen acceso a las enciclopedias de la unidad central facilitan la distribución de usos, diseño de documento, procedimientos de contabilidad, y así sucesivamente.
Un objetivo del IE es identificar concordancia en datos y procesos y por lo tanto reducir al mínimo el trabajo de desarrollo redundante de sistema. El modelado de datos hace claro que los mismos tipos de entidad son aplicaciones en usos numerosos.
Dondequiera que se utilicen puede haber ciertas rutinas que serán invocadas, por ejemplo la computación de cualidades derivadas, aplicando cheques de la integridad, o crear datos sumarios. Una corporación puede tener muchas fábricas que al grado grande tengan los mismos tipos de entidad.
Muchos de los procedimientos de proceso de datos pueden ser iguales a partir de una fábrica a otra. Algunos serán enteramente diferentes. La gerencia puede hacer comparaciones. Cuando se hace la descomposición de proceso y los procesos se trazan contra tipos de entidad, la concordancia entre procesos puede ser descubierta.

Westpac, uno del banco más grande del hemisferio meridional, basado en Sydney, utilizó la ingeniería de información a través del banco entero, con la ayuda de su gerencia superior, que reconoció que un mejor uso de la informática era crítico para el crecimiento y el éxito del banco.
Westpac, uno del banco más grande del hemisferio meridional, basado en Sydney, utilizó la ingeniería de información a través del banco entero, con la ayuda de su gerencia superior, que reconoció que un mejor uso de la informática era crítico para el crecimiento y el éxito del banco.
Esta reducción del 22:1 en el código generado ahorró mucha hora de desarrollo y es probable reducir el esfuerzo del mantenimiento grandemente. También ayudó a proporcionar la consistencia de la información y de la información, que es valiosa a la gerencia y buena para los clientes. Pongo en contraste esto con el banco que utilizo, que me dice que es imposible computar la vuelta en activos neta porque las computadoras no pueden manejarla. El diseño y el código reutilizables deben ser un objetivo importante del desarrollo de proceso de datos porque pueden reducir dramáticamente esfuerzo del desarrollo y del mantenimiento.
Cuando un generador de código puede generar código directamente forme una representación del diseño que el foco de la reutilidad es la etapa de diseño. Los módulos del diseño pueden ser almacenados en la enciclopedia y ser utilizados cuando están necesitados. El banco de trabajo del diseño hace diseños fáciles modificarse.
El poder hacer ajustes a los diseños, y agregar a ellos según lo necesitado, amplía grandemente el sentido práctico del diseño reutilizable.
Los estándares para el diseño del uso también amplían el sentido práctico del diseño reutilizable. Éstos incluyen los estándares establecidos en la organización de I.S. para el acceso a las redes, acceso a las bases de datos, formatos de documento estándar, diálogos estándar del usuario, IMB' s SAA (arquitectura del uso de sistemas), y así sucesivamente. De uso común de tal estándar a través de una organización de I.S compara a los aumentos en productividad de I.S.
La cuadro 6.1 resume las medidas para maximizar productividad.
- Utilice las herramientas de diseño de gran alcance automatizadas.
- utilice las herramientas de diseño que cogen todos los errores posibles y cogen todas las inconsistencias en el diseño.
- utilice el generador de código integrado con el diseño (las herramientas de un I-caso).
- utilice las herramientas que hacen el ciclo de diseño, generan, prueban, modifican, generan, prueban tan rapid como sea posible.
- Utilice las herramientas de diseño en línea a una enciclopedia comprensiva del IE.
- Diseño dentro de un marco preexistente del plan del IE, de los modelos de datos, y de los modelos de proceso.
- Utilice los modelos de datos correctamente normalizados.
- Genere tanto del diseño de los modelos comerciales y de la regla de negocio como posible.
- Utilice la creación de un prototipo de alta velocidad dentro del marco del IE.
- Genere el documetation automáticamente.

Crecimiento evolutivo de sistemas.
El más impresionantes de sistemas complejos no se crean con un solos diseño y puesta en práctica. Se desarrollan, siendo mejorado en muchos pasos en las diversas horas y lugares.
Un diseñador de sistema mira los trabajos de la naturaleza con temor. Un guepardo que mira para la presa en el amanecer suddnely compite con friega a través en 70 kilómetros por hora con tolerancia asombrosa para matar un antílope del salto. Un colibrí, que dirigen probado una vez era una imposibilidad aerodinámica, revolotea de la flor a la flor y emigra a Suramérica.
El cerebro humano, por completo o los esquemas diabólicos y la poesía maravillosa, ha probado mucho más alla de nuestras técnicas más ambiciosas de la inteligencia artificial. Éstos no son el sistema para el cual Dios escribió especificaciones; son el sistema que se desarrolló sobre millones de años.
El futuro traerá software impresionante y sistemas informáticos corporativos, y éstos también serán crecidos durante muchos años con mucha gente y organizaciones que agregan a ellas. Es difícil o imposible crecer el software que es un lío.
Para alcanzar la evolución de largo plazo del software, necesitamos modelos estructurados de los modelos de los datos y de estructura de procesos. Los diseños demasiados complejos para que una persona sepa todo el detalle se deben representar en una manera ordenada en una enciclopedia de modo que mucha gente en muchos lugares pueda agregar al diseño.El diseño necesita estándares y los componentes y la arquitectura reutilizables que facilita la adición incremental de nuevas funciones. De modo que los ejecutivos puedan controlar el comportamiento de las computadoras que ponen automáticamente órdenes, seleccionan a surtidores, hacen comercios, y así sucesivamente, el comportamiento debe ser expresable en las reglas y los diagramas que los ejecutivos entienden.

No hay comentarios: