LENGUAJES DE PROGRAMACION

0 comentarios

Es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.

Un lenguaje de programación permite a uno o más programadores especificar de manera precisa: sobre qué datos una computadora debe operar, cómo deben ser estos almacenados, transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico. Una característica relevante de los lenguajes de programación es precisamente que más de un programador puedan tener un conjunto común de instrucciones que puedan ser comprendidas entre ellos para realizar la construcción del programa de forma colaborativa.

CLASIFICACION:

Clasificación de los lenguajes de programación
Los lenguajes de programación se determinan según el nivel de abstracción, Según la forma de ejecución y Según el paradigma de programación que poseen cada uno de ellos y esos pueden ser:

Lenguajes de bajo nivel Los lenguajes de bajo nivel son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel es, por excelencia, el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa.

Lenguajes de alto nivel
Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. En BASIC, el lenguaje de alto nivel más conocido, los comandos como "IF CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora que pare si CONTADOR es igual a 10. Por desgracia para muchas personas esta forma de trabajar es un poco frustrante, dado que a pesar de que las computadoras parecen comprender un lenguaje natural, lo hacen en realidad de una forma rígida y sistemática.

DATO:

el dato es una representación simbólica (numérica, alfabética, etc.), atributo o característica de una entidad. El dato no tiene valor semántico (sentido) en sí mismo, pero convenientemente tratado (procesado) se puede utilizar en la realización de cálculos o toma de decisiones. Es de empleo muy común en el ámbito informático.En programación un dato es la expresión general que describe las características de las entidades sobre las cuales opera un algoritmo.

ALGORITMO

0 comentarios

Un algoritmo: es el conjunto de operaciones y procedimientos que deben seguirse para resolver un problema.
El lenguaje algorítmico es aquel por medio del cual se realiza un análisis previo del problema a resolver y encontrar un método que permita resolverlo. El conjunto de todas las operaciones a realizar, y el orden en el que deben efectuarse, se le denomina algoritmo.

CARACTERISTICAS:

Preciso: implica el orden de realización de cada uno de los pasos
Definido: si se sigue dos veces, se obtiene el mismo resultado.
Finito: Tiene un numero determinado de pasos, implica que tiene un fin.

TIPOS:

  • Algorítmico: Utiliza un algoritmo y puede ser implementado en una computadora.
  • Heurística: Se apoya en el resultado obtenido en un análisis de alternativas de experiencias anteriores similares. De las mismas, a se deducen una serie de reglas empíricas o heurísticas que de ser seguidas, conducen a la selección de la mejor alternativa en todas o la mayoría de las veces

CALIDAD DEL SOFTWARE

0 comentarios

La calidad del software: es el conjunto de cualidades que lo caracterizan y que determinan su utilidad y existencia. La calidad es sinónimo de eficiencia, flexibilidad, corrección, confiabilidad, mantenibilidad, portabilidad, usabilidad, seguridad e integridad.

La calidad del software es medible y varía de un sistema a otro o de un programa a otro. Un software elaborado para el control de naves espaciales debe ser confiable al nivel de "cero fallas"; un software hecho para ejecutarse una sola vez no requiere el mismo nivel de calidad; mientras que un producto de software para ser explotado durante un largo período (10 años o más), necesita ser confiable, mantenible y flexible para disminuir los costos de mantenimiento y perfeccionamiento durante el tiempo de explotación.

La calidad del software puede medirse después de elaborado el producto. Pero esto puede resultar muy costoso si se detectan problemas deriva dos de imperfecciones en el diseño, por lo que es imprescindible tener en cuenta tanto la obtención de la calidad como su control durante todas las etapas del ciclo de vida del software.

HISTORIA DEL SOFTWARE

0 comentarios

Antecedentes: Génesis y Evolución

Con el acelerado avance tecnológico de la información, la cantidad y la complejida de los productos de software se estan incrementando considerablemente, así como también la exigencia en su funcionalidad y confiabilidad; es por esto que la calidad y la productividad se estan constituyendo en las grandes preocupaciones tanto de gestores como para desarrolladores de software.

En los primeros años del software, las actividades de elaboración de programas eran realizadas por una sola personas utilizando lenguajes de bajo nivel* y ajustándose a un computador en especial, que generaban programas difíciles de entender, aun hasta para su creador, después de algún tiempo de haberlo producido. Esto implicaba tener que repetir el mismo proceso para desarrollar el mismo programa para otras maquinas.
Por consiguiente, la confiabilidad, facilidad de mantenimiento y cumplimiento no se garantizaban y la productividad era muy baja.

Posteriormente, con la aparición de técnicas estructuradas y con base en las experiencias de los programadores se mejoro la productividad del software. Sin embargo, este software seguía teniendo fallas, como por ejemplo: documentación inadecuada, dificultad para su correcto funcionamiento, y por su puesto, insatisfacción de cliente.

Conforme se incrementaba la tecnología de los computadores, también crecía la demanda de los productos de software, pero mucho mas lentamente, tanto que hacia 1990 se decía que las posibilidades de software estaban retrasadas respecto a las del hardware en un mínimo de dos generaciones de procesadores y que la distancia continuaba aumentando.

En la actualidad muchos de estos problemas subsisten en el desarrollo de software, con una dificultad adicional relacionada con la incapacidad para satisfacer totalmente la gran demanda y exigencias por parte de los clientes.

ANALISIS Y DISEÑO DE SISTEMAS DE INFORMACION

0 comentarios

Análisis de Sistemas:
Es un conjunto o disposición de procedimientos o programas relacionados de manera que juntos forman una sola unidad. Un conjunto de hechos, principios y reglas clasificadas y dispuestas de manera ordenada mostrando un plan lógico en la unión de las partes. Un metodo, plan o procedimiento de clasificación para hacer algo. También es un conjunto o arreglo de elementos para realizar un objetivo predefinido en el procesamiento de la informacion.


Diseño de sistemas:
El Diseño de Sistemas se define el proceso de aplicar ciertas técnicas y principios con el propósito de definir un dispositivo, un proceso o un Sistema, con suficientes detalles como para permitir su interpretación y realización física.
La etapa del Diseño del Sistema encierra cuatro etapas:

  • El diseño de los datosTrasforma el modelo de dominio de la información, creado durante el análisis, en las estructuras de datos necesarios para implementar el Software.
  • El Diseño Arquitectónico:Define la relación entre cada uno de los elementos estructurales del programa.
  • El Diseño de la Interfaz: Describe como se comunica el Software consigo mismo, con los sistemas que operan junto con el y con los operadores y usuarios que lo emplean.
  • El Diseño de procedimientosTransforma elementos estructurales de la arquitectura del programa. La importancia del Diseño del Software se puede definir en una sola palabra Calidad, dentro del diseño es donde se fomenta la calidad del Proyecto.

El Diseño es la única manera de materializar con precisión los requerimientos del cliente.

0 comentarios

DISEÑO DE UNA BASE DE DATOS

RELACIONES:

La relación es el enlace que une una entidad a otra. Las relaciones tienen características que se definen mediante la cardinalidad.

Las relaciones se representan por medio de una línea.

La cardinalidad define el tipo de relaciones entre las entidades .

Obligatoriedad: esta característica identifica si la relación entre las entidades es opcional u obligatoria. La relación opcional se representa por medio de una línea punteada y la obligatoria se representa por medio de una línea continua

Multiplicidad: esta característica define si un registro de la entidad le corresponde uno o varios registros de la otra entidad.

NORMALIZACIÓN:

La normalización es el proceso de simplificar el diseño de una base de datos a través de la búsqueda de la mejor estructuración que pueda utilizarse con las entidades involucradas en ella y sus relaciones.

Por medio de la normalización un conjunto de datos de un registro se reemplaza por varios registros que son mas simples y predecibles y, por lo tanto, mas manejables. La normalización se lleva a cabo por cuatro razones.

  1. Estructurar los datos de forma que se puedan representar las relaciones pertinentes entre los datos.
  2. Permitir la recuperación sencilla de los datos en respuesta a las solicitudes de consultas y reportes.
  3. Simplificar el mantenimiento de los datos actualizándolos, insertándolos y borrándolos.
  4. Reducir la necesidad de reestructurar o reorganizar los datos cuando surjan nuevas aplicaciones.

PASOS:

La teoría de normalización tiene como fundamento el concepto de formas normales; se dice que una relación esta en una determinada forma normal si satisface un conjunto restricciones. Las reglas de normalización están encaminadas a eliminar redundancias e inconsistencias de dependencia en el diseño de las tablas.

Estas formas consisten en descomponer las relaciones en otras relaciones mas pequeñas; existen cuatro formas normales básicas.

PRIMERA FORMA:

Una relación R se encuentra en primera forma normal (1FN) si y solo si por cada renglón columna existen valores atómicos.

Se considera que una relación se encuentra en la 1FN cuando se cumple lo siguiente:

  1. Las celdas de las tablas poseen valores simples y no se permiten grupos ni arreglos repetidos como valores, es decir, contienen un solo valor por cada celda.
  2. Todos los ingresos en cualquier atributo deben ser del mismo tipo.
  3. Cada columna debe tener un nombre único, el orden de las columnas en la tabla no es importante.
  4. Dos filas o renglones de una misma tabla no deben ser idénticas, aunque el orden de las filas no es importante.

Los pasos que se deben realizar para estar en 1FN son:

  1. Eliminar los grupos repetitivos de la tablas individuales.
  2. Identificar cada grupo de datos relacionados con una clave primaria.

SEGUNDA FORMA:

Una relación R esta en segunda forma normal (2FN) si y solo si esta en 1FN y los atributos no primos dependen funcionalmente de la llave primaria.

Una relación se encuentra en 2FN, cuando cumple con las reglas de la 1FN y todos sus atributos que no son identificadores (llaves) dependen por completo de la clave. De acuerdo con esta definición, cada tabla que tiene un atributo único como clave, esta en 2FN.

Los pasos que se deben llevar a cabo para estar en segunda forma normal son:

Crear tablas separadas para aquellos grupos de datos que se aplican a varios registros.

Relacionar estas tablas mediante una clave externa.

TERCERA FORMA:

Una relación R esta en tercera forma normal (3FN) si y solo si esta en 2FN y todos sus atributos no primos dependen no transitivamente de la llave primaria.

Consiste en eliminar la dependencia transitiva que queda en una 2FN, en pocas palabras una relación esta en 3FN si esta en 2FN y no existen dependencias transitivas entre los atributos, nos referimos a dependencias transitivas cuando existe mas de una forma de llegar a referencias a un atributo de una relación.

El paso que se debe llevar a cabo para estar en 3FN es:

  1. Crear una tabla separada para los campos que no dependen de la clave.

CUARTA FORMA:

Un esquema de relaciones R está en cuarta forma normal (4FN) con respecto a un conjunto D de dependencias funcionales y de valores múltiples si, para todas las dependencias de valores múltiples en D de la forma X ->->Y, donde X <= R y Y <= R, se cumple por lo menos una de estas condiciones:

X ->-> Y es una dependencia de valores múltiples trivial.

X es una superllave del esquema R.

El paso que debe llevarse a cabo para estar en 4FN es:

En las relaciones muchos a muchos, entidades independientes no pueden ser almacenadas en la misma tabla.

El diseño de la base de datos debe llevarse al cuarto nivel de normalización si existe un tipo especifico de relación, la relación muchos a muchos.

1 comentarios

DISEÑO LOGICO

INTRODUCCIÓN:

Después de normalizado el modelo entidad – relación debe seguirse con el siguiente nivel del diseño de una base de datos y este es el diseño lógico de la base de datos.

Un diagrama Entidad Relación ayuda a comprender el flujo de datos a través del sistema. Una vez este diagrama es creado, el diseñador debe crear un diagrama especial que modele los datos almacenados en una base de datos que representen las entidades y relaciones en el ERD: el nombre de este diagrama es modelo lógico de datos o LDM, mas conocido como Modelo Relacional.

El Modelo Relacional es utilizado para mostrar como todos los datos relacionados en el modelo Entidad – Relación son almacenados en la base de datos. Este modelo consiste en la representación esquemática de tablas.

Existen reglas para la conversión del modelo conceptual al modelo lógico de la base de datos, es decir para pasar del modelo entidad – relación al modelo relacional. Estas reglas son:

Toda entidad se convierte en tabla.

Los atributos identificadores se convierten en llaves primarias.

Para representar la relación entre entidades se hace a través del intercambio de atributos identificadores generándose llaves foráneas.

RELACIONES – TIPOS

Para modelar datos deben existir relaciones entre los componentes que hacen parte del diseño de la base de datos. Estos componentes están almacenados como datos, mientras que las relaciones entre datos pueden ser definidas explícitamente usando la integridad de restricciones y/o eventos dela base de datos que modelen las reglas del negocio, o pueden definirse implícitamente, mediante sentencias de datos que seleccionen datos para consultar o poblar la base de datos.

Las siguientes relaciones de datos existen en el modelo relacional:

Llave Primaria: es una columna o mas columnas principales que determinan la unicidad del registro en la tabla. La llave primaria asegura que no existan valores duplicados para cualquier registro en toda tabla.

Dependencia Funcional: cada una de las columnas que no hacen parte de la llave primaria se consideran que dependen funcionalmente de la llave primaria.

Llave Foránea: es también conocida como relación padre/hijo porque los datos deben aparecer en cada tabla donde se va a crear la llave foránea. En la tabla hija, los datos pueden aparecer como parte de llave primaria o como una columna con dependencia funcional. Sin embargo, en la tabla padre, la columna referenciada debe ser llave primaria.

REGLAS:

1. Cada una de las entidades que se modelaron en el diseño conceptual genera una tabla en el diseño lógico, sin importar si se trata de una entidad fuerte o débil. Y los atributos que modelaban las características de las entidades se convierten en las columnas de la tabla.

2. El siguiente paso para la conversión de l modelo relacional es aplicar la segunda regla de la conversión, que indica que los atributos identificadores generan las llaves primarias de cada tabla.

En el modelo relacional los atributos identificadores se identifican con la sigla PK que significa Primary Key o Llave Primaria, y los atributos descriptivos obligatorios se representan con la sigla NN que significa Not Null o no nulo. Para los atributos descriptivos opcionales no se coloca ninguna sigla.

3. Para representar la relación entre entidades se hace a través del intercambio de atributos identificadores generándose llaves foráneas.

Los parámetros para la generación de la llave foránea depende de varios factores como la obligatoriedad, la multiplicidad y la herencia de llave primaria de la relación que la origina.

Para el caso de la obligatoriedad de la relación se debe tener en cuenta:

Obligatoria: Si la relación es obligatoria para la entidad en la que se va a crear la llave foránea no puede contener valores nulos.

Opcional: Si la relación es obligatoria para la entidad en la que se va a crear la llave foránea, entonces esta llave foránea puede contener valores nulos.

Para el caso de la multiplicidad de la relación se debe tener en cuenta:

En Relaciones Uno a Uno (1 - 1): El atributo identificador de una de las entidades pasa a la otra, o a donde la asociación es obligatoria.

En Relaciones Uno a Muchos (1 - N): El identificador de la entidad donde la asociación es 1 pasa a la otra como llave foránea.

4. Luego de aplicar las tres reglas de conversión para generar el modelo relacional a partir del modelo Entidad – Relación, se debe completar el modelo relacional adicionándole el tipo de dato, longitud máxima, y restricciones (si existen) que deben cumplir los valores que se almacenaran en cada una de las columnas de la tabla.

El tipo de dato y la longitud máxima de una llave foránea debe ser la misma de la columna que referencia.

El tipo de dato puede ser alfanumérico, numérico o fecha, ya que son los mas básicos y que están presentes en todos los sistemas manejadores de bases de datos.

MODELO RACIONAL:

En una base de datos relacional, los datos se organizan en tablas. Una tabla tiene cero o mas filas, cada fila contiene la información de un determinado sujeto de la tabla, por ejemplo en una tabla de alumnos, en una fila tenemos los datos de un alumno. Las filas en un principio están desordenadas.

Cada columna representa un campo de la tabla, sirve para almacenar una determinada información, por ejemplo en una tabla de alumnos tendremos una columna para almacenar nombre de los alumnos.

Todos los valores de una columna determinada tienen el mismo tipo de dato, y estos están extraídos de un conjunto de valores legales llamado dominio de la columna. A parte de los valores del dominio, una columna puede contener el valor nulo(Null) que indica que no contiene ningún valor.

En una tabla no pueden existir dos columnas con el mismo nombre pero ese nombre si se puede utilizar en otra tabla.

Generalmente todas las tablas deben tener una llave primaria definida. Una llave primaria es una columna (o combinación de columnas ) que permite identificar de forma inequívoca cada fila de la tabla, por lo que no pueden haber en una tabla dos filas con el mismo valor en la columna definida como llave primaria.

Una tabla tiene una única llave primaria, esto es diferente a que la llave primaria este compuesta por mas de una columna. Cuando se define una columna como llave primaria, ninguna fila de la tabla puede contener un valor nulo en esa columna ni tampoco se pueden repetir valores en la columna.

Una llave foránea es una columna (o combinación de columnas) que contiene un valor que hace referencia a una fila de otra tabla (en algunos casos puede ser la misma tabla).

Por ejemplo, existen dos tablas, la de alumnos y la de cursos, en la tabla de alumnos hay una columna codigo_curso que identifica al curso en el que esta matriculado el alumno; la columna codigo_curso en la tabla de alumnos es llave foránea, mientras que la columna codigo_curso de la tabla de cursos es la llave primaria.

Una tabla puede contener cero o mas llaves foráneas. Cuando se define una columna como llave foránea, las fila de la tabla pueden contener en esa columna o bien el valor nulo, o bien un valor que existe en la otra tabla. Eso es lo que se denomina integridad referencial que consiste en que los datos que referencian otros (llave foránea) deben ser correctos.