miércoles, 26 de septiembre de 2012
La Ingeniería de Software
Según la definición del IEEE, citada por [Lewis 1994] "software es la suma total de los programas de computadora, procedimientos, reglas, la documentación asociada y los datos que pertenecen a un sistema de cómputo". Según el mismo autor, "un producto de software es un producto diseñado para un usuario". En este contexto, la Ingeniería de Software (SE del inglés Software Engineering) es un enfoque sistemático del desarrollo, operación, mantenimiento y retiro del software", que en palabras más llanas, se considera que "la Ingeniería de Software es la rama de la ingeniería que aplica los principios de la ciencia de la computación y las matemáticas para lograr soluciones costo-efectivas (eficaces en costo o económicas) a los problemas de desarrollo de software", es decir, "permite elaborar consistentemente productos correctos, utilizables y costo-efectivos" [Cota 1994].
El proceso de ingeniería de software se define como "un conjunto de etapas parcialmente ordenadas con la intención de logra un objetivo, en este caso, la obtención de un producto de software de calidad" [Jacobson 1998].El proceso de desarrollo de software "es aquel en que las necesidades del usuario son traducidas en requerimientos de software, estos requerimientos transformados en diseño y el diseño implementado en código, el código es probado, documentado y certificado para su uso operativo". Concretamente "define quién está haciendo qué, cuándo hacerlo y cómo alcanzar un cierto objetivo" [Jacobson 1998].
El proceso de desarrollo de software requiere por un lado un conjunto de conceptos, una metodología y un lenguaje propio. A este proceso también se le llama el ciclo de vida del software que comprende cuatro grandes fases: concepción, elaboración, construcción y transición. La concepción define el alcance del proyecto y desarrolla un caso de negocio. La elaboración define un plan del proyecto, especifica las características y fundamenta la arquitectura. La construcción crea el producto y la transición transfiere el producto a los usuarios.
Actualmente se encuentra en una etapa de madurez el enfoque Orientado a Objetos (OO) como paradigma del desarrollo de sistemas de información. El Object Management Group (OMG) es un consorcio a nivel internacional que integra a los principales representantes de la industria de la tecnología de información OO. El OMG tiene como objetivo central la promoción, fortalecimiento e impulso de la industria OO. El OMG propone y adopta por consenso especificaciones entorno a la tecnología OO. Una de las especificaciones más importantes es la adopción en 1998 del Lenguaje de Modelado Unificado o UML (del inglés Unified Modeling Language) como un estándar, que junto con el Proceso Unificado están consolidando la tecnología OO.
domingo, 23 de septiembre de 2012
Dimensiones de los Sistemas de Información
1) Direccionalidad: Determinada por los flujos bajo los que se transfiere la información. Se identifican transferencias en una vía (one-way; ej: monológico), bidireccional (two-ways; ej: dialógico) o en varias vías (multidireccional). Esta última posibilita la producción distribuida de información.
2) Localización: La ubicación geo-espacial, posición o georeferencia de la información, ya sea desde donde se consulta o desde donde se distribuye se ha convertido en un componente clave (particularmente tras la explosión de la telefonía móvil). Tras los servicios de Google Map y Street View, la realidad aumentada y georeferenciada adquiere cada vez más atención.
3) Propiedad: Derecho o facultad de poseer un dato o conjunto de ellos (información). Este derecho puede ser unipersonal (privado, ej: Copy Right) o público. Hoy ha aparecido una amplia cantidad de esquemas de licenciamiento orientados a flexibilizar esta dicotomía (ej: “ciertos derechos restringidos”). De estos esquemas de propiedad híbridos, abiertos o semi-abiertos, los casos más relevantes son: Software Libre (Free Sotware, Free Society, Stallman, pdf) y Creative Commons (Remix, Lessig, pdf).
4) Encontrabilidad: Cualidad que tiene la información de ser localizable, identificable o descubierta. Internet hoy ofrece 230 millones de páginas web (Netcraft), por tanto la disponibilidad sin la encontrabilidad no vale de nada. Y Google no es la única herramienta para ello (ver Wolfram Alpha. Ej:¿Cuán grande es el sol?). Arquitectura de la Información es una de las disciplinas básicas para abordar esta dimensión. El texto Findability de Morville es uno de los clásicos.
5) Significación: Significado, sentido o interpretación de un dato, símbolo, palabra o conjunto de ellas, determinado por aspectos como: el sistema al que pertenece, su contexto, interrelación con otros elementos. La información denota yconnota diferentes significados. Tras el boom de la web social hay una creciente expectativa por avanzar hacia una web construida en un lenguaje que los ordenadores puedan “entender, combinar, compartir” a través de estructuras interoperables (en términos de estándares, formatos,ontologías, entre otros componentes). W3C es el principal centro de operaciones de la web semántica.
6) Temporalidad: Cualidad que tiene la información de adscribirse a uno o más momentos o lapsos de tiempo. La temporalidad con que se emite, intercambia, distribuye o accede a cierta información puede ser simultánea (sincrónica, también conocido como “tiempo real”) o diferida (asincrónica o en diferentes momentos). La evolución de las tecnologías digitales, cada vez más, facilita la comunicación en “tiempo real” aunque ésta se haga desde ubicaciones geográficas diferentes. Sin embargo, la combinación portabilidad, micro-mensajes y geo-referencia han permitido la expansión de la información individual, generada y subida a la “nube” en tiempo real. Otro ejemplo de mensajes a-temporal: WayBackMachine(Yahoo en 1996) & Time Capsule (Yahoo en el 2020).
7) Transportabilidad: Cualidad que tiene la información de ser adaptada, codificada, almacenada o transmitida en un formato analógico (señal que varía de tamaño o intensidad constantemente) o digital (codificación binaria a través de “bits”, basado en señales discretas). Hoy lo digital es casi un estándar. Lo analógico cada vez más se somete a migraciones para ser re-codificado en valores binarios [Ej: 1.Tape2PC como su nombre lo indica es dispositivo para migrar de los viejoscassettes a mp3, Ej: 2. Google's library program]. Kindle es un ejemplo de dispositivo que juega con la portabilildad de un libro (analógico) y que aprovecha la versatilidad del texto electrónico (digital).
8) Visualización: Cualidad que tiene la información de abstraerse a través de representaciones bajo patrones y formatos del lenguaje visual (diagramas, pinturas, gráficas, animaciones 2D y 3D, multimedias, mapas). Bajo este principio,gráficos de explosión, visualizaciones dinámicas (ver IBM) e incluso orgánicas (ver digg) no sólo enriquecen las interfaces, sino que generan ricas experiencias de interacción y navegación.Infosthetics y Visual-Complexity ambas fuentes ofrecen estupendas recopilaciones al respecto.
9) Renovabilidad: Cualidad que tiene la información para modificarse, actualizarse, renovarse. Esta dimensión está directamente vinculada a otras ya descritas como: direccionalidad, temporalidad o transportabilidad. La combinación digital, multidireccional y tiempo real convergen en información que puede renovarse de manera más intensa que aquellos contenidos análogos, unidireccionales o asincrónicos. Larenovabilidad de la información es una característica cada vez más valorada. El uso de tecnologías como Ajax, RSS o micro-blogging facilitan que se cumpla esta dimensión y han obligado, por ejemplo, a los medios de comunicación a redefinirse absolutamente. La sociedad Google+Twitter es un referente en términos de generación/publicación/distribución de información en tiempo real a escala global.
Suscribirse a:
Entradas (Atom)