jueves, 11 de marzo de 2010

ORG. COMPUTADORES

Organización y Arquitectura de computadoras

Esta sección esta hecha solamente para hacer un repaso de la materia a rendir, y de paso le puede parecer interesante para leer a alguien, el libro que mas uso es el de Stalling, por lo cual se va a notar la similitud en el contenido. El nivel de los temas tratados es superficial, para mas detalles aconsejo empezar por leer el libro.

Todo esto esta colgado también acá

Introducción: Es a veces difícil identificar donde esta la diferencia entre la arquitectura y la organización de computadores.
La arquitectura se refiere a las características del sistema que son visibles al programador, o sea que el programador va a tener que tener en cuenta al momento de programar (ejemplo de esto serian modos de direccionamiento, conjunto de instrucciones, cantidad de bits usados para representas los distintos tipos de datos.
La organización en cambio es transparente a el programador, este no se preocupa por estos temas, señales del bus de control, interfaces entre periféricos y computador, tecnología usada en memoria, cantidad de caches, etc.
En general lo fabricantes de máquinas producen familias de pc con una misma arquitectura y a medida que pasa el tiempo salen nuevos modelos con la misma arquitectura, pero con una organización diferente, con lo cual logran una compatibilidad de software.
Ejemplo de esto serian las PC comunes y una Macintoch, por poseer distinta arquitectura no son compatibles sus software.

Estructura y funcionamiento:

La descripción del sistema se va a ser la la siguiente forma: Se comenzara con una visión muy superficial, para de a poco introducirnos en las capas mas bajas en cuestión de estructura y funcionamiento.

Funciones básicas de un computador:

1. Procesamiento de datos.
2. Almacenamiento de datos.
3. Trasferencia de datos.
4. Control. 



Gráficamente las funciones serian algo así:


* A) Transferencia de datos.
* B) Almacenamiento.
* C) Procesamiento de datos almacenados.
* D) Entrada o salida de datos con un procesamiento previo.

Estructura del Computador

La representación mas sencilla y superficial de un computador podría ser la siguiente:


El computador es el que vamos a analizar mas en detalle. Las formas que esta se comunica con el entorno exterior se pueden clasificar en 2 grandes grupos: Periféricos y lineas de comunicación.

Computador:

Entrando un poco mas en el detalle del computador, podemos distinguir 4 componentes principales:


* CPU (Central Prosesing Unit): Controla el funcionamiento de la computadora y se encarga del procesamiento de datos, comúnmente se lo llama procesador.
* Input/Output (I/O o entrada y salida): se encarga de la transferencia de datos entre en computador y el entorno externo.
* Main Memory(Memoria principal): Almacena datos.
* System Interconnection (sistema de interconexión): Proporciona comunicación entre las tres partes.

El componente que vamos a analizar ahora mas en detalle es la CPU:


Los principales componentes son los siguientes:

* Registros: Proporcionan un almacenamiento interno a la CPU.
* ALU (Unidad Aritmético-Lógica): En ella se realizan las operaciones de procesamiento, aritméticas (suma resta, etc) y logicas (AND,OR, XOR, etc)
* Unidad de Control: Controla el funcionamiento de la CPU, con lo cual controla el funcionamiento del computador.
* Interconexiones: Proporcionan comunicación entre los 3 componentes anteriores.


Principios de la programación
En los primeros computadoras se puede observar aproximadamente el siguiente funcionamiento:
Al computador entraban datos, a esos datos se les daba un procesamiento, dicho procesamiento se configuraba antes de empezar por medio de cableado, y del computador salían los resultados.
Como se puede apreciar el procesador era para un uso especifico.
Un ejemplo de esto es la famosa ENIAC, para distraerme un poco vamos a poner algo de ella:

Unos datos interesantes:
Trabajaba con numeración decimal.
Pesaba 30 toneladas
Poseía 18000 válvulas.
Consumía 140 Kilowatios.
Realizaba 5000 sumas por segundo.
VIDEO YOUTUBE - ENIAC


ENIAC
De Wikipedia, la enciclopedia libre


ENIAC

ENIAC es un acrónimo inglés de Electronic Numerical Integrator And Computer (Computador e Integrador Numérico Electrónico), utilizada por el Laboratorio de Investigación Balística del Ejército de los Estados Unidos.
Contenido

* 1 Modalidad
* 2 Prestaciones
* 3 Las programadoras de ENIAC
* 4 Enlaces externos

Modalidad

No fue la primera computadora electrónica de propósito general. Ese honor se le debe al Z3 construido en el 1941. Además está relacionada con el Colossus, que fue usado para descifrar código alemán durante la Segunda Guerra Mundial y destruido tras su uso para evitar dejar pruebas, siendo recientemente restaurada para un museo británico. Era totalmente digital, es decir, que ejecutaba sus procesos y operaciones mediante instrucciones en lenguaje máquina, a diferencia de otras máquinas computadoras contemporáneas de procesos analógicos. Presentada en público el 15 de febrero de 1946.

La ENIAC fue construida en la Universidad de Pennsylvania por John Presper Eckert y John William Mauchly, ocupaba una superficie de 167 m² y operaba con un total de 17.468 válvulas electrónicas o tubos de vacío. Físicamente, la ENIAC tenía 17.468 tubos de vacío, 7.200 diodos de cristal, 1.500 relés, 70.000 resistencias, 10.000 condensadores y 5 millones de soldaduras. Pesaba 27 Tm, medía 2,4 m x 0,9 m x 30 m; utilizaba 1.500 conmutadores electromagnéticos y relés; requería la operación manual de unos 6.000 interruptores, y su programa o software, cuando requería modificaciones, tardaba semanas de instalación manual.

La ENIAC elevaba la temperatura del local a 50ºC. Para efectuar las diferentes operaciones era preciso cambiar, conectar y reconectar los cables como se hacía, en esa época, en las centrales telefónicas, de allí el concepto. Este trabajo podía demorar varios días dependiendo del cálculo a realizar.

Uno de los mitos que rodea a este aparato es que la ciudad de Filadelfia, donde se encontraba instalada, sufría de apagones cuando la ENIAC entraba en funcionamiento, pues su consumo era de 160 kW.

A las 23.45 del 2 de octubre de 1955, la ENIAC fue desactivada para siempre.

Prestaciones

La computadora podía calcular trayectorias de proyectiles, lo cual fue el objetivo primario al construirla. En 1,5 segundos era posible calcular la potencia 5000 de un número de hasta 5 cifras.

La ENIAC podía resolver 5.000 sumas y 360 multiplicaciones en 1 segundo. Pero entre las anécdotas estaba la poco promisoria cifra de un tiempo de rotura de 1 hora.

Las programadoras de ENIAC

Si bien fueron los ingenieros de ENIAC, Mauchly y Eckert, los que pasaron a la historia de la computación, hubo seis mujeres que se ocuparon de programar la ENIAC, cuya historia ha sido silenciada a lo largo de los años y recuperada en las últimas décadas. Clasificadas entonces como "sub-profesionales", posiblemente por una cuestión de género o para reducir los costos laborales, este equipo de programadoras destacaba por ser hábiles matemáticas y lógicas y trabajaron inventando la programación a medida que la realizaban. Betty Snyder Holberton, Jean Jennings Bartik, Kathleen McNulty Mauchly Antonelli, Marlyn Wescoff Meltzer, Ruth Lichterman Teitelbaum y Frances Bilas Spence prácticamente no aparecen en los libros de historia de la computación, mas dedicaron largas jornadas a trabajar con la máquina utilizada principalmente para cálculos de trayectoria balística y ecuaciones diferenciales y contribuyeron al desarrollo de la programación de computadoras. Cuando la ENIAC se convirtió luego en una máquina legendaria, sus ingenieros se hicieron famosos, mientras que nunca se le otorgó crédito alguno a estas seis mujeres que se ocuparon de la programación.

Muchos registros fotográficos de la época muestran la ENIAC con mujeres de pie frente a ella. Hasta la década del 80, se dijo incluso que ellas eran sólo modelos que posaban junto a la máquina ("Refrigerator ladies". Sin embargo, estas mujeres sentaron las bases para que la programación fuera sencilla y accesible para todos, crearon el primer set de rutinas, las primeras aplicaciones de software y las primeras clases en programación. Su trabajo modificó drásticamente la evolución de la programación entre las décadas del 40 y el 50.

Lincografia:
www.wikipedia.org
www.taringa.net

INSTALACION S. OPERATIVOS


Manual de Instalación del SO Ubuntu 9.02.



Videomanual de Instalación de Windows 7.



 Instalación de Mac OS Snow Leopard.


miércoles, 10 de marzo de 2010

HARDWARE INTERNO Y EXTERNO


Dispositivos Internos
Introducción
Los dispositivos nos ayudan para que a través de ellos nosotros podamos introducir a la computadora datos (información) que nos sea útiles para la resolución de algún problema y por consiguiente obtener el resultado de dichas operaciones, es decir; podernos comunicarnos con la computadora.

Procesador "CPU"
La CPU o Unidad Central de Proceso puede ser un único chip o una serie de chips que realizan cálculos aritméticos y lógicos y que temporizan y controlan las operaciones de los demás elementos del sistema.
Maiboard "Placa Madre"
Es una tarjeta de circuito impreso a la que se conectan las demás partes de la computadora. Tiene instalados una serie de integrados, entre los que se encuentra el Chipset que sirve como centro de conexión entre el procesador, la memoria RAM, los buses de expansión y otros dispositivos.





Memoria Ram
Es una memoria de almacenamiento temporal, donde el microprocesador coloca las aplicaciones que ejecuta el usuario y otra información necesaria para el control interno de tareas.
Disco Duro
Los discos duros son dispositivos de almacenamiento secundario con una superficie circular y plana, que se utilizan para registrar información masiva, programas y datos en computadores personales o microcomputadoras.
Bus de Datos
Conjunto de líneas conductoras de hardware utilizadas para la transmisión de datos entre los componentes de un sistema informático. Un bus es en esencia una ruta compartida que conecta diferentes partes del sistema, como el microprocesador, el controlador de disco, la memoria y los puertos de entrada/salida (E/S).

 
Fuente de Poder
Es un dispositivo que convierte la tensión alterna de la red de suministro, en una o varias tensiones, prácticamente continuas, que alimentan los distintos circuitos del aparato electrónico al que se conecta.
Tarjeta de Sonido
Tarjeta de expansión en un ordenador o computadora que permite grabar sonidos procedentes de un micrófono u otra fuente externa como un sintetizador, reproducirlos utilizando unos altavoces o un amplificador externo y, en ocasiones, manipular los archivos de sonido almacenados en el disco.

Tarjeta de Red
Tarjeta de circuitos integrados que se inserta en uno de los zócalos de expansión de la placa base y cuya función es conectar el ordenador o computadora con la estructura física y lógica de la red informática con otros ordenadores a la que pertenece mediante una red inalámbrica o estructurada (cableado).

Unidades Lectoras

CD-WRITER O DVD-WRITER
Los discos ópticos funcionan de manera similar que los magnéticos pero con rayos láser. Al escribir información en un disco de plástico o metálico, un rayo láser va perforando o marcando la superficie del disco; cada una de las marcas o perforaciones indican un bit de información.



HARDWARE EXTERNO.



Monitor o Pantalla
Tambien es común llarlo "pantalla", es un dispositivo común de salida que mediante una interfázmuestra los resultados del procesamiento de una computadora.







Teclado
El teclado es un dispositivo eficaz para introducir datos no gráficos como rótulos de imágenes asociados con un despliegue de gráficas. Los teclados también pueden ofrecerse con características que facilitan la entrada de coordenadas de la pantalla, selecciones de menús o funciones de gráficas.

Mouse
Es un dispositivo electrónico que nos permite dar instrucciones a nuestra computadora a través de un cursor que aparece en la pantalla.

Impresora
Es un periférico de ordenador que permite producir una copia permanente de textos o gráficos de documentos almacenados en formato electrónico, imprimiéndolos en medios físicos, normalmente en papel.
Parlantes
Es un transductor electroacústico utilizado para la reproducción de sonido. Uno o varios altavoces pueden formar una pantalla acústica.

En la transducción sigue un doble procedimiento: eléctrico-mecánico-acústico. En la primera etapa convierte las ondas eléctricas en energía mecánica, y en la segunda convierte la energía mecánica en energía acústica. Es por tanto la puerta por donde sale el sonido al exterior desde los aparatos que posibilitaron su amplificación, su transmisión por medios telefónicos o radioeléctricos, o su tratamiento.

Memoria Flash
La memoria flash es una manera desarrollada de la memoria EEPROM que permite que múltiples posiciones de memoria sean escritas o borradas en una misma operación de programación mediante impulsos eléctricos, frente a las anteriores que sólo permite escribir o borrar una única celda cada vez. Por ello, flash permite funcionar a velocidades muy superiores cuando los sistemas emplean lectura y escritura en diferentes puntos de esta memoria al mismo tiempo.

Scanner
Un scanner es un dispositivo de entrada que digitaliza una imagen de un papel u otra superficie, y la almacena en la memoria de una computadora.

SISTEMAS OPERATIVOS


SISTEMAS OPERATIVOS MICROSOFT
SERVER

Microsoft Windows Server 2008 R2

Microsoft Windows Server 2008

Microsoft Windows Small Business Server 2008

Microsoft Windows Storage Server 2003 R2

Microsoft BizTalk Server 2009

Forefront Thread Management Gateway, ISA Server

Microsoft Windows Server 2008 Foundation

Windows Storage Server 2003

Windows Server 2003

Win XP Pro as a Server
HOME
Windows XP oem home edition sp3

windows XP home basic

Windows Vista bussines

Microsoft Windows XP Home Edition sp3

Microsoft Windows XP Home System Builder

Microsoft Windows Vista Home Premium

Microsoft Windows Vista Home Basic

Microsoft Windows Vista Ultimate Edition

Windows NT 3.51

Windows 95


SISTEMAS OPERATIVOS LINUX.

SERVER
Linux Server

SUSE Linux Enterprise Server 11

Red Hat Enterprise Linux 5

Linux Ubuntu Server

Debian

Fedora

Linux Enterprise 10

Linux Centos

Mandrake

Linux GNU


H O M E
Linux Server

SUSE Linux Enterprise Server 11

Red Hat Enterprise Linux 5

Linux Ubuntu Server

Debian

Fedora

Linux Enterprise 10

Mandrake

Linux Os Sese

Linux Turbo Home

Linux knoppix Home





SISTEMAS OPERATIVOS APPLE.

SERVER

Apple Mac Os X 10.6 Snow Leopard Server Fam-Pack

Apple Mac Box Server Set Family Pack 10.6

Mac Os X 10.4.7 Server

Mac OS X 10.5 Leopard

Mac OS X Server Tiger

Mac OS X Server Leopard

Mac Pro

Xserve

Panter

Apple OS X Server 10.4

HOME

Unlimited Client Edition

Apple Mac Os X 10.6 Snow Leopard Server Fam-Pack

Apple Mac Box Server Set Family Pack 10.6

Mac Os X 10.4.7 Server

Mac OS X 10.5 Leopard

Mac OS X Server Tiger

Mac OS X Server Leopard

Mac Pro

Xserve

Panter

DOMINIOS (DNS)



¿Qué es dominio?
Un dominio de Internet es una red de identificación asociada a un grupo de dispositivos o equipos conectados a la red internet.

El propósito principal de los nombres de dominio en internet y del sistema de nombres de dominio (DNS), es traducir las direcciones IP de cada modo activo en la red, a términos memorizables y fáciles de encontrar. Esta abstracción hace posible que cualquier servicio (de red) pueda moverse de un lugar geográfico a otro en la red internet, aun cuando el cambio implique que tendrá una dirección IP diferente.

Sin la ayuda del sistema de nombres de dominio, los usuarios de internet tendrían que acceder a cada servicio web utilizando la dirección IP del nodo (Ej. Sería necesario utilizar http://74.125.45.100 en vez de http://google.com/).

Ejemplos de nombres de dominio
.es, para servicios de España.

.cat, para servicios en lengua catalana

.eu, la región de Europa

.cr, para servicios de Costa Rica

.ni, para servicios de Nicaragua

.ru, para servicios de Rusia

.fr, para servicios de Francia

.do, para servicios de República Dominicana

.gt, para servicios de Guatemala

.mx, para servicios de México

.cl, para servicios de Chile

.co, para servicios de Colombia

.cn, para servicios de China

.ar, para servicios de Argentina

.bo, para servicios de Bolivia

.ec, para servicios de Ecuador

.py, para servicios de Paraguay

.ve, para servicios de Venezuela

.edu, para servicios de Educación

.gov y .gob, para Gobierno y Entidades Públicas

.info, para Información

.int, para Entidades Internacionales, organizaciones como la ONU

.jobs, para Departamentos de empleo y recursos humanos en empresas

.mil, para el Departamento de Defensa de los Estados Unidos (Único país con dominio de primer nivel para el ejército)

.mobi, para empresas de telefonía móvil o servicios para móvil.

.museum, para los Museos

.name, para Nombres de personas

.net, para Infraestructura de red

.org, para organizaciones

.pe, para páginas de Perú

.pro, para profesionales con una titulación universitaria.

.tel, para servicios de comunicación por internet

.travel, para páginas de la industria de viajes y turismo.

.fm, para páginas del país Estados Federados de Micronesia, pero usado también para estaciones de radio de frecuencia modulada

.tv, para páginas del país Tuvalu, pero usado también para estaciones de televisión

.tk, para páginas del país Tokelau; sin embargo se usan también como dominio y servidor propio ( "Autónomas" ). Actualmente pueden obtenerse de forma gratuita.

Dominios ccTLD asignados
A

.af, para servicios de Afganistán

.ax, para servicios de Åland

.al, para servicios de Albania

.de, para servicios de Alemania

.ad, para servicios de Andorra

.ao, para servicios de Angola

.ai, para servicios de Anguila

.aq, para servicios de Antártida

.ag, para servicios de Antigua y Barbuda

.an, para servicios de Antillas Neerlandesas

.sa, para servicios de Arabia Saudita

.dz, para servicios de Argelia

.ar, para servicios de Argentina

.am, para servicios de Armenia

.aw, para servicios de Aruba

.ac, para servicios de Isla Ascensión

.au, para servicios de Australia

.at, para servicios de Austria

.az, para servicios de Azerbaiyán

.as, para servicios de Samoa Americana (también usado en Asturias).
B

.bs, para servicios de Bahamas

.bh, para servicios de Bahréin

.bd, para servicios de Bangladesh

.bb, para servicios de Barbados

.be, para servicios de Bélgica

.bz, para servicios de Belice

.bj, para servicios de Benín

.bm, para servicios de Bermudas

.by, para servicios de Bielorrusia

.bo, para servicios de Bolivia

.ba, para servicios de Bosnia y Herzegovina

.bw, para servicios de Botsuana

.br, para servicios de Brasil

.bn, para servicios de Brunei

.bg, para servicios de Bulgaria

.bf, para servicios de Burkina Fasso

.bi, para servicios de Burundi

.bt, para servicios de Bután
C

.ch, para servicios de Suiza

.cv, para servicios de Cabo Verde

.ky, para servicios de Islas Caimán

.kh, para servicios de Camboya

.cm, para servicios de Camerún

.ca, para servicios de Canadá

.cr, para servicios de Costa Rica

.td, para servicios de Chad

.cl, para servicios de Chile

.cn, para servicios de República Popular China

.tw, para servicios de República de China

.cy, para servicios de Chipre

.nc y *.tr, para servicios de la República Turca del Norte de Chipre

.cc, para servicios de Islas Cocos

.co, para servicios de Colombia

.km, para servicios de Comores

.cg, para servicios de República del Congo

.cd, para servicios de República Democrática del Congo

.ck, para servicios de Islas Cook

.kp, para servicios de Corea del Norte

.kr, para servicios de Corea del Sur

.ci, para servicios de Costa de Marfil

.cr, para servicios de Costa Rica

.hr, para servicios de Croacia

.cu, para servicios de Cuba

D

.de, para servicios de Alemania

.dk, para servicios de Dinamarca

.dm, para servicios de Dominica

.do , para servicios de la República Dominicana
E

.ec, para servicios de Ecuador

.eg, para servicios de Egipto

.sv, para servicios de El Salvador

.ae, para servicios de Emiratos Árabes Unidos

.er, para servicios de Eritrea

.sk, para servicios de Eslovaquia

.si, para servicios de Eslovenia

.es, para servicios de España

.us, para servicios de Estados Unidos

.ee, para servicios de Estonia

.et, para servicios de Etiopía

.eu, para servicios de la Unión Europea
F

.fo, para servicios de las Islas Feroe

.ph, para servicios de Filipinas

.fi, para servicios de Finlandia

.fj, para servicios de Fiyi

.fr, para servicios de Francia
G

.ga, para servicios de Gabón

.gm, para servicios de Gambia

.ge, para servicios de Georgia

.gs, para servicios de Islas Georgias del Sur y Sandwich del Sur

.gh, para servicios de Ghana

.gi, para servicios de Gibraltar

.gd, para servicios de Granada

.gr, para servicios de Grecia

.gl, para servicios de Groenlandia

.gu, para servicios de Guam

.gt, para servicios de Guatemala

.gg, para servicios de Guernsey

.gn, para servicios de Guinea

.gq, para servicios de Guinea Ecuatorial

.gw, para servicios de Guinea-Bissau

.gy, para servicios de Guyana
H

.ht, para servicios de Haití

.hn, para servicios de Honduras

.hk, para servicios de Hong Kong

.hu, para servicios de Hungría

I

.in, para servicios de India

.id, para servicios de Indonesia

.ir, para servicios de Irán

.iq, para servicios de Iraq

.ie, para servicios de Irlanda

.is, para servicios de Islandia

.il, para servicios de Israel

.it, para servicios de Italia
J

.jm, para servicios de Jamaica

.jp, para servicios de Japón

.je, para servicios de Jersey

.jo, para servicios de Jordania

K

.kz, para servicios de Kazajistán

.ke, para servicios de Kenia

.kg, para servicios de Kirguistán

.ki, para servicios de Kiribati

.kw, para servicios de Kuwait
L

.la, para servicios de Laos (en algunos casos también es utilizado para "Latin América")

.ls, para servicios de Lesoto

.lv, para servicios de Letonia

.lb, para servicios de Líbano

.lr, para servicios de Liberia

.ly, para servicios de Libia

.li, para servicios de Liechtenstein

.lt, para servicios de Lituania

.lu, para servicios de Luxemburgo
M

.mo, para servicios de Macao

.mk, para servicios de República de Macedonia

.mg, para servicios de Madagascar

.my, para servicios de Malasia

.mw, para servicios de Malawi

.mv, para servicios de Maldivas

.ml, para servicios de Malí

.mt, para servicios de Malta

.fk, para servicios de Islas Malvinas

.im, para servicios de Isla de Man

.mp, para servicios de Islas Marianas del Norte

.ma, para servicios de Marruecos

.mh, para servicios de las Islas Marshall

.mu, para servicios de Mauricio

.mr, para servicios de Mauritania

.mx, para servicios de México

.fm, para servicios de los Estados Federados de Micronesia

.md, para servicios de Moldavia

.mc, para servicios de Mónaco

.mn, para servicios de Mongolia

.me y .yu, para servicios de Montenegro

.ms, para servicios de Montserrat

.mz, para servicios de Mozambique

.mm y .bu para servicios de Birmania

N

.na, para servicios de Namibia

.cx, para servicios de Isla de Navidad

.nr, para servicios de Nauru

.np, para servicios de Nepal

.ni, para servicios de Nicaragua

.ne, para servicios de Níger

.ng, para servicios de Nigeria

.nu, para servicios de Niue

.nf, para servicios de Isla Norfolk

.no, para servicios de Noruega

.nc, para servicios de Nueva Caledonia

.nz, para servicios de Nueva Zelanda

O

.om, para servicios de Omán
P

.nl, para servicios de Países Bajos

.pk, para servicios de Pakistán

.pw, para servicios de Palaos

.ps, para servicios de Autoridad Nacional Palestina

.pa, para servicios de Panamá

.pg, para servicios de Papúa Nueva Guinea

.py, para servicios de Paraguay

.pe, para servicios de Perú

.pn, para servicios de Islas Pitcairn

.pf, para servicios de Polinesia Francesa

.pl, para servicios de Polonia

.pt, para servicios de Portugal

.pr, para servicios de Puerto Rico

.so, para servicios de Puntlandia
Q

.qa, para servicios de Qatar
R

.uk, .gb o .eu para servicios de Reino Unido

.cf, para servicios de República Centroafricana

.cz, para servicios de República Checa

.do, para servicios de República Dominicana

.rw, para servicios de Ruanda

.ro, para servicios de Rumania

.ru,.рф (en alfabeto cirílico) para servicios de Rusia

.su para el dominio correspondiente a la antigua Unión Soviética ( aún en uso) también reservado por la Federación Rusa.
S

.eh, para servicios de República Árabe Saharaui Democrática

.pm, para servicios de San Pedro y Miguelón

.sb, para servicios de Islas Salomón

.ws, para servicios de Samoa

.as, para servicios de Samoa Americana

.kn, para servicios de San Cristóbal y Nieves

.sm, para servicios de San Marino

.vc, para servicios de San Vicente y las Granadinas

.sh, para servicios de Santa Helena

.lc, para servicios de Santa Lucía

.st, para servicios de Santo Tomé y Príncipe

.sn, para servicios de Senegal

.rs o .yu para servicios de Serbia

.sc, para servicios de Seychelles

.sl, para servicios de Sierra Leona

.sg, para servicios de Singapur

.sy, para servicios de Siria

.so, para servicios de Somalia

.lk, para servicios de Sri Lanka

.sz, para servicios de Suazilandia

.za, para servicios de Sudáfrica

.sd, para servicios de Sudán

.se, para servicios de Suecia

.ch, para servicios de Suiza

.sr, para servicios de Surinam

.no y .sj para servicios de Svalbard

.sv, para servicios de El Salvador

T

.th, para servicios de Tailandia

.tz, para servicios de Tanzania

.tj, para servicios de Tayikistán

.tf, para servicios de los Territorios Australes Franceses

.io, para servicios del Territorio Británico en el Océano Índico

.tl, para servicios de Timor Oriental

.tg, para servicios de Togo

.tk, para servicios de Tokelau

.to, para servicios de Tonga

.tt, para servicios de Trinidad y Tobago

.sh, para servicios de Tristán da Cunha

.tn, para servicios de Túnez

.tc, para servicios de Islas Turcas y Caicos

.tm, para servicios de Turkmenistán

.tr, para servicios de Turquía

.tv, para servicios de Tuvalu

U

.ua, para servicios de Ucrania

.ug, para servicios de Uganda

.um, para servicios de Islas Ultramarinas de Estados Unidos

.uy, para servicios de Uruguay

.uz, para servicios de Uzbekistán

V

.vu, para servicios de Vanuatu

.va, para servicios de Ciudad del Vaticano

.ve, para servicios de Venezuela

.vn, para servicios de Vietnam

.vg, para servicios de Islas Vírgenes Británicas

.vi, para servicios de Islas Vírgenes de los Estados Unidos

W

.wf, para servicios de Wallis y Futuna

Y

.ye, para servicios de Yemen

.dj, para servicios de Yibuti

Z

.zm, para servicios de Zambia

.zw, para servicios de Zimbabue

Otros

.aq, para servicios de Antártida

.bv, para servicios de Isla Bouvet

.cs, para servicios de Checoslovaquia

.dd, para servicios de República Democrática Alemana (nunca llegó a usarse)

.gf, para servicios de Guayana Francesa

.gr, para servicios de Monte Athos

.mq, para servicios de Martinica

.sj, para servicios de Svalbard y Jan Mayen

.zr, para servicios de Zaire

HISTORIA DEL WWW

En informática, la World Wide Web, cuya traducción podría ser Red Global Mundial o "Red de Amplitud Mundial", es un sistema de documentos de hipertexto y/o hipermedios enlazados y accesibles a través de Internet. Con un navegador web, un usuario visualiza sitios web compuestos de páginas web que pueden contener texto, imágenes, videos u otros contenidos multimedia, y navega a través de ellas usando hiperenlaces.


Tim Berners-Lee


La Web fue creada alrededor de 1989 por el inglés Tim Berners-Lee y el belga Robert Cailliau mientras trabajaban en el CERN en Ginebra, Suiza, y publicado en 1992. Desde entonces, Berners-Lee ha jugado un papel activo guiando el desarrollo de estándares Web (como los lenguajes de marcado con los que se crean las páginas web), y en los últimos años ha abogado por su visión de una Web Semántica.

La idea subyacente de la Web se remonta a la propuesta de Vannevar Bush en los años 40 sobre un sistema similar: a grandes rasgos, un entramado de información distribuida con una interfaz operativa que permitía el acceso tanto a la misma como a otros artículos relevantes determinados por claves. Este proyecto nunca fue materializado, quedando relegado al plano teórico bajo el nombre de Memex. Es en los años 50 cuando Ted Nelson realiza la primera referencia a un sistema de hipertexto, donde la información es enlazada de forma libre. Pero no es hasta 1980, con un soporte operativo tecnológico para la distribución de información en redes informáticas, cuando Tim Berners-Lee propone ENQUIRE al CERN (refiriéndose a Enquire Within Upon Everything, en castellano Preguntando de Todo Sobre Todo), donde se materializa la realización práctica de este concepto de incipientes nociones de la Web.

En marzo de 1989, Tim Berners Lee, ya como personal de la divisón DD del CERN, redacta la propuesta,[2] que referenciaba a ENQUIRE y describía un sistema de gestión de información más elaborado. No hubo un bautizo oficial o un acuñamiento del término web en esas referencias iniciales utilizándose para tal efecto el término mesh. Sin embargo, el World Wide Web ya había nacido. Con la ayuda de Robert Cailliau, se publicó una propuesta más formal para la world wide web[3] el 12 de noviembre de 1990.

Berners-Lee usó un NeXTcube como el primer servidor web del mundo y también escribió el primer navegador web, WorldWideWeb en 1990. En las Navidades del mismo año, Berners-Lee había creado todas las herramientas necesarias para que una web funcionase:[4] el primer navegador web (el cual también era un editor web), el primer servidor web y las primeras páginas web[5] que al mismo tiempo describían el proyecto.

El 6 de agosto de 1991, envió un pequeño resumen del proyecto World Wide Web al newsgroup[6] alt.hypertext. Esta fecha también señala el debut de la web como un servicio disponible públicamente en Internet.

El concepto, subyacente y crucial, del hipertexto tiene sus orígenes en viejos proyectos de la década de los 60, como el Proyecto Xanadu de Ted Nelson y el sistema on-line NLS de Douglas Engelbart. Los dos, Nelson y Engelbart, estaban a su vez inspirados por el ya citado sistema basado en microfilm "memex", de Vannevar Bush.

El gran avance de Berners-Lee fue unir hipertexto e Internet. En su libro Weaving the Web (en castellano, Tejiendo la Red), explica que él había sugerido repetidamente que la unión entre las dos tecnologías era posible para miembros de las dos comunidades tecnológicas, pero como nadie aceptó su invitación, decidió, finalmente, hacer frente al proyecto él mismo. En el proceso, desarrolló un sistema de identificadores únicos globales para los recursos web y también: el Uniform Resource Identifier.

World Wide Web tenía algunas diferencias de los otros sistemas de hipertexto que estaban disponibles en aquel momento:

WWW sólo requería enlaces unidireccionales en vez de los bidireccionales. Esto hacía posible que una persona enlazara a otro recurso sin necesidad de ninguna acción del propietario de ese recurso. Con ello se reducía significativamente la dificultad de implementar servidores web y navegadores (en comparación con los sistemas anteriores), pero en cambio presentaba el problema crónico de los enlaces rotos.

A diferencia de sus predecesores, como HyperCard, World Wide Web era no-propietario, haciendo posible desarrollar servidores y clientes independientemente y añadir extensiones sin restricciones de licencia.

El 30 de abril de 1993, el CERN anunció[7] que la web sería gratuita para todos, sin ningún tipo de honorarios.

ViolaWWW uno de los primeros Navegadores Web.


ViolaWWW fue un navegador bastante popular en los comienzos de la web que estaba basado en el concepto de la herramienta hipertextual de software de Mac denominada HyperCard. Sin embargo, los investigadores generalmente están de acuerdo en que el punto de inflexión de la World Wide Web comenzó con la introducción[8] del navegador[9] web Mosaic en 1993, un navegador gráfico desarrollado por un equipo del NCSA en la Universidad de Illinois en Urbana-Champaign (NCSA-UIUC), dirigido por Marc Andreessen. Funding para Mosaic vino del High-Performance Computing and Communications Initiative, un programa de fondos iniciado por el entonces gobernador Al Gore High Performance Computing and Communication Act of 1991, también conocida como la Gore Bill.[10] Antes del lanzamiento de Mosaic, las páginas web no integraban un amplio entorno gráfico y su popularidad fue menor que otros protocolos anteriores ya en uso sobre Internet, como el protocolo Gopher y WAIS. La interfaz gráfica de usuario de Mosaic permitió a la WWW convertirse en el protocolo de Internet más popular de una manera fulgurante...

Funcionamiento de la Web

La visualizacion de una pagina web de la World Wide Web normalmente la URL de la página en el navegador web, o siguiendo un enlace de hipertexto a esa página o recurso. En ese momento el navegador comienza una serie de comunicaciones, transparentes para el usuario, para obtener los datos de la página y visualizarla.

El primer paso consiste en traducir la parte nombre del servidor de la URL en una dirección IP usando la base de datos distribuida de Internet conocida como DNS. Esta dirección IP es necesaria para contactar con el servidor web y poder enviarle paquetes de datos.

El siguiente paso es enviar una petición HTTP al servidor Web solicitando el recurso. En el caso de una página web típica, primero se solicita el texto HTML y luego es inmediatamente analizado por el navegador, el cual, después, hace peticiones adicionales para los gráficos y otros ficheros que formen parte de la página. Las estadísticas de popularidad de un sitio web normalmente están basadas en el número de páginas vistas o las peticiones de servidor asociadas, o peticiones de fichero, que tienen lugar.

Al recibir los ficheros solicitados desde el servidor web, el navegador renderiza la página tal y como se describe en el código HTML, el CSS y otros lenguajes web. Al final se incorporan las imágenes y otros recursos para producir la página que ve el usuario en su pantalla.

La mayoría de las páginas web contienen hiperenlaces a otras páginas relacionadas y algunas también contienen descargas, documentos fuente, definiciones y otros recursos web.

Esta colección de recursos útiles y relacionados, interconectados a través de enlaces de hipertexto, es lo que ha sido denominado como 'red' (web, en inglés) de información. Al trasladar esta idea a Internet, se creó lo que Tim Berners-Lee llamó WorldWideWeb (un término escrito en CamelCase, posteriormente desechado) en 1990.[1]

Si un usuario accede de nuevo a una página después de un pequeño intervalo, es probable que no se vuelvan a recuperar los datos del servidor web de la forma en que se explicó en el apartado anterior. Por defecto, los navegadores almacenan en una caché del disco duro local todos los recursos web a los que el usuario va accediendo. El navegador enviará una petición HTTP sólo si la página ha sido actualizada desde la última carga, en otro caso, la versión almacenada se reutilizará en el paso de renderizado para agilizar la visualización de la página.

Esto es particularmente importante para reducir la cantidad de tráfico web en Internet. La decisión sobre la caducidad de la página se hace de forma independiente para cada recurso (imagen, hoja de estilo, ficheros JavaScript, etc, además de para el propio código HTML). Sin embargo en sitios de contenido muy dinámico, muchos de los recursos básicos sólo se envían una vez por sesión. A los diseñadores de sitios web les interesa reunir todo el código CSS y JavaScript en unos pocos ficheros asociados a todo el sitio web, de forma que pueden ser descargados en las cachés de los usuarios y reducir así el tiempo de carga de las páginas y las peticiones al servidor.

Hay otros componentes de Internet que pueden almacenar contenido Web. El más común en la práctica son los frecuentes firewalls de empresa y académicos donde se pueden almacenar los recursos web solicitados por un usuario para el beneficio de todos los que estén conectados a ese firewall. Algunos buscadores como Google, Yahoo!, GlowBoom o AltaVista también almacenan contenidos de sitios Web.

Aparte de las utilidades creadas en los servidores Web que pueden determinar cuándo los ficheros físicos han sido actualizados, los diseñadores de páginas web generadas dinámicamente pueden controlar las cabeceras HTTP enviadas a los usuarios, de forma que las páginas intermedias o sensibles a problemas de seguridad no sean guardadas en caché. Por ejemplo, en los bancos on line y las páginas de noticias se utiliza frecuentemente este sistema.

Esto nos ayuda a comprender la diferencia entre los verbos HTTP 'GET' y 'POST' - los datos solicitados con GET pueden ser almacenados en la caché, si se cumplen las otras condiciones, mientras que con los datos obtenidos después de enviar información al servidor con POST normalmente no se puede.

Java y JavaScript

Un avance significativo en la tecnología web fue la Plataforma Java de Sun Microsystems. Este lenguaje permite que las páginas web contengan pequeños programas (llamados applets) directamente en la visualización. Estos applets se ejecutan en el ordenador del usuario, proporcionando un interfaz de usuario más rico que simples páginas web. Los applets Java del cliente nunca obtuvieron la popularidad que Sun esperaba de ellos, por una serie de razones, incluyendo la falta de integración con otros contenidos (los applets fueron confinados a pequeñas cajas dentro de la página renderizada) y el hecho de que muchos ordenadores del momento eran vendidos a los usuarios finales sin una JVM correctamente instalada, por lo que se necesitaba que el usuario descargara la máquina virtual antes de que el applet comenzara a aparecer. Actualmente Adobe Flash desempeña muchas de las funciones que originalmente se pensaron que podrían hacer los applets de Java incluyendo la ejecución de contenido de vídeo, animaciones y algunas características superiores de GUI. En estos momentos Java se utiliza más como plataforma y lenguaje para el lado del servidor y otro tipo de programación.

JavaScript, en cambio, es un lenguaje de script que inicialmente fue desarrollado para ser usado dentro de las páginas web. La versión estandarizada es el ECMAScript. Si bien los nombres son similares, JavaScript fue desarrollado por Netscape y no tiene relación alguna con Java, aparte de que sus sintaxis derivan del lenguaje de programación C. En unión con el Document Object Model de una página web, JavaScript se ha convertido en una tecnología mucho más importante de lo que pensaron sus creadores originales. La manipulación del Modelo de Objetos de Documento después de que la página ha sido enviada al cliente se ha denominado HTML Dinámico (DHTML), para enfatizar un cambio con respecto a las visualizaciones de HTML estático.

En su forma más simple, toda la información opcional y las acciones disponibles en las páginas web con JavaScript ya son cargadas la primera vez que se envía la página. Ajax ("Asynchronous JavaScript And XML", en español, JavaScript Asíncrono y XML) es una tecnología basada en JavaScript que puede tener un efecto significativo para el desarrollo de la Web. Ajax proporciona un método por el cual grandes o pequeñas partes dentro de una página web pueden actualizarse!, usando nueva información obtenida de la red en respuesta a las acciones del usuario. Esto permite que la página sea mucho más confiable, interactiva e interesante, sin que el usuario tenga que esperar a que se cargue toda la página. Ajax es visto como un aspecto importante de lo que suele llamarse Web 2.0. Ejemplos de técnicas Ajax usadas actualmente pueden verse en Gmail, Google Maps etc.

Pronunciación de "www."

En inglés, WWW. es el acrónimo de tres letras más largo de pronunciar, necesitando nueve sílabas. En Douglas Adams puede recogerse la siguiente cita:

"La World Wide Web es la única cosa que conozco cuya forma abreviada se tarda tres veces más en decir que su forma extendida."

Douglas Adams The Independent on Sunday, 1999

La pronunciación castellana es: "uve doble, uve doble, uve doble, punto", sin embargo muchas veces se abrevia como "tres uves dobles, punto". En algunos países en donde se habla español, como en México, se suele pronunciar "triple doble u, punto" o "doble u, doble u, doble u, punto", en Cuba, Argentina, Venezuela, Chile, Paraguay y Uruguay "triple doble ve, punto" o "doble ve, doble ve, doble ve, punto", en Ecuador y Colombia "doble u, doble u, doble u, punto" y en otros países "tres uves dobles, punto".

En chino, la World Wide Web normalmente se traduce por wàn wéi wǎng (万维网), que satisface las "www" y que significa literalmente "red de 10 mil dimensiones".

En italiano, se pronuncia con mayor facilidad: "vu vu vu".

jueves, 4 de marzo de 2010

ARQUITECTOS INFORMATICOS


El arquitecto de software como un ser visionario


El presente artículo viene a ser algo así como una versión poética y muy propia sobre las posturas que, a veces, se ve obligado a tomar un arquitecto de software, relacionando al arquitecto y su arquitectura, con un visionario y su visión, respectivamente.

Cuando hablo de visionarios, me quiero referir a una persona capaz de tomar o crear una idea o ideal y llevarlo a la práctica. Según mi propia consideración (y de muchas personas que saben en serio sobre el tema), una persona que sólo es capaz de tener ideas, sin llevarla a la práctica o promoverlas para que otros las hagan realidad, no es, ni será jamás, un visionario.

Un visionario

Sin dudas, un ejemplo de visionario fue Galileo Galilei (cache). Es válida la historia que de él se cuenta, en la cual, luego de su retractación forzada sobre la veracidad de la teoría Copernicana (cache) del Heliocentrismo , se fue diciendo por lo bajo Eppur si muove (y sin embargo, se mueve).

Galileo fue un visionario y tuvo que lidiar con la adversidad. Llevar adelante una visión implica tomar algo que se encuentra en el plano ideal, y muchas veces irreal en la práctica actual y establecida, para hacerlo una realidad tangible. Las ideas originales o revolucionarias, e incluso aquellas no tan originales, que tienen que lidiar con la idiosincrasia y el saber establecido, encontrarán casi siempre un plano adverso.

La visión

En una visión -por ejemplo la de una empresa- las bases axiomáticas que conforman la visión tienden a doblarse, debido a la presión ejercida por el entorno (la realidad actual). El mantener una visión no implica cumplir a rajatabla los axiomas sin la menor noción de instinto de supervivencia, sino luchar para que éstos sean una realidad tangible en el futuro. El problema con la visión es que sitúa en el futuro el destino al cual queremos llegar y no nos dice cómo.

La realidad muestra de manera despiadada, que quién quiera llevar adelante una visión tiene que, primero que nada, sobrevivir para que se haga realidad. En ese sobrevivir, el instinto de supervivencia producirá que las bases axiomáticas se doblen, como le pasó a Galileo; pero si la visión es real, nunca permitirá que se quiebren (Eppur si muove).

El arquitecto y su visión de la arquitectura

Muchas veces, un arquitecto se encuentra en ambientes hostiles a sus ideales. Muchas veces es sólo culpa del arquitecto debido a su soberbia y/o cuestiones ambientales; viéndose en la necesidad de torcer los axiomas de su arquitectura ideal. En estos momentos, suele ganar la desesperación, preguntándose: ¿Por qué, si estoy haciendo algo que trae tantos beneficios, existen tanta resistencia? Seguramente, el problema radique en el arquitecto, ya que es difícil que existan personas que no entiendan ninguna explicación; creo, más bien, que existen personas que no pueden comunicarse debidamente con otras. Sin embargo, ante una situación de éstas, siempre es posible flexibilizar nuestros axiomas y así lograr dar el primer paso hacia la implementación real de la visión (arquitectura), manteniendo la esperanza de lograr el cumplimiento de todos ellos en el futuro.

Por estos motivos es que, a veces , la arquitectura es a su arquitecto, lo que su visión a un visionario.

El rol de los Arquitectos de Software


Introducción

De la misma manera que ocurre con la Arquitectura de Software, existen múltiples definiciones sobre el rol de los arquitectos. Podríamos incluso citar una definición por autor. Esto parece ser causa de que, en general, se ubica a los arquitectos en el contexto de una organización en particular, con las propias necesidades y requerimientos de esa organización. La realidad parece indicar que es poco probable que se pueda dar una definición de arquitecto, transversal a cualquier organización, y definir un estereotipo de arquitecto que especifique cuáles son sus responsabilidades y habilidades necesarias dentro de un proyecto. Lo que sí es posible es definir prototipos de arquitectos “a muy grandes rasgos” y aplicar cada uno de estos arquetipos, en una situación en particular, dependiendo del contexto de la empresa, del proyecto y del equipo de trabajo.

Confusiones comunes

El término Arquitecto de Software se ha convertido en el título de moda en toda empresa de sistemas o con un área propia de sistemas. Decimos de moda, debido a que no todas las empresas necesitan realmente arquitectos de software y, tal vez, ni siquiera todos los proyectos necesiten de un verdadero arquitecto de software. Es común que muchas de las tareas relevantes de un proyecto puedan ser perfectamente resueltos con desarrolladores experimentados, sin tener la necesidad de contratar un arquitecto. Muy frecuentemente se tiende a confundir estos dos perfiles, que son abismalmente diferentes. También es importante notar la diferencia entre los “gurúes tecnológicos” y los verdaderos arquitectos. Estas cuestiones aumentan la confusión existente sobre qué es un arquitecto y cuáles se supone tendrían que ser sus responsabilidades.

Existen otras figuras a las que habitualmente se les asigna este título de forma arbitraria; y que no siempre lo justifican, como ser:

Ingenieros

Científicos

Web masters

Project managers

Consultores

Analistas con profundo conocimiento del negocio

DBA’s


Tipos de arquitectos de software

Para definir qué es un arquitecto de software, debemos tener en cuenta un contexto y un escenario en particular. Dicho de otra forma, depende de la organización, de su negocio, de sus objetivos, de la influencia del área de sistemas, de la importancia de el/los proyecto/s y del tamaño de los mismos. Teniendo en cuenta este contexto, podemos proponer una serie de categorizaciones:

Arquitecto técnico

Se trata de profesionales con amplios conocimientos técnicos, conocedor del negocio de los proyectos y que, probablemente, esté asignado a uno o varios proyectos al mismo tiempo. Algunas de sus responsabilidades suelen ser: definir los lineamientos de diseño, su arquitectura y demás cuestiones técnicas de los proyectos.

Arquitecto funcional

Tienden a ocupar el rol de team leader y, a su vez, de líder técnico. Manejan el project y planifican junto al PM las iteraciones. Suele representar un canal de comunicación fluida entre el PM y los equipos de desarrollo. Validan diseños; guían a los desarrolladores, para que cumplan con las expectativas de calidad tomando métricas, organizando y promoviendo la documentación y las buenas prácticas; aseguran que el proyecto no se desvíe de la arquitectura previamente definida.

Arquitecto Corporativo

Unifica los dos casos mencionados anteriormente; pero con algunos agregados. Este modelo, tomado sobre la base que propone Bredemeyer Consulting , es al que apunta Epidata Consulting para sus arquitectos de software.

Probablemente, en la literatura referida al tema se logre recopilar una mayor cantidad de perfiles o roles de arquitectos. Esta mayor variedad, en general, apunta a grandes organizaciones, donde cada función está claramente dividida y, sobre todo, limitada, transformando al arquitecto en un ente con responsabilidades restringidas.

Rol de los arquitectos

Como base, el rol de los arquitectos suele comprender las siguientes tareas:

definición de las vistas de la arquitectura de una aplicación (o sea, CREAR la arquitectura, ya que la arquitectura, en pocas palabras es un conjunto de vistas de alto nivel);

dar soporte técnico-tecnológico a desarrolladores, clientes y expertos en negocios;

conceptualizar y experimentar con distintos enfoques arquitectónicos;

crear documentos de modelos y componentes y especificaciones de interfaces;

validar la arquitectura contra requerimientos, suposiciones;

Y además:

tener una dosis de estrategia y política, o sea, ser, en parte, un CONSULTOR.

De esta forma logramos unificar el arquitecto técnico con el arquitecto funcional, resultando un arquitecto corporativo. Una figura que probablemente se ajuste a cualquier realidad (adaptando algunos puntos específicos de sus tareas).

Dominios de los arquitectos

En el rol cotidiano de los arquitectos, existen varias tareas o dominios (más allá de las tareas propias incluidas en el ciclo de vida de un proyecto en particular) en los que suelen estar enfocados los arquitectos y que es conveniente determinar. Estos son:

tecnología

enfocado más en los objetivos de la organización que en las decisiones técnicas

creación de modelos problema/solución

exploración de alternativas de soluciones

preparación de documentos

convencer y comunicar de la factibilidad de las decisiones técnicas a los sponsors y stake holders (cache)

estrategias de negocios:

claro conocimiento de la estrategia de negocio de la organización, de los ciclos de planificación, proceso de toma de decisiones; conocimiento del contexto de la organización (competencia, productos, factores principales que afectan el éxito de la organización)

todo esto se resume en VENDER, pero no desde el punto de vista comercial, sino mas bien, desde el punto de vista de la actitud,

la comunicación y lo valores de calidad trasmitidos.

políticas de la organización:

conocer los principales stake holders (cache) de la organización. Especialmente, saber lo que ellos quieren y necesitan; mantener una comunicación fluida con éstos.

generación de reportes y comunicación de resultados.

liderazgo:

tener una visión del contexto

toma de decisiones

selección y creación equipos

motivador

tener carisma y credibilidad

compromiso y dedicación

evangelización tecnológica

puente entre desarrolladores, PM's y expertos de negocio.

Sabemos que los arquitectos también forman parte del proceso de desarrollo de un proyecto. Durante este proceso, las fases comúnmente reconocidas como más importantes en la actuación del Arquitecto de Software son:

pre-diseño:

entender el alcance del proyecto

entender los puntos más importantes del diseño: validar y manejar requerimientos y expectativas del cliente

análisis de dominio:

entender en detalle los requerimientos del cliente

crear bocetos de los comportamientos deseados del sistema

diseño esquemático:

definir el look&feel

si es necesario, construir prototipos

desarrollo de diseño:

ampliar los detalles y refinar el diseño para llegar al diseño final

finalizar todos los diseños

documentos del proyecto:

soporte a desarrolladores: lidiar con problemas concretos, revisión de código para controlar la calidad, ver cómo funcionan (o no) las cosas

definir el proceso de desarrollo, los roles de los miembros del team y la secuencia de construcción de la aplicación

especificar metodologías y tecnologías.

definir todos los detalles necesarios para todos aquellos que construirán la aplicación

contratación o staffing:

seleccionar desarrolladores

si el desarrollo es tercerizado, participar en la elección del proveedor

construcción:

asegurar que la visión del cliente sea mantenida y respetada durante el desarrollo

revisar y validar los diseños de nivel de construcción si la complejidad de los mismos lo amerita

diseñar modificaciones pedidos por el cliente.

participar en el testeo y aceptación de la revisiones solicitadas por el cliente

post construcción:

asistencia en la migración del sistema nuevo (implementación)

puede llegar a manejar el entrenamiento de los usuarios nuevos

definir procesos de mantenimiento

También existen una serie de adjetivos que, probablemente, terminen explicando la forma de ser y actuar de los arquitectos. Aunque más que características, se podría decir que son requisitos:

visionario: saber identificar las oportunidades que se le presentan. Crear y mantener una visión del modelo de la solución.

analítico: comprensión y validación de especificaciones y modelos.

comunicativo: frecuentemente "puente" entre distintos jugadores de la organización

decisivo: toma de decisiones críticas.

responsable: actitud ejemplar en el equipo de trabajo. Comprometido con "su creación".

orientado a aprender: para cumplir con una de las metas: la evangelización. Es imprescindible la actualización y capacitación constantes en todas las área que le competen (management, tecnología, metodologías, etc.)

jugador de equipo: predisposición para cooperar y convivir con distintos perfiles.

"bien hablado": correcto uso del lenguaje, por la necesidad constante de comunicar de forma eficiente.

Esperando la estandarización

Desde sus orígenes, en la universidad Carnegie Mellon (cache), la arquitectura de software espera que llegue finalmente una verdadera especificación que sea válida y aplicable en todos los contextos empresariales conocidos. La diversidad de opiniones y experiencias llevan a que varias organizaciones internacionales intenten (por ahora en vano) crear un modelo de arquitecto y arquitectura.

Por ahora, queda a criterio de cada organización el moldeo y “customización” de sus propios arquitectos. Es importante entender que no cualquier profesional puede ser nombrado arquitecto, ya que este punto nos ha llevado al día de hoy, a necesitar un ente superior que ponga un poco de claridad sobre el tema.

Nombrando sólo algunas de estas organizaciones, encontramos a la Enterprise-wide IT Architecture (EWITA ) (con la participación de Bredemeyer Consulting ) y la Worldwide Institute of Software Architects WWISA ) que con sus trabajos difunden el “buen uso” de la arquitectura de software y sus actividades relacionadas.

CYBER-TERRORISMO


CYBER-TERRORISMO, EL NUEVO ROSTRO DEL MIEDO

Como estar tan equivocado,
para que armas en la mano?
Mira, piensa, dime como va.
"Guerras"- Vox Dei (*)

¿Necesita la información sobre como construir un arma de pulso electromagnético, (EMPW) que pueda ser ocultada en un maletín?. Trate en la siguiente dirección electrónica de la WWW, (Internet): http://www.cs.monash.edu.au/~carlo/
¿Desea interferir satélites de comunicaciones?. Pruebe en: http://www.spectre.com/ .
Por tan solo 20 dólares, se asegura al menos su iniciación al mundo de las armas de la era de la información o de la tercera ola según A.Toffler (La Tercera Ola, El Cambio del Poder, Las Guerras del Futuro).

La Internet, tiene su lado oscuro, y allí es posible conseguir mucha más información sobre nuevas tecnologías para el terror.

En el llamado cyberespacio, se desarrollan nuevas formas de transmisión y recuperación de la información, que permiten al menos en teoría, que el terror ejercido por fanáticos de todo tipo pero con talento informático, se pueda ejercer con una eficacia y profundidad nunca vista antes.

Es posible, que el horror desencadenado por atentados explosivos como al de la Embajada de Israel y a la AMIA puedan parecernos en un futuro no muy lejano, un incidente menor -en cuanto a su espectacularidad, no en el dramatismo de su costo en vidas humanas- si consideramos las posibilidades que el uso de ciertas tecnologías de la era cibernética y su disponibilidad en medios masivos de recuperación de la información como la Internet, puedan brindar a los grupos terroristas de la era de la información.

El mundo físico y el mundo virtual tienen puntos en común, los cuales pueden y serán usados como blancos por una nueva generación de violentos, los cyber-terroristas.

A medida que nuestras sociedades se vuelvan más y más dependientes del proceso de integración informático que se da en forma global, más posibilidades habrá para que esta infraestructura de la información y el conocimiento se vuelva un blanco apetecible de grupos o individuos que a través del terror quieran lograr sus fines, cualesquiera estos sean.

A través del uso de las armas de la info-guerra, los cyber-terroristas serán capaces de causar graves daños a la infraestructura de un país, o de infligir una interdicción profunda al normal desenvolvimiento de una sociedad. Estas nuevas armas son totalmente diferentes de las armas convencionales pero son capaces de producir tan o más daño que ellas.
Armas de la INFO-GUERRA
· Virus Informáticos y Bombas Lógicas
· Armas de Pulso Electromagnético
· Medios de interceptación, decepción, interferencia y negación de la información y la transmisión de datos
La mayoría de los usuarios de computadoras personales conocen el efecto devastador que un virus informático causa en su equipo, y cuánto cuesta limpiar el sistema de tales programas agresivos y furtivos.

Imaginemos ahora virus de computadora mucho más sofisticados, actuando en redes de sistemas informáticos complejos, que han sido diseñados para actuar en puntos neurálgicos del sistema agredido. Redes enteras de computadoras pueden ser desarticuladas, engañadas, destruidas. Estos virus pueden tomar diversas formas y actuar siguiendo diferentes estrategias para llevar a cabo su misión de interferir, confundir y destruir a los programas, datos y al flujo de información.

Estos virus inclusos pueden ser diseñados para atacar y trastocar datos muy específicos o instrucciones de un programa informático, para causar acciones bien determinadas en el mundo físico.

En cambio las armas de pulso electromagnético producen la destrucción física del hardware, desarticulando los sistemas informáticos al eliminar los procesadores y /o equipos periféricos.

Este efecto de las ondas electromagnéticas de gran energía liberada en tiempos muy breves, fue descubierto durante los ensayos de las armas nucleares, las que eran capaces de destruir equipos electrónicos a gran distancia, sin intervenir los efectos térmicos o mecánicos de la explosión atómica, usando únicamente la energía electromagnética generada en la detonación. El pulso electromagnético de alta energía y corta duración induce sobrecargas en los circuitos electrónicos, carbonizándolos literalmente.

Hoy es posible construir estas armas de pulso electromagnético con una tecnología relativamente convencional. Y lo peor de todo con componentes comerciales.

Armas de destrucción masiva como las armas nucleares, químicas y bacteriológicas -denominadas genéricamente sistemas NBQ- no son incluidas en esta nota, pero sin duda el conocimiento necesario para diseñarlas y construirlas es más simple de obtener, ahora, debido a la amplia y profunda diseminación de la información en medios como la Internet.

Además la realización de tareas de inteligencia, necesarias para llevar a cabo atentados tanto en el mundo físico o en el mundo virtual es mucho más simple debido a la masa de información disponible electrónicamente sobre casi todos los aspectos de la civilización contemporánea.

La fabricación de elementos ofensivos para llevar a cabo atentados explosivos o biológicos es facilitada por la aparición de manuales electrónicos sobre tecnología de bombas o armas químicas y bacteriológicas, (La bomba usada en el atentado de Oklahoma fue diseñada y fabricada según "El Manual del Terrorista" (de libre acceso en Internet).

Sin embargo el uso de las armas de la llamada Info-Guerra pueden brindar una capacidad mucho más sutil y efectiva de causar terror y paralizar a una sociedad.

El descubrimiento y análisis de los nodos de convergencia entre el mundo real y el mundo virtual es el primer paso para determinar que tipos de actos terroristas pueden ser realizados.

Un ejemplo de uno de estos nodos, donde tenemos convergencia entre realidad y virtualidad, es el sistema de control aéreo de un país desarrollado. Los modernos sistemas de control del trafico de aeronaves se vuelven cada vez más dependiente de la informatización, luego es posible atacar la estructura virtual del sistema a través de las armas de la info-guerra, y provocar hechos físicos en el mundo real tal como la colisión de dos grandes aeronaves sobre el espacio aéreo controlado por el sistema infectado y perturbado.

Es simple de contabilizar, cuantos otros puntos de convergencia entre el mundo virtual o informático y el mundo real nos rodean.

Ejemplos: el control de subterráneos y trenes, sistemas de distribución de energía eléctrica y gas, sistemas de comunicación, sistemas bancarios y financieros. Todos estos nodos son susceptibles de ser atacados y perturbados por medio de la intrusión a las computadoras del sistema, infectándolas con virus, bombas lógicas o troyanos, (caballo de Troya ) o simplemente cambiando información o programas.

La otra forma de atacar la infraestructura de información es destruyendo físicamente las computadoras por medio de las armas silenciosas, las armas de pulso electromagnético ya descriptas.

Los efectos físicos de estos ataques en el mundo virtual pueden resultar en alto costo de vidas, y bienes, pero fundamentalmente el objetivo del atentado cyber-terrorista será minar la confianza de los habitantes en la sociedad en que viven, trasmitir un mensaje claro: nadie esta a salvo, y todo es posible de ser infiltrado, trastocado, corrompido y desestabilizado.

Pronto muchas fábricas, de todo tipo serán casi totalmente robotizadas y manejadas por computadoras, también muchos servicios públicos son manejados y soportados por redes y sistemas informáticos de todo tipo. Los cyber-terroristas solo tendrán un problema: ¿cuál de todos los blancos atacar primero?, el control informático de una fabrica de alimentos para bebes, cambiando la composición del producto o todo el soporte informático de un gran hospital, anulando todos los equipos médicos que tengan un chip de computadora dentro?.

Lamentablemente estos escenarios descriptos no son de ciencia-ficción ni de películas como "La Red", muchos de los actos descriptos podrían llevarse a cabo hoy, pero lo peor de todo, es que el ataque cyber-terrorista puede estar en progreso ahora mismo y además puede ser realizado desde el otro extremo del mundo. Nadie se dará cuenta de ello hasta que el efecto en el mundo físico sea tangible, pero entonces será tarde.

Medios tales como el correo electrónico y programas de encriptación de mensajes permitirían un aceitado sistema de comunicación y control para organizaciones no-jerarquicas como los grupos subversivos.

Si pensamos la estructura de seguridad e inteligencia que usaban los grupos terroristas de la década del setenta, y la comparamos con las posibilidades que nos brinda el cyberespacio para llevar a cabo acciones de comunicación y comando para conducir operaciones de terrorismo, podemos afirmar que la amenaza es no es solo posible sino concreta.

¿Quién en la sociedad Argentina esperaba el ataque a la embajada de Israel?; ¿y quien podía suponer que luego habría otro atentado peor aun?. Si los servicios de seguridad e inteligencia, son muchas veces impotentes contra los ataques terroristas de la era de la sociedad industrial, ¿que podrán hacer contra los ataques de los fanáticos del terror de la tercera ola, de los dueños del miedo en la era de la información?.

Esta nueva amenaza, ahora denominada por expertos como cyber-terrorismo, es una faceta de una nueva forma de conducir la guerra, conocida como guerra infraestructural (Infrastructural Warfare), la cual probablemente será la forma dominante de los conflictos en el Siglo XXI.

Hay nuevos mercenarios en el mundo del caos del tercer milenio, se llaman Hackers de Fortuna, y se pueden contratar desde su PC.

(*) Conjunto de Rock Argentino de los años 70's; tema: La Biblia.

Esteban Falcionelli
http://www.fundaciondike.org/
Buenos Aires-Argentina