lunes, 1 de noviembre de 2010

Hello!!!!!! my name is Luis moises zepeda.

jueves, 27 de mayo de 2010

Videojuego




Un videojuego (del inglés video game) o juego de video es un software informático creado para el entretenimiento en general y basado en la interacción entre una o varias personas y un aparato electrónico que ejecuta dicho videojuego; este dispositivo electrónico puede ser una computadora, un sistema arcade, una videoconsola, un dispositivo handheld o un teléfono móvil, los cuales son conocidos como "plataformas". Aunque, usualmente el término "video" en la palabra "videojuego" se refiere en sí a un visualizador de gráficos rasterizados, hoy en día se utiliza para hacer mención de cualquier tipo de visualizador.
Entendemos por videojuegos todo tipo de juego digital interactivo, con independencia de su soporte.
Al dispositivo de entrada usado para manipular un videojuego se le conoce como "
controlador de juego", y varía dependiendo de la plataforma que se trate. Por ejemplo, un controlador de consola podría únicamente consistir de un botón y una palanca de mando. No obstante, otro podría presentar una docena de botones y una o más palancas. Frecuentemente, los primeros juegos informáticos hacían uso de un teclado para llevar a cabo una interacción, e incluso se necesitaba que el usuario adquiriera una palanca por separado, que tenía un botón como mínimo. Varios juegos de computadora modernos permiten, y en algunos casos exigen, que el usuario use un teclado y un mouse de forma simultánea.
Por lo general, los videojuegos hacen uso de otras maneras de proveer la interactividad e información al jugador. El audio es casi universal, usándose dispositivos de
reproducción de sonido, tales como altavoces y auriculares. Otros de tipo feedback se presentan como periféricos hápticos que producen una vibración o realimentación de fuerza, con la manifestación de vibraciones cuando se intenta simular la realimentación de fuerza.
La creación continua de videojuegos ha dado a menudo como resultado obras que podrían bien englobarse en más de un género incluso no pertenecer a ninguno de los ahora establecidos. Algunos ejemplos serían:
Half-Life (FPS/aventura de acción), Tomb Raider (aventura de acción/plataformas/lógica), Koudelka (videojuego de rol), Flashback: The Quest for Identy (plataformas/aventura de acción), Bishi-Bashi (habilidad), Dragon's Lair (aventura animada), Portal (FPS/lógica/plataformas), Mirror's Edge (FPS/plataformas).
Ejemplos del surgimiento de nuevos géneros a partir de experimentos iniciales podrían ser los "videojuegos musicales", como
Bust a Groove/Bust a Move o Parapa the Rapper, o a comienzos/mediados de los ochenta el género plataformas, por fases avanzables, que posteriormente hemos conocido, respecto del plataformas primigenio de pantalla fija (tipo Donkey Kong o Mario Bros.), que pasaría poco a poco a ser englobado dentro del género, más amplio, rompecabezas, siendo a su vez muchos de estos incluidos junto con otros, al principio, dentro del entonces muy diverso y heterogéneo género de aventura. La especialización que hoy conocemos, la cual convierte a muchas de las clasificaciones originales en poco menos que arbitrarias o inviables, no ha sido sino fruto de una paulatina profundización y desarrollo, acorde con los adelantos tecnológicos, de las distintas fórmulas iniciales que con el tiempo se fueron dando.

Los videojuegos han tenido en ocasiones mala imagen, originada está en muchas ocasiones en opiniones vertidas por los medios de comunicación si bien con el tiempo la opinión general ha ido mejorando.
El videojuego ha fungido como un arma de dos filos en el público infantil: según un estudio, el niño desarrolla habilidades mentales y su capacidad de razonamiento es más activa en comparación a un niño de hace 20 años que no contaba con esta tecnología; otra consecuencia es la falta de socialización y algunos aspectos de su desarrollo motriz.


Otros estudios en cambio apuntan a todo lo contrario, a que aumentan la sociabilidad del niño e incluso algunos aportan beneficios como el ejercicio físico.En cambio en los adultos ha sido un liberador de estrés. Hay estudios que prueban que los videojuegos pueden ser un buen aporte a la buena salud de un adulto. Otros afirman que mejoran la salud visual e incluso de habilidades muy específicas como la necesaria para la cirugía.
Un catedrático de la Universidad de
Nottingham, también ha afirmado que pueden tener el efecto de atenuar el dolor.
Así mismo ARCOSUR, un barrio de nueva construcción en Zaragoza, España, dispondrá de los videojuegos como nombres para sus calles. Una iniciativa vecinal de ARQUEROS, asociación de vecinos de arcosur que tuvo gran relevancia en el país.


la television


La televisión es un medio de comunicación muy importante que llega a todos los hogares y a las clases sociales de Venezuela por lo cual tiene gran influencia en el comportamiento de los individuos y más aún en los niños.
El fenómeno televisivo, típico de nuestros tiempos, presenta múltiples facetas de interés general para los individuos, la característica de la T.V. es la de ser un medio de comunicación de masa debido a lo cual se concentran en torno a ellos números y variados intereses como es la programación que transmite. Es el medio de comunicación que mayor influencia tiene dentro de los hogares, al colocarse como una organización social, como una cultura socializadora que lleva inmerso un estudio de vida, unida a necesidades, aspiraciones y formas de pensar y actuar con el propósito de crear una masa de usuarios que responde a los intereses de los grupos económicos dominantes.
Este es un medio de comunicación que distorsiona la realidad ya que está sustentado sobre la base de acciones que no se permiten en nuestros códigos sociales, pero sin embargo son permitidos en la televisión como son los crímenes y la violencia en general.
Por otra parte, demanda atención y presenta una realidad fragmentada y breve, un ejemplo de ello son los comerciales, produciendo en poco tiempo una serie de estímulos.
El tiempo ocupado en ver televisión representa la secuencia en los horarios en los diferentes días y distintos canales, un ejemplo de esto son las telenovelas, las comiquitas y las películas y otras cosas en general, que aparecen como un espacio de confrontación cotidiana entre el sentido de lo nacional, la sensibilidad, los personajes propios, modelos y formatos televisivos capaces de trascender la frontera nacional.
Es un medio de comunicación que ha sido considerado por investigadores, así como la gente común como un interruptor de comunicación en la familia y en la comunidad, donde comparte características con otros entes de la industria audiovisual es un fenómeno particular que posee identidad por sí misma y que ha logrado cumplir más eficientemente el contenido logrando acercarse cada día más al público.


Televisión en Blanco y Negro

Experimentalmente, hay televisión a colores desde los años 20. En los 50, la lucha de diversos sistemas incompatibles obligó a establecer normas técnicas muy difíciles de cumplir que retardaron la extensión de esta maravillosa tecnología hasta poco antes de comenzar la década de los 70. Pero en Venezuela, país en el que grandes avances como la electricidad, el teléfono, la radio y la televisión a colores fueron retardada por las autoridades al punto que, a fines de los 70, nuestras televisores se veían obligadas a hacer fuentes inversiones para "descolorizar" sus transmisiones, pues tanto los equipos electrónicos como los programas se hacían en versión policromática en casi todas partes del mundo, mientras que en Venezuela la televisión a colores aún no estaba legalmente permitida, por la indecisión sobre el sistema a escoger.
Por esta razón, la etapa de la televisión venezolana en blanco y negro se prolongó algo más que en la mayoría de los países, incluyendo casi todas las naciones latinoamericanas. Hasta Cuba, por disposición del gobierno de Fidel Castro, a pesar del bloqueo norteamericano y la insuficiente ayuda soviética, tuvo televisión a colores antes que Venezuela.
En 1961, Un programa especial, transmitido por Radio Caracas Televisión en combinación con Radio Caracas, realizó la primera experiencia de sonido estereofónico en televisión. Pero eso era apenas el atisbo de una gran revolución que habría de modificar profundamente los conceptos y prácticas de la producción de televisión: el videotape. En Venezuela esta tecnología fue traída por la televisora Nacional a fines de 1960. En 196, Radio Caracas Televisión hizo una fuerte inversión para instalar un moderno Departamento de Grabación en Videotape, el cual comenzó a funcionar poco antes de cumplir la planta, 8 años de su inauguración.


Televisión a Color

La televisión en color entró en funcionamiento en Estados Unidos y otros países en la década de 1950. En México, las primeras transmisiones en color se efectuaron en 1967 y en la década siguiente en España. Más del 90% de los hogares en los países desarrollados disponen actualmente de televisión en color.
La televisión en color se consigue transmitiendo, además de la señal de brillo, o luminancia, necesaria para reproducir la imagen en blanco y negro, otra que recibe el nombre de señal de crominancia, encargada de transportar la información de color. Mientras que la señal de luminancia indica el brillo de los diferentes elementos de la imagen, la de crominancia especifica la tonalidad y saturación de esos mismos elementos. Ambas señales se obtienen mediante las correspondientes combinaciones de tres señales de vídeo, generadas por la cámara de televisión en color, y cada una corresponde a las variaciones de intensidad en la imagen vistas por separado a través de un filtro rojo, verde y azul. Las señales compuestas de luminancia y crominancia se transmiten de la misma forma que la primera en la televisión monocroma. Una vez en el receptor, las tres señales vídeo de color se obtienen a partir de las señales de luminancia y crominancia y dan lugar a los componentes rojo, azul y verde de la imagen, que vistos superpuestos reproducen la escena original en color. El sistema funciona de la siguiente manera.
La imagen de color pasa a través de la lente de la cámara e incide sobre un espejo dicroico refleja un color y deja pasar todos los demás. El espejo refleja la luz roja y deja pasar la azul y la verde. Un segundo espejo dicroico refleja la luz azul y permite el paso de la verde. Las tres imágenes resultantes, una roja, otra azul y otra verde, se enfocan en la lente de tres tubos tomavistas (orticones de imagen o plumbicones). Delante de cada tubo hay unos filtros de color para asegurar que la respuesta en color de cada canal de la cámara coincide con los colores primarios (rojo, azul y verde) a reproducir. El haz de electrones en cada tubo barre el esquema de imagen y produce una señal de color primario. Las muestras de estas tres señales de color pasan a un sumador electrónico que las combina para producir la señal de brillo, o blanco y negro. Las muestras de señal también entran en otra unidad que las codifica y las combina para generar una señal con la información de tonalidad y saturación. La señal de color se mezcla con la de brillo a fin de formar la señal completa de color que sale al aire.
El receptor de televisión en color lleva un tubo de imágenes tricolor con tres cañones de electrones, uno para cada color primario, que exploran y activan los puntos fosforescentes en la pantalla del televisor. Estos puntos minúsculos, que pueden sobrepasar el millón, están ordenados en grupos de tres, uno rojo, otro verde y otro azul. Entre los cañones de electrones y la pantalla hay una máscara con diminutas perforaciones dispuestas de forma que el haz de electrones de cada cañón sólo pueda incidir sobre su correspondiente punto fosforescente. El haz que pinta la información roja sólo chocará con las fosforescencias rojas, y lo mismo para los otros colores.
Cuando la señal de color entrante llega a un televisor de color, pasa por un separador que aísla el color del brillo. A continuación se descodifica la información de color. Al volverse a combinar con la información del brillo, se producen diferentes señales de color primario que se aplican al tubo tricolor, recreándose la imagen captada por la cámara de color. Si la señal de color llega a un televisor en blanco y negro, los circuitos del receptor ignoran los datos relativos a tonalidad y saturación y sólo tienen en cuenta la señal de brillo. La norma de televisión en color adoptada en Estados Unidos por el National Television System Committee (NTSC) y que es la usual en América Latina, no ha sido aceptada en otras partes del mundo. Quizá sobre todo por la ausencia de consenso acerca del equilibrio entre calidad y complejidad de la norma a utilizar. En muchas partes de Europa se rechaza la norma NTSC. En consecuencia, existen en el mundo varias normas, cada una de ellas con sus propias características. En el Reino Unido, la norma actual es PAL (Phase Alternate Line,), mientras que Francia utiliza la norma Color Secuencial de Memoria (SECAM). A grandes rasgos ambas pueden coexistir, pero existe un cierto grado de incompatibilidad en los equipos receptores.


Tecnología del automóvil


Desde que se inventó el automóvil, este ha acogido multitud de componentes diseñados para él o incorporados posteriormente. Esto convierte al automóvil en un compendio de tecnología rodante.

Constituye el elemento de protección y alojamiento para los ocupantes y los órganos mecánicos. Tradicionalmente se soportaba en un chasis, siendo hoy día estructural,por motivos de peso y de seguridad, pasando el chasis a formar parte integrante de la misma . El chasis sin embargo permanece por motivos de robustez, para los vehículos industriales y de transporte a partir de un cierto tonelaje, así como para los Todo-terreno de mayores exigencias.


Los motores de pistones no son perfectos y tienen algunas desventajas que otros como los eléctricos o los de vapor no tenían. Estos motores tenían un par motor mucho más constante que los actuales.
Desde 1940 se fabrican motores Wankel, de mayor rendimiento. Consisten en un rotor casi triangular que gira sobre un eje excéntrico dentro de una cámara elíptica. Consiguen una potencia mucho mayor, igual de fiable y con un par motor más constante que en un motor de pistones. Está basado en la idea original de motor de Otto, pero que no se pudo desarrollar por no existir unos materiales que aguantaran la potencia y rozamiento que generaban; además de pecar de un exceso de consumo de
aceite. Actualmente sólo lo equipa el Mazda RX-8.
Motor de dos tiempos
Motor de explosión
Motor de mezcla pobre
Motor diésel
Motor Wankel


Cajas de cambios

Artículo principal: Caja de cambios
Aunque hace mucho que existen los
cambios automáticos, en muchos países se siguen utilizando mucho los cambios manuales. También hay sistemas que permiten el cambio automático y pasar a cambio manual. Algunos avances de los sistemas de cambio actuales son:
Cambios sincronizados. Evita que "rasquen" la marchas.
Cambios secuenciales. Se cambia subiendo y bajando las marchas de uno en uno mediante un pulsador. Hace muchos años que esta en las
motocicletas.
Transmisión variable continua - Permite tener la relación de marchas que se quiera, no hay que elegir entre 5,6 o 7 marchas.
Doble Embrague
La caja de cambios de doble embrague es un tipo de caja de cambios semiautomática secuencial, cuyo funcionamiento se basa en la utilización de un sistema robotizado de doble embrague y doble conjunto de selectores de marchas; uno para las marchas pares y otro para las impares. Además, consta de un doble piñón de diferencial, lo que le permite reducir sus dimensiones y lograr los escalamientos necesarios en la división de revoluciones del motor. Su funcionamiento se puede seleccionar entre el modo totalmente automático y el modo manual/secuencial, con mandos al volante o en la misma palanca selectora.

Transmisión
La potencia del motor se transmite a las ruedas motrices, que impulsan al automóvil. la potencia hay que transmitirla al suelo a través de las ruedas de un eje o de ambos. En un principio los automóviles eran de
tracción trasera debido a que las ruedas directrices, que eran las delanteras, no podían recibir la potencia del motor al mismo tiempo. Hoy en día hay una gran mayoría de vehículos con tracción delantera. Es más simple, barata y tiene menos pérdidas de energía por rozamiento, aunque la tracción trasera es más adecuada para automóviles deportivos por sus cualidades dinámicas. Los automóviles todoterreno suelen tener tracción a las cuatro ruedas, aunque otros tipos de automóviles también utilizan este sistema.
La diferencia de giro de las ruedas en las curvas (las ruedas exteriores giran más rápido que las interiores), presentaba un problema para transmitir el movimiento a las ruedas. Luego se solucionó utilizando el
diferencial. El diferencial presentaba problemas de pérdida de tracción. Si una de las ruedas motrices perdía tracción no se podía mover el coche aunque el resto si la tuviesen. Para solventar este problemas se inventaron varios sistemas:
El
diferencial autoblocante
El
diferencial Ferguson o de acoplamiento viscoso.
El diferencial
Torsen.
diferenciales bloqueables mediante un pulsador o mediante un mecanismo en los cubos de las ruedas.
Sistemas electrónicos de
control de tracción. Muchos basados en el ABS.

Suspensión

La suspensión tiene el objetivo de mantener las ruedas pegadas al suelo y evitar en lo posible que las irregularidades del suelo las reciban los pasajeros. Al principio los coches no llevaban amortiguadores, y los elementos elásticos utilizados tienden a rebotar, con lo que las ruedas se despegan y pueden llegar a hacer saltar al coche. Evitar esto es la misión de los amortiguadores.
Al principio solamente eran dos discos que rozaban entre ellos para frenar el rebote de muelle. Hoy en día, son hidráulicos o de gas, incluso regulables en dureza como los
reológicos, útiles en suspensiones activas.
Normalmente se han usado elementos elásticos metálicos para sostener el peso del vehículo:
ballestas, barras de torsión o muelles helicoidales. Pero el aire o el gas, habitualmente nitrógeno, absorbe las oscilaciones del suelo de forma más suave o no rebota, como por ejemplo, los muelles. Esta suspensiones neumáticas se suelen regular fácilmente, la altura, añadiendo más gas y la dureza reduciendo el tamaño de la cámara de gas que sostiene el peso del coche.
Véase también:
suspensión hidroneumática de Citroën, barra estabilizadora.

Frenos
Los
frenos deben tener capacidad para detener el coche en el menor espacio posible. Además deben tener una buena resistencia a la fatiga y ser fácilmente dosificables. A la hora de una frenada de emergencia lo más habitual es frenar todo lo posible (sobre todo al final), aunque no siempre es lo adecuado, especialmente si no se tiene ABS, que evita que se bloqueen la ruedas, reduciendo la distancia de frenado y sobre todo perdiendo la capacidad de dirección.
Otro sistemas que sí aumentan la capacidad de frenado son el
BAS y el reparto electrónico de frenada.
Fuera de las ayudas electrónicas los sistemas mecánicos de frenada también han avanzado. Antes se usaban
tambores y actualmente se tienden a poner discos de freno incluso en las ruedas traseras. Una gran mejora de los discos de freno son los discos de carbono y cerámicos que poseen un resistencia inigualable. Los que se usan en Fórmula 1 se llegan a poner incandescentes y siguen frenando sin problemas. Porsche los incluye en algunos de su deportivos, y superan con creces su prueba específica de resistencia a la fatiga, 25 frenadas seguidas desde el 90% de la velocidad máxima hasta la parada.
Actualmente para trasmitir la orden de frenar se utiliza un circuito hidráulico pero
Mercedes-Benz está pensando en sustituirlo por un sistema eléctrico.

Alumbrado

Para poder desplazarse en condiciones de poca iluminación (de noche, túneles, etc.) los automóviles poseen un sistema de iluminación de la vía. Estos han tenido una importante evolución.
Inicialmente utilizaban bombillas incandescentes, basadas en un filamento aislado en una bombilla de vidrio al vacío.
Posteriormente surgieron los focos halógenos, que son los más ampliamente utilizados actualmente, cuya operación es similar a la bombilla incandescente, pero en vez de estar el filamento en vacío, el filamento está en un ambiente en el que se ha introducido un gas halógeno. Los gases
halógenos son flúor, cloro, bromo y yodo.
Últimamente se han empezado a utilizar focos de xenón, que operan basándose en una descarga eléctrica, del tipo de un arco voltaico, en presencia de un
gas noble (los gases nobles son helio, neón, argón, xenón, criptón y radón). Este sistema produce un haz de luz potente, de alta eficiencia, de un color azulado que los caracteriza, manteniendo a la vez un bajo consumo de electricidad.

SOFTWARE



Software se refiere al equipamiento lógico o soporte lógico de una computadora digital, y comprende el conjunto de los componentes lógicos necesarios para hacer posible la realización de tareas específicas; en contraposición a los componentes físicos del sistema, llamados hardware.
Tales componentes lógicos incluyen, entre muchos otros,
aplicaciones informáticas como procesador de textos, que permite al usuario realizar todas las tareas concernientes a edición de textos; software de sistema, tal como un sistema operativo, que, básicamente, permite al resto de los programas funcionar adecuadamente, facilitando la interacción con los componentes físicos y el resto de las aplicaciones, también provee una interfaz para el usuario.

Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, a los fines prácticos se puede clasificar al software en tres grandes tipos:
Software de sistema: Su objetivo es desvincular adecuadamente al usuario y al programador de los detalles de la computadora en particular que se use, aislándolo especialmente del procesamiento referido a las características internas de: memoria, discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel, herramientas y utilidades de apoyo que permiten su mantenimiento. Incluye entre otros:
Sistemas operativos
Controladores de dispositivos
Herramientas de diagnóstico
Herramientas de Corrección y Optimización
Servidores
Utilidades
Software de programación: Es el conjunto de herramientas que permiten al programador desarrollar programas informáticos, usando diferentes alternativas y lenguajes de programación, de una manera práctica. Incluye entre otros:
Editores de texto
Compiladores
Intérpretes
Enlazadores
Depuradores
Entornos de Desarrollo Integrados (
IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma tal que el programador no necesite introducir múltiples comandos para compilar, interpretar, depurar, etc. Habitualmente cuentan con una avanzada interfaz gráfica de usuario (GUI).
Software de aplicación: Es aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios. Incluye entre otros:
Aplicaciones para
Control de sistemas y automatización industrial
Aplicaciones ofimáticas
Software educativo
Software empresarial
Bases de datos
Telecomunicaciones (p.ej. internet y toda su estructura lógica)
Videojuegos
Software médico
Software de
Cálculo Numérico y simbólico.
Software de
Diseño Asistido (CAD)
Software de Control Numérico (
CAM)

Captura, análisis y especificación de requisitos
Al inicio de un desarrollo (no de un proyecto), esta es la primera fase que se realiza, y, según el modelo de proceso adoptado, puede casi terminar para pasar a la próxima etapa (caso de Modelo Cascada Realimentado) o puede hacerse parcialmente para luego retomarla (caso Modelo Iterativo Incremental u otros de carácter evolutivo).
En simple palabras y básicamente, durante esta fase, se adquieren, reúnen y especifican las características funcionales y no funcionales que deberá cumplir el futuro programa o sistema a desarrollar.
Las bondades de las características, tanto del sistema o programa a desarrollar, como de su entorno, parámetros no funcionales y arquitectura dependen enormemente de lo bien lograda que esté esta etapa. Esta es, probablemente, la de mayor importancia y una de las fases más difíciles de lograr certeramente, pues no es automatizable, no es muy técnica y depende en gran medida de la habilidad y experiencia del analista que la realice.
Involucra fuertemente al usuario o cliente del sistema, por tanto tiene matices muy subjetivos y es difícil de modelar con certeza o aplicar una técnica que sea "la más cercana a la adecuada" (de hecho no existe "la estrictamente adecuada"). Si bien se han ideado varias metodologías, incluso software de apoyo, para captura, elicitación y registro de requisitos, no existe una forma infalible o absolutamente confiable, y deben aplicarse conjuntamente buenos criterios y mucho sentido común por parte del o los analistas encargados de la tarea; es fundamental también lograr una fluida y adecuada comunicación y comprensión con el usuario final o cliente del sistema.
El artefacto más importante resultado de la culminación de esta etapa es lo que se conoce como
especificación de requisitos software o simplemente documento ERS.
Como se dijo, la habilidad del analista para interactuar con el cliente es fundamental; lo común es que el cliente tenga un objetivo general o problema a resolver, no conoce en absoluto el área (informática), ni su jerga, ni siquiera sabe con precisión qué debería hacer el producto software (qué y cuantas funciones) ni, mucho menos, cómo debe operar. En otros casos menos frecuentes, el cliente "piensa" que sabe precisamente lo que el software tiene que hacer, y generalmente acierta muy parcialmente, pero su empecinamiento entorpece la tarea de elicitación. El analista debe tener la capacidad para lidiar con este tipo de problemas, que incluyen relaciones humanas; tiene que saber ponerse al nivel del usuario para permitir una adecuada comunicación y comprensión.
Escasas son las situaciones en que el cliente sabe con certeza e incluso con completitud lo que requiere de su futuro sistema, este es el caso más sencillo para el analista.
Las tareas relativas a captura, elicitación, modelado y registro de requerimientos, además de ser sumamente importante, puede llegar a ser dificultosa de lograr acertadamente y llevar bastante tiempo relativo al proceso total del desarrollo; al proceso y metodologías para llevar a cabo este conjunto de actividades normalmente se las asume parte propia de la
Ingeniería de Software, pero dada la antedicha complejidad, actualmente se habla de una Ingeniería en Requisitos[11] , aunque ella aún no existe formalmente.
Hay grupos de estudio e investigación, en todo el mundo, que están exclusivamente abocados a la idear modelos, técnicas y procesos para intentar lograr la correcta captura, análisis y registro de requerimientos. Estos grupos son los que normalmente hablan de la
Ingeniería en Requisitos; es decir se plantea ésta como un área o disciplina pero no como una carrera universitaria en si misma.
Algunos requisitos no necesitan la presencia del cliente, para ser capturados o analizados; en ciertos casos los puede proponer el mismo analista o, incluso, adoptar unilateralmente decisiones que considera adecuadas (tanto en requerimientos funcionales como no funcionales). Por citar ejemplos probables: Algunos requisitos sobre la arquitectura del sistema, requisitos no funcionales tales como los relativos al rendimiento, nivel de soporte a errores operativos, plataformas de desarrollo, relaciones internas o ligas entre la información (entre registros o tablas de datos) a almacenar en caso de bases o bancos de datos, etc. Algunos funcionales tales como opciones secundarias o de soporte necesarias para una mejor o más sencilla operatividad; etc.
La obtención de especificaciones a partir del cliente (u otros actores intervinientes) es un proceso humano muy interactivo e iterativo; normalmente a medida que se captura la información, se la analiza y realimenta con el cliente, refinándola, puliéndola y corrigiendo si es necesario; cualquiera sea el método de
ERS utilizado. EL analista siempre debe llegar a conocer la temática y el problema a resolver, dominarlo, hasta cierto punto, hasta el ámbito que el futuro sistema a desarrollar lo abarque. Por ello el analista debe tener alta capacidad para comprender problemas de muy diversas áreas o disciplinas de trabajo (que no son específicamente suyas); así por ejemplo, si el sistema a desarrollar será para gestionar información de una aseguradora y sus sucursales remotas, el analista se debe compenetrar en cómo ella trabaja y maneja su información, desde niveles muy bajos e incluso llegando hasta los gerenciales. Dada a gran diversidad de campos a cubrir, los analistas suelen ser asistidos por especialistas, es decir gente que conoce profundamente el área para la cual se desarrollará el software; evidentemente una única persona (el analista) no puede abarcar tan vasta cantidad de áreas del conocimiento. En empresas grandes de desarrollo de productos software, es común tener analistas especializados en ciertas áreas de trabajo.
Contrariamente, no es problema del cliente, es decir él no tiene por qué saber nada de software, ni de diseños, ni otras cosas relacionadas; sólo se debe limitar a aportar objetivos, datos e información (de mano propia o de sus registros, equipos, empleados, etc) al analista, y guiado por él, para que, en primera instancia, defina el "Universo de Discurso", y con posterior trabajo logre confeccionar el adecuado documento
ERS.
Es bien conocida la presión que sufren los desarrolladores de sistemas informáticos para comprender y rescatar las necesidades de los clientes/usuarios. Cuanto más complejo es el contexto del problema más difícil es lograrlo, a veces se fuerza a los desarrolladores a tener que convertirse en casi expertos de los dominios que analizan.
Cuando esto no sucede es muy probable que se genere un conjunto de requisitos
[12] erróneos o incompletos y por lo tanto un producto de software con alto grado de desaprobación por parte de los clientes/usuarios y un altísimo costo de reingeniería y mantenimiento. Todo aquello que no se detecte, o resulte mal entendido en la etapa inicial provocará un fuerte impacto negativo en los requisitos, propagando esta corriente degradante a lo largo de todo el proceso de desarrollo e incrementando su perjuicio cuanto más tardía sea su detección (Bell y Thayer 1976)(Davis 1993).
Procesos, modelado y formas de elicitación de requisitos
Siendo que la captura, elicitación y especificación de requisitos, es una parte crucial en el proceso de desarrollo de software, ya que de esta etapa depende el logro de los objetivos finales previstos, se han ideado modelos y diversas metodologías de trabajo para estos fines. También existen herramientas software que apoyan las tareas relativas realizadas por el ingeniero en requisitos.
El estándar IEEE 830-1998 brinda una normalización de las "Prácticas Recomendadas para la Especificación de Requisitos Software".
[13]
A medida que se obtienen los requisitos, normalmente se los va analizando, el resultado de este análisis, con o sin el cliente, se plasma en un documento, conocido como ERS o
Especificación de Requisitos Software, cuya estructura puede venir definida por varios estándares, tales como CMM-I.
Un primer paso para realizar el relevamiento de información es el conocimiento y definición acertada lo que se conoce como "Universo de Discurso" del problema, que se define y entiende por:
Universo de Discurso (UdeD): es el contexto general en el cual el software deberá ser desarrollado y deberá operar. El UdeD incluye todas las fuentes de información y todas las personas relacionadas con el software. Esas personas son conocidas también como actores de ese universo. El UdeD es la realidad circunstanciada por el conjunto de objetivos definidos por quienes demandaron el software.
A partir de la extracción y análisis de información en su ámbito se obtienen todas las especificaciones necesarias y tipos de requisitos para el futuro producto software.
El objetivo de la
Ingeniería de Requisitos (IR) es sistematizar el proceso de definición de requisitos permitiendo elicitar, modelar y analizar el problema, generando un compromiso entre los Ingenieros de Requisitos y los clientes/usuarios, ya que ambos participan en la generación y definición de los requisitos del sistema. La IR aporta un conjunto de métodos, técnicas y herramientas que asisten a los ingenieros de requisitos (analistas) para obtener requerimientos lo más seguros, veraces, completos y oportunos posibles, permitiendo básicamente:
Comprender el problema
Facilitar la obtención de las necesidades del cliente/usuario
Validar con el cliente/usuario
Garantizar las especificaciones de requisitos
Si bien existen diversas formas, modelos y metodologías para elicitar, definir y documentar requerimientos, no se puede decir que alguna de ellas sea mejor o peor que la otra, suelen tener muchísimo en común, y todas cumplen el mismo objetivo. Sin embargo, lo que si se puede decir sin dudas es que es indispensable utilizar alguna de ellas para documentar las especificaciones del futuro producto software. Así por ejemplo, hay un grupo de investigación argentino que desde hace varios años ha propuesto y estudia el uso del LEL (Léxico Extendido del Lenguaje) y Escenarios como metodología, aquí
[14] se presenta una de las tantas referencias y bibliografía sobre ello. Otra forma, más ortodoxa, de capturar y documentar requisitos se puede obtener en detalle, por ejemplo, en el trabajo de la Universidad de Sevilla sobre "Metodología para el Análisis de Requisitos de Sistemas Software".[15]
En la Fig. 7 se muestra un esquema, más o menos riguroso, aunque no detallado, de los pasos y tareas a seguir para realizar la captura, análisis y especificación de requerimientos software. También allí se observa qué artefacto o documento se obtiene en cada etapa del proceso. En el diagrama no se explicita metodología o modelo a utilizar, sencillamente se pautan las tareas que deben cumplirse, de alguna manera.

Fig. 7 - Diagrama de tareas para captura y análisis de requisitos.
Una posible lista, general y ordenada, de tareas recomendadas para obtener la definición de lo que se debe realizar, los productos a obtener y las técnicas a emplear durante la actividad de elicitación de requisitos, en fase de
Especificación de Requisitos Software es:
Obtener información sobre el dominio del problema y el sistema actual (UdeD).
Preparar y realizar las reuniones para elicitación/negociación.
Identificar/revisar los objetivos del usuario.
Identificar/revisar los objetivos del sistema.
Identificar/revisar los requisitos de información.
Identificar/revisar los requisitos funcionales.
Identificar/revisar los requisitos no funcionales.
Priorizar objetivos y requisitos.
Algunos principios básicos a tener en cuenta:
Presentar y entender cabalmente el dominio de la información del problema.
Definir correctamente las funciones que debe realizar el Software.
Representar el comportamiento del software a consecuencias de acontecimientos externos, particulares, incluso inesperados.
Reconocer requisitos incompletos, ambiguos o contradictorios.
Dividir claramente los modelos que representan la información, las funciones y comportamiento y características no funcionales.
Clasificación e identificación de requerimientos
Se pueden identificar dos formas de requisitos:
Requisitos de usuario: Los requisitos de usuario son frases en lenguaje natural junto a diagramas con los servicios que el sistema debe proporcionar, así como las restricciones bajo las que debe operar.
Requisitos de sistema: Los requisitos de sistema determinan los servicios del sistema y pero con las restricciones en detalle. Sirven como contrato.
Es decir, ambos son lo mismo, pero con distinto nivel de detalle.
Ejemplo de requisito de usuario: El sistema debe hacer préstamos Ejemplo de requisito de sistema: Función préstamo: entrada código socio, código ejemplar; salida: fecha devolución; etc.
Se clasifican en tres los tipos de requisitos de sistema:
Requisitos funcionales
Los requisitos funcionales describen:
Los servicios que proporciona el sistema (funciones).
La respuesta del sistema ante determinadas entradas.
El comportamiento del sistema en situaciones particulares.
Requisitos no funcionales
Los requisitos no funcionales son restricciones de los servicios o funciones que ofrece el sistema (ej. cotas de tiempo, proceso de desarrollo, rendimiento, etc.)
Ejemplo 1. La biblioteca Central debe ser capaz de atender simultáneamente a todas las bibliotecas de la Universidad
Ejemplo 2. El tiempo de respuesta a una consulta remota no debe ser superior a 1/2
s
A su vez, hay tres tipos de requisitos no funcionales:
Requisitos del producto. Especifican el comportamiento del producto (Ej. prestaciones, memoria, tasa de fallos, etc.)
Requisitos organizativos. Se derivan de las políticas y procedimientos de las organizaciones de los clientes y desarrolladores (Ej. estándares de proceso, lenguajes de programación, etc.)
Requisitos externos. Se derivan de factores externos al sistema y al proceso de desarrollo (Ej. requisitos legislativos, éticos, etc.)
Requisitos del dominio.
Los requisitos del dominio se derivan del dominio de la aplicación y reflejan características de dicho dominio.
Pueden ser funcionales o no funcionales.
Ej. El sistema de biblioteca de la Universidad debe ser capaz de exportar datos mediante el Lenguaje de Intercomunicación de Bibliotecas de España (LIBE). Ej. El sistema de biblioteca no podrá acceder a bibliotecas con material censurado.
Diseño del sistema
Codificación del software
Durante esta la etapa se realizan las tareas que comúnmente se conocen como
programación; que consiste, esencialmente, en llevar a código fuente, en el lenguaje de programación elegido, todo lo diseñado en la fase anterior. Esta tarea la realiza el programador, siguiendo por completo los lineamientos impuestos en el diseño y en consideración siempre a los requisitos funcionales y no funcionales (ERS) especificados en la primera etapa.
Es común pensar que la etapa de programación o codificación (algunos la llaman implementación) es la que insume la mayor parte del trabajo de desarrollo del software; sin embargo, esto puede ser relativo (y generalmente aplicable a sistemas de pequeño porte) ya que las etapas previas son cruciales, críticas y pueden llevar bastante más tiempo. Se suele hacer estimaciones de un 30% del tiempo total insumido en la programación, pero esta cifra no es consistente ya que depende en gran medida de las características del sistema, su criticidad y el lenguaje de programación elegido.
[8] En tanto menor es el nivel del lenguaje mayor será el tiempo de programación requerido, así por ejemplo se tardaría más tiempo en codificar un algoritmo en lenguaje ensamblador que el mismo programado en lenguaje C.
Mientras se programa la aplicación, sistema, o software en general, se realizan también tareas de depuración, esto es la labor de ir liberando al código de los errores factibles de ser hallados en esta fase (de semántica, sintáctica y lógica). Hay una suerte de solapamiento con la fase siguiente, ya que para depurar la lógica es necesario realizar pruebas unitarias, normalmente con datos de prueba; claro es que no todos los errores serán encontrados sólo en la etapa de programación, habrán otros que se encontrarán durante las etapas subsiguientes. La aparición de algún error funcional (mala respuesta a los requerimientos) eventualmente puede llevar a retornar a la fase de diseño antes de continuar la codificación.
Durante la fase de programación, el código puede adoptar varios estados, dependiendo de la forma de trabajo y del lenguaje elegido, a saber:
Código fuente: es el escrito directamente por los programadores en editores de texto, lo cual genera el programa. Contiene el conjunto de instrucciones codificadas en algún lenguaje de alto nivel. Puede estar distribuido en paquetes, procedimientos, bibliotecas fuente, etc.
Código objeto: es el código binario o intermedio resultante de procesar con un compilador el código fuente. Consiste en una traducción completa y de una sola vez de éste último. El código objeto no es inteligible por el ser humano (normalmente es formato binario) pero tampoco es directamente ejecutable por la computadora. Se trata de una representación intermedia entre el código fuente y el código ejecutable, a los fines de un enlace final con las rutinas de biblioteca y entre procedimientos o bien para su uso con un pequeño intérprete intermedio [a modo de distintos ejemplos véase EUPHORIA, (intérprete intermedio), FORTRAN (compilador puro) MSIL (Microsoft Intermediate Language) (intérprete) y BASIC (intérprete puro, intérprete intermedio, compilador intermedio o compilador puro, depende de la versión utilizada)].
El código objeto no existe si el programador trabaja con un lenguaje a modo de intérprete puro, en este caso el mismo intérprete se encarga de traducir y ejecutar línea por línea el código fuente (de acuerdo al flujo del programa), en tiempo de ejecución. En este caso tampoco existe el o los archivos de
código ejecutable. Una desventaja de esta modalidad es que la ejecución del programa o sistema es un poco más lenta que si se hiciera con un intérprete intermedio, y bastante más lenta que si existe el o los archivos de código ejecutable. Es decir no favorece el rendimiento en velocidad de ejecución. Pero una gran ventaja de la modalidad intérprete puro, es que el esta forma de trabajo facilita enormemente la tarea de depuración del código fuente (frente a la alternativa de hacerlo con un compilador puro). Frecuentemente se suele usar una forma mixta de trabajo (si el lenguaje de programación elegido lo permite), es decir inicialmente trabajar a modo de intérprete puro, y una vez depurado el código fuente (liberado de errores) se utiliza un compilador del mismo lenguaje para obtener el código ejecutable completo, con lo cual se agiliza la depuración y la velocidad de ejecución se optimiza.
Código ejecutable: Es el código binario resultado de enlazar uno o más fragmentos de código objeto con las rutinas y bibliotecas necesarias. Constituye uno o más archivos binarios con un formato tal que el sistema operativo es capaz de cargarlo en la memoria RAM (eventualmente también parte en una memoria virtual), y proceder a su ejecución directa. Por lo anterior se dice que el código ejecutable es directamente "inteligible por la computadora". El código ejecutable, también conocido como código máquina, no existe si se programa con modalidad de "intérprete puro".
Pruebas (unitarias y de integración)
Entre las diversas
pruebas que se le efectúan al software se pueden distinguir principalmente:
Prueba unitarias: Consisten en probar o testear piezas de software pequeñas; a nivel de secciones, procedimientos, funciones y módulos; aquellas que tengan funcionalidades específicas. Dichas pruebas se utilizan para asegurar el correcto funcionamiento de secciones de código, mucho más reducidas que el conjunto, y que tienen funciones concretas con cierto grado de independencia.
Pruebas de integración: Se realizan una vez que las pruebas unitarias fueron concluidas exitosamente; con éstas se intenta asegurar que el sistema completo, incluso los subsistemas que componen las piezas individuales grandes del software funcionen correctamente al operar e inteoperar en conjunto.
Las pruebas normalmente se efectúan con los llamados
datos de prueba, que es un conjunto seleccionado de datos típicos a los que puede verse sometido el sistema, los módulos o los bloques de código. También se escogen: Datos que llevan a condiciones límites al software a fin de probar su tolerancia y robustez; datos de utilidad para mediciones de rendimiento; datos que propocan condiciones eventuales o particulares poco comunes y a las que el software normalmente no estará sometido pero pueden ocurrir; etc. Los "datos de prueba" no necesariamente son ficticios o "creados", pero normalmente si lo son los de poca probabilidad de ocurrencia.
Generalmente, existe un fase probatoria final y completa del software, llamada
Beta Test, durante la cual el sistema instalado en condiciones normales de operación y trabajo es probado exhaustivamente a fin de encontrar errores, inestabilidades, respuestas erróneas, etc. que hayan pasado los previos controles. Estas son normalmente realizadas por personal idóneo contratado o afectado específicamente a ello. Los posibles errores encontrados se transmiten a los desarrolladores para su depuración. En el caso de software de desarrollo "a pedido", el usuario final (cliente) es el que realiza el Beta Test, teniendo para ello un período de prueba pactado con el desarrollador.
Instalación y paso a producción
La
instalación del software es el proceso por el cual los programas desarrollados son transferidos apropiadamente al computador destino, inicializados, y, eventualmente, configurados; todo ello con el propósito de ser ya utilizados por el usuario final. Constituye la etapa final en el desarrollo propiamente dicho del software. Luego de ésta el producto entrará en la fase de funcionamiento y producción, para el que fuera diseñado.
La instalación, dependiendo del sistema desarrollado, puede consistir en una simple copia al
disco rígido destino (casos raros actualmente); o bien, más comúnmente, con una de complejidad intermedia en la que los distintos archivos componentes del software (ejecutables, bibliotecas, datos propios, etc.) son descomprimidos y copiados a lugares específicos preestablecidos del disco; incluso se crean vínculos con otros productos, además del propio sistema operativo. Este último caso, comúnmente es un proceso bastante automático que es creado y guiado con heramientas software específicas (empaquetado y distribución, instaladores).
En productos de mayor complejidad, la segunda alternativa es la utilizada, pero es realizada o guiada por especialistas; puede incluso requerirse la instalación en varios y distintos computadores (instalación distribuida).
También, en software de mediana y alta complejidad normalmente es requerido un proceso de
configuración y chequeo, por el cual se asignan adecuados parámetros de funcionamiento y se testea la operatividad funcional del producto.
En productos de venta masiva las instalaciones completas, si son relativamente simples, suelen ser realizadas por los propios usuarios finales (tales como sistemas operativos, paquetes de oficina, utilitarios, etc.) con herramientas propias de instalación guiada; incluso la configuración suele ser automática. En productos de diseño específico o "a medida" la instalación queda restringida, normalmente, a personas especialistas involucradas en el desarrollo del software en cuestión.
Una vez realizada exitosamente la instalación del software, el mismo pasa a la fase de producción (operatividad), durante la cual cumple las funciones para las que fue desarrollado, es decir, es finalmente utilizado por el (o los) usuario final, produciendo los resultados esperados.
Mantenimiento
El
mantenimiento de software es el proceso de control, mejora y optimización del software ya desarrollado e instalado, que también incluye depuración de errores y defectos que puedan haberse filtrado de la fase de pruebas de control y beta test. Esta fase es la última (antes de iterar, según el modelo empleado) que se aplica al ciclo de vida del desarrollo de software. La fase de mantenimiento es la que viene después de que el software está operativo y en producción.
De un buen diseño y documentación del desarrollo dependerá cómo será la fase de mantenimiento, tanto en costo temporal como monetario. Modificaciones realizadas a un software que fue elaborado con una documentación indebida o pobre y mal diseño puede llegar a ser tan costosa como el desarrollar el software desde el inicio. Por ello, es de fundamental importancia respetar debidamente todas las tareas de las fases del desarrollo y mantener adecuada y completa documentación.
El período de la fase de mantenimiento es normalmente el mayor en todo el ciclo de vida.
[8] Esta fase puede involucrar actualizaciones y evoluciones del software; no necesariamente implica que el sistema tuvo errores. Uno o más cambios en el software, por ejemplo de adaptación o evolutivos, puede llevar incluso a rever y adaptar desde parte de las primeras fases del desarrollo inicial, alterando todas las demás; dependiendo de cuán profundos sean los cambios. El modelo cascada común es particularmente costoso en mantenimiento, ya que su rigidez implica que cualquier cambio provoca regreso a fase inicial y fuertes alteraciones en las demás fases del ciclo de vida.
Durante el período de mantenimiento, es común que surjan nuevas revisiones y versiones del producto; que lo liberan más depurado, con mayor y mejor funcionalidad, mejor rendimiento, etc. Varias son las facetas que pueden ser alteradas para provocar cambios deseables, evolutivos, adaptaciones o ampliaciones y mejoras.
Básicamente se tienen los siguientes tipos de cambios:
Perfectivos: Aquellos que llevan a una mejora de la calidad interna del software en cualquier aspecto: Reestructuración del código, definición más clara del sistema y su documentación; optimización del rendimiento y eficiencia.
Evolutivos: Agregados, modificaciones, incluso eliminaciones, necesarias en el software para cubrir su expansión o cambio según las necesidades del usuario.
Adaptivos: Modificaciones que afectan a los entornos en los que el sistema opera, tales como: Cambios de configuración del hardware (por actualización o mejora de componentes electrónicos), cambios en el software de base, en gestores de base de datos, en comunicaciones, etc.
Correctivos: Alteraciones necesarias para corregir errores de cualquier tipo en el producto software desarrollado.

HARDWARE


Hardware (corresponde a todas las partes físicas y tangibles de una computadora: sus componentes eléctricos, electrónicos, electromecánicos y mecánicos; sus cables, gabinetes o cajas, periféricos de todo tipo y cualquier otro elemento físico involucrado; contrariamente al soporte lógico e intangible que es llamado software. El término es propio del idioma inglés (literalmente traducido: partes blandas o suaves), su traducción al español no tiene un significado acorde, por tal motivo se la ha adoptado tal cual es y suena; la Real Academia Española lo define como «Conjunto de los componentes que integran la parte material de una computadora». El término, aunque es lo más común, no necesariamente se aplica a una computadora tal como se la conoce, así por ejemplo, un robot también posee hardware (y software).La historia del hardware del computador se puede clasificar en cuatro generaciones, cada una caracterizada por un cambio tecnológico de importancia. Este hardware se puede clasificar en: básico, el estrictamente necesario para el funcionamiento normal del equipo, y el complementario, el que realiza funciones específicas.
Un sistema informático se compone de una
unidad central de procesamiento (CPU), encargada de procesar los datos, uno o varios periféricos de entrada, los que permiten el ingreso de la información y uno o varios periféricos de salida, los que posibilitan dar salida (normalmente en forma visual o auditiva) a los datos procesados.

Una de las formas de clasificar el Hardware es en dos categorías: por un lado, el "básico", que abarca el conjunto de componentes indispensables necesarios para otorgar la funcionalidad mínima a una computadora, y por otro lado, el "Hardware complementario", que, como su nombre indica, es el utilizado para realizar funciones específicas (más allá de las básicas), no estrictamente necesarias para el funcionamiento de la computadora.
Así es que: Un medio de entrada de datos, la unidad de procesamiento y memoria y un medio de salida de datos constituye el "hardware básico".
Los medios de entrada y salida de datos estrictamente indispensables dependen de la aplicación: desde un punto de vista de un usuario común, se debería disponer, al menos, de un
teclado y un monitor para entrada y salida de información, respectivamente; pero ello no implica que no pueda haber una computadora (por ejemplo controlando un proceso) en la que no sea necesario teclado ni monitor, bien puede ingresar información y sacar sus datos procesados, por ejemplo, a través de una placa de adquisición/salida de datos.
Las computadoras son aparatos
electrónicos capaces de interpretar y ejecutar instrucciones programadas y almacenadas en su memoria, ellas consisten básicamente en operaciones aritmético-lógicas y de entrada/salida.[10] Se reciben las entradas (datos), se las procesa y almacena (procesamiento), y finalmente se producen las salidas (resultados del procesamiento). Por ende todo sistema informático tiene, al menos, componentes y dispositivos hardware dedicados a alguna de las funciones antedichas;[11] a saber:
Procesamiento: Unidad Central de Proceso o
CPU
Almacenamiento:
Memorias
Entrada:
Periféricos de Entrada (E)
Salida: Periféricos de salida (S)
Entrada/Salida: Periféricos mixtos (
E/S)
Desde un punto de vista básico y general, un
dispositivo de entrada es el que provee el medio para permitir el ingreso de información, datos y programas (lectura); un dispositivo de salida brinda el medio para registrar la información y datos de salida (escritura); la memoria otorga la capacidad de almacenamiento, temporal o permanente (almacenamiento); y la CPU provee la capacidad de cálculo y procesamiento de la información ingresada (transformación).[12]
Un periférico mixto es aquél que puede cumplir funciones tanto de entrada como de salida, el ejemplo más típico es el
disco rígido (ya que en él se lee y se graba información y datos).
Unidad Central de Procesamiento
Artículo principal:
CPU

Microprocesador de 64 bits doble núcleo, el AMD Athlon 64 X2 3600.
La CPU, siglas en inglés de Unidad Central de Procesamiento, es la componente fundamental del computador, encargada de interpretar y ejecutar instrucciones y de procesar datos.
[13] En los computadores modernos, la función de la CPU la realiza uno o más microprocesadores. Se conoce como microprocesador a un CPU que es manufacturado como un único circuito integrado.
Un
servidor de red o una máquina de cálculo de alto rendimiento (supercomputación), puede tener varios, incluso miles de microprocesadores trabajando simultáneamente o en paralelo (multiprocesamiento); en este caso, todo ese conjunto conforma la CPU de la máquina.
Las unidades centrales de proceso (
CPU) en la forma de un único microprocesador no sólo están presentes en las computadoras personales (PC), sino también en otros tipos de dispositivos que incorporan una cierta capacidad de proceso o "inteligencia electrónica"; como pueden ser: controladores de procesos industriales , televisores, automóviles, calculadores, aviones, teléfonos móviles, electrodomésticos, juguetes y muchos más.

Placa base formato µATX.
El microprocesador se monta en la llamada
placa madre, sobre el un zócalo conocido como zócalo de CPU, que permite además las conexiones eléctricas entre los circuitos de la placa y el procesador. Sobre el procesador y ajustado a la tarjeta madre se fija un disipador de calor, que por lo general es de aluminio, en algunos casos de cobre; éste es indispensable en los microprocesadores que consumen bastante energía, la cual, en gran parte, es emitida en forma de calor: En algunos casos pueden consumir tanta energía como una lámpara incandescente (de 40 a 130 vatios).
Adicionalmente, sobre el disipador se acopla un ventilador, que está destinado a forzar la circulación de aire para extraer más rápidamente el calor emitido por el disipador. Complementariamente, para evitar daños por efectos térmicos, también se suelen instalar sensores de temperatura del microprocesador y sensores de revoluciones del ventilador.
La gran mayoría de los
circuitos electrónicos e integrados que componen el hardware del computador van montados en la placa madre.
La placa madre, también conocida como
placa base o con el anglicismo board,[14] es un gran circuito impreso sobre el que se suelda el chipset, las ranuras de expansión (slots), los zócalos, conectores, diversos integrados, etc. Es el soporte fundamental que aloja y comunica a todos los demás componentes por medio de: Procesador, módulos de memoria RAM, tarjetas gráficas, tarjetas de expansión, periféricos de entrada y salida. Para comunicar esos componentes, la placa base posee una serie de buses con los cuales se trasmiten los datos dentro y hacia afuera del sistema.
La tendencia de integración ha hecho que la placa base se convierta en un elemento que incluye también la mayoría de las funciones básicas (vídeo, audio, red,
puertos de varios tipos), funciones que antes se realizaban con tarjetas de expansión. Aunque ello no excluye la capacidad de instalar otras tarjetas adicionales específicas, tales como capturadoras de vídeo, tarjetas de adquisición de datos, etc.
Memoria RAM

Modulos de memoria RAM instalados.
Artículo principal:
Memoria RAM
Del inglés Random Access Memory, literalmente significa "memoria de
acceso aleatorio". El término tiene relación con la característica de presentar iguales tiempos de acceso a cualquiera de sus posiciones (ya sea para lectura o para escritura). Esta particularidad también se conoce como "acceso directo".
La
RAM es la memoria utilizada en una computadora para el almacenamiento transitorio y de trabajo (no masivo). En la RAM se almacena temporalmente la información, datos y programas que la Unidad de Procesamiento (CPU) lee, procesa y ejecuta. La memoria RAM es conocida como Memoria principal de la computadora, también como "Central o de Trabajo"; [15] a diferencia de las llamadas memorias auxiliares y de almacenamiento masivo (como discos duros, cintas magnéticas u otras memorias).
Las memorias RAM son, comúnmente, volátiles; lo cual significa que pierden rápidamente su contenido al interrumpir su alimentación eléctrica.
Las más comunes y utilizadas como
memoria central son "dinámicas" (DRAM), lo cual significa que tienden a perder sus datos almacenados en breve tiempo (por descarga, aún estando con alimentación eléctrica), por ello necesitan un circuito electrónico específico que se encarga de proveerle el llamado "refresco" (de energía) para mantener su información.
La memoria RAM de un computador se provee de fábrica e instala en lo que se conoce como “módulos”. Ellos albergan varios
circuitos integrados de memoria DRAM que, conjuntamente, conforman toda la memoria principal.
Módulo de memoria RAM dinámica
Es la presentación más común en computadores modernos (
computador personal, servidor); son tarjetas de circuito impreso que tienen soldados circuitos integrados de memoria por una o ambas caras, además de otros elementos, tales como resistencias y capacitores. Esta tarjeta posee una serie de contactos metálicos (con un recubrimiento de oro) que permite hacer la conexión eléctrica con el bus de memoria del controlador de memoria en la placa base.
Los integrados son de tipo
DRAM, memoria denominada "dinámica", en la cual las celdas de memoria son muy sencillas (un transistor y un condensador), permitiendo la fabricación de memorias con gran capacidad (algunos cientos de Megabytes) a un costo relativamente bajo. Las posiciones de memoria o celdas, están organizadas en matrices y almacenan cada una un bit. Para acceder a ellas se han ideado varios métodos y protocolos cada uno mejorado con el objetivo de acceder a las celdas requeridas de la manera más veloz posible.

Memorias RAM con tecnologías usadas en la actualidad.
Entre las tecnologías recientes para integrados de memoria DRAM usados en los módulos RAM se encuentran:
SDR SDRAM Memoria con un ciclo sencillo de acceso por ciclo de reloj. Actualmente en desuso, fue popular en los equipos basados en el Pentium III y los primeros Pentium 4.
DDR SDRAM Memoria con un ciclo doble y acceso anticipado a dos posiciones de memoria consecutivas. Fue popular en equipos basados en los procesadores Pentium 4 y Athlon 64.
DDR2 SDRAM Memoria con un ciclo doble y acceso anticipado a cuatro posiciones de memoria consecutivas. Es la memoria más usada actualmente.
DDR3 SDRAM Memoria con un ciclo doble y acceso anticipado a ocho posiciones de memoria consecutivas. Es un tipo de memoria en auge, pero por su costo sólo es utilizada en equipos de gama alta.
Los estándares
JEDEC, establecen las características eléctricas y las físicas de los módulos, incluyendo las dimensiones del circuito impreso.
Los estándares usados actualmente son:
DIMM Con presentaciones de 168 pines (usadas con SDR y otras tecnologías antiguas), 184 pines (usadas con DDR y el obsoleto SIMM) y 240 (para las tecnologías de memoria DDR2 y DDR3).
SO-DIMM Para computadores portátiles, es una miniaturización de la versión DIMM en cada tecnología. Existen de 144 pines (usadas con SDR), 200 pines (usadas con DDR y DDR2) y 240 pines (para DDR3).
Memorias RAM especiales
Hay memorias
RAM con características que las hacen particulares, y que normalmente no se utilizan como memoria central de la computadora; entre ellas se puede mencionar:
SRAM: Siglas de Static Random Access Memory. Es un tipo de memoria más rápida que la DRAM (Dynamic RAM). El término "estática" se deriva del hecho que no necesita el refresco de sus datos. La RAM estática no necesita circuito de refresco, pero ocupa más espacio y utiliza más energía que la DRAM. Este tipo de memoria, debido a su alta velocidad, es usada como memoria caché.
NVRAM: Siglas de Non-Volatile Random Access Memory. Memoria RAM no volátil (mantiene la información en ausencia de alimentación eléctrica). Hoy en día, la mayoría de memorias NVRAM son memorias flash, muy usadas para teléfonos móviles y reproductores portátiles de MP3.
VRAM: Siglas de Video Random Access Memory. Es un tipo de memoria RAM que se utiliza en las tarjetas gráficas del computador. La característica particular de esta clase de memoria es que es accesible de forma simultánea por dos dispositivos. Así, es posible que la CPU grabe información en ella, al tiempo que se leen los datos que serán visualizados en el Monitor de computadora.
De las anteriores a su vez, hay otros subtipos más.
Periféricos
Artículo principal:
Periféricos
Se entiende por periférico a las unidades o
dispositivos que permiten a la computadora comunicarse con el exterior, esto es, tanto ingresar como exteriorizar información y datos.[11] Los periféricos son los que permiten realizar las operaciones conocidas como de entrada/salida (E/S).[12]
Aunque son estrictamente considerados “accesorios” o no esenciales, muchos de ellos son fundamentales para el funcionamiento adecuado de la computadora moderna; por ejemplo, el
teclado, el disco duro y el monitor son elementos actualmente imprescindibles; pero no lo son un scanner o un plotter. Para ilustrar este punto: en los años 80, muchas de las primeras computadoras personales no utilizaban disco duro ni mouse (o ratón), tenían sólo una o dos disqueteras, el teclado y el monitor como únicos periféricos.
Periféricos de entrada (E)

Teclado para PC inalámbrico.

Ratón (Mouse) común alámbrico.
De esta categoría son aquellos que permiten el ingreso de
información, en general desde alguna fuente externa o por parte del usuario. Los dispositivos de entrada proveen el medio fundamental para transferir hacia la computadora (más propiamente al procesador) información desde alguna fuente, sea local o remota. También permiten cumplir la esencial tarea de leer y cargar en memoria el sistema operativo y las aplicaciones o programas informáticos, los que a su vez ponen operativa la computadora y hacen posible realizar las más diversas tareas.
Entre los
periféricos de entrada se puede mencionar: teclado, mouse o ratón, escáner, micrófono, cámara web , lectores ópticos de código de barras, Joystick, lectora de CD o DVD (sólo lectoras), placas de adquisición/conversión de datos, etc.
Pueden considerarse como imprescindibles para el funcionamiento, al teclado, mouse y algún tipo de lectora de discos; ya que tan sólo con ellos el hardware puede ponerse operativo para un usuario. Los otros son bastante accesorios, aunque en la actualidad pueden resultar de tanta necesidad que son considerados parte esencial de todo el
sistema.

Impresora de inyección de tinta.
Periféricos de salida (S)
Son aquellos que permiten emitir o dar salida a la información resultante de las operaciones realizadas por la
CPU (procesamiento).
Los dispositivos de salida aportan el medio fundamental para exteriorizar y comunicar la información y datos procesados; ya sea al usuario o bien a otra fuente externa, local o remota.
[12]
Los dispositivos más comunes de este grupo son los
monitores clásicos (no de pantalla táctil), las impresoras, y los altavoces. [11]
Entre los periféricos de salida puede considerarse como imprescindible para el funcionamiento del sistema al monitor. Otros, aunque accesorios, son sumamente necesarios para un usuario que opere un computador moderno.
Periféricos mixtos (E/S)

Piezas de un Disco rígido.
Son aquellos dispositivos que pueden operar de ambas formas: tanto de entrada como de salida.
[12] Típicamente, se puede mencionar como periféricos mixtos o de Entrada/Salida a: discos rígidos, disquetes, unidades de cinta magnética, lecto-grabadoras de CD/DVD, discos ZIP, etc. También entran en este rango, con sutil diferencia, otras unidades, tales como: Memoria flash, tarjetas de red, módems, placas de captura/salida de vídeo, etc. [11]
Si bien se puede clasificar al
pendrive (lápiz de memoria), memoria flash o memoria USB en la categoría de memorias, normalmente se los utiliza como dispositivos de almacenamiento masivo; siendo todos de categoría Entrada/Salida.[16]
Los dispositivos de
almacenamiento masivo[11] también son conocidos como "Memorias Secundarias o Auxiliares". Entre ellos, sin duda, el disco duro ocupa un lugar especial, ya que es el de mayor importancia en la actualidad, en él se aloja el sistema operativo, todas las aplicaciones, utilitarios, etc. que utiliza el usuario; además de tener la suficiente capacidad para albergar información y datos en grandes volúmenes por tiempo prácticamente indefinido. Los servidores Web, de correo electrónico y de redes con bases de datos, utilizan discos rígidos de grandes capacidades y con una tecnología que les permite trabajar a altas velocidades.
La
pantalla táctil (no el monitor clásico) es un dispositivo que se considera mixto, ya que además de mostrar información y datos (salida) puede actuar como un dispositivo de entrada, reemplazando, por ejemplo, a algunas funciones del ratón y/o del teclado.
Hardware gráfico

GPU de Nvidia GeForce.
El hardware gráfico lo constituyen básicamente las
tarjetas de video. Actualmente poseen su propia memoria y unidad de procesamiento, esta última llamada unidad de procesamiento gráfico (o GPU, siglas en inglés de Graphics Processing Unit). El objetivo básico de la GPU es realizar exclusivamente procesamiento gráfico, [17] liberando al procesador principal (CPU) de esa costosa tarea (en tiempo) para que pueda así efectuar otras funciones más eficientemente. Antes de esas tarjetas de video con aceleradores, era el procesador principal el encargado de construir la imagen mientras la sección de video (sea tarjeta o de la placa base) era simplemente un traductor de las señales binarias a las señales requeridas por el monitor; y buena parte de la memoria principal (RAM) de la computadora también era utilizada para estos fines.
La
Ley de Moore establece que cada 18 a 24 meses la cantidad de transistores que puede contener un circuito integrado se logra duplicar; en el caso de los GPU esta tendencia es bastante más notable, duplicando o aún más de lo indicado en la ley de Moore.[18]
Desde la década de 1990, la evolución en el procesamiento gráfico ha tenido un crecimiento vertiginoso; las actuales animaciones por computadoras y videojuegos eran impensables veinte años atrás