Diseño De Software
viernes, 4 de mayo de 2012
ALGORITMOS
ALGORITMOS
En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-Juarismi ) es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.
LOGICA
LÓGICA
La lógica es una ciencia formal y una rama de la filosofía que estudia los principios de la demostración e inferencia válida. La palabra deriva del griego antiguo λογική (logike), que significa «dotado de razón, intelectual, dialéctico, argumentativo», que a su vez viene de λόγος (logos), «palabra, pensamiento, idea, argumento, razón o principio».
La lógica examina la validez de los argumentos en términos de su estructura, (estructura lógica), independientemente del contenido específico del discurso y de la lengua utilizada en su expresión y de los estados reales a los que dicho contenido se pueda referir.
En el siglo XX la lógica ha pasado a ser principalmente la lógica simbólica. Un cálculo definido por unos símbolos y unas reglas de inferencia. Lo que ha permitido un campo de aplicación fundamental en la actualidad: la informática.
Hasta entonces la lógica no tuvo este sentido de estructura formal estricta. La tradición aristotélica y estoica, mantuvo siempre una relación con los argumentos del lenguaje natural, concediendo por tanto a los argumentos una transmisión de contenidos verdaderos. Por ello aún siendo formales, no eran formalistas.
miércoles, 21 de marzo de 2012
TRADUCTORES Y COMPILADORES
traductores de lenguajes de programación
Un traductor es cualquier programa que toma como entrada un texto escrito en un lenguaje, llamado fuente y da como salida otro texto en un lenguaje, denominado objeto.
Existen distintos tipos de traductores, entre ellos destacan:
- Ensambladores
- Pre procesadores
- Intérpretes
- Compiladores
Compiladores Es el tipo de traductor más conocido. Se trata de un programa que traduce código fuente escrito en un lenguaje de alto nivel (Pascal) en código máquina (no siempre). Son más rápidos que los intérpretes pero presentan mayor dificultad a la hora de detectar errores. Un compilador es un programa que lee el código escrito en un lenguaje (lenguaje origen), y lo traduce o traduce en un programa equivalente escrito en otro lenguaje (lenguaje objetivo). Como una parte fundamental de este proceso de traducción, el compilador le hace notar al usuario la presencia de errores en el código fuente del programa.
Etapas del proceso de compilación:
- Edición. Esta fase consiste en escribir el programa empleando algún lenguaje y un editor. Como resultado nos dará el código fuente de nuestro programa.
- Compilación. En esta fase se traduce el código fuente obtenido en la fase anterior a código máquina. Si no se produce ningún error se obtiene el código objeto.
En caso de errores el compilador los mostraría para ayudarnos a corregirlos y se procedería a su compilación de nuevo, una vez corregidos. - Linkado. Esta fase consiste en unir el archivo generado en la fase dos con determinadas rutinas internas del lenguaje, obteniendo el programa ejecutable.
Existen dos tipos de linkados:
- Linkado estático: Los binarios de las librerías se añaden a nuestros binarios compilados generando el archivo ejecutable.
- Linkado dinámico: no se añaden las librerías a nuestro binario sino que hará que se carguen en memoria las librerías que en ese momento se necesiten.
Una vez traducido, compilado y linkado el archivo esta listo para su ejecución donde también podrán surgir problemas y fallos, para los cuales tendríamos que volver a realizar todo el proceso anteriormente citado, de modo que puedan ser corregidos. Por este motivo es importante realizar numerosas pruebas en tiempo de ejecución antes de presentar el programa al cliente.
Partes de un compilador
Normalmente los compiladores están divididos en dos partes:
- Front End: es la parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Esta parte suele ser independiente de la plataforma o sistema para el cual se vaya a compilar.
- Back End: es la parte que genera el código máquina, específico de una plataforma, a partir de los resultados de la fase de análisis, realizada por el Front End.
Esta división permite que el mismo Back End se utilice para generar el código máquina de varios lenguajes de programación distintos y que el mismo Front End que sirve para analizar el código fuente de un lenguaje de programación concreto sirva para la generación de código máquina en varias plataformas distintas.
El código que genera el Back End normalmente no se puede ejecutar directamente, sino que necesita ser enlazado por un programa enlazador (linker).
Tipos de compiladores
Esta taxonomía de los tipos de compiladores no es excluyente, por lo que puede haber compiladores que se adscriban a varias categorías:
- Compiladores cruzados: generan código para un sistema distinto del que están funcionando.
- Compiladores optimizadores: realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original.
- Compiladores de una sola pasada: generan el código máquina a partir de una única lectura del código fuente.
- Compiladores de varias pasadas: necesitan leer el código fuente varias veces antes de poder producir el código máquina.
- Compiladores JIT (Just In Time): forman parte de un intérprete y compilan partes del código según se necesitan.
miércoles, 14 de marzo de 2012
DIAGRAMA DE FLUJO
es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como la programación, la economía, los procesos industriales y la psicología cognitiva. Estos diagramas utilizan símbolos con significados bien definidos que representan los pasos del algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y de fin de proceso.
CARACTERÍSTICAS COMUNES
Un diagrama de flujo siempre tiene un único punto de inicio y un único punto de término. Además, todo camino de ejecución debe permitir llegar desde el inicio hasta el término.
Las siguientes son acciones previas a la realización del diagrama de flujo:
- Identificar las ideas principales a ser incluidas en el diagrama de flujo. Deben estar presentes el dueño o responsable del proceso, los dueños o responsables del proceso anterior y posterior y de otros procesos interrelacionados, otras partes interesadas.
- Definir qué se espera obtener del diagrama de flujo.
- Identificar quién lo empleará y cómo.
- Establecer el nivel de detalle requerido.
- Determinar los límites del proceso a describir.
Los pasos a seguir para construir el diagrama de flujo son:
- Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente.
- Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico.
- Si el nivel de detalle definido incluye actividades menores, listarlas también.
- Identificar y listar los puntos de decisión.
- Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos.
- Asignar un título al diagrama y verificar que esté completo y describa con exactitud el proceso elegido.
TIPOS DE DIAGRAMAS DE FLUJO
- Formato vertical: En él, el flujo o la secuencia de las operaciones, va de arriba hacia abajo. Es una lista ordenada de las operaciones de un proceso con toda la información que se considere necesaria, según su propósito.
- Formato horizontal: En él, el flujo o la secuencia de las operaciones, va de izquierda a derecha.
- Formato panorámico: El proceso entero está representado en una sola carta y puede apreciarse de una sola mirada mucho más rápido que leyendo el texto, lo que facilita su comprensión, aún para personas no familiarizadas. Registra no solo en línea vertical, sino también horizontal, distintas acciones simultáneas y la participación de más de un puesto o departamento que el formato vertical no registra.
- Formato Arquitectónico: Describe el itinerario de ruta de una forma o persona sobre el plano arquitectónico del área de trabajo. El primero de los flujogramas es eminentemente descriptivo, mientras que los utilizados son fundamentalmente representativos.
VENTAJAS DE LOS DIAGRAMAS DE FLUJO
- Favorecen la comprensión del proceso al mostrarlo como un dibujo. El cerebro humano reconoce muy fácilmente los dibujos. Un buen diagrama de flujo reemplaza varias páginas de texto.
- Permiten identificar los problemas y las oportunidades de mejora del proceso. Se identifican los pasos, los flujos de los re-procesos, los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión.
- Muestran las interfaces cliente-proveedor y las transacciones que en ellas se realizan, facilitando a los empleados el análisis de las mismas.
- Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan mejoras en el proceso.
- Al igual que el pseudocódigo, el diagrama de flujo con fines de análisis de algoritmos de programación puede ser ejecutado en un ordenador, con un Ide como Free DFD
MAPA DE PROCESO
El mapa de procesos es una representación grafica que nos ayuda a visualizar todos los procesos que existen en una empresa y su interrelación entre ellos. Antes de realizar el mapa de procesos habrá que identificar todos los procesos.
A pesar de que en la norma ISO 9001 no existe el requisito de desarrollar concretamente un mapa de procesos, se ha convertido una práctica generalizada siguiendo lo establecido en los requisitos generales del apartado 4.1 de la Norma ISO 9001:2000 que establece que la organización debe a) identificar los procesos necesarios para el sistema de gestión de la calidad y su aplicación a través de la organización y b) determinar la secuencia e interacción de estos procesos (mapa).
ISO 9001:00 requiere que identifiquemos los procesos del sistema de gestión de la calidad y sus relaciones. Pero no pide que tengamos que representar todo esto en una página, y que le llamemos mapa de procesos. De todos modos es buena idea el incluir un mapa de procesos en el manual de calidad después de haber enumerado todos los procesos que tiene la empresa.
Los pasos para hacer un mapa de procesos serian los siguientes:
1) Identificar a los actores
Clientes, proveedores y otras organizaciones de su entorno
2) Identificar la línea operativa
La línea operativa de nuestra organización está formada por la secuencia encadenada de procesos que llevamos a cabo para realizar nuestro producto
3) Añadir los procesos de soporte a la línea operativa y los de Dirección
Dirección, mejora continua, estrategia, o lo que queramos
4) Añadir los procesos que afectan a todo el sistema
Gestión de reclamaciones, recursos humanos, auditorias internas
En resumen tenemos tres tipos de procesos:
- Estratégicos
- Clave
- Apoyo
Os adjunto un Mapa de procesos a modo de ejemplo.
En el Mapa se deberán identificar tres tipos de procesos:
- Procesos estratégicos: son todos los procesos que proporcionan pautas de acción para todos los demás procesos y son realizados por la dirección general o en nombre de esta. Se suelen hacer referencia a reglamentación, leyes, normativas,… aplicables al producto o servicio y que no son controladas por el mismo.
- Procesos clave u operativos: hacen referencia a los Procesos de la cadena de Valor de la Organización y tienen impacto en el cliente creando valor para éste. Son las actividades esenciales de la Organización, su razón de ser.
- Procesos de apoyo o soporte: son aquellos que dan apoyo a los procesos fundamentales de la Organización.
viernes, 24 de febrero de 2012
LA ENTREVISTA
La ENTREVISTA es un acto de comunicación oral o escrita que se establece entre dos o más personas (el entrevistador y el entrevistado o los entrevistados) con el fin de obtener una información o una opinión, o bien para conocer la personalidad de alguien. En este tipo de comunicación oral debemos tener en cuenta que, aunque el entrevistado responde al entrevistador, el destinatario es el público que está pendiente de la entrevista. Según el fin que tenga esta podemos hablar de:
- Entrevista periodística
- Entrevista de televisión
- Entrevista clínica
- Entrevista de trabajo
TIPOS DE ENTREVISTA
La entrevista tiene un número de variantes casi indeterminadas, a continuación se citan varios tipos de entrevista que aparecen en los medios de comunicación:
Suscribirse a:
Comentarios (Atom)












