Abstracción ing de software

Solo disponible en BuenasTareas
  • Páginas : 5 (1171 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de agosto de 2012
Leer documento completo
Vista previa del texto
Instituto Politécnico Nacional.








Unidad Profesional Interdisciplinaria de Ingenierías y Ciencias Sociales y Administrativas.










Asignatura: Ingeniería de Software
Profesor: Saúl López Avíla.
Alumnos:
Flores González Lucio Antonio.
Secuencia: 2NV1.

Investigacion sobre:
Abstracción
Refinamiento
Modularidad
Arquitectura de Software.Abstracción

En programación, el término se refiere al énfasis en el "¿qué hace?" más que en el "¿cómo lo hace?" (característica de caja negra). El común denominador en la evolución de los lenguajes de programación, desde los clásicos o imperativos hasta los orientados a objetos, ha sido el nivel de abstracción del que cada uno de ellos hace uso.

Ejemplo
Por ejemplo vamos apensar en un coche para tratar de modelizarlo en un esquema de POO (programación orientada a objetos). Diríamos que el coche es el elemento principal que tiene una serie de características, como podrían ser el color, el modelo o la marca. Además tiene una serie de funcionalidades asociadas, como pueden ser ponerse en marcha, parar o estacionar.

Otras definiciones son:

Proceso mental, que permiteal individuo comprender un concepto de un objeto. Sin tener al objeto de manera tangible.

La abstracción es la capacidad mental superior que tiene todo ser humano para poder deducir la esencia de un concepto o situación determinada.

Como podemos ver, esta ultima definición es la mas acertada en cuanto a abstracción, es la capacidad de soñar despierto.

Refinamiento

La definición que dael diccionario sobre refinamiento es: m. Esmero,cuidado.

Ir descomponiendo un problema complejo sucesivamente en problemas más pequeños y simples que en combinación con top-down (de arriba hacia abajo) tenemos unos de los principios de la programación estructurada.
La técnica de refinamientos sucesivos consiste en resolver un problema comenzando con una visión abstracta (simplificada), paraluego ir introduciendo detalles gradualmente, permitiendo de esta manera organizar y dominar la complejidad del problema inicial. La relación de refinamiento que se establece entre las diferentes versiones de la especificación del problema (desde la más abstracta hasta la más detallada) permite entender como cada regla del negocio se relaciona con cada requerimiento del sistema y como cadarequerimiento se relaciona con cada faceta del diseño y finalmente con cada línea de código ejecutable.
Documentar formalmente dicha relación hace posible verificar si el código satisface su especificación, rastrear el impacto que cada cambio en las reglas del negocio origina sobre los artefactos del sistema.

Modularidad

Concepto aplicado en el contexto de la informática, especialmente en laprogramación. Un módulo es un componente de un sistema más grande y opera dentro del sistema independientemente de las operaciones de otros componentes.

La modularidad es una opción importante para la escalabilidad y comprensión de programas, además de ahorrar trabajo y tiempo en el desarrollo.

En pocas palabras podriamos decir que la modularidad consiste en el principio de divide y venceras.La modularidad se basa en la descomposición de un problema en una serie de sub problemas; dividiéndolo en módulos que resultan de segmentar el problema en funciones lógicas que son perfectamente diferenciadas. Esta división exige la presencia de un módulo denominado módulo de base o principal a objeto de que controle y se relacione con los demás.
Es una técnica de programación que todavía seutiliza tanto para la construcción de algoritmos computacionales básicos así como apoyo al desarrollo de sistemas de gestión (en el diseño de diagramas modulares).

La salida del módulo debe ser función de la entrada, pero no de ningún estado interno. En la creación de los módulos deben cumplirse tres aspectos básicos: descripción, rendimiento y diseño.

En la descripción se definen las...
tracking img