Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diagrama
Instrucciones
Las instrucciones básicas y comunes en casi todos los lenguajes de programación son:
Instrucciones de entrada/salida.
Instrucciones de cálculo.
Instrucciones de control.
Instrucciones de entrada/salida.
Traductores
INTÉRPRETES
Un compilador es un programa que traduce los programas fuente escritos en lenguaje de alto nivel
a lenguaje máquina. La traducción del programa completo se realiza en una sola operación
denominada compilación del programa; es decir, se traducen todas las instrucciones del programa
en un solo bloque. El programa compilado y depurado (eliminados los errores del código fuente)
se denomina programa ejecutable
En la década de los cuarenta cuando nacían las primeras computadoras digitales el lenguaje que se
utilizaba para programar era el lenguaje máquina que traducía directamente el código máquina
(código binario) comprensible para las computadoras. Las instrucciones en lenguaje máquina
dependían de cada computadora y debido a la dificultad de su escritura, los investigadores de la
época simplificaron el proceso de programación desarrollando sistemas de notación en los cuales
las instrucciones se representaban en formatos nemónicos (nemotécnicos) en vez de en formatos
numéricos que eran más difíciles de recordar.
Evolución
Para convertir los programas escritos en código nemotécnico a lenguaje máquina, se desarrollaron
programas ensambladores (assemblers). Es decir, los ensambladores son programas que traducen
otros programas escritos en código nemotécnico en instrucciones numéricas en lenguaje máquina
que son compatibles y legibles por la máquina. Estos programas de traducción se llaman
ensambladores porque su tarea es ensamblar las instrucciones reales de la máquina con los
nemotécnicos e identificadores que representan las instrucciones escritas en ensamblador
LENGUAJES IMPERATIVOS
Un lenguaje imperativo es un conjunto de instrucciones que se ejecutan una por una, de principio
a fin, de modo secuencial excepto cuando intervienen instrucciones de salto de secuencia o
control. Este paradigma define el proceso de programación como el desarrollo de una secuencia
de órdenes (comandos) que manipulan los datos para producir los resultados deseados.
Lenguajes Procedimentales
Ejemplos
LENGUAJES DECLARATIVOS
1) una sintaxis que define la notación específica con la que se representa la especificación,
2) semántica para ayudar a definir un “universo de objetos” que se usarán para describir el
sistema y
3) un conjunto de relaciones que definen las reglas que indican cuáles objetos satisfacen
adecuadamente la especificación.
El lenguaje de restricción de objeto (OCL) es una notación formal desarrollada de modo que los
usuarios de UML puedan agregar más precisión a sus especificaciones. En el lenguaje está
disponible todo el poder de la lógica y de la matemática discreta. Sin embargo, los diseñadores de
OCL decidieron que, en los enunciados OCL, sólo deberían usarse caracteres ASCII (en lugar de la
notación matemática tradicional). Esto hace que el lenguaje sea más amistoso para las personas
que tienen menos inclinación matemática y que la computadora lo procese más fácilmente. Pero
también hace al OCL un poco farragoso en algunos lugares. Para usar OCL, comience con uno o
más diagramas UML: los diagramas de clase, estado o actividad más comunes. Se agregan
expresiones OCL y hechos de estado acerca de elementos de los diagramas.
OCL
Como un lenguaje de programación orientado a objeto, una expresión OCL involucra operadores
que operan sobre objetos. Sin embargo, el resultado de una expresión completa siempre debe ser
booleana, es decir, verdadero o falso. Los objetos pueden ser instancias de la clase Collection OCL,
de la cual Set (conjunto) y Sequence (secuencia) son dos subclases.
EL LENGUAJE DE ESPECIFICACIÓN Z
Los esquemas se usan para estructurar una especificación formal en la misma forma en la que los
componentes se usan para estructurar un sistema.
——— esquemaNombre——————————————
declaraciones
———————————————————————
invariante
————————————————————————
donde las declaraciones identifican las variables que abarca el estado del sistema y la invariante
impone restricciones en la forma en la que puede evolucionar el estado.
LENGUAJE DE MODELADO
Sintácticas
• Sintaxis, nos indica cómo se utilizan los símbolos para representar elementos y cómo se
combinan los símbolos en el lenguaje de modelado. La sintaxis es comparable con las palabras del
lenguaje natural; es importante conocer cómo se escriben correctamente y cómo poner los
elementos para formar una sentencia.
Reglas semánticas
• Semántica, las reglas semánticas explican lo que significa cada símbolo y cómo se deben
interpretar, bien por sí misma o en el contexto de otros símbolos.
Reglas pragmáticas
• Pragmática, las reglas de pragmática definen las intenciones de los símbolos a través de los
cuáles se consigue el propósito de un modelo y se hace comprensible para los demás. Esta
característica se corresponde en lenguaje natural con las reglas de construcción de frases que son
claras y comprensibles. Para utilizar bien un lenguaje de modelado es necesario aprender estas
reglas.
• Estructura estática: describe los tipos de objetos más importantes para modelar el sistema.
• Comportamiento dinámico: describe los ciclos de vida de los objetos y cómo interactúan entre sí
para conseguir la funcionalidad del sistema requerida.
b)Es conciso.
d)Es escalable, sirve para gestionar grandes proyectos, pero también pequeños proyectos.
f)Es un estándar, ya que está avalado por la OMG, organización con difusión y reconocimiento
mundial.
Ventajas
Cuando se aplica UML al diseño de software, UML trata de llevar la idea original o la abstracción
del problema a una parte o bloque de software y su implementación. UML proporciona un medio
para capturar y examinar requisitos a nivel de requisitos (diagramas de caso de uso), un concepto
muy importante, pero, a veces, difícil de comprensión para un programador novel. Existen
diagramas para capturar cuáles son las partes del software que realizan ciertos requisitos
(diagramas de colaboración). Otros diagramas sirven para capturar exactamente cómo realizan sus
requisitos esas partes del sistema (diagramas de secuencia y diagramas de cartas de estado). Por
último, hay diagramas para mostrar todo lo que se acopla y ejecuta de modo conjunto (diagramas
de componentes y diagramas de cartas y de despliegue).
Diagramas estructurales
Diagramas de comportamientos.
Los diagramas estructurados se utilizan para capturar la organización física de las cosas del
sistema, por ejemplo, cómo se relacionan unos objetos con otros.
Estructurales
Diagramas de actividad.
Diagramas de comunicación.
Diagramas de interacción.
Diagramas de secuencia.
Diagramas de máquinas de estado.
Diagramas de tiempo.
Diagramas de caso de uso.
UML tiene sus orígenes en la orientación a objetos. Por esta razón se puede definir UML como:
“un lenguaje de modelado orientado a objetos para desarrollo de sistemas de software
modernos”. Al ser un lenguaje de modelado orientado a objetos, todos los elementos y diagramas
en UML se basan en el paradigma orientado a objetos. El desarrollo orientado a objetos se centra
en el mundo real y resuelve los problemas a través de la interpretación de “objetos” que
representan los elementos tangibles de un sistema.
La idea fundamental de UML es modelar software y sistemas como colecciones de objetos que
interactúan entre sí. Esta idea se adapta muy bien al desarrollo de software y a los lenguajes
orientados a objetos, así como a numerosas aplicaciones, tales como los procesos de negocios.
ESPECIFICACIONES DE UML
Por otra parte, los modelos UML tienen al menos dos dimensiones: una dimensión gráfica para
visualizar el modelo usando diagramas e iconos (notaciones) y otra dimensión con texto que
describe las especificaciones de distintos elementos de modelado.