Escolar Documentos
Profissional Documentos
Cultura Documentos
GIT:
es un software de control de versiones diseado por Linus Torvalds,
pensando en la eficiencia y la confiabilidad del mantenimiento de versiones
de aplicaciones cuando stas tienen un gran nmero de archivos de cdigo
fuente. Al principio, Git se pens como un motor de bajo nivel sobre el cual
otros pudieran escribir la interfaz de usuario o front end como Cogito o
StGIT. 3 Sin embargo, Git se ha convertido desde entonces en un sistema de
control de versiones con funcionalidad plena. 4 Hay algunos proyectos de
mucha relevancia que ya usan Git, en particular, el grupo de programacin
del ncleo Linux.
Caractersticas:
El diseo de Git se bas en BitKeeper y en Monotone.
El diseo de Git resulta de la experiencia del diseador de Linux, Linus
Torvalds, manteniendo una enorme cantidad de cdigo distribuida y
gestionada por mucha gente, que incide en numerosos detalles de
rendimiento, y de la necesidad de rapidez en una primera implementacin.
Entre las caractersticas ms relevantes se encuentran:
Fuerte apoyo al desarrollo no lineal, por ende rapidez en la gestin de ramas
y mezclado de diferentes versiones. Git incluye herramientas especficas
para navegar y visualizar un historial de desarrollo no lineal. Una presuncin
fundamental en Git es que un cambio ser fusionado mucho ms
frecuentemente de lo que se escribe originalmente, conforme se pasa entre
varios programadores que lo revisan.
Gestin distribuida. Al igual que Darcs, BitKeeper, Mercurial, SVK, Bazaar y
Monotone, Git le da a cada programador una copia local del historial del
desarrollo entero, y los cambios se propagan entre los repositorios locales.
Los cambios se importan como ramas adicionales y pueden ser fusionados
en la misma manera que se hace con la rama local.
Los almacenes de informacin pueden publicarse por HTTP, FTP, rsync o
mediante un protocolo nativo, ya sea a travs de una conexin TCP/IP
simple o a travs de cifrado SSH. Git tambin puede emular servidores CVS,
lo que habilita el uso de clientes CVS pre-existentes y mdulos IDE para CVS
pre-existentes en el acceso de repositorios Git.
Los repositorios Subversion y svk se pueden usar directamente con git-svn.
Gestin eficiente de proyectos grandes, dada la rapidez de gestin de
diferencias entre archivos, entre otras mejoras de optimizacin de velocidad
de ejecucin.
Todas las versiones previas a un cambio determinado, implican la
notificacin de un cambio posterior en cualquiera de ellas a ese cambio
(denominado autenticacin criptogrfica de historial). Esto exista en
Monotone.
Resulta algo ms caro trabajar con ficheros concretos frente a proyectos,
eso diferencia el trabajo frente a CVS, que trabaja con base en cambios de
fichero, pero mejora el trabajo con afectaciones de cdigo que concurren en
operaciones similares en varios archivos.
Los renombrados se trabajan basndose en similitudes entre ficheros,
aparte de nombres de ficheros, pero no se hacen marcas explcitas de
cambios de nombre con base en supuestos nombres nicos de nodos de
sistema de ficheros, lo que evita posibles, y posiblemente desastrosas,
coincidencias de ficheros diferentes en un nico nombre.
Realmacenamiento peridico en paquetes (ficheros). Esto es relativamente
eficiente para escritura de cambios y relativamente ineficiente para lectura
si el reempaquetado (con base en diferencias) no ocurre cada cierto tiempo.
GITHUB:
Es una forja (plataforma de desarrollo colaborativo) para alojar proyectos
utilizando el sistema de control de versiones Git. Utiliza el framework Ruby
on Rails por GitHub, Inc. (anteriormente conocida como Logical Awesome).
Desde enero de 2010, GitHub opera bajo el nombre de GitHub, Inc. El cdigo
se almacena de forma pblica, aunque tambin se puede hacer de forma
privada, creando una cuenta de pago.
Caractersticas:
Wiki para cada proyecto
Pgina web para cada proyecto1
Grfico para ver cmo los desarrolladores trabajan en sus repositorios y
bifurcaciones del proyecto
Funcionalidades como si se tratase de una red social, como por ejemplo:
seguidores;
Herramienta para trabajo colaborativo entre programadores.
Gestor de proyectos de estilo Kanban.
2.CONSULTAS
Arquitectura de rbol:
En ciencias de la computacin y en informtica, un rbol es una estructura
de datos ampliamente usada que imita la forma de un rbol (un conjunto de
nodos conectados). Un nodo es la unidad sobre la que se construye el rbol
y puede tener cero o ms nodos hijos conectados a l. Se dice que un nodo
A es padre de un nodo b si existe un enlace desde A hasta B (en ese caso,
tambin decimos que B es hijo de A. Slo puede haber un nico nodo sin
padres, que llamaremos raz. Un nodo que no tiene hijos se conoce como
hoja. Los dems nodos (tienen padre y uno o varios hijos) se les conoce
como rama.
Ambientes:
Obtener ms tiempo para crear mejores aplicaciones:
Deje que sus desarrolladores hagan lo que mejor saben hacer: crear
magnficas aplicaciones. Gracias a las soluciones de pruebas de desarrollo,
reducir significativamente el tiempo y problemas de administrar esfuerzos
de desarrollo de forma que su equipo pueda concentrarse en el desarrollo
de aplicaciones.
BookedOut
Con Visual Studio Team Services y .NET, ahorro al menos el 30 por ciento
del tiempo que, de otra manera, tardara en administrar el desarrollo de
software. Eso son horas cada semana que puedo gastar en crear soluciones
mejores.
Andy Abbott, vicepresidente ejecutivo de ingeniera y tecnologaCrear para
todas las plataformas que usa:
Los entornos heterogneos son la norma y no la excepcin. Lleve la
funcionalidad multiplataforma al entorno de desarrollo y pruebas y utilice su
lenguaje de codificacin preferido para crear y probar de forma nativa sus
aplicaciones en los dispositivos y plataformas que utiliza hoy en da, desde
Linux a Windows, iOS y Android.
Shell
En broma decimos que si hay un producto por ah fuera, se utiliza en algn
lugar dentro de Shell, aunque tratamos de estandarizar en plataformas
como Windows y Linux, as como en iOS y Android para el desarrollo mvil...
La mayora de estas plataformas requieren que admitamos una serie de
tecnologas, por lo que la funcionalidad multiplataforma en Visual Studio
Team Services hace que sea una eleccin muy lgica para nosotros.
Henk J. Middendorp, arquitecto jefe de ingeniera de softwareCree entornos
de desarrollo y pruebas en segundos, no semanas:
Simplifique y acelere la ejecucin de su entorno de desarrollo y pruebas.
Aprovisione mquinas virtuales en segundos, en lugar de das o semanas.
Adems, a diferencia de lo que sucede con otros proveedores de servicios
en la nube, solo se paga por minutos. Ponga en marcha tantas mquinas
virtuales como necesite, conctelas a la red y asgnelas a sus
desarrolladores. Administre su entorno con agilidad, decidiendo si permite a
sus desarrolladores autoaprovisionarse o si mantiene un control
centralizado.
LoopUp
A medida que crecamos, ya no podamos obtener fsicamente el nmero
de servidores que necesitbamos. Por ejemplo, en Londres, estaban
teniendo dificultades para acceder a los servidores situados en el oeste de
Estados Unidos. Evalu todas las opciones (Amazon, Google y Microsoft), y
Microsoft Azure es invencible.
Abdulkareem Siddiq, arquitecto jefeEntornos de pruebas escalables de alta
fidelidad:
Replique los escenarios de uso en el mundo real en su entorno de pruebas
y realice sus pruebas en escala de produccin para detectar y corregir
problemas antes de publicar las aplicaciones. Si su entorno de produccin
tambin se ejecuta en Azure, puede crear un clon exacto del mismo y
obtener una vista precisa de cmo se comportar su aplicacin en el mundo
real.
OEConnection
Utilizamos Azure para generar las cargas que necesitamos para probar
nuestras aplicaciones al lmite de sus posibilidades. Al encontrar los puntos
de ruptura antes de alcanzarlos en produccin, podemos hacer los cambios
de arquitectura necesarios para controlar nuestro crecimiento. Tambin
podemos probar cargas de diversas ubicaciones internacionales para
asegurar que nuestros clientes no experimentan problemas de latencia. Con
Azure tenemos acceso a todos los recursos que necesitamos para hacer las
pruebas de rendimiento que queremos a un costo realmente bajo.
Jim Dixon, director de control de calidadMnimo desperdicio, mximo control:
Obtenga visibilidad y un estrecho control sobre el uso de los recursos de
proceso. Acceda a datos de uso en tiempo real para eliminar el desperdicio
e implemente contracargos a los clientes internos. La automatizacin
avanzada ayuda a reducir los errores, la administracin unificada equilibra
el acceso y el control y las capacidades de gobierno listas para empresas
permiten establecer lmites y controlar los costes.
Clear Measure
Esta directiva se autofinancia con creces en la productividad de los
desarrolladores en vez de esperar a un equipo de hardware para montar
entornos de desarrollo y pruebas. Adems, hemos agregado visibilidad en
los costos reales del proyecto.
Jeffrey Palermo, director ejecutivo.
Branch(Rama):
cuando se van a llevar a cabo cambios importantes que rompern la
compilacin, pruebas, experimentos o intentos de optimizacin, debe
crearse una nueva rama de desarrollo, con la que no molestemos a los
compaeros, esto es un branch: una copia del cdigo o la rama de la que
deriva. En esta copia haremos nuestros cambios, integraremos los arreglos
que puedan haberse ido haciendo en el trunk, y, una vez terminado el
desarrollo en la rama, integraremos (o no) los cambios en el trunk. Tambin
puede crearse una rama para una versin terminada, hacer mantenimiento
de esta versin sobre esta rama, y continuar el desarrollo de la nueva
versin en el trunk.
Despliegue:
El despliegue comienza cuando el cdigo ha sido suficientemente probado,
ha sido aprobado para su liberacin y ha sido distribuido en el entorno de
produccin.
Entrenamiento y soporte para el software es de suma importancia y algo
que muchos desarrolladores de software descuidan. Los usuarios, por
naturaleza, se oponen al cambio porque conlleva una cierta inseguridad, es
por ello que es fundamental instruir de forma adecuada a los futuros
usuarios del software.
El mantenimiento o mejora del software de un software con problemas
recientemente desplegado, puede requerir ms tiempo que el desarrollo
inicial del software. Es posible que haya que incorporar cdigo que no se
ajusta al diseo original con el objetivo de solucionar un problema o ampliar
la funcionalidad para un cliente. Si los costes de mantenimiento son muy
elevados puede que sea oportuno redisear el sistema para poder contener
los costes de mantenimiento.
Fork(Bifurcacin (desarrollo de software)):
En el mbito del desarrollo de software, es la creacin de un proyecto en
una direccin distinta de la principal u oficial tomando el cdigo fuente del
proyecto ya existente. Comnmente se utiliza el trmino ingls. Como
resultado de la bifurcacin se pueden llegar a generar proyectos diferentes
que cubren necesidades distintas aunque similares. El trmino tambin
puede ser usado para representar la ramificacin de cualquier trabajo. Un
ejemplo de bifurcacin es la Enciclopedia Libre escindida de la Wikipedia en
espaol.
Las bifurcaciones de proyectos de software libre surgen de un cisma en los
objetivos o un choque de personalidades. En una bifurcacin, ambos lados
asumen derechos de autor idnticos pero tpicamente solo el grupo de
mayor tamao, o el que contiene al arquitecto original, retendr el nombre
original completo y la comunidad de usuarios asociada. Por ello existe una
penalizacin asociada con la bifurcacin.
En proyectos de software privativo las bifurcaciones usualmente se llevan a
cabo para crear versiones de un mismo programa que funcionen en diversos
sistemas operativos, aumentando as la cuota de mercado. Pero suelen
retener las mismas caractersticas, facilitando as a los usuarios el uso del
mismo programa en diferentes sistemas operativos.
Git-flow:
Si queremos implementar este flujo de trabajo, cada vez que queramos
hacer algo en el cdigo, tendremos que crear la rama que corresponda,
trabajar en el cdigo, incorporar el cdigo donde corresponda y cerrar la
rama. A lo largo de nuestra jornada de trabajo necesitaremos ejecutar
varias veces al da los comandos git, merge, push y pull as como hacer
checkouts de diferentes ramas, borrarlas, etc. Git-flow son un conjunto de
extensiones que nos ahorran bastante trabajo a la hora de ejecutar todos
estos comandos, simplificando la gestin de las ramas de nuestro
repositorio.
Work-Flow(Flujo de trabajo):
es el estudio de los aspectos operacionales de una actividad de trabajo:
cmo se estructuran las tareas, cmo se realizan, cul es su orden
correlativo, cmo se sincronizan, cmo fluye la informacin que soporta las
tareas y cmo se le hace seguimiento al cumplimiento de las tareas.
Generalmente los problemas de flujo de trabajo se modelan con redes de
Petri.
Si bien el concepto de flujo de trabajo no es especfico a la tecnologa de la
informacin, una parte esencial del software para trabajo colaborativo
(groupware) es justamente el flujo de trabajo.
Una aplicacin de flujos de trabajo automatiza la secuencia de acciones,
actividades o tareas utilizadas para la ejecucin del proceso, incluyendo el
seguimiento del estado de cada una de sus etapas y la aportacin de las
herramientas necesarias para gestionarlo
Se pueden distinguir tres tipos de actividad:
Actividades colaborativas: Un conjunto de usuarios trabajan sobre un mismo
repositorio de datos para obtener un resultado comn. Tiene entidad el
trabajo de cada uno de ellos en s mismo.
Actividades cooperativas: Un conjunto de usuarios trabajan sobre su propio
conjunto particular, estableciendo los mecanismos de cooperacin entre
ellos. No tiene entidad el trabajo de ninguno de ellos si no es visto desde el
punto de vista global del resultado final.
GUI (graphical user interface):
Es un programa informtico que acta de interfaz de usuario, utilizando un
conjunto de imgenes y objetos grficos para representar la informacin y
acciones disponibles en la interfaz. Su principal uso, consiste en
proporcionar un entorno visual sencillo para permitir la comunicacin con el
sistema operativo de una mquina o computador.
Habitualmente las acciones se realizan mediante manipulacin directa, para
facilitar la interaccin del usuario con la computadora. Surge como
evolucin de las interfaces de lnea de comandos que se usaban para operar
los primeros sistemas operativos y es pieza fundamental en un entorno
grfico. Como ejemplos de interfaz grfica de usuario, cabe citar los
entornos de escritorio Windows, el X-Window de GNU/Linux o el de Mac OS
X, Aqua.
En el contexto del proceso de interaccin persona-computadora, la interfaz
grfica de usuario es el artefacto tecnolgico de un sistema interactivo que
posibilita, a travs del uso y la representacin del lenguaje visual, una
interaccin amigable con un sistema informtico.
Hook:
En programacin, el trmino hooking abarca una gama de tcnicas
utilizadas para alterar o aumentar el comportamiento de un sistema
operativo, de aplicaciones o de otros componentes de software
interceptando llamadas de funcin o mensajes o eventos pasados entre
componentes de software. El cdigo que maneja tales llamadas de funcin,
eventos o mensajes interceptados se llama un hook.
Hooking se utiliza para muchos propsitos, incluyendo la depuracin de
programas y la ampliacin de la funcionalidad. Los ejemplos pueden incluir
la interceptacin de mensajes de eventos de teclado o de ratn antes de
que lleguen a una aplicacin o interceptar llamadas de sistema operativo
para supervisar el comportamiento o modificar la funcin de una aplicacin
u otro componente. Tambin se utiliza ampliamente en los programas de
evaluacin comparativa, por ejemplo la medicin de las imgenes por
segundo en juegos en 3D, donde la salida y la entrada se realiza mediante
hooking.
Hooking tambin puede ser utilizado por cdigo malicioso. Por ejemplo, los
rootkits, piezas de software que tratan de hacerse invisibles simulando la
salida de llamadas del interfaz de programacin de aplicaciones que de otra
manera revelaran su existencia, usan a menudo tcnicas de hooking. Un
wallhack es otro ejemplo de funcionalidad til que puede provenir de
tcnicas de hooking. Se hace interceptando llamadas de funcin en un juego
de computadora y alterando lo que se muestra al jugador para permitirles
obtener una ventaja injusta sobre otros jugadores.
Pull request:
Un pull request es una peticin que el propietario de un fork de un
repositorio hace al propietario del repositorio original para que este ltimo
incorpore los commits que estn en el fork. En el caso que nos ocupa, el
usuario aprendegit-user1 le enviar la peticin a aalbagarcia para que este
ltimo incorpore los commits que tiene en su fork.
Lo primero que har el usuario aprendegit-user1 ser crear una rama que
apuntar al ltimo commit que ha hecho y que contiene las modificaciones
a la pgina de inicio. El procedimiento es el de siempre:
Repositorio:
Un repositorio, depsito o archivo es un sitio centralizado donde se
almacena y mantiene informacin digital, habitualmente bases de datos o
archivos informticos.
Caractersticas generales[editar]
Los datos almacenados en un repositorio pueden distribuirse a travs de
una red informtica, como Internet, o de un medio fsico, como un disco
compacto. Pueden ser de acceso pblico o estar protegidos y necesitar de
una autentificacin previa. Los repositorios ms conocidos son los de
carcter acadmico e institucional. Los repositorios suelen contar con
sistemas de respaldo y mantenimiento preventivo y correctivo, lo que hace
que la informacin se pueda recuperar en el caso que la mquina quede
inutilizable. A esto se lo conoce como preservacin digital,y requiere un
exhaustivo trabajo de control de calidad e integridad para realizarse
correctamente.
Depositar no debe confundirse con publicar. El depsito en los repositorios
es una manera de comunicar pblicamente los trabajos de los
investigadores, aumentando su difusin: los autores ponen disponibles en
acceso abierto una versin de los artculos que han publicado en revistas,
tradicionales o de acceso abierto.[cita requerida] Para ello, los sistemas de
repositorios suelen integrarse e interoperar con otros sistemas y
aplicaciones web.Asimismo, los repositorios cumplen un rol importante en la
formacin universitaria.
Algunas instituciones promueven el uso de sus repositorios como un servicio
adicional para el investigador. Otras instituciones poseen mandatos propios
que obligan a los autores o investigadores a depositar sus publicaciones (o
determinados tipos, como por ej. tesis doctorales) en el repositorio
institucional, con fines de visibilidad, impacto y preservacin.6 En algunos
pases, como por ejemplo Argentina, se han promulgado leyes de acceso
abierto que promueven la implementacin y uso de los repositorios de
instituciones sustentadas con fondos pblicos, mientras que otros pases
estn trabajando en la aprobacin de leyes similares, como por ejemplo
Mxico.
Sistema de control de versiones:
Se llama control de versiones a la gestin de los diversos cambios que se
realizan sobre los elementos de algn producto o una configuracin del
mismo. Una versin, revisin o edicin de un producto, es el estado en el
que se encuentra el mismo en un momento dado de su desarrollo o
modificacin.
Aunque un sistema de control de versiones puede realizarse de forma
manual, es muy aconsejable disponer de herramientas que faciliten esta
gestin dando lugar a los llamados sistemas de control de versiones o VCS
(del ingls Version Control System). Estos sistemas facilitan la
administracin de las distintas versiones de cada producto desarrollado, as
como las posibles especializaciones realizadas (por ejemplo, para algn
cliente especfico). Ejemplos de este tipo de herramientas son entre otros:
CVS, Subversion, SourceSafe, ClearCase, Darcs, Bazaar, Plastic SCM, Git,
Mercurial, Perforce, Fossil SCM, Team Foundation Server.
El control de versiones se realiza principalmente en la industria informtica
para controlar las distintas versiones del cdigo fuente dando lugar a los
sistemas de control de cdigo fuente o SCM (siglas del ingls Source Code
Management). Sin embargo, los mismos conceptos son aplicables a otros
mbitos como documentos, imgenes, sitios web, etc.
Staging rea:
Un rea de stage (se puede traducir como rea de pruebas o rea de
ensayo), tambin llamada zona de landing (zona de aterrizaje), es un rea
intermedia de almacenamiento de datos utilizada para el procesamiento de
los mismos durante procesos de extraccin, transformacin y carga (ETL).
Esta rea se encuentra entre la fuente de los datos y su destino, que a
menudo son almacenes de datos, data marts u otros repositorios de datos.
Las reas de stage de datos son a menudo de naturaleza transitoria, su
contenido se borrar antes de ejecutar un proceso de ETL o inmediatamente
despus de haberlo finalizado con xito. Aunque existen arquitecturas de
rea stage diseadas para mantener los datos durante largos perodos de
tiempo con la finalidad de mantener un archivo de los mismos o para poder
resolver problemas detectados a posteriori.
Tag:
Una etiqueta o baliza (trminos a veces reemplazados por el anglicismo tag)
es una marca con clase que delimita una regin en los lenguajes basados en
XML. Tambin puede referirse a un conjunto de juegos informticos
interactivos que se aade a un elemento de los datos para identificarlo
(Oxford English Dictionary). Esto ocurre, por ejemplo, en los archivos MP3
que guardan informacin sobre una cancin as como sobre el artista que la
ha cantado o compuesto.
Como ocurre en otros casos, a menudo se emplea la palabra inglesa (tag) a
pesar de que etiqueta o baliza son perfectamente adecuadas. Con la
llegada de la World Wide Web ha habido una invasin de tags. La Web se
basa en el HTML, o lenguaje de marcado de hipertexto, que est basado
en el uso de etiquetas. Las etiquetas (entre otras muchas cosas) le dicen al
programa visualizador de pginas web (o navegador) en qu juego de
caracteres est la pgina, de qu tipo es cada uno de los fragmentos de
texto que contiene (por ejemplo, encabezamiento, texto normal, etc.), si
estn alineados a un lado o centrados, en qu tipo de letra est el texto
(cursiva, negrita, etc.), si hay tablas, de qu anchura son etc. Dicho de otro
modo: las balizas dan al navegador las instrucciones necesarias para que
presente la pgina en pantalla.
Working Directory:
En la computacin , el directorio de trabajo de un proceso es un directorio
de un jerrquica del sistema de archivos , en su caso, asociado
dinmicamente con cada proceso. A veces se llama el directorio de trabajo
actual o la caquexia crnica , por ejemplo, el BSD . Cuando el proceso se
refiere a un archivo con un nombre de archivo simple o relativa camino (a
diferencia de un archivo designado por una ruta completa de un directorio
raz ), la referencia es interpretada en relacin con el directorio de trabajo
actual del proceso. As, por ejemplo, un proceso de trabajo con el directorio /
conejo-zapatos que pide para crear el archivo foo.txt va a terminar de crear
el archivo /rabbit-shoes/foo.txt .
Consumo web:
Consumir servicios Web le permite agregar al proceso empresarial servicios
Web existentes. Es posible agregar varios servicios Web a una orquestacin
nica.
Se puede consumir (llamar) un servicio Web procedente de una
orquestacin usando puertos Web. Para consumir un servicio Web desde
una orquestacin, debe crear un puerto Web y construir mensajes Web.
Puede usar los encabezados SOAP con el servicio Web consumido, cambiar
el URI de un servicio Web consumido y establecer el URI de forma dinmica
para un servicio Web consumido.
Para obtener informacin acerca de cmo configurar un SOAP el controlador
de recepcin, vea cmo configurar un controlador de recepcin de SOAP.
Para obtener informacin acerca de cmo configurar un SOAP ubicacin de
recepcin, vea cmo configurar una ubicacin de recepcin de SOAP.
Estilos arquitectnicos:
El tpico ms urgente y exitoso en arquitectura de software en los ltimos
cuatro o cinco aos es, sin duda, el de los patrones ( patterns ), tanto en lo
que concierne a los patrones de diseo como a los de arquitectura.
Inmediatamente despus, en una relacin a veces de complementariedad,
otras de oposicin, se encuentra la sistematizacin de los llamados estilos
arquitectnicos.
Habr que admitir desde el vamos que ambos asuntos preocupan y tienen
como destinatarios a distintas clases de profesionales, o diferentes
stakeholders, como ahora se recomienda llamar: quienes trabajan con
estilos favorecen un tratamiento estructural que concierne ms bien a la
teora, la investigacin acadmica y la arquitectura en el nivel de
abstraccin ms elevado, mientras que quienes se ocupan de patrones se
ocupan de cuestiones que estn ms cerca del diseo, la prctica, la
implementacin, el proceso, el refinamiento, el cdigo.
Stub:
Un stub es, en el contexto del testeo del software, un trozo de cdigo usado
como sustituto de alguna otra funcionalidad. Un stub puede simular el
comportamiento de cdigo existente (tal como un procedimiento en una
mquina remota) o ser el sustituto temporal para un cdigo an no
desarrollado. Los stubs son, por tanto, muy tiles para porting, computacin
distribuida as como en el desarrollo y pruebas de software en general.
Un ejemplo de stub en pseudocdigo podra ser como ste:
INICIO
Temperatura = LeerTermometro(Afuera)
SI Temperatura > 40 ENTONCES
ESCRIBIR "Hace calor!"
FIN SI
FIN
INICIO LeerTermometro(Fuente adentroOafuera)
RETORNAR 28
FIN LeerTermometro
Grid computing:
La computacin grid (o en malla) es una tecnologa que permite utilizar de
forma coordinada recursos heterogneos (entre ellos cmputo,
almacenamiento y aplicaciones especficas) que no estn sujetos a un
control centralizado. En este sentido es una forma de computacin
distribuida, en la cual los nodos participantes recursos pueden ser de
iguales o distintas arquitecturas y cubrir toda la gama de potencia de
cmputo, desde embebidos y hasta supercomputadores.
Tpicamente, los sistemas que forman parte de una malla estn
interconectados mediante redes de rea extensa (por ejemplo Internet).
Desarrollado en mbitos cientficos a principios de los aos 1990, su entrada
al mercado comercial sigui la idea de la llamada Utility computing.
El trmino grid se refiere a una infraestructura que permite la integracin y
el uso colectivo de ordenadores de alto rendimiento, redes y bases de datos
que son propiedad y estn administrados por diferentes instituciones.
Puesto que la colaboracin entre instituciones envuelve un intercambio de
datos, o de tiempo de computacin, el propsito del grid es facilitar la
integracin de recursos computacionales. Universidades, laboratorios de
investigacin o empresas se asocian para formar grids para lo cual utilizan
algn tipo de software que implemente este concepto.
En la computacin grid, las redes pueden ser vistas como una forma de
computacin distribuida donde un supercomputador virtual est
compuesto por una serie de computadores agrupados para realizar grandes
tareas.
Computing cloud:
Cloud computing es un nuevo modelo de prestacin de servicios de negocio
y tecnologa, que permite incluso al usuario acceder a un catlogo de
servicios estandarizados y responder con ellos a las necesidades de su
negocio, de forma flexible y adaptativa, en caso de demandas no previsibles
o de picos de trabajo, pagando nicamente por el consumo efectuado, o
incluso gratuitamente en caso de proveedores que se financian mediante
publicidad o de organizaciones sin nimo de lucro.
El cambio que ofrece la computacin desde la nube es que permite
aumentar el nmero de servicios basados en la red. Esto genera beneficios
tanto para los proveedores, que pueden ofrecer, de forma ms rpida y
eficiente, un mayor nmero de servicios, como para los usuarios que tienen
la posibilidad de acceder a ellos, disfrutando de la transparencia e
inmediatez del sistema y de un modelo de pago por consumo. As mismo, el
consumidor ahorra los costes salariales o los costes en inversin econmica
(locales, material especializado, etc.).
ISO/IEC 42010:2007
ISO/IEC 12207:2008
establece un marco comn para los procesos del ciclo de vida del software
con una terminologa bien definida que puedan ser diferenciados por la
industria del software, contiene los procesos actividad de tareas que se van
aplicar durante la arquitectura de un producto de software o servicio
durante el suministro del desarrollo operacin, mantenimiento de un
producto de software, incluye la parte del software.-
AAMI/ISO 13485:
IEEE 730
IEEE 830
IEEE 1012
IEEE 1471
IEEE/ISO/IEC 24765
ISO/IEC 27002:2005