martes, 15 de junio de 2010

Biografía de Gottlob Frege

Frege fue un defensor del logicismo, la tesis de las matemáticas son reducibles a la lógica, en el sentido de que las verdades de la matemática son deducibles de las verdades de la lógica. Sin embargo su defensa del logicismo era de alcance limitado, aplicándola solo a la aritmética, puesto que Frege permaneció en gran medida kantiano respecto de la geometría. Frege introdujo a toda prosa una modificación en uno de sus axiomas, de la que dejo constancia en un apéndice de la obra.

Biografía de Gerhard Gentzen

Establece que toda derivación en el cálculo de consecuencias lógicas puede ser normalizada como una derivación igual conclusión pero sin utilizar lemas auxiliares. Sus principales trabajos fueron en fundamentos de la matemática y la teoría de la demostración, Gentzen introduce la noción de sistema de deducción natural para lógica clásica y lógica intuicionista. Demuestra que toda prueba puede escribirse de manera normalizada sin cortes por ello introduce el cálculo de consecuencias lógicas o se cuentes.

Biografía de Alfred Tarski

Realizo importantes investigaciones sobre fundamentación de la matematica.Logico filosofo y matemático estadounidense se de origen polaco. Autor de introducción ala lógica y ala metodología de ciencias deductivas.(1936) la concepción semántica de la verdad y los fundamentos de la semántica(1972)

Biografía de Heráclito Grecia

Afirma que el fundamento de todo está en el cambio incesante el ante de viene que todo se transforma en un proceso de continuo nacimiento y destrucción al que nada escapa.

Biografía de George Boole

Boole aplico una serie de símbolos y operaciones los símbolos podían manipularse según reglas fijas que producirían resultados lógicos. Las matemáticas modernas tendrán una evolución lenta, hasta completamente indispensable para conseguir la matemática lógica.

lunes, 14 de junio de 2010

Preposiciones o expreciones de lenguaje

Lógica (evaluables).
Abiertas (las variables cambian).
Indeterminadas (no puede ser variable, ni evaluable).

Ciclo de vida evolutivo

Este modelo acepta que los requerimientos del usuario puedan cambiar en cualquier momento. El modelo del ciclo de vida evolutivo afronta este problema mediante una interacción de ciclos, requerimientos –desarrollo-evaluación.
NOTA: Luego de cada desarrollo obtenemos una versión del producto.

Ciclo de vida en cascada o (Ciclo de vida clasico)

Es el mas empleado en la ing. En sistemas y se desarrollo a partir del ciclo convencidad de una ingeniera
Ingeniero de sistemas.
Análisis.
Diseño.
Codificación.
Prueba.
Utilización.
Sustitución.
Mantenimiento.

Ciclo de vida lineal

Es el más sencillo de todos los modelos. Consiste en descomponer la actividad global del proyecto en etapas separadas que son realizadas de manera lineal, es decir cada se realiza una sola vez, cadena.
Análisis.
Diseño.
Implementación.
Bebuggile.
Instalación.
Aceptación.

Ciclo de vida UV

Este ciclo fue diseñado por Alan Dwis, y contiene las mismas etapas que el ciclo de vida en cascada puro. A este sele agregaran 2 sud etapas de retroalimentación entre las etapas de análisis y mantenimiento, y en las de diseño y de bbuging.
NOTA: Este modelo nos ofrece mayor garantía de corrección del terminar el proyecto.

Ciclo de vida sashimi



Este ciclo de vida es parecido al ciclo de vida pasada puro, pero este ciclo no se puede sola por las etapas aumento la eficiencia ya que la retroalimentación entre etapas se encuentra implícitamente en el modelo.

domingo, 13 de junio de 2010

Ciclo de vida orientada a objetos

Este ciclo de vida orientada a objetos recién de la década de los 90 grados, tal vez como una de las mejores metodologías a seguir pura la creación de productos. Los objetos están representados por un conjunto de propiedades a los cuales denominados atributos, por otra parte, el comportamiento que tendrán estos objetos los denominamos métodos.
NOTA: Un modelo muy versátil, tanto para pequeños como para grandes proyectos.

Negación (NOT)

Algunos peces pueden nadar
Ningunos peces nadan

El agua es transparente
El agua no es transparente

México está en América
México no está en América

La mesa es azul
La mesa no es azul

Todos los días hace calor
No hace calor todos los días

Ningún oso polar tiene frio
Todos los osos polares tienen frio

Algún sabio no toma café
Ningún sabio toma café

El carro si funciona
El carro no funciona

Las niñas hablan mucho
Las niñas no hablan mucho

Yo no reprobé la materia de lógica
Yo si reprobé la materia de lógica

Conexiones lógicas binarias

Conjunción AND (^)
Dos preposiciones que se
Evalúan como p q -> p^q.

Disyunción OR (˅)
Con que alguna preposición
Se cumpla se cumple la
Completa combinación p q->p˅q

Condicional IF
Si p entonces q
(p->q)

Bicondicional IFTHE
p si solo q (p<->q)

Periféricos

Entrada
•Teclado
•Mouse
•Micrófono
•Cámara
•Escáner
•Lector de huellas
•Iphod
•Plenal pant

Salida
•Monitor
•Impresora
•Bocinas
•Cañón
•Proyector
•Audífonos
•Plotter
•Copiadora

Mixto
•Modem
•USB
•Red
•Fax
•CD
•DVD
•Disquete
•Blue raw
•Fire warell

Buses de datos: Son aquellos que reproducen información
Para almacenar en la memoria principal.

Buses de control: Son aquellos periféricos que usan la información para transferirla (Visualizarla).

Concepto de ciclo de vida

Se entiende como la sucesión de etapas por las que pasa el software desde que un proyecto es concebido hasta que se deja de usar.

Existen diversos modelos del ciclo de vida, es decir, diversas formas de ver el proceso del desarrollo del software, y cada uno de ellos va asociado, a una serie de métodos, herramientas y procedimientos que debemos usar a lo largo de un proyecto.

Nota: Se realiza de acuerdo a la naturaleza del proyecto de la aplicación de los métodos a usar controles y entregas.

Project Manager

Project Manager (líder del proyecto) el control de proceso de desarrollo y subministro se implementa las bases para construir de forma productiva software de alta calidad.

Métodos:
Criterios de calidad.
•Planificación
•Estimación del proyecto $$$
•Análisis de requisitos
•Diseño de estructura datos
•Programas, procedimientos
•Codificación
•Pruebas
•Mantenimiento

Herramientas:
Integran soporte aut. En cada fase de forma que sirve pata todo el proceso de desarrollo.

Procedimientos:
Secuencia en la que se aplican los métodos:
•Documentos que se reducen
•Controles que aseguren su calidad

Arte de la industria

Arte de la industria:

•Los sistemas informáticos se caracterizan por una rápida evolución de los componentes hardware, hoy dispone en una minicomputadora e incluso en una computadora personal.

•El software es un mecanismo que nos permite utilizar y explotar este potencial.

•Es necesario analizar, como la vamos a hacer, controlar el desarrollo de forma que al final obtengamos resultados esperados.

Evolución la industria del software
1970_________50 años_______Norma ISO 12270_____

Industria y la
Ciencia del software
Code & Fix
Primer método
Para la generación
Del software

Estandalizar el desarrollo del software
•Documentación
•Gestión
•Adquisición
•Validación
•Uso
•Requisitos de aplicación
•Servicios de sistema

Etapas para el desarrollo y ciclos de vida del software.
•Planificación
•Implementación
•Puesta en producción

ISO 12207

ISO 12207

Establece un proceso de ciclo de vida para el software que incluye procesos y actividades pasando por la adquisición y configuración de los servicios del sistema.

El estándar se basa en dos principios fundamentales: Modularidad y Responsabilidad.
Los procesos se clasifican en tres tipos: principales, de soporte y de la organización.

Procesos principales:
•Adquisición
•Suministro
•Desarrollo
•Operación
•Mantenimiento

Proceso de soporte:
•Documentación
•Gestión de codificación
•Aseguramiento de calidad
•Verificación
•Validación
•Revisión conjunta
•Auditoria
•Resolución de problemas

Procesos de organización:
•Gestión
•Mejora
•Infraestructura

Ciclo de vida de cascada



Nota: Un modelo muy versátil, tanto para pequeños como para grandes proyectos.

Ciclo de vida de interacción



Ciclo de vida de interacción
Y el producto final forma los entendidos durante la etapa de solicitud de requerimientos.

Es un modelo ideal a seguir cuando el usuario necesita entregas rápidas aunque el proyecto aun no esté terminado.

Ciclo de vida espiral




En este modelo hay cuatro actividades que envuelven a las etapas:

Primera planificación: Relevamiento de requerimientos iniciales o luego de una interacción.

Análisis de riesgo: De acuerdo con el relevamiento de requerimientos decidimos si continuamos con el desarrollo.

Implementación: Desarrollamos un prototipo basado en los requerimientos.

Evaluación

Ciclo de vida incremental




Ciclo de vida incremental
Se basa en la tecnología de construir e incrementando las funcionalidades del programa.

sábado, 12 de junio de 2010

Ciclo de vida de prototipos



Ciclo de vida de prototipos

Se utiliza para validar los requerimientos de los usuarios en cualquier ciclo de vida. Antes de adoptar este modelo de ciclo debemos evaluar si el esfuerzo por crear un prototipo vale realmente la pena adaptarlo.

Pseudocódigo

Pseudocódigo: Es una descripción de alta nivel de un algoritmo que emplea una mezcla de lenguajes natural con algunas convenciones sintácticas propias de lenguajes de programación, como asignaciones, ciclos y condicionales, es estudiado para describir algoritmos en libros y publicaciones científicas, y como producto intermedio durante el desarrollo de un algoritmo.

En pseudocódigo se describen los algoritmos utilizando una mezcla de lenguaje común, con instrucciones de programación, palabras claves, etc.

Pseudocódigo ejemplo:
Inicio de programa
Int x, y, z;
Leer valor de x;
Leer valor de y;
Realizar operación z= x/y;
Desplegar z en pantalla;
If deseas repetir el programa;
Si ve al paso 2;
No finalizar programa

lunes, 3 de mayo de 2010

Operadores matematicos

suma +
resta -
miltiplicación *
división /
modulo o resto %
incremento de 1 ++
decremento de 1 --

Relacionales

Mayor que >
Menor que <
Mayor o igual que >=
Menor o igual que <=
Diferente |=

Lógicos (para comparaciones)

And Y
or o
negación !

Tipos de datos:

Int--> integer--> entero
Float--> float--> flotante (número decimal)
Char--> Character--> caracter (letras)

sábado, 17 de abril de 2010

Memoria.

En un sistema los programas a ejecutarse deben ser almacenados en una memoria para que la CPU pueda acceder a ellos y realizar operaciones con ellos, una computadora sin memoria sería totalmente inservible.
Memoria Principal. Es la unidad de almacenamiento central, es aquí donde se almacenan los datos y los programas que la computadora está usando en ese momento, debe de ser suficientemente grande para soportar al sistema. La mayoría de esta memoria es memoria RAM, pero también está la memoria ROM, que contiene las instrucciones base de la computadora, es la que reconoce los dispositivos que esta posee, así como el conjunto de instrucciones para su funcionamiento.
Memoria RAM:Es una memoria bastante rápida, de acceso aleatorio, es volátil, así que solo almacena los datos temporalmente para ser usados mientras se ejecuta el programa en curso.
Memoria ROM:Memoria de solo lectura, esta memoria no se puede borrar, es programada por el proveedor de la computadora, esto de solo lectura es relativo, ya que si se puede borrar o alterar, pero no es volátil como la memoria RAM. EPROM. Esta memoria solo se puede borrar con rayos ultravioleta, se puede usar para un propósito especial en hardware. EEPROM. Es eléctricamente borrable y se puede programar mediante una interface especial conectada a una computadora. PROM. Esta puede ser programada una sola vez por el usuario o por el fabricante.
Memoria Secundaria. En esta memoria se almacenan los datos de manera permanente, para ser utilizados después. Estos datos pueden ser manipulados por el usuario ya que es aquí donde se guardan todos los archivos de este, incluyendo los programas que utiliza el sistema para funcionar, entre otros programas del usuario.
Disco duro. Unidad fija de gran capacidad, hasta de 120 Giga Bytes, Almacena los datos de forma permanente.
Discos flexibles. Unidad extraíble de pequeña capacidad, hasta 1.6 Mega Bytes dependiendo del sistema de archivos, almacena los datos como cargas magnéticas al igual que el disco duro.

Unidad central de proceso.

La unidad central de procesamiento o CPU (por el acrónimo en inglés de central processing unit), o simplemente el procesador o microprocesador, es el componente en un ordenador, que interpreta las instrucciones y procesa los datos contenidos en los programas de la computadora. Las CPU proporcionan la característica fundamental de la computadora digital (la programabilidad) y son uno de los componentes necesarios encontrados en las computadoras de cualquier tiempo, junto con el almacenamiento primario y los dispositivos de entrada/salida. Se conoce como microprocesador el CPU que es manufacturado con circuitos integrados.
los microprocesadores de un solo chip han reemplazado casi totalmente todos los tipos de CPU, y hoy en día, el término "CPU" es aplicado usualmente a todos los microprocesadores.
La expresión "unidad central de proceso" es, en términos generales, una descripción de una cierta clase de máquinas de lógica que pueden ejecutar complejos programas de computadora. Esta amplia definición puede fácilmente ser aplicada a muchos de los primeros ordenadores que existieron mucho antes que el término "CPU" estuviera en amplio uso.

Unidad de control.

La unidad de control (UC) es uno de los tres bloques funcionales principales en los que se divide una unidad central de procesamiento (CPU). Los otros dos bloques son la Unidad de proceso y el bus de entrada/salida.
Su función es buscar las instrucciones en la memoria principal, decodificarlas (interpretación) y ejecutarlas, empleando para ello la unidad de proceso.
Existen dos tipos de unidades de control, las cableadas, usadas generalmente en máquinas sencillas, y las microprogramadas, propias de máquinas más complejas. En el primer caso, los componentes principales son el circuito de lógica secuencial, el de control de estado, el de lógica combinacional y el de emisión de reconocimiento de señales de control. En el segundo caso, la microprogramación de la unidad de control se encuentra almacenada en una micromemoria, a la cual se accede de manera secuencial (1, 2, ..., n) para posteriormente ir ejecutando cada una de las microinstrucciones.

Estructura básica de un computador.

Un computador tiene como función de recibir cualquier información en cualquier unidad o periférico de entrada, procesarla en la unidad central de procesos y mostrar el resultado en la pantalla.
Partes de una computadora
Hardware:
Se llama hardware a todos los dispositivos que forman la PC y que se puedan tocar, es decir, el hardware es todo el conjunto de accesorios que se le pueden agregar a una PC: desde las tarjetas que la componen hasta el teclado desde el que ingresamos los datos y el monitor en donde visualizamos la información.
Software:
Se llama software a todos los programas (conjunto de instrucciones) que se ejecuten en la PC, es decir, cualquier programa de cualquier tipo (desde un juego, hasta un sistema de control de stock y facturación y sistemas de administración de redes). Dentro del software se ubican los sistemas operativos.

Preriféricos.

Periféricos.

Periféricos que se conectan a un puerto de entrada, por ejemplo tenemos al teclado y al mouse, también están los lápices ópticos, los lectores de código de barras, etc.Puertos de salida:Son todos aquellos por donde el CPU envía datos a otros dispositivos, por ejemplo están la salida de video y de sonido.Puertos de entrada / salida: Estos son una clase de puertos por donde el CPU puede enviar y recibir información.
Periféricos por donde pueda darnos mensajes y nosotros podamos enviarle órdenes. Ahora bien, existen infinidad de dispositivos que sirven de extensión a la computadora, muchos son para fines muy específicos y no se pueden abarcar, entre los dispositivos que son de uso común se encuentra la impresora, el teclado, el mouse y el monitor.

Partes de un computador.

Ejemplo de un diagrama de flujo.

Orden que sigue un diagrama de flujo.

Los diagramas de flujo son esquemas que representan gráficamente un algoritmo por medio de los pasos de un proceso, que se realizan para entender mejor al mismo y son utilizados en programación. Economía, y procesos industriales. Utilizan una serie de símbolos son significados especiales. Un diagrama de flujo o organigrama es una representación diagramática que ilustra la secuencia de las operaciones que se realizan para conseguir la solución de un problema y son usadas normalmente para seguir la secuencia lógica de las acciones en el diseño de programas de computadoras y una que se dibuja el diagrama de flujo, llega hacer fácil escribir el programa en cualquier idioma de alto nivel.
1.Lógica dibujada.
2.Es la representación grafica de la solución de un problema utilizando símbolos predefinidos para su interpretación.
3.Es la representación grafica del algoritmo.
4.A nivel de programación es la representación grafica de lo que se desea que la computadora realice.
5.Son representaciones graficas de un algoritmo el cual muestra los pasos o proceso a seguir para alcanzar la solución de un programa.
Es llamado diagrama de flujo por que los símbolos utilizados se conectan por medio de flechas para indicar la secuencia de una operación y son también llamados flujo gramas. Utilizan diversos símbolos para representar operaciones especificas.

Características deseables de un algoritmo.

1.Corrección.
2.Claridad.
3.Eficiencia.
4.Sencillez.
5.Bien documentado.

Eficiencia de un algoritmo:

•Entendimiento/Claridad
•Preciso
•Secuencia lógica
•Sencillez
•Comprendible
•Bien estructurado

1.El tamaño de datos a procesar
2.Calidad
3.Velocidad

Propiedades, Craracterísticas o reglas de un algoritmo.

•Debe ser preciso e indicar el orden.
•Debe ser definido (obtener el mismo resultado).
•Debe ser finito.
•Inicio, proceso, final.

1.Análisis del programa
2.Diseño del algoritmo: algoritmo, diagrama de flujo, pseudocódigo.
3.Codificación.
4.Compilación y ejecución.
5.Verificación.
6.Depuración.
7.Documentación.

Propiedades, caracteristicas o reglas de un algoritmo.

•Debe ser preciso e indicar el orden.
•Debe ser definido (obtener el mismo resultado).
•Debe ser finito.
•Inicio, proceso, final.

1.Análisis del programa
2.Diseño del algoritmo: algoritmo, diagrama de flujo, pseudocódigo.
3.Codificación.
4.Compilación y ejecución.
5.Verificación.
6.Depuración.
7.Documentación.

Conceptos 2

Quienes aportaron conocimientos acerca de los sistemas
Numéricos de programación:

Las explicaciones que se apoyaban en la lógica aparecieron por primera vez con la matemática helénica, especialmente con los elementos de Euclides.

Los primeros escritos conocidos que contienen números fueron creados por los egipcios en el imperio medio, entre ellos se encuentran papiro de Ahmes. La cultura del valle indo desarrollo el moderno sistema decimal, junto con el concepto cero.

Conceptos

¿Qué es programación?
Es una acción de realizar programas de software.

¿Qué es informática?
Es la ciencia que estudia el tratamiento de la información a través de una computadora.

Menciona algunos beneficios del software
En la actualidad: Economía, Libertad de uso, formatos estándar, etc.

Menciona las desventajas que implica el desarrollo de un software:
Fallos de sonido, audio, imagen, graficas.

Por qué es importante innovad en el software (mantener siempre actualizaciones del mismo):

Software: Es la parte lógica de la computadora de los cuales los procedimientos del hardware realiza inducidos por el software y este a su vez por nosotros.

El software es un traductor que hace que nuestras órdenes se conviertan en realidad, manipulando el hardware o la parte física.

El software está compuesto por programas de computadora

Beneficios:
• Economía
• Libertad de uso y redistribución
• Independencia tecnológica
• Fomento de la libre competencia
• Soporte y compatibilidad
• Formatos estándar
• Sistemas de puertas traseras y más seguro
• conexión más rápida y eficiente de fallos
• Métodos simples y unificados de gestión de software.
• Sistemas de expansión

Programa: Es un conjunto de instrucciones lógicas que le dicen a la computadora que debe hacer, además un programa debe satisfacer las necesidades de los usuarios utilizando eficientemente los recursos disponibles.

Sistema operativo: Es el programa más importante que se ejecuta en una computadora cualquier computadora de propósito general debe operar con un sistema operativo para lograr ejecutar otros programas.

Jerarquia de operadores

Para resolver que estudia la lógica proporcional para resolver una expresión aritmética hay una serie de pasos o reglas que se devén seguir. Primero se resuelven las expresiones que se encuentran entre paréntesis. Se aplica la jerarquía de operadores (primero las potencias, después multiplicación o división y por ultimo suma y resta). Al evaluar una expresión, si hay dos operadores de la misma jerarquía, se evalúan de izquierda a derecha. Sí, hay expresiones relacionales, se resuelven primero paréntesis, luego se encuentran los valores y por último se aplica la jerarquía de operadores. En caso de ser igual jerarquía, proceder de izquierda a derecha.

Conceptos básicos

¿Qué son las variables? Variable es una característica (magnitud, vector o número) que puede ser medida. Adaptado a diferentes valores en cada uno de los casos de un estudio.
¿Qué es una constante? Una constante es un dato cuyo valor no puede cambiar durante la ejecución del programa.
¿Qué es código fuente? El código fuente de un programa informático o (software) en un conjunto de líneas de texto que son las instrucciones que debe seguir la computadora para ejecutar dicho programa.
Lenguaje de alto nivel (ensamblador): Los ensambladores de alto nivel, son traductores de lenguaje ensamblador, características que incorporan en los modernos lenguajes de programación de alto nivel.
Lenguaje de nivel bajo: Un lenguaje de programación de nivel bajo es el que proporciona poco a ninguna abstracción del micro procesador de un ordenador. Consecuentemente es fácilmente trasladarlo a lenguaje de máquina.
Lógica matemática: Estudia los sistemas formales, en relación con el modo en el que codifican conceptos intuitivos de objetos matemáticos como conjuntos, números, demostraciones y computación.
Lógica de Boole: (también llamadas retículas booleanas) en informática y matemática, es una estructura algebraica que organizan las operaciones unión, interacción y complemento.
Bit: Es el acrónimo de binary y digit. (Digito binario). Un bit es un código del sistema de numeración binario.
Lógica proporcional: Es un sistema formal diseñado para analizar ciertos tipos de argumentos.
Semántica: Desarrolla una serie de problemas lógicos de significación, estudia la relación entre un signo lingüístico y la realidad.
Sintaxis: Es la parte de la gramática que estudia las reglas que gobierna la convocatoria de constituyentes sintáctica y la formación de unidades superiores a estos, como los sintagmas y oraciones gramaticales.

viernes, 5 de marzo de 2010

Porque es importante la creatividad en un técnico programador de software

Es importante por que un técnico se dedica a crear o a diseñar
programas, si un técnico no tiene la creatividad suficiente para
realizar su programa. Tendrá dificultades para diseñar un
software, así mismo su programa no será de muy buena calidad.

Otro punto de vista es que no solo depende un técnico de la
creatividad sino también de si su programa va a funcionar.
Un técnico se enfoca más en la creatividad, diseño, funcionamiento,
y más que nada en la calidad de su programa y su forma original
de diseñar un software.

Esto hace que sea un técnico programador de software prestigiado
y reconocido por su trabajo. Un técnico debe tener una manera de
pensar tanto lógica como razonable así mismo tendrá la capacidad
de saber como es que quiere realizar su programa de manera
sencilla y creativa.

martes, 2 de marzo de 2010

¿Qué espero de mi carrera?

Espero poder desarrollar y manejar fácilmente lo que es mi carrera,
ser capas de elaborar un software ya que deseo crear videojuegos,
paginas Web, entre otros programas. De esta carrera espero obtener
muchos beneficios tanto propios como sociales, ya que es una carrera
en la cual me voy a desarrollar a futuro. Mi objetivo es que al terminar
mi carrera técnica profesionista, buscar una empresa en estados unidos
en la cual pueda expandir mi profesión, así como tambien obtener un
salario adecuado conforme a mis capacidades como profesionista.
Me gustaría especializarme en técnica en sistemas ya que es una
profesión que deseo desarrollar. Me gustaría desarrollar un software
el cual sea diseñado para ayudar a todos los jóvenes estudiantes
que necesiten obtener información tanto de tareas, proyectos, etc.
Me gustaría mejorar la página de facebook creo que tiene muy pocas
actualizaciones, me gustaría mejorar la calidad de esa página social.
Mi ética profesional la aplicaría de una manera razonable y adecuada.