You are on page 1of 170

Universidad de Pinar del Ro HERMANOS SAZ MONTES DE OCA

Facultad de Ciencias Tcnicas. Departamento de Informtica.

Trabajo de Diploma Sistema de Escritorio para Simulaciones Dinmicas (dFBA) en Redes Metablicas
(Tesis en opcin al ttulo de Ingeniero en Informtica)

Autor: Jean Carlos Soto Gonzlez Tutores: MSc. Vinelia Crdova Vsquez MSc. Julin Triana Dopico

Pinar del Ro, 2012

Cuando se es joven, se crea. Cuando se es inteligente, se produce. No se adapta, se innova: la mediana copia; la originalidad se atreve.
Jos Mart

FACULTAD DE CIENCIAS TCNICAS. DEPARTAMENTO DE INFORMTICA.

Luego de estudiada la exposicin del diplomante ________________________, as como la opinin de los tutores y el oponente del presente trabajo de diploma, el tribunal emite la calificacin de _____ puntos.

_______________________ Presidente del Tribunal

_______________________ Secretario

_______________________ Vocal Dado en la Universidad de Pinar del Ro Hermanos Saz Montes de Oca a los ___das del mes de __________ del 2012.

ii

DECLARACIN DE AUTORIDAD Declaro que soy autor(a) de este Trabajo de Diploma y que autorizo a la Universidad de Pinar del Ro, a hacer uso del mismo, con la finalidad que estime conveniente.

Firma: __________________________________

Jean Carlos Soto Gonzlez jeanc@infomail.upr.edu.cu

Jean Carlos Soto Gonzlez autoriza la divulgacin del presente trabajo de diploma bajo licencia Creative Commons de tipo Reconocimiento No Comercial Sin Obra Derivada, se permite su copia y distribucin por cualquier medio siempre que mantenga el reconocimiento de sus autores, no haga uso comercial de las obras y no realice ninguna modificacin de ellas. La licencia completa puede consultarse en: http://creativecommons.org/licenses/by-ncnd/2.5/ar/legalcode

Jean Carlos Soto Gonzlez autoriza al Departamento de Informtica adscrito a la Universidad de Pinar del Ro a distribuir el presente trabajo de diploma en formato digital bajo la licencia Creative Commons descrita anteriormente y a conservarlo por tiempo indefinido, segn los requerimientos de la institucin, en el repositorio de materiales didcticos disponible en: http://repoinfo.upr.edu.cu

Jean Carlos Soto Gonzlez autoriza al Departamento de Informtica adscrito a la Universidad de Pinar del Ro a distribuir el presente trabajo de diploma en formato digital bajo la licencia Creative Commons descrita anteriormente y a conservarlo por tiempo indefinido, segn los requerimientos de la institucin, en el repositorio de tesinas disponible en: http://revistas.mes.edu.cu

iii

AGRADECIMIENTOS A mis padres, por estos 25 aos, por su apoyo, amor, confianza y su fe A mi hermana, por su cario, su comprensin, por ser mi amiga y siempre estar A mi abuela Lula por su bondad sin lmites A mi familia toda A ti MI AMOR por los mejores cinco aos de mi vida, y todos los que vendrn, por las sonrisas cuando te pienso, por los nervios cuando te veo, por la alegra en el corazn y la felicidad en mi interior A Zura (La Ampolla), Nereida (La Gordis y sus cabezas), Claudia y Camila, por abrirme las puertas de su casa y de su vida y hacerme sentir de la familia A Vinelia y Julin, mis tutores, por su gua y su ayuda, y la confianza depositada A la Profe Caridad por ayudarme a buscar y a encontrar A la Profe Malena por sus crticas siempre constructivas y bien recibidas A Adiel porque las mil preguntas que le hice siempre encontraron respuesta A mis amigos de la UCI A Yonita por ser la mejor amiga del mundo A Rosita por ser tan especial A la Diva por ser tan autenticaA Tatiana, A Dianella, a todos A mis amigos de la UPR, por acogerme, por incluirme; por estos tres buenos aos A mis profesores de la UCI, Yaim aunque nunca lo sepas es mucho lo que te debo, porque lo que bien se aprende, nunca se olvida, y lo que se ensea con amor, queda en el corazn. A mi profesores de la UPR A todos aquellos que han dejado huella en vida y que aunque no siempre nos veamos guardo con cario su recuerdo

Muchas Gracias.

iv

DEDICATORIA

A mi Madre querida, que me dure toda la vida.

RESUMEN Antecedentes En septiembre del ao 2002, gracias al trabajo de Radhakrishnan Mahadevan, Jeremy S. Edwards, Francis J. Doyle III, presentado en el Biophysical Journal, volumen 83, (1331-1340); bajo el ttulo: Dynamic Flux Balance Analysis of Diauxic Growth in Escherichia coli, la comunidad cientfica y el pblico interesado en general cont con una extensin del FBA clsico, capaz de responder a la dinmica de las redes metablicas (dFBA). Dos formulaciones matemticas fueron presentadas, una aproximacin esttica (SOA) y una dinmica (DOA), como alternativas para resolver un mismo problema, obtenindose resultados similares. dFBA represent una significativa ventaja sobre el FBA y rpidamente se convirti en una til herramienta para el anlisis cuantitativo. Resultados El propsito de esta investigacin fue concebir, disear e implementar una aplicacin informtica, que siguiendo los algoritmos descritos por la aproximacin esttica (SOA), fuera capaz de realizar simulaciones del comportamiento y evolucin dinmica de una ruta metablica, aplicando el dFBA. Para el diseo del software se siguieron las pautas dictadas por el Proceso Unificado de Desarrollo (RUP), la herramienta CASE utilizada fue el Enterprise Architect, y la implementacin se llev a cabo en el lenguaje de programacin CSharp (C#). Conclusiones Se obtuvo un Sistema de Software HYDRA dFBA, amigable, interactivo, y fiable, con el cual es posible importar modelos en un formato ampliamente estandarizado (SBML) y sobre ellos realizar simulaciones dinmicas, con el objetivo de predecir o comprobar situaciones y/o comportamientos, mediante la aplicacin del dFBA. Palabras claves: dFBA, SOA, simulacin, red metablica.

vi

SUMMARY Antecedents On september, 2002, thanks to the work of Radhakrishnan Mahadevan, Jeremy S. Edwards, Francis J. Doyle, III, presented at the Biophysical Journal, volume 83, (1331-1340): Dynamic Flux Balance Analysis of Diauxic Growth in Escherichia coli, the scientific community and interested public got an extension for classical FBA, able to respond for dynamics situations (dFBA). Two different formulations for dynamic FBA were presented, Static Optimization Approach (SOA) and Dynamic Optimization Approach (DOA), both as a way to solve a problem, getting similar results. dFBA provides a significant improvement over the classical FBA and quickly became in an useful quantitative analysis tool. Results This investigation was made to conceive, design and implement informatics solution, which follows the algorithms described by the Static Optimization Approach (SOA), allowing to carry out behavior and evolution simulations over a metabolic network, applying dFBA. Rational Unified Process (RUP), was applied for the design of the software, Enterprise Architect, was the CASE tool used for modeling, and the code was written using CSharp (C #) programming language. Conclusions A System of Software, HYDRA dFBA, friendly, interactive, and reliable, was obtained. Whit this tool is possible to load wide standard format (SBML) models and carry out dynamic simulations over them, to predict or to check situations and/or behaviors, using dFBA. Key words: dFBA, SOA, simulation, metabolic network.

vii

TABLA DE CONTENIDOS
INTRODUCCIN .....................................................................................................................1 CAPTULO I: FUNDAMENTACIN TERICA ........................................................................9 Introduccin ..........................................................................................................................9 1.1. Biologa de sistemas......................................................................................................9 1.2 . El metabolismo celular ................................................................................................ 11 1.2.1. Representacin matemtica del metabolismo celular ............................................ 12 1.3. Anlisis de Balance de Flujos (FBA) ............................................................................ 13 1.4. Anlisis Dinmico del Balance de Flujos (dFBA) ......................................................... 16 1.4.1. Aproximacin de Optimizacin Dinmica (DOA) ................................................... 16 1.4.2. Aproximacin de optimizacin esttica (SOA) ....................................................... 18 1.5. Sistemas afines ........................................................................................................... 19 1.6. Anlisis de Factibilidad ................................................................................................ 20 1.7. Modelo de Dominio ...................................................................................................... 21 1.7.1. Conceptos que se utilizan en el Modelo de Dominio ............................................. 22 Conclusiones del Captulo .................................................................................................. 24 CAPTULO II: CARACTERIZACIN DE LA SOLUCIN PROPUESTA ............................... 25 2.1. Caracterizacin de la metodologa y herramientas para el diseo .............................. 25 2.1.1. Proceso Unificado de Desarrollo (RUP) ................................................................ 26 2.1.2. Lenguaje Unificado de Modelado (UML) ............................................................... 29 2.1.3. Herramientas Case. Enterprise Architect .............................................................. 30 2.2. MATLAB ...................................................................................................................... 32 2.3. Solver GLPK ............................................................................................................... 33 2.4. Requerimientos del sistema........................................................................................ 34 2.4.1. Requisitos Funcionales ......................................................................................... 34 2.4.2. Requisitos no Funcionales .................................................................................... 40 2.5. Trazabilidad Requerimiento Funcional- Caso de Uso .................................................. 41 2.5.1. Cargar y Presentar el Modelo................................................................................ 42 2.5.2. Navegabilidad ....................................................................................................... 43 viii

2.5.3. Simulacin ............................................................................................................ 43 2.6. Actores del Sistema ..................................................................................................... 45 2.7. Casos de Uso del Sistema .......................................................................................... 45 2.7.1. Modelo de Casos de Uso del sistema ................................................................... 46 2.7.2. Resumen de los casos de uso principales............................................................. 47 2.8. Patrones de diseo ...................................................................................................... 50 2.9. Diagrama de Clases del Diseo (DCD) ....................................................................... 52 2.9.1. DCD del paquete Modelo ...................................................................................... 54 2.9.2. DCD del paquete Simulacin ................................................................................ 55 2.9.3. DCD del paquete Presentacin ............................................................................. 56 Conclusiones del captulo ................................................................................................... 57 CAPTULO III: IMPLEMENTACIN DE LA SOLUCIN PROPUESTA ................................ 58 Introduccin ........................................................................................................................ 58 3.1. Lenguaje de Marcado Extensible (XML) ...................................................................... 58 3.2. Lenguaje de Marcado para Sistema Biolgicos (SBML) .............................................. 59 3.3. Plataforma .NET .......................................................................................................... 61 3.3.1. Lenguaje de programacin C Sharp (C#) .............................................................. 62 3.4. Implementacin de la interfaz de usuario..................................................................... 64 3.4.1. Interfaz de usuario ................................................................................................ 65 3.4.2. Interfaz Inicial ........................................................................................................ 66 3.4.3. Interfaz para la presentacin del Modelo ............................................................... 67 3.4.4. Interfaz del rea de simulacin.............................................................................. 67 3.4.5. Otras interfaces ..................................................................................................... 68 3.5. Tratamiento de errores ................................................................................................ 69 3.6. Estndares de Codificacin ......................................................................................... 69 3.7. Modelo lgico de datos ................................................................................................ 71 3.8. Modelo Fsico de los Datos.......................................................................................... 72 3.9. Modelo de Implementacin .......................................................................................... 74 3.10. Modelo de Despliegue ............................................................................................... 75 ix

3.11. Implementacin de la Ayuda...................................................................................... 76 Conclusiones del captulo ................................................................................................... 77 CONCLUSIONES .................................................................................................................. 78 RECOMENDACIONES .......................................................................................................... 79 REFERENCIAS BIBLIOGRFICAS ...................................................................................... 80 BIBLIOGRAFA ........................................................................Error! Marcador no definido.84 ANEXOS................................................................................................................................ 88 ANEXO I ANLISIS DE FACTIBILIDAD ............................................................................ 88 ANEXO II: LICENCIA CeCILL V2 ....................................................................................... 96 ANEXO III: MATRIZ DE TRAZABILIDAD REQUERIMIENTOS-CASOS DE USO .............. 97 ANEXO IV ESPECIFICACIN DE LOS CASOS DE USO MS SIGNIFICATIVOS .......... 100 ANEXO V: DIAGRAMAS DE COLABORACIN DE LOS CASOS DE USO MAS SIGNIFICATIVOS ............................................................................................................. 135 ANEXO VI: DIAGRAMAS DE SECUENCIA DE LOS CASOS DE USO MS SIGNIFICATIVOS ............................................................................................................. 139 ANEXO VII: INTERFACES DE LA APLICACIN ............................................................. 147 ANEXO VIIII: MTRICAS DEL CDIGO DE LA APLICACIN......................................... 154 ANEXO X: CASOS DE PRUEBA...................................................................................... 155

INTRODUCCIN

INTRODUCCIN El trmino Computacin Cientfica, como una de las ramas de Las Ciencias de la Computacin, se refiere a todas aquellas prcticas destinadas a modelar, plantear experimentos y validar teoras cientficas, sirvindose de medios computacionales para avanzar en campos objetivos como biologa.( Yang X. S., 2008). La Biologa Computacional por su parte, se designa como el uso de algoritmos y ordenadores para facilitar el entendimiento de complejos problemas biolgicos, abarcando universos ya establecidos como son: bioqumica, matemticas, ingeniera de sistemas, etc. Algunos campos de estudio interdisciplinarios muy vinculados, y que en ocasiones se usan como sinnimos son Biocomputacin y Bioinformtica (Bajic et al., 2003). Segn una de sus definiciones, la Bioinformtica es un campo de la ciencia en el cual confluyen varias disciplinas tales como: biologa, computacin y tecnologa de la informacin, con el fin de facilitar el descubrimiento de nuevas ideas biolgicas as como crear perspectivas globales a partir de las cuales se puedan identificar principios unificadores en biologa (National Center for Biotechnology Information, 2001). La magnitud de las escalas con que se trabaja sobrepasa con creces la capacidad humana para discernir, razn por la cual el ncleo principal de estas tcnicas, se encuentra en la utilizacin de recursos computacionales para solucionar o investigar tales problemas. La investigacin en biologa computacional se solapa a menudo con la Biologa de Sistemas (BS), que abarca la investigacin interdisciplinaria de los procesos biolgicos, donde las interacciones de los elementos, internos y externos influyentes en el desarrollo de los procesos, se analizan matemticamente, permitiendo la fsica, la mecnica de fluidos y la

comprender a partir de un anlisis holstico el funcionamiento integral de los sistemas biolgicos, dando a los especialista la posibilidad de profundizar en el entendimiento de cmo sus interacciones internas y con otros sistemas conllevan a la potenciacin de algunas propiedades y a la emergencia de otras nuevas (Snoep et al. 2006). La BS analiza el funcionamiento global de las clulas, centrndose en el sistema en su conjunto, sobre las partes. Con el advenimiento de las tcnicas experimentales de

INTRODUCCIN

alto rendimiento se ha alcanzado un importante grado de desarrollo, materializndose los modelos en los que el conjunto de reacciones que tienen lugar en una clula se representan de manera anloga a una red elctrica o de comunicaciones, as como todo un conjunto de herramientas para operar sobre dichas redes (Snoep et al. 2006). La presente investigacin forma parte del intercambio cientfico y la colaboracin entre el Grupo Interdisciplinario de Modelizacin , InterTech (www.intertech.upv.es), vinculado al Instituto Universitario de Matemtica Pura y Aplicada de la Universidad Politcnica de Valencia, Espaa y el Grupo Interdisciplinario de Modelizacin , InterTech, de la Universidad de Pinar del Ro, Cuba, con el objetivo de generar sinergias en reas de alta prioridad en la investigacin, y donde la colaboracin actual se basa en la lnea emergente de la Biologa Sinttica (McDaniel y Weiss, 2005). El avance futuro de esta disciplina cientfica pasa por establecer un marco computacional y conceptual que d asistencia en el desarrollo de sistemas biolgicos artificiales modulares, basndose en una metodologa ingenieril y sistemtica, para lo que se necesita proveer a la prxima generacin de diseadores en Biologa

Sinttica y a los futuros biotecnlogos e ingenieros biolgicos de nuevas herramientas computacionales, integradas en un entorno comn para el anlisis de fenotipos metablicos, el diseo de nuevos circuitos genticos complejos y la visualizacin de mapas metablicos. HYDRA (Hybrid Draw and Routes Analysis) es una plataforma informtica orientada al diseo, anlisis y visualizacin de redes metablicas, que integrar un grupo de herramientas correspondientes tanto a la Biologa de Sistemas como a la Biologa Sinttica, diseadas por el grupo de investigacin InterTech, facilitando a los bilogos la organizacin y sistematizacin mediante el uso intensivo de herramientas Bioinformticas , de la gran cantidad de resultados que se producen con los mtodos automatizados para el tratamiento de la informacin biolgica, empleados en la

actualidad. Asociadas a la Biologa de Sistema HYDRA proporcionar las siguientes herramientas ( Triana Dopico, et al., 2011):

INTRODUCCIN

FBA: Para el Anlisis del balance de flujo. RNA: Dirigido al Anlisis de robustez de redes. DFBA: Una versin dinmica del FBA MOMA: Simulador de eliminacin de genes. FVA: Anlisis de Variabilidad de flujos. HEFM: Anlisis de las posibles distribuciones de flujo. Relacionadas con la Biologa Sinttica disponibles en HYDRA, estarn: FRANKY: Para el diseo automtico de circuitos genticos con una funcionalidad dada. KNOCK-IN: Dirigido a la Evaluacin de posibles knock-in del sistema. OS (Orthology Study): til en el estudio de una va metablica en varios

organismos determinando la conservacin de los genes. SYMCOM (Symbiotic Commuties). Analizador de comunidades de organismos. El reciente desarrollo de la Genmica a partir del empleo de mtodos de secuenciacin ms potentes, as como la implementacin de los microarrays de genes, trajo consigo un vertiginoso cmulo de informacin de las redes genticas de muchos microorganismos. Hoy en da uno de los usos ms frecuente de esta informacin se ha enfocado en el estudio del comportamiento integrado de las redes celulares. Una de las reas de investigacin ha sido el estudio de las redes metablicas (Mahadevan, et al., 2002). Los mtodos analticos y experimentales para entender la naturaleza de la biologa

distribucin de flujos en una red metablica, junto con las tcnicas de molecular para la ingeniera gentica, ayudan en el diseo

de las redes de

reacciones metablicas (Stephanpoulos, 1999). El anlisis matemtico del metabolismo puede guiar el proceso de la ingeniera metablica, de ah que varios acercamientos cuantitativos se han propuesto para estudiar las rutas metablicas. Anlisis de Control Metablico MCA (Metabolic Control Analysis) (Fell, 1996), Teora de Sistemas Bioqumicos (Savageau, et al., 1987),

INTRODUCCIN

Modelacin Ciberntica (Kompala, 1984) (Varner, et al., 1999) y Anlisis de Balance de Flujos (FBA) (Varma, et al., 1994) . Son algunos de los algoritmos desarrollados para este fin. Con la excepcin del FBA, estos acercamientos requieren una formulacin funcional para la cintica de las reacciones celulares (Mahadevan, et al., 2002). El FBA es una aproximacin que restringe la red metablica basada en la

estequiometra de las reacciones y que no requiere de informacin cintica (Varma, et al., 1994). La optimizacin de una funcin objetivo, como puede ser el ndice de crecimiento de un sistema biolgico, es usada para obtener la distribucin de flujos metablicos que satisface las restricciones. Este mtodo ha demostrado proveer significativas predicciones en la Escherichia coli (Varma, et al., 1994). La extensin del FBA para responder a la dinmica de las redes metablicas es conocida como dFBA (Mahadevan, et al., 2002). La importancia fundamental del dFBA radica en la capacidad de representar la evolucin de una ruta metablica bajo determinadas condiciones, cuales substratos son consumidos, cuales productos son obtenidos y los ndices de

consumo/produccin que rigen el proceso, dFBA permite apreciar el comportamiento de la biomasa resultante para restricciones precisas sobre los flujos y predecir las concentraciones de los metabolitos. El dFBA representa una significativa mejora del FBA clsico. Hasta la fecha se cuenta con dos modelos matemticos para realizar un anlisis dinmico, la aproximacin esttica (SOA1) (Varma, et al., 1994) y la aproximacin dinmica (DOA2) (Mahadevan, et al., 2002). El Anlisis Dinmico del Balances de Flujos, es una herramienta de anlisis de gran impacto de la Biologa de Sistemas, y por tanto un servicio de obligada prestacin en toda plataforma que se quiera llamar integradora, y este orientada a proveer de herramientas y facilidades a los bilogos y bioqumicos del siglo XXI. La situacin expuesta lneas arriba nos enfrenta al Problema Cientfico dado por: Falta de una herramienta, propia del grupo InterTech, para automatizar el dFBA en

1 2

Static Optimization Approach, modelo matemtico que ofrece soluciones para el dFBA. Dynamic Optimization Approach, modelo matemtico que ofrece soluciones para el dFBA.

INTRODUCCIN

redes metablicas; como parte de los servicios que prestar la plataforma computacional HYDRA. Con vistas a la solucin del problema que se presenta queda establecido como Objeto de Estudio de esta investigacin: el modelo matemtico que garantiza la realizacin del dFBA en las redes metablicas, mediante una aproximacin esttica (SOA). Acotando el Campo de accin a: la obtencin de soluciones para el modelo matemtico descrito en la aproximacin esttica (SOA) para el dFBA. Este proyecto de investigacin se realiza con el Objetivo General de: Elaborar un sistema informtico, que, siguiendo los algoritmos descritos por la aproximacin

esttica (SOA), sea capaz de realizar simulaciones del comportamiento y evolucin de una ruta metablica, aplicando el dFBA. Los Objetivos Especficos estn orientados en funcin de: 1. Realizar una revisin bibliogrfica que permita conocer el estado del arte en que se encuentra el dFBA, para sus dos aproximaciones. 2. Levar a cabo un estudio de los sistemas afines que en la actualidad tratan de dar soluciones a la situacin problmica de esta investigacin. 3. Disear una herramienta computacional, que automatice modelo matemtico descrito por SOA. 4. Desarrollar una herramienta computacional, que automatice modelo

matemtico descrito por SOA. 5. Aplicar principios de diseo que garanticen una interfaz grfica cmoda a los usuarios. Los anteriormente numerados, sern cumplidos por medio de la consecucin de las siguientes Tareas: 1. Estudiar los modelos matemticos que respaldan el dFBA, as como las

herramientas que actualmente automatizan la aproximacin esttica (SOA). 2. Estudio y seleccin de las herramientas y lenguajes apropiados para la ejecucin del proyecto.

INTRODUCCIN

3. Disear un proyecto de software que permita obtener un sistema informtico capaz de encontrar soluciones al modelo matemtico de la aproximacin esttica (SOA) para el dFBA. 4. Desarrollar la aplicacin haciendo uso de las herramientas y lenguaje seleccionados. Idea a defender: una herramienta que permita realizar anlisis dinmicos del metabolismo celular brindar a la plataforma HYDRA mayor confiabilidad, robustez y utilidad ante sus usuarios finales. La informatizacin del objeto de esta investigacin cientfica se logr a partir de la aplicacin de mtodos tericos, que revelaron sus relaciones esenciales no

observables directamente. Se estudi la BS desde sus inicios, su establecimiento como ciencia, y el posterior desarrollo alcanzado, que la ha convertido en un rea emergente de alto potencial cientfico y tecnolgico. Donde los anlisis de flujos metablicos en estados cuasi-estacionarios constituyen un actor importante a tener en cuenta. Tcnica que es posible, en parte, debi a una modelacin matemtica de la dinmica metablica, usada para generalizar y simular el proceso haciendo posible su resolucin, computacionalmente. Y tambin al conocimiento y comprensin detallada de la funcin de los metabolitos y las reacciones qumicas dentro de una red metablica, como pieza clave para lograr un anlisis dinmico del balance de los flujos metablicos. Conjuntamente con los anteriores se usaron mtodos empricos de investigacin, concretamente la medicin, por ser el modelo que se estudia, computacionalmente costoso debido a la gran cantidad de metabolitos y reacciones con las que trabaja, donde los tiempos de respuesta pueden llegar a determinar no solo la eficiencia sino la eficacia del software que se propone. Se acudi a la entrevista como tcnica para recopilar informacin, y aunque estas no estuvieron estructuradas en cuestionarios, fluyendo ms bien como conversaciones profesionales, fueron de gran utilidad a la hora de investigar campos necesarios para la realizacin de este proyecto, por contener al objeto de la investigacin; cercanos a la informtica como ciencia, pero lejanos en la prctica a los conocimientos del

informtico, como son la Bioinformtica, la Biologa Sinttica, la Biologa de Sistemas y concretamente el metabolismo celular.

INTRODUCCIN

Se espera que, este documento sea til y esclarecedor en lo relacionado con el dFBA, y que pueda ser usado como futura bibliografa en espaol, ciertamente escasa en el tema abordado, que el sistema sea lo suficientemente grfico y amigable para que su uso se haga fcil a sus usuarios, y sus servicios tiles en el trabajo que realizan. Sobre todo se desea que el resultado de este trabajo sirva a todos esos bilogos, bioqumicos ingenieros metablicos, etc., que dedican sus vidas a la investigacin y a tratar de hacer de este un mundo mejor.

INTRODUCCIN

Este documento se estructura en tres captulos: CAPITULO I: Se detallan los fundamentos tericos en los que se basa este proyecto, conceptos fundamentales y un anlisis de factibilidad.

CAPITULO II: Se describe la metodologa y las herramientas utilizadas para el diseo as como artefactos tpicos de este flujo de trabajo.

CAPITULO III: Se presenta el sistema en trmino de componentes y funcionamiento. Por ltimo las Conclusiones generales, las Recomendaciones, las Referencias Bibliogrficas y la Bibliografa, que expone toda la documentacin utilizada para la realizacin del proyecto y al final los Anexos que contienen la informacin complementaria del trabajo.

CAPTULO I

CAPTULO I: FUNDAMENTACIN TERICA Introduccin En este captulo se detallan los aspectos referentes a la BS, profundizando en el metabolismo celular como proceso biolgico intrnseco a todos los organismos, se explica como la BS es capaz predecir comportamientos de este valindose de modelos matemticos para representarlo y analizarlo, el FBA para una instantnea y el dFBA para predecir la evolucin de las concentraciones de los metabolitos en el tiempo. Se describen dos aproximaciones posibles para el anlisis dinmico, DOA y SOA, las cuales haciendo uso de la programacin no lineal y la programacin lineal, respectivamente, obtienen resultados similares. Se analizan sistemas afines y se realiza un anlisis de factibilidad para el trabajo que se propone. 1.1. Biologa de sistemas. La Biologa Molecular de las ltimas dcadas se ha basado en la teora que asume el camino directo existente entre genes, protenas y funcin biolgica, as como la presencia de respuestas predeterminadas del sistema a perturbaciones externas. Aunque este tipo de investigacin ha dado lugar a gran cantidad de conocimiento, no proporciona informacin acerca de cmo integran las clulas estos datos de forma que se genere un tipo de respuesta u otro. A pesar de que la Biologa de Sistemas se considera una nueva disciplina, el abordaje del estudio de los procesos biolgicos como sistemas se trat por Wiener en 1948 en lo que se llam en aquel momento la ciberntica. La Biologa de Sistemas ha sido descrita por investigadores como Leroy Hood con detalle, aunque el trmino se emple por primera vez en 1968 por tericos como Mersarovic (Mesarovic, 1968). La Biologa de Sistemas es el campo de investigacin interdisciplinario de los procesos biolgicos en el que las interacciones de los elementos, internos y externos, que influyen en el desarrollo del proceso se representan mediante un sistema matemtico. Este enfoque global permite comprender de forma integrada el funcionamiento de los sistemas biolgicos y profundizar en el entendimiento de cmo sus interacciones internas y externas (con otros sistemas) conlleva a la aparicin de nuevas propiedades y/o procesos (Pacheco Surez, 2011).
9

CAPTULO I

Convencionalmente, en el estudio de los procesos biolgicos se utiliza el mtodo cientfico clsico, que se basa en la confirmacin o refutacin de una hiptesis al confrontarle con los resultados experimentales. La BS utiliza, sin embargo, un enfoque distinto, basado en la modelizacin matemtica de los procesos en estudio. Como resultado de la simulacin, al poner a funcionar los modelos matemticos con los que se representa el proceso, se obtiene una serie de predicciones del estado del proceso biolgico que corresponderan a los resultados experimentales esperados. Durante las simulaciones, la red de interacciones entre los elementos que componen el proceso biolgico se representa mediante un sistema de ecuaciones diferenciales. Los valores de las caractersticas de dichos elementos a distintos tiempos y bajo diversas condiciones experimentales (simuladas), son predecibles debido a que la dinmica del estado de ese sistema modelado es calculable matemticamente. La Biologa de Sistemas es un rea interdisciplinaria en la que participan bilogos, qumicos, matemticos, fsicos, entre otros. Esta disciplina emplea una estrategia diferente a las aproximaciones empricas tradicionales, por medio del estudio de sistemas biolgicos en sus diferentes niveles, desde clulas y redes celulares hasta organismos completos. La Biologa de Sistemas implica el mapeo de rutas, interaccin de protenas y genes, as como el de los circuitos de organismos a nivel celular y de organismos completos, todo ello integrado en un modelo informtico y/o matemtico (Pacheco Surez, 2011) Principales caractersticas de la Biologa de Sistemas Estudia los sistemas biolgicos de una forma global, a nivel molecular. Contrasta con la aproximacin clsica lineal (un gen, una protena). Integra el conocimiento de diferentes plataformas o disciplinas (genmica, transcriptmica, protemica, metabolmica, fisiologa, patologa, etc.). Maneja una gran coleccin de datos procedentes de estudios experimentales. Propone modelos matemticos que pueden explicar algunos de los fenmenos biolgicos estudiados. Proporciona soluciones matemticas que permiten obtener predicciones para los procesos biolgicos.
10

CAPTULO I

Realiza estudios de comprobacin de la calidad de los modelos descritos por medio de la comparacin entre las simulaciones numricas y los datos experimentales (Lpez, et al., 2007). 1.2 . El metabolismo celular El trmino metabolismo deriva del griego , significando cambio, o tambin llevar ms all, de (Eknoyan, 1999). La historia del estudio cientfico sobre el metabolismo puede ser situada 400 aos en el pasado, y parte desde los primeros estudios examinando animales hasta la investigacin de reacciones metablicas individuales por la bioqumica moderna. El primer experimento controlado sobre el metabolismo humano fue publicado por Santorio Santorio en 1614 en su libro Ars de statica medecina (Eknoyan, 1999). El metabolismo celular es el conjunto de reacciones y procesos fsico-qumicos que ocurren en una clula. Estos complejos procesos interrelacionados son la base de la vida a nivel molecular (Enciclopedia Mdica, 2006). Se divide en dos procesos conjugados: catabolismo y anabolismo. Las reacciones catablicas liberan energa, retenida en los enlaces qumicos, mediante de la degradacin de compuestos. Las reacciones anablicas, en cambio, utilizan esta energa liberada para recomponer enlaces y construir compuestos. La economa que la actividad celular impone sobre sus recursos obliga a organizar estrictamente las reacciones qumicas del metabolismo en vas o rutas metablicas, donde un compuesto qumico (sustrato) es transformado en otro (producto), y este a su vez funciona como sustrato para generar otro producto, siguiendo una secuencia de reacciones bajo la intervencin de diferentes enzimas (Fig. 1.2). Las enzimas son cruciales en el metabolismo porque otorgan celeridad a las reacciones fsico-qumicas y se comportan como factores reguladores de las vas metablicas, modificando su funcionalidad y por ende, la actividad completa de la va metablica.

11

CAPTULO I

Figura 1.2: Red metablica simple ficticia. La clula est delimitada por la pared celular (cell wall), donde S1 y S2 son el conjunto de entradas a la clula y P1 es la salida. Los compuestos y los flujos denotados por (C1-C5) y (V1-V7) respectivamente. Una caracterstica del metabolismo es la similitud de las rutas metablicas bsicas incluso entre especies muy diferentes: la secuencia de pasos qumicos en una va metablica como el ciclo de Krebs es universal entre clulas vivientes tan diversas como la bacteria unicelular Escherichia coli y organismos pluricelulares como el elefante (Smith E, 2004). Es posible usar esta informacin para reconstruir redes completas de comportamientos bioqumicos y producir modelos matemticos holsticos que puedan explicar y predecir su comportamiento (Borodina I, 2005).

1.2.1. Representacin matemtica del metabolismo celular Las reacciones metablicas son representadas mediante una matriz estequiomtrica de tamao . Cada fila de la matriz representa un nico componente o componentes), y cada columna representa una

metabolito (para un sistema de reaccin (de las

reacciones que tienen lugar en el sistema). Las entradas que

ocupan las celdas de la matriz son los coeficientes estequiomtricos de los metabolitos participantes en la reaccin. Se atribuye un coeficiente negativo para cada metabolito consumido y uno positivo para cada metabolito producido (Orth, et al., 2010).

12

CAPTULO I

Un coeficiente estequiomtrico igual a cero

es usado para cada metabolito que no

participa en una reaccin en particular. Dado que la mayora de las reacciones bioqumicas involucran solamente unos pocos metabolitos en predominante es el matriz esparcida. 1.3. Anlisis de Balance de Flujos (FBA) El flujo de todas las reacciones en una red es representado por el vector longitud vector La concentracin de todos los metabolitos se distribuyen en un , de posiciones. La ecuacin de balance de masa para el estado ) est dada por (Orth, et al., 2010). , de el elemento

, es eficiente y generalmente aplicado, trabajarla como una

estacionario del sistema (

En cualquier modelo metablico realista hay ms reacciones que componentes ( ). En otras palabras hay ms variables desconocidas que ecuaciones, lo que

deriva en un sistema de ecuaciones de tipo rectangular donde no habr una nica solucin. Aunque las restricciones definen un rango de soluciones, es todava posible identificar y analizar puntos simples dentro del espacio de solucin. Por ejemplo, podemos estar interesado en identificar cual punto corresponde a la mxima produccin de ATP en un organismo, dado por un grupo particular de restricciones. El FBA es un mtodo para identificar un punto ptimo dentro de un espacio restringido (Fig. 1.3).

13

CAPTULO I

Figura 1.3| La base conceptual del modelo basado en restricciones. Sin restricciones, la distribucin de flujo de una red biolgica puede caer en cualquier punto en un espacio de soluciones. Cuando las restricciones de balance de masa impuestas por la matriz estequiomtrica (etiqueta 1) y las restricciones de capacidad impuestas ) (etiqueta 2) son aplicadas a la red se define

por limites inferiores y superiores (

un espacio de solucin deducible. Mediante la optimizacin de una funcin objetivo, El FBA puede identificar una distribucin de flujo ptimo que se encuentra sobre la frontera del espacio permisible de soluciones. El FBA persigue maximizar o minimizar una funcin objetivo ser cualquier combinacin lineal de flujos, donde la cual puede

es un vector de pesos que indica

cuanto contribuye cada reaccin a la funcin objetivo. En la prctica cuando se desea maximizar o minimizar una reaccin, es un vector de ceros y el valor de uno

en la posicin de la reaccin de inters, este producto vectorial nos determina cul de todos los flujos dentro de la ruta se desea optimizar. La optimizacin del sistema en cuestin es lograda mediante programacin lineal. El FBA puede, de este modo ser definido como el uso de la programacin lineal para resolver la ecuacin , dado un juego de lmites inferiores y superiores sobre, ,

y una combinacin lineal de flujos, como funcin objetivo. La salida del FBA es una particular distribucin 2010). Grficamente sera: Dada la siguiente red metablica ficticia, compuesta por 7 reacciones, 3 internas (se asume que los sustratos y productos estn localizados dentro de la clula), y 4 de , la cual maximiza o minimiza la funcin objetivo (Orth, et al.,

14

CAPTULO I

intercambio (algn reactante entra o algn producto sale, por tanto solo un metabolito es contabilizado en ella).

Donde la estequiometria es la que sigue:

Internas:

De intercambio:

El balance dinmico de masa o la ecuacin de biomasa dada por:

Dnde: : Concentracin de los metabolitos. : Tiempo. : Matriz estequiomtrica. : Vector de los flujos. Es necesario asumir que en el estado estacionario no hay cambio de la concentracin en el tiempo, y por tanto .

Sujeto a.

15

CAPTULO I

Para lo cual

y el vector de flujos queda como sigue:

1.4. Anlisis Dinmico del Balance de Flujos (dFBA) El FBA solamente identifica la distribucin de flujos metablicos, no aporta informacin sobre las concentraciones metablicas o acerca de las caractersticas dinmicas de los flujos. En simulaciones donde hay transiciones entre dos estados, las soluciones del FBA indicarn una instantnea de los flujos metablicos (Varma, et al., 1994). Por lo tanto, las restricciones sobre el ndice de cambio de los flujos tienen que ser explcitamente incorporadas al problema. La extensin dinmica para el FBA (dFBA) puede ser formulada de las dos siguientes formas (Mahadevan, et al., 2002), (Varma, et al., 1994): 1.4.1. Aproximacin de Optimizacin Dinmica (DOA) Esta involucra la optimizacin sobre todo el perodo de tiempo de inters, para obtener los perfiles de tiempo de los flujos y las concentraciones de los metabolitos. El anterior problema de optimizacin se transforma en uno de programacin no lineal (NLP). Considerando una red metablica con metabolitos y flujos. El juego de

ecuaciones de conservacin de la masa para cada metabolito resulta en un juego de ecuaciones diferenciales ordinarias,

Donde es el vector de la concentracin de los metabolitos, el vector de los flujos es la matriz

metablicos por gramo (DW , del ingls dry weight) de biomasa, estequiomtrica de la red,

es el ndice de crecimiento obtenido como una suma con

16

CAPTULO I

pesos de las reacciones que sintetizan los precursores del crecimiento, y

son las

cantidades de los precursores de crecimiento requeridos por gramo (DW) de biomasa (Mahadevan, et al., 2002). Junto con el sistema de ecuaciones dinmicas, varias restricciones tienen que ser impuestas para una prediccin realista de las concentraciones de los metabolitos y de los flujos. Estas incluyen metabolitos y niveles de flujos no negativos, limites sobre la tasa de cambio de los flujos, y cualquier restriccin no lineal sobre los flujos de transporte. El problema de optimizacin dinmica puede ser formulado como:

) (

Sujeto a.

[ ]

Donde

son las condiciones iniciales para la concentracin de los metabolitos y es un vector funcin que puede y son

la concentracin de biomasa respectivamente,

surgir debido a la consideracin de expresiones cinticas para los flujos, los tiempos iniciales y finales,

es la funcin objetivo terminal que depende de la

17

CAPTULO I

concentracin en el punto final, Dirac-Delta,

es la funcin objetiva instantnea, es considerada,

es la funcin y son los es

es el instante de tiempo en cual

pesos asociados con la funciones instantnea y terminal, respectivamente, y

el perfil de tiempo de los flujos metablicos. Si la restriccin no lineal est ausente, el problema se reduce a un problema de optimizacin que involucra un sistema bilineal (Mahadevan, et al., 2002). El problema de optimizacin se puede resolver parametrizando las ecuaciones dinmicas a travs del uso de colocacin ortogonal sobre elementos finitos (On the optimization of differential, 1987). El periodo de tiempo se divide en un

nmero finito de intervalos (elementos finitos). Los flujos, los niveles metablicos y la concentracin de biomasa son parametrizados en la raz de un polinomio ortogonal dentro de cada elemento finito. La continuidad de los metabolitos y la concentracin de biomasa son impuestas al inicio de cada uno de los elementos finitos. El tiempo derivado de las variables se aproximado como una combinacin lineal de los valores de flujo en cada punto, y las ecuaciones dinmicas son transformadas a ecuaciones algebraicas. Las restricciones no lineales deben ser impuestas en puntos discretos en el intervalo de tiempo considerado. El problema de optimizacin se convierte en un problema de programacin no lineal (Mahadevan, et al., 2002). 1.4.2. Aproximacin de optimizacin esttica (SOA) Esta aproximacin implica dividir el tiempo que interesa, en muchos intervalos y

resolver problemas de optimizacin instantnea (FBA) al inicio de cada uno, seguido por una integracin sobre todo el perodo. El problema de optimizacin se resuelve usando programacin lineal (LP), repetidamente durante el curso del tiempo que interesa, para obtener la distribucin de flujos en un instante particular.

18

CAPTULO I

Sujeto a.

] [ ]

Donde

es la duracin del intervalo de tiempo escogido. Las ecuaciones dinmicas

son integradas asumiendo que los flujos son constantes en el intervalo. El problema de optimizacin se reformula para el prximo instante de tiempo y se resuelve. El procedimiento se repite dese hasta . Para la clase de sistema que involucra

solamente trminos bilineales con flujos y la concentracin de biomasa, es posible resolver directamente las ecuaciones dinmicas, y de este modo eliminar la integracin numrica (Mahadevan, et al., 2002). 1.5. Sistemas afines Constraint-based reconstruction and analysis (COBRA), es un paquete de software que corre sobre Matlab, mediante el cual es posible realizar predicciones cuantitativas del comportamiento celular usando una aproximacin basada en restricciones. Especficamente este software ayuda a predecir computacionalmente estados estticos, dinmicos, el efecto de la supresin de genes, anlisis de robustez y otros como muestreos metablicos y mdulos de la red. Se requiere de cierto grado de destreza para lograr instalar COBRA, ya que carece de un ejecutable o una secuencia de instalacin, adems se necesita disponer de varias libreras y paquetes previamente corriendo en Matlab, como son LibSBML, para todo el tratamiento de los archivos .xml y una serie de solvers matemticos para resolver los problemas de programacin cuadrtica, lineal y no lineales, como el GLPK, CPLEX, Lindo_Solver.
19

CAPTULO I

En contra de la mejor usabilidad de COBRA est el hecho de carecer de un ambiente visual, que guie al ingeniero metablico en el proceso que va desde el cargado del fichero, contenedor de la informacin biolgica (SBML) hasta la aplicacin de las restricciones y la obtencin de los resultados. Todo el trabajo se realiza a base de comandos, por lo cual es necesario un conocimiento previo y medianamente profundo del paquete de clases en general.

1.6. Anlisis de Factibilidad Al desarrollar un software resulta imprescindible estimar, desde el comienzo, el esfuerzo humano, el tiempo de desarrollo y el costo que conlleva la implementacin del mismo. Con esto, es posible determinar si es factible o no la ejecucin del proyecto y en caso de ser posible, ajustar algunos parmetros que ayudan a planificar el trabajo a realizar (Peralta, 2004). La estimacin se realiz mediante el anlisis de Puntos de Casos de Uso, el cual fue ideado por Gustav Karner, de Rational Software Corporation, en 1993, que estima las horas-persona del tiempo de desarrollo de un proyecto, mediante la asignacin de pesos a los factores que lo afectan. Este proceso de estimacin se realiza mediante una serie de pasos (Anexo I): El costo total del proyecto fue estimado en , teniendo en cuenta que la

aplicacin es el resultado de un trabajo de diploma, no implica incurrir en ningn tipo de gastos sino que constituye un ahorro, por lo que es factible llevar a la prctica el desarrollo de la misma.

20

CAPTULO I

1.7. Modelo de Dominio El modelo de dominio es una representacin visual de los conceptos u objetos del mundo real significativos para un problema o rea de inters. ste es utilizado para comprender, capturar y describir los conceptos ms importantes empleados en el contexto del negocio. Para la construccin de un modelo de dominio se extraen los conceptos y eventos principales del entorno y se relacionan en un diagrama de clases UML (Figura 1.4).
class Domain Mo...

Modelo_Matematico * modelan 1

Metabolismo_Celular

1 se-compone-de 1.. * dFBA + HacerFBA() : void 1.. * simular 1 Ruta_Metabolica

1 calcula FBA 1.. * SOA DOA

suceden 1.. * Reaccion 1.. * ocurren substrato: Especie producto: Especie lb: Parametro ub: Parametro

Compartimiento

1 localizadas-en Especi e 1.. * Parametr o

Figura. 1.4| Modelo de Dominio

21

CAPTULO I

1.7.1. Conceptos que se utilizan en el Modelo de Dominio Para la realizacin del modelo de dominio es necesario identificar los conceptos principales del negocio los cuales nos van a garantizar un mejor entendimiento sobre el objeto de estudio de esta investigacin y facilitarn la captura de los requisitos; posibilitando el desarrollo de un software de acuerdo a las necesidades de los clientes. A continuacin se desarrollan los conceptos modelados en el diagrama del modelo de dominio: Metabolismo celular: conjunto de reacciones y procesos fsico-qumicos que ocurren en una clula, se organizan en vas o rutas metablicas y son la base de la vida a nivel molecular Ruta metablica: sucesin de reacciones qumicas que conducen de un sustrato inicial a uno o varios productos finales, a travs de una serie de metabolitos intermediarios. Especie: cualquier molcula utilizada o producida durante el metabolismo. Sustrato: metabolito de partida en una reaccin metablica. Producto: producto final de la va metablica. Parmetro: Una cantidad con un nombre simblico que es usado en un sentido genrico para referirse a las cantidades nombradas sin tener en cuenta si ellos son constantes o variables. Reaccin: Una declaracin que describe alguna transformacin, transporte o proceso obligatorio que pueden cambiar la cantidad de una o ms especies. Expresa, por ejemplo como ciertos substratos son transformados en ciertos productos y regulados por qu parmetros. Compartimiento: Un recipiente de un tipo particular y tamao finito dnde pueden localizarse las especies.
22

CAPTULO I

Modelo matemtico: modelo cientfico, que emplea formulismo matemtico para expresar relaciones, proposiciones, variables, parmetros, entidades y relaciones entre variables y/o entidades u operaciones, para estudiar comportamientos de sistemas complejos ante situaciones difciles de observar en la realidad. FBA: es un mtodo matemtico para analizar el metabolismo en un sistema biolgico, no requiere conocer previamente las concentraciones de los metabolitos o los detalles de la cintica enzimtica del sistema. Se asume que el sistema bajo estudio se encuentra en homeostasis dFBA: la extensin dinmica para el FBA. SOA: Modelo matemtico que describe una aproximacin esttica para realizar el dFBA. DOA: Modelo matemtico que describe una aproximacin dinmica para realizar el dFBA.

23

CAPTULO I

Conclusiones del Captulo Se abord el marco conceptual en que se define el objeto de esta investigacin, se profundiz en la BS as como en sus caractersticas principales. El metabolismo celular, como proceso biolgico, qued representado matemticamente, como primer paso para introducir los temas referentes al FBA y dFBA, de los cuales fueron presentados sus modelos y aproximaciones matemticas. Se analizaron los sistemas afines con nuestro propsito investigativo, lo cual permiti saber en qu estado se encontraba el tema en la actualidad y en cuales reas seran posibles aportes. Un estudio de factibilidad justific la realizacin del software que se propone como objetivo general de este trabajo.

24

CAPTULO II

CAPTULO II: CARACTERIZACIN DE LA SOLUCIN PROPUESTA

Este captulo consta de nueve epgrafes, en los cuales se aborda el diseo de HYDRA dFBA, se hace una breve descripcin de la metodologa de desarrollo, as como la fundamentacin de su uso. Adems se describen las herramientas utilizadas en el diseo de la aplicacin, se hace referencia a cada uno de los requisitos funcionales y no funcionales del sistema, se expresa su trazabilidad hacia los casos de uso, se muestra el diagrama de casos de uso, y un resumen de esto. Se definen los actores y su rol en el sistema. Los Diagramas de Clases del Diseo, general y por paquetes, son presentados tambin. 2.1. Caracterizacin de la metodologa y herramientas para el diseo El proceso de ingeniera de software se define como "un conjunto de etapas parcialmente ordenadas con la intencin de lograr un objetivo, en este caso, la obtencin de un producto de software de calidad. El proceso de desarrollo de software "es aquel en que las necesidades del usuario son traducidas en requisitos de software, estos requisitos transformados en diseo y el diseo implementado en cdigo, el cdigo es probado, documentado y certificado para su uso operativo". Concretamente "define quin est haciendo qu, cundo hacerlo y cmo alcanzar un cierto objetivo" (Jacobson, et al., 2000). La importancia de la eleccin y empleo de un proceso de desarrollo se refleja en la elevada proporcin de proyectos de software que fracasan. Un estudio del Standish Group hecho sobre 352 compaas de software, donde se estudiaron ms de 8.000 proyectos, mostr, entre otros, los siguientes resultados:

El 31% de todos los proyectos de software fueron cancelados antes de terminarse. (Prdidas de US $81 billones). El 53% de los proyectos tuvieron un costo 189% mayor de lo estimado. El 9% de los proyectos se terminaron a tiempo y dentro del presupuesto (compaas grandes). El 16% de los proyectos se terminaron a tiempo y dentro del presupuesto (compaas pequeas).

25

CAPTULO II

En estos ltimos aos se han desarrollado dos corrientes en lo referente a los procesos de desarrollo, los llamados mtodos pesados y los mtodos ligeros o giles. La diferencia fundamental entre ambos es que mientras los mtodos pesados intentan conseguir el objetivo comn por medio de orden y documentacin, los ligeros tratan de mejorar la calidad del software por medio de una comunicacin directa e inmediata entre las personas que intervienen en el proceso (Molpeceres, 2002). Con el desarrollo de la industria del software nuevas herramientas informtica son comercializadas, cuyo objetivo es automatizar las actividades requeridas para disear y producir software, aumentando la productividad y mejorando la calidad, aunque en ltima instancia el xito o el fracaso del producto final sigue siendo responsabilidad del equipo de desarrollo. A continuacin se describen y justifican la metodologa y herramientas empleadas para disear HYDRA dFBA. 2.1.1. Proceso Unificado de Desarrollo (RUP) Dentro de la ingeniera de software orientada a objetos hay un proceso que por su flexibilidad y la efectividad de las soluciones que propone, se ha estandarizado entre los desarrolladores, el Proceso Unificado de Desarrollo (RUP) (Jacobson, et al., 2000), que utiliza como lenguaje de modelado UML, Lenguaje Unificado de Modelado, (Fowler, et al., 1999) (Rumbaugh, et al., 2000). RUP gua a los equipos de proyecto hacia un desarrollo iterativo de un modo controlado mientras se balancean los requerimientos del negocio, el tiempo al mercado y los riesgos del proyecto. El proceso describe los diversos pasos involucrados en la captura de los requisitos y en el establecimiento de una gua arquitectnica lo ms pronto posible, para disear y probar el sistema hecho de acuerdo a los requisitos y a la arquitectura. El proceso describe qu entregables producir, cmo desarrollarlos y tambin provee patrones. El Proceso Unificado es soportado por herramientas que sustentan todas sus bases y automatizan entre otras cosas, el modelado visual, la administracin de cambios y las pruebas. Las caractersticas fundamentales del Proceso Unificado son (Jacobson, et al., 2000):

26

CAPTULO II

Guiado por lo casos de uso: Los casos de uso son el instrumento para validar la arquitectura del software y extraer los casos de prueba. Centrado en la arquitectura: Los modelos son proyecciones del anlisis y el diseo constituye la arquitectura del producto a desarrollar. Iterativo e incremental: Durante todo el proceso de desarrollo se producen versiones incrementales (que se acercan al producto terminado) del producto en desarrollo. Un proceso realizado siguiendo RUP se divide en cuatro fases (Santiago) y nueve flujos de trabajo (Rational): La fase de Concepcin tiene por finalidad definir la visin, los objetivos y el alcance del proyecto, obtenindose como uno de los principales resultados una lista de los casos de uso y una lista de los factores de riesgo del proyecto. El principal esfuerzo radica en el Modelamiento del Negocio y el Anlisis de Requerimientos. La fase de Elaboracin tiene como principal finalidad completar el anlisis de los casos de uso y definir la arquitectura del sistema. En esta etapa se busca eliminar los principales riesgos tcnicos. La fase de Construccin est compuesta por un ciclo de varias iteraciones, en las cuales se van incorporando sucesivamente los casos de uso, de acuerdo a los factores de riesgo del proyecto. Este enfoque permite contar tempranamente con versiones del sistema que satisfacen los principales casos de uso. La fase de Transicin se inicia con una versin beta3 del sistema y culmina con el sistema en fase de produccin.

Flujos de trabajo: Modelamiento del negocio: Describe los procesos de negocio, identificando quines participan y las actividades que requieren automatizacin. Requerimientos: Define qu es lo que el sistema debe hacer, para lo cual se identifican las funcionalidades requeridas y las restricciones que se imponen.

Se encuentra an sujeta a desarrollo, pero se lanza con motivo de testeo.

27

CAPTULO II

Anlisis y diseo: Describe cmo el sistema ser realizado a partir de la funcionalidad prevista y las restricciones impuestas, indica con precisin lo que se debe programar.

Implementacin: Define cmo se organizan las clases y objetos en componentes. Prueba (Testeo): Busca los defectos a lo largo del ciclo de vida. Instalacin: Realiza las actividades (empaque, instalacin, asistencia a usuarios, etc.) para entregar el software a los usuarios finales. Administracin del proyecto: Involucra actividades con las que se busca producir un producto que satisfaga las necesidades de los clientes. Administracin de configuracin y cambios: Describe cmo controlar los elementos producidos por todos los integrantes del equipo de proyecto en cuanto a: utilizacin/actualizacin, control de versiones, etc. Ambiente: Contiene actividades que describen los procesos y herramientas que soportarn el equipo de trabajo del proyecto. Fundamentacin del Uso de RUP para el desarrollo de HYDRA dFBA RUP ha logrado convertirse en un fuerte estndar en los escenarios de la POO 4. Proporciona un mtodo lgico para asignar las tareas y responsabilidades dentro del equipo de desarrollo, tomando como objetivo el asegurar la produccin de software de alta calidad, que resuelva las necesidades del usuario dentro de un cronograma predecible y al menor costo posible. Hace uso de los modelos y diagramas como vehculo de comunicacin, al ser estos ms expresivos que las descripciones en lenguaje natural. Toma en cuenta las mejores prcticas a utilizar en el modelo de desarrollo de software. La metodologa RUP permite controlar nuevas herramientas y tecnologas en un nico ambiente, es adoptada en cientos de proyectos mundialmente y enseada en cientos de universidades. Aplicarla garantiza contar con una serie de artefactos tiles y una amplia documentacin al trmino del proceso.

Programacin Orientada a Objetos.

28

CAPTULO II

2.1.2. Lenguaje Unificado de Modelado (UML) El Lenguaje Unificado de Modelado UML, por sus siglas en ingls, Unified Modeling Language, se define como un lenguaje que permite modelar, construir y documentar los elementos que forman un sistema de software orientado a objetos (Jacobson, et al., 2000). Es el lenguaje de modelado de sistemas de software ms conocido y utilizado en la actualidad; est respaldado por el OMG5. UML sirve para el modelado completo de sistemas complejos, tanto en el diseo de software como para la arquitectura hardware donde se ejecuten. UML ofrece un estndar para describir un plano del sistema (modelo), incluyendo aspectos conceptuales tales como procesos de negocios y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programacin, esquemas de bases de datos y componentes de software reutilizables. Otro aspecto de este modelado visual es que es independiente del lenguaje de implementacin, de tal forma que los diseos realizados se pueden implementar en cualquier lenguaje que soporte las posibilidades de UML (principalmente lenguajes orientados a objetos). UML es adems un mtodo formal de modelado. Esto aporta las siguientes ventajas: Mayor rigor en la especificacin. Permite realizar una verificacin y validacin del modelo realizado. Se pueden automatizar determinados procesos y permite generar cdigo a partir de los modelos y a la inversa. Fundamentalmente, UML est relacionado con la captura, comunicacin y nivelacin de conocimientos. Aunque est pensado para modelar sistemas complejos con gran cantidad de software, el lenguaje es lo suficientemente expresivo como para modelar sistemas que no son informticos, como flujos de trabajo en una empresa, diseo de la estructura de una organizacin y por supuesto, en el diseo de hardware. Un modelo UML est compuesto por tres clases de bloques de construccin:

Del ingls Object Management Group, consorcio dedicado al cuidado y establecimiento de estndares de tecnologa orientadas a objetos.

29

CAPTULO II

Elementos: Son abstracciones de cosas reales o ficticias (objetos, acciones, etc.). Relaciones: Relacionan los elementos entre s. Diagramas: Son colecciones de elementos con sus relaciones.

Fundamentacin del uso de UML para modelar HYDRA dFBA UML permite expresar un sistema grficamente, de forma tal que otro lo puede entender, permite especificar cules son las caractersticas de un sistema antes de su construccin y a partir de los modelos especificados se pueden construir los sistemas diseados. Los propios elementos grficos sirven como documentacin del sistema desarrollado que pueden servir para su futura revisin. Prcticamente todas las herramientas CASE6 y de desarrollo lo han adaptado como lenguaje de modelado. Es un lenguaje fcil de aprender y de utilizar. Permite describir requerimientos, la arquitectura y modelar las pruebas a travs de artefactos que documentan el proceso. Se construyen modelos precisos y completos. No es un lenguaje de programacin, pero sus modelos pueden transformarse en cdigo fuente, tablas o almacenamiento de objetos. Se escogi el Lenguaje Unificado de Modelado como el lenguaje para la modelacin de la solucin propuesta porque este es un lenguaje expresivo, claro, que permite especificar todas las decisiones de anlisis, diseo e implementacin. UML es la convergencia de las mejores prcticas de la industria de las tecnologas para el modelado de aplicaciones orientadas a objetos. 2.1.3. Herramientas Case. Enterprise Architect La Ingeniera de Software Asistida por Computadora, cuenta con un grupo de herramientas denominadas CASE, cuyo fin no es otro que proporcionar una ayuda automatizada a las actividades que requiere el proceso de produccin de software. Las herramientas CASE ayudan a alcanzar los siguientes objetivos: Mejorar la productividad en el desarrollo y mantenimiento del software. Elevar los niveles de calidad del software.
6

Del ingls Computer Aided Software Engineering.

30

CAPTULO II

Reducir el tiempo y el costo de desarrollo y mantenimiento de los sistemas informticos. Mejorar la planificacin de un proyecto. Automatizar ciertos aspectos del proceso de produccin, documentacin, pruebas de errores, gestin, etc. En la actualidad existe un gran nmero de estas aplicaciones en el mercado, las cuales ayudan en el desarrollo de una cultura ingenieril nueva para muchas

empresas, e.g: Rational Rose, Umbrello, Visual Paradigm, Enterprise Architect. Enterprise Architect Enterprise Architect (EA) es una herramienta CASE utilizada para el diseo y construccin de sistemas de software, para el modelado de procesos de negocios, y para objetivos de modelado ms generalizados. EA provee una generacin poderosa de documentos y herramientas de reporte con un editor de plantilla completo, genera reportes detallados y complejos con la informacin y en el formato que se necesite. EA soporta generacin e ingeniera inversa de cdigo fuente para muchos lenguajes populares, incluyendo C++, C#, Java, Delphi, VB.Net, Visual Basic y PHP. Con un editor de cdigo fuente con resaltador de sintaxis incorporado, haciendo posible navegar y explorar su modelo de cdigo fuente en el mismo ambiente. Adems ayuda a visualizar las aplicaciones, puede modelar procesos de negocio, sitios Web, interfaces de usuario, redes, configuraciones de hardware, mensajes, etc. Fundamentacin del uso de Enterprise Architect Enterprise Architect proporciona un entorno de modelacin de carcter colaborativo y potenciado mediante UML 2.0, que abarca por completo el ciclo de desarrollo de un software, pues soporta ocho de los nueve diagramas estndares del UML (Sparx, 2008): diagrama de casos de uso, de clases, de secuencia, de colaboracin, de actividad, de estados, de implementacin, de despliegue y varios perfiles del UML. Permite Modelado de Datos, Ingeniera Directa de Base de Datos a DDL e ingeniera inversa de Base de Datos, Ingeniera de Cdigo Directa e Inversa (ediciones Corporativa y Profesional solamente) con soporte para ActionScript 2.0, Java, C#,

31

CAPTULO II

C++,

VB.Net,

Delphi,

Visual

Basic,

Python

PHP,

con

Facilidad

de

Importacin/Exportacin XMl7 y adems con corrector ortogrfico. 2.2. MATLAB MATLAB es el nombre abreviado de MATrix LABoratory. Es un programa para realizar clculos numricos con vectores y matrices. Como caso particular puede tambin trabajar con nmeros escalares, tanto reales como complejos, con cadenas de caracteres y con otras estructuras de informacin ms complejas. Una de las capacidades ms atractivas es la de realizar una amplia variedad de grficos en dos y tres dimensiones. MATLAB tiene tambin un lenguaje de programacin propio (Brazlez, et al., 2001). MATLAB es un sistema interactivo cuyo elemento bsico de trabajo es la matriz, con una caracterstica fundamental, y es que no necesita dimensionamiento. Esto le permite resolver varios problemas de computacin tcnica (especialmente aquellos que tienen formulaciones matriciales y vectoriales) en una fraccin de tiempo similar al que se gastara cuando se escribe un programa en un lenguaje no interactivo como C o FORTRAN. Este dispone tambin en la actualidad de un amplio abanico de programas de apoyo especializado, denominado Toolboxes, que extienden significativamente el nmero de funciones incorporadas en el programa principal. Estos Toolboxes cubren en la actualidad prcticamente casi todas las reas principales en el mundo de la ingeniera y la simulacin, destacando entre ellos los de: proceso de imgenes, seal, control robusto, estadstica, anlisis financiero, matemticas simblicas, redes neurales, lgica difusa, identificacin de sistemas, simulacin de sistemas dinmicos, COBRA, etc. Es un entorno de clculo tcnico, que se ha convertido en estndar de la industria, con capacidades no superadas en computacin y visualizacin numrica. Fundamentacin del uso del Matlab De forma coherente y sin ningn tipo de fisuras, integra los requisitos claves de un sistema de computacin tcnico: clculo numrico, grficos, herramientas para aplicaciones especficas y capacidad de ejecucin en mltiples plataformas. Esta
7

Especificacin para el intercambio de diagramas.

32

CAPTULO II

familia de productos proporciona un medio de carcter nico, para resolver los problemas ms complejos y difciles. MATLAB se ha desarrollado a travs de los aos con entradas provenientes de muchos usuarios, en los entornos universitarios, es la herramienta instructiva estndar para cursos avanzados e introductorios en matemticas, ingeniera y ciencias. En la industria MATLAB es la herramienta escogida para investigacin de alta productividad, desarrollo y anlisis. 2.3. Solver GLPK GLPK8 es un solver de programacin que se desarrolla bajo el amparo del Proyecto GNU. Est compuesto por una serie de rutinas escritas en el lenguaje de programacin C y organizadas en forma de una librera accesible. Este intenta dar solucin a problemas de programacin lineal (LP), programacin entera mixta (MIP) y otros problemas relacionados. GLPK es un paquete de software libre que puede ser redistribuido y/o modificado bajo los trminos de la licencia GNU, este incluye los siguientes componentes (GLPK Proyect, 2010): Implementacin del mtodo simplex. Implementacin del mtodo simplex exacto. Implementacin del mtodo primal-dual para puntos interiores. Implementacin del mtodo branch-and-cut. Interfaz de programacin de aplicaciones (API) Fundamentacin del uso de GLPK La interaccin con el solver se hizo por medio de una librera de enlace dinmico (DLL) denominada GlpkSharp desarrollada por Lionel Berton, que se distribuye bajo una licencia CeCILLv2 (Anexo II), para software libre. El propsito de esta es llamar desde C# las funciones de la librera del solver. Se emple GLPK para resolver el problema de optimizacin que supone el FBA, el cual deriva en un problema de programacin lineal, resuelto mediante el empleo del mtodo simplex. Adems de la eficiencia y rapidez con que se resuelve el costoso procedimiento, se brindan otras facilidades que resultan tiles: Nivel de tolerancia de error ajustable.
8

Del ingls GNU Linear Programming Kit.

33

CAPTULO II

Solucin cuantitativa y cualitativa del problema. Rpido acceso a las soluciones del problema primal y dual. Posibilidad de nomenclar las columnas. Formulacin del mtodo simplex para variables acotadas, por ambos extremos. Pero sobre todo la experiencia y el prestigio que este tiene resolviendo, durante aos problemas de optimizacin, donde tan importante es obtener las aproximaciones ms exactas posibles. 2.4. Requerimientos del sistema Dentro del Proceso de Desarrollo de Software, definir los Requisitos constituye un motor fundamental del proyecto, estos permiten guiar el desarrollo hacia el sistema correcto. Segn el glosario de trminos de la IEEE9 un requerimiento es: (1) Una condicin o necesidad de un usuario para resolver un problema o alcanzar un objetivo. (2) Una condicin o capacidad que debe estar presente en un sistema o componentes de sistema para satisfacer un contrato, estndar, especificacin u otro documento formal. (3) Una representacin documentada de una condicin o capacidad como en (1) o (2). Los requisitos funcionales, son las condiciones o capacidades que el sistema debe cumplir y para que queden correctamente definidos debe llegarse a un acuerdo entre el cliente y los desarrolladores sobre qu debe y qu no debe hacer el sistema (Jacobson, et al., 2000). Los requisitos no funcionales son las propiedades o cualidades que el producto de software debe tener, tienen que ver con caractersticas que de una u otra forma puedan limitar el sistema, como por ejemplo, el rendimiento, interfaces de usuario, mantenimiento, seguridad, portabilidad, estndares, etc. (Jacobson, et al., 2000) . 2.4.1. Requisitos Funcionales Tomando como punto de partida el Modelo de Domino, as como las entrevistas con los usuarios del sistema, se logr determinar todas las funcionalidades que se

deberan desarrollar. Estas se recogen en el siguiente listado. El sistema debe:


9

Del ingls Institute of Electrical and Electronics Engineers

34

CAPTULO II

R.F. 1 Leer datos del Sistema Biolgico desde el archivo SBML (.Xml). R.F. 1.1 Leer Nivel de SBML. R.F. 1.2 Leer Versin de SBML. R.F. 1.3 Leer Modelo Biolgico R.F. 1.3.1 Leer Id del Modelo. R.F. 1.3.2 Leer Nombre del Modelo. R.F. 1.3.3 Leer Compartimientos del Modelo. R.F. 1.3.3.1 Leer Id del Compartimiento. R.F. 1.3.3.2 Leer Outside del Compartimiento. R.F. 1.3.4 Leer Especies del Modelo. R.F. 1.3.4.1 Leer Id de la Especie. R.F. 1.3.4.2 Leer Nombre de la Especie. R.F. 1.3.4.3 Leer Carga de la Especie. R.F. 1.3.4.4 Leer boundaryCondition de la Especie. R.F. 1.3.4.5 Leer Estequiometra de la Especie. R.F. 1.3.4.6 Leer Compartimiento de la Especie. R.F. 1.3.5 Leer Reacciones del Modelo. R.F. 1.3.5.1 Leer Id de la Reaccin. R.F. 1.3.5.2 Leer Nombre de la Reaccin. R.F. 1.3.5.3 Leer Reversibilidad de la Reaccin. R.F. 1.3.5.4 Leer lista de Especies Reactantes de la Reaccin. R.F. 1.3.5.5 Leer lista de Especies Productos de la Reaccin.

35

CAPTULO II

R.F. 1.3.5.6 Leer Lmite Inferior de la Reaccin. R.F. 1.3.5.7 Leer Lmite Superior de la Reaccin. R.F. 1.3.5.8 Leer Coeficiente Objetivo de la Reaccin. R.F. 2 Normalizar el Id de las Especies del Modelo. R.F. 3 Normalizar el Id de las Reacciones del Modelo. R.F. 4 Construir la Matriz Estequeomtrica del Modelo. R.F. 5 Buscar las Reacciones de Intercambio del Modelo. R.F. 6 Buscar la Reaccin de Biomasa del Modelo. R.F. 7 Llevar las Reacciones a su forma matemtica. R.F. 8 Mostrar en pantalla resumen del Sistema Biolgico ledo. R.F. 8.1 Mostrar Nivel de SBML. R.F. 8.2 Mostrar Versin de SBML. R.F. 8.3 Mostrar Id del Modelo. R.F. 8.4 Mostrar Nombre del Modelo. R.F. 8.5 Mostrar cantidad de Compartimientos en el Modelo. R.F. 8.6 Mostrar cantidad de Especies en el Modelo. R.F. 8.7 Mostrar cantidad de Reacciones en el Modelo. R.F. 8.8 Mostrar cantidad de Reacciones de Intercambio en el Modelo. R.F. 8.9 Mostrar cantidad de elementos distintos de cero en la Matriz Estequeomtrica. R.F. 9 Mostrar en pantalla datos del Sistema Biolgico ledo. R.F. 9.1 Listar Compartimientos del Modelo. R.F. 9.1.1 Listar Id del Compartimiento.
36

CAPTULO II

R.F. 9.1.2 Listar Outside del Compartimiento. R.F. 9.1.3 Listar Especies por Compartimiento. R.F. 9.2 Listar Especies del Modelo. R.F. 9.2.1 Listar Id de la Especie. R.F. 9.2.2 Listar Nombre de la Especie. R.F. 9.3 Listar Reacciones del Modelo. R.F. 9.3.1 Listar Id de la Reaccin. R.F. 9.3.2 Listar Nombre de la Reaccin. R.F. 9.3.3 Listar Reversibilidad de la Reaccin. R.F. 9.3.4 Listar Lmite Inferior de la Reaccin. R.F. 9.3.5 Listar Lmite Superior de la Reaccin. R.F. 9.3.6 Mostrar forma matemtica de la Reaccin. R.F. 9.3.6 Listar Exchange Condition de la Reaccin. R.F. 10 Mostrar informacin detallada de las Reacciones del Modelo. R.F. 10.1 Salvar informacin detallada de las Reacciones, en formatos (.xlsx, .xls, .txt, .htm, .xml), en la ruta y con el nombre escogidos por el usuario. R.F. 11 Actualizar el Lmite Inferior de las Reacciones de Modelo. R.F. 12 Actualizar el Lmite Superior de las Reacciones del Modelo. R.F. 13 Habilitar rea de simulacin. R.F. 14 Listar substratos para reacciones de intercambio. R.F. 15 Listar reacciones de intercambio, con lmite inferior y concentracin. R.F. 16 Mostrar ayuda lateral para el rea de simulacin.

37

CAPTULO II

R.F. 17 Recibir del usuario las Reacciones de Intercambio con concentracin de substrato constante. R.F. 18 Quitar de la lista de Reacciones de Intercambio, las marcadas como constante. R.F. 19 Recibir del usuario Biomasa Inicial a emplear en la simulacin. R.F. 20 Recibir del usuario Intervalo de Tiempo a emplear en la simulacin. R.F. 21 Recibir del usuario Nmero de Intervalos a emplear en la simulacin. R.F. 22 Permitir al usuario cambiar la concentracin de substrato para las reacciones de intercambio. R.F.23 Correr la simulacin con los parmetros y restricciones establecidas por el usuario. R.F. 24 Mostrar los resultados de la simulacin en la misma medida en que se vayan produciendo estos. R.F. 25 Salvar los resultados de la simulacin, en formatos (.xlsx, .xls, .txt, .htm, .xml), en la ruta y con el nombre escogidos por el usuario. R.F. 26 Interrumpir la simulacin por solicitud del usuario [no implementado aun]. R.F. 27 Graficar la concentracin de Biomasa en el tiempo. R.F. 27.1 En grfico de barras. R.F. 27.2 En grfico de rea. R.F. 27.3 En grfico de columnas. R.F. 27.4 En grfico de line de pasos. R.F. 28 Graficar la concentracin de los substratos de las reacciones de intercambio en el tiempo. R.F. 28.1 En grfico de barras. R.F. 28.2 En grfico de rea.
38

CAPTULO II

R.F. 28.3 En grfico de columnas. R.F. 28.4 En grfico de line de pasos. R.F. 29 Salvar los grficos en formato (.jpg), en la ruta y con el nombre escogidos por el usuario. R.F. 30 Mostrar la Distribucin de Flujos para cada reaccin, en las iteraciones deseadas por el usuario. R.F. 31 Salvar la Distribucin de Flujos en pantalla, en formatos (.xlsx, .xls, .txt, .htm, .xml), en la ruta y con el nombre escogidos por el usuario. R.F. 32 Mostrar un Historial de Biomasa, con los resultados de las simulaciones corridas sobre un mismo modelo. R.F. 33 Salvar Historial de Biomasa, en formatos (.xlsx, .xls, .txt, .htm, .xml), en la ruta y con el nombre escogidos por el usuario. R.F. 34 Mostrar los substratos para las reacciones de intercambio y su concentracin en el tiempo (si al menos en una iteracin la concentracin fue mayor que cero). R.F. 36 Salvar la Matriz de Concentracin, en formatos (.xlsx, .xls, .txt, .htm, .xml), en la ruta y con el nombre escogidos por el usuario. R.F. 37 Abandonar el rea de simulacin. R.F. 38 Cerrar el Modelo abierto, dejando el sistema listo para cargar otro Modelo. R.F. 39 Guardar un historial con los links hacia los ltimos cuatro modelos abiertos. R.F. 40 Consultar la Ayuda.

39

CAPTULO II

2.4.2. Requisitos no Funcionales Tomando como punto de partida los requerimientos funcionales y a los usuarios finales, es decir lo que el sistema debe hacer y para quien debe hacerlo, se ha determinado cmo este debe comportarse. Las propiedades y cualidades que rigen este comportamiento, se relacionan a continuacin. Requisitos de Apariencia La aplicacin debe tener una apariencia atractiva, que llame la atencin del usuario dentro del competitivo mercado actual, al estar dirigida a un pblico no especializado en desarrollo de software, y ser de uso opcional, debe estar acorde con las tendencias actuales, para garantizarse una oportunidad dentro del no reducido grupo de personas que juzgan un software por su apariencia en primera instancia. La interfaz de usuario estar llamada a ser el gancho que nos permita demostrar otros valores agregados y funcionalidades de calidad del producto. Debe ser gil, legible y simple de usar, sencillo para la interaccin y sin ambigedades, consistente y a fin con los trminos de los conceptos manejados. Se cuidar porque la aplicacin sea lo ms interactiva posible. Requisitos de usabilidad Debe haber consistencia en sus interfaces y estas deben ser lo suficientemente comunicativas como para facilitar su uso y comprensin, al primer intercambio con el sistema. El usuario debe sentirse guiado y orientado en su uso. La respuesta a cualquier duda que sobre el uso de la aplicacin pueda surgir, estar a la distancia de un clic, gracias a una ayuda de escritorio lateral. Los usuarios que utilicen la aplicacin solo necesitarn los conocimientos informticos bsicos, y poseer una conceptualizacin de los temas que se muestran en la aplicacin. Polticos Culturales El sistema estar disponible en idioma Ingls, como parte de la plataforma computacional HYDRA, igualmente disponible en idioma Ingls.

40

CAPTULO II

Requisitos de software La aplicacin podr ser instalada, o ejecutada en su versin portable, sobre Windows. Son requeridos: 1. Microsoft .NET Framework 4 Client Profile, o superior. 2. Windows Installer 3.1 o superior.

Requisitos de Hardware Cualquier computadora que soporte el Framework 4 de .Net podr ser usada para correr la aplicacin, teniendo en cuenta que la rapidez con que se obtengan los resultados de la simulacin, depender de forma directa del poder de cmputo del procesador, as como de otras propiedades de la PC en cuestin. Requisitos de diseo e implementacin No hay restricciones de este tipo. La aplicacin se desarrollar en C# utilizando Microsoft Visual Studio 2010 y trabajando con el framework 4.0, por las posibilidades grficas que brinda. Documentacin El usuario podr auxiliarse de una ayuda del sistema en todo momento, la cual ser bastante visual y explicita, pensadas para usuarios que usen por primera vez la herramienta. 2.5. Trazabilidad Requerimiento Funcional- Caso de Uso La trazabilidad de los requerimientos se refiere a la documentacin de la vida de cada uno de ellos, y debe permitir seguir el historial desde su formulacin original. Incluso la implementacin de las caractersticas determinadas por los requerimientos deben, poder trazarse (Anexo III). Los requerimientos funcionales se describen mejor en forma de casos de uso, de manera que es posible trazar una relacin directa entre los requisitos y los casos de uso que los satisfarn. A continuacin se muestra, dividido en tres grupos, de acuerdo a la tarea que cumplen, dicha trazabilidad.
41

CAPTULO II

2.5.1. Cargar y Presentar el Modelo La Figura 2.1 muestra un grupo de requerimientos que pueden ser catalogados en cuanto a, que su cometido es cargar un Sistema Biolgico desde un archivo y presentrselo al usuario, dndole a este la posibilidad de explorarlo, salvar algunos aspectos y modificar otros, como los lmites de las reacciones. La trazabilidad hacia los casos de uso esta explcitamente sealizada.

Figura 2.1: Requerimientos- casos de uso que garantizan cargar y presentar el Modelo.

42

CAPTULO II

2.5.2. Navegabilidad Una vez cargado el modelo una serie de opciones se deben habilitar, la manipulacin de estas y la disponibilidad de ciertos datos es garantizados por los requerimientos y su consecuente realizacin en casos de uso que se muestra en la Figura 2.2. La ms importante de estas opciones es la que le permite al usuario llegar al rea de simulacin, y la necesaria preparacin de esta por parte del sistema.

Figura 2.2: Requerimientos- casos de uso que garantizan la navegabilidad. 2.5.3. Simulacin El objetivo primario del sistema que se propone es la realizacin de una simulacin dinmica del balance de flujos para una red metablica, los requerimientos que dan cumplimiento a este, y que proveen una serie de servicios agregados, disponibles solo despus de que la simulacin se realiz, se muestran en la Figura 2.3.

43

CAPTULO II

Figura 2.3: Requerimientos casos de uso que garantizan la simulacin.


44

CAPTULO II

2.6. Actores del Sistema Son identificados como actores los diferentes tipos de personas (o dispositivos) que utilizan el sistema o producto. Estos representan roles que personas (o dispositivos) juegan como impulsores del sistema. Definido ms formalmente, un actor es algo que se comunica con el sistema o producto y que es externo al sistema en s mismo (Riel, 1996). Actor Descripcin Toda persona que interacte con el Usuario sistema con el fin de obtener de este algn(os) beneficio(s), a travs del uso de sus servicios. Tabla 2.1: Actores del sistema. El sistema consta de un solo actor pues para el trabajo con la herramienta no se requiere de ningn tipo de administracin, distribucin de privilegios o proteccin de informacin. Este es un sistema para simular un proceso biolgico, y generar reportes. 2.7. Casos de Uso del Sistema La parte ms difcil de construir un sistema es precisamente saber qu construir. Ninguna otra parte del trabajo conceptual es tan difcil como establecer los requerimientos tcnicos detallados, incluyendo todas las interfaces con gente, mquinas, y otros sistemas. Ninguna otra parte del trabajo afecta tanto al sistema si es hecha mal. Ninguna es tan difcil de corregir ms adelante. Entonces, la tarea ms importante que el ingeniero de software hace para el cliente es la extraccin iterativa y el refinamiento de los requerimientos del producto (Frederik P, 1987). Los casos de uso son un mtodo que, justamente, ayudan al Ingeniero de Software a llevar adelante esta parte del desarrollo de un sistema de software. Un caso de uso es una secuencia de interacciones entre un sistema y alguien o algo que usa alguno de sus servicios.

45

CAPTULO II

2.7.1. Modelo de Casos de Uso del sistema El diagrama de casos de uso del sistema es un artefacto grfico en el que se representan los actores, los casos de uso del sistema y las asociaciones que existen entre actores y casos de uso. A continuacin se representa el Diagrama de Casos de Uso de HYDRA dFBA (Figura 2.4).

Figura 2.4: Diagrama de Casos de Uso del sistema.

46

CAPTULO II

2.7.2. Resumen de los casos de uso principales 2.7.2.1. Caso de Uso Cargar Sistema Biolgico. Caso de Uso Actor: Propsito: Cargar Sistema Biolgico Usuario (inicia) Obtener del Sistema Biolgico descrito en el archivo .XML los datos necesarios para realizar la simulacin. El caso de uso se inicia cuando el Usuario decide cargar un Sistema Biolgico, haciendo uso de alguna de las tres Resumen: opciones disponibles para ello. El sistema crea un modelo virtual con los datos que necesita y le informa al usuario que modelo fue ledo, finalizando as el curso normal de los eventos. Referencias: R.F 1 Precondiciones: R.F 8.

Ningn otro Sistema Biolgico puede estar abierto. Para usar la opcin Modelo Recientes, algn Modelo debe haber sido previamente abierto.

Actor: Propsito:

Usuario (inicia) Obtener del Sistema Biolgico descrito en el archivo .XML los datos necesarios para realizar la simulacin.

2.7.2.2. Caso de Uso Gestionar substratos con concentracin constante. Caso de Uso: Actor: Gestionar substratos con concentracin constante. Usuario (inicia) Establecer si alguna de las reacciones intercambio del modelo Propsito: tendr una concentracin de substrato, que no cambiar en el tiempo. Inicia cuando el usuario marca/desmarca alguna reaccin como constante, el sistema adiciona/elimina esta reaccin de Resumen: la lista de las reacciones de intercambios con concentracin de substrato constante, estas reacciones son retiradas de la lista de reacciones de intercambio con que se trabajar para
47

CAPTULO II

simular, finalizando el caso de uso. Referencias: Precondiciones: R.F 17, 18 El rea de simulacin tiene que encontrarse visible. Se adicion/removi alguna reaccin de la lista de reacciones Poscondiciones: de intercambio, por tener concentracin de substrato constante.

2.7.2.3. Caso de Uso Explorar Modelo. Caso de Uso: Actor: Propsito: Explorar Modelo Usuario (inicia) Visualizar en pantalla la informacin del Modelo. El caso de uso inicia cuando el usuario haciendo uso del Resumen: explorador del modelo selecciona alguna(s) de las opciones disponibles, finalizando el caso de uso con la correspondiente visualizacin de la informacin por parte del sistema. Referencias: R.F 9 Precondiciones: Algn Modelo tiene que encontrarse abierto, como resultado de haber ejecutado el caso de uso Cargar Sistema Biolgico. Poscondiciones: La informacin del Modelo es mostrada en pantalla al Usuario.

2.7.2.4. Caso de Uso Correr Simulacin. Caso de Uso: Actor: Propsito: Correr Simulacin Usuario (inicia) Obtener los resultados de la simulacin y habilitar el uso de los servicios que necesitan de esos. Se inicia cuando el usuario introduce los datos necesarios, Resumen: biomasa, intervalo de tiempo y nmero de intervalos y le solicita al sistema realizar la simulacin con los mismos, el

48

CAPTULO II

sistema verifica la validez e integridad de estos y comienza realizar la simulacin hasta el nmero de intervalos indicado por el usuario, o hasta que los nutrientes se agoten. Los resultados que se van obteniendo para cada iteracin son presentados dinmicamente al usuario. Una vez terminada la simulacin, por cualquiera de los motivos antes expuestos se le hace saber al usuario. Para finalizar el caos de uso el sistema activa las herramientas que harn uso de estos resultados. R.F 19 24.

Casos de uso Asociados: o Solicitar Matriz de Concentracin. Referencias: o Solicitar Distribucin de Flujos. o Consultar Grficos. o Salvar Datos. o Abortar Simulacin en Curso. Precondiciones: Poscondiciones: El rea de simulacin debe estar visible. Los vectores de tiempo y biomasa para la simulacin son obtenidos. La opcin para consultar la Matriz de concentracin es activada. La opcin para consultar la distribucin de flujos es activada. La opcin para consultar los grficos es activada. La opcin para salvar los datos de la simulacin es activada. Si es la primera ejecucin del caso de uso, la opcin para consultar el historial de biomasa es activada.

49

CAPTULO II

2.7.2.5. Caso de Uso Modificar lmites de la Reaccin. Caso de Uso: Actor: Propsito: Modificar lmites de la Reaccin Usuario (inicia) Modificar el(los) lmite(s) de una reaccin. Inicia cuando durante la ejecucin del caso de uso Explorar detalles de la reaccin, el usuario opta por cambiar algn(os) Resumen: de los lmites para la reaccin seleccionada, el sistema verifica que la(s) entrada(s) sea(n) correcta(s), modifica la informacin y notifica al usuario del xito de la operacin. R.F 11, 12 Referencias: Casos de uso Asociados: Explorar Modelo. Explorar detalles de la reaccin. Precondiciones: Poscondiciones: El sistema tiene que encontrarse ejecutando el caso de uso Explorar detalles de la reaccin. El(los) lmite(s) de la reaccin es (son) modificado(s).

2.8. Patrones de diseo El objetivo es agrupar una coleccin de soluciones de diseo que son vlidas en distintos contextos y que han sido aplicadas con xito en otras ocasiones. Un patrn de diseo es una solucin a un problema de diseo no trivial que es efectiva (ya se resolvi el problema satisfactoriamente en ocasiones anteriores) y reusable (se puede aplicar a diferentes problemas de diseo en distintas circunstancias). Durante el proceso de diseo de clases se descubrieron ciertos problemas, siendo necesario utilizar patrones de diseo, a continuacin se muestran los casos fundamentales:

50

CAPTULO II

Patrn: Tipo: Contexto: Problema:

Creador Creacional Todas las interfaces de usuario se crean a partir de la interfaz principal. Se requiere una clase que instancia el resto de las interfaces. Creando la interfaz de usuario StartF que tiene mtodos para crear todas las interfaces internas FluxF, GraphicsF, BiomassHistoryF, ConcentrationMatrixF, About, ConfigF.

Solucin:

Patrn: Tipo:

Fachada Estructural Algunas clases presentan mtodos complejos que se hace necesario

Contexto:

no darles visualizacin y enmascararlos en mtodos ms simples, es el caso de la clase SbmlIn.

Problema:

Se requiere simplificar los mtodos de la clase en un conjunto de mtodos sencillos. En el caso de la clase SbmlIn se le da visibilidad al mtodo readModel() , el cual instancia otros ms complejos, necesarios para leer el modelo en un conjunto.

Solucin:

Patrn: Tipo:

Experto Estructural Cada objeto realiza la funcionalidad de acuerdo a la informacin que

Contexto:

domina, asignndole la responsabilidad de cumplir una tarea a la clase con mayor informacin. Conserva el encapsulamiento, haciendo que los objetos se valgan de

Problema:

su propia informacin para hacer lo que se les pide. Mantener un bajo acoplamiento, creando un sistema robusto y de fcil mantenimiento. Las clases Specie, Reaction, Compartment, se encargan de la normalizacin de sus ocurrencias, mientras que la clase SbmlModel
51

Solucin:

CAPTULO II

se enfoca en aspectos que involucran a todas las partes del modelo, como la Matriz Estequeomtrica y las Reacciones de Intercambio.

Patrn: Tipo:

Bajo Acoplamiento Estructural Diseo de clases ms independientes, que reducen el impacto de los

Contexto:

cambios, y tambin ms reutilizables, que acrecientan la oportunidad de una mayor productividad. Se desea un grado moderado de acoplamiento entre las clases, para

Problema:

crear un sistema orientado a objetos, donde las tareas se realicen por colaboracin entre objetos conectados. Se indicaron tareas sencillas a objetos individuales, y tareas ms

Solucin:

complejas se realizaron por colaboracin entre varios objetos, obtenindose ndices de mantenimiento entre 60 y 86, profundidades de herencia entre 1 y 7.

2.9. Diagrama de Clases del Diseo (DCD) Una clase de diseo es una abstraccin sin costuras de una clase o construccin similar en la implementacin del sistema. (Jacobson, et al., 2000). Adems representa las especificaciones de las clases e interfaces software en una aplicacin. Entre la informacin general encontramos (Craig, 2004): Clases, asociaciones y atributos. Interfaces, con sus operaciones y constantes. Mtodos. Informacin acerca del tipo de los atributos. Navegabilidad. Dependencias A diferencia de las clases conceptuales del Modelo del Dominio, las clases de diseo de los DCD muestran las definiciones de las clases software en lugar de los conceptos del mundo real.
52

CAPTULO II

El primer paso en la creacin de los DCD es identificar aquellas clases que participan en la solucin del software. Los diagramas muestran cmo se realiza la comunicacin entre las interfaces y los datos. En ellos aparecen las diferentes clases que define UML, as como las relaciones existentes entre ellas (herencia, agregacin asociacin. etc.). El siguiente diagrama (Figura 2.5) muestra cmo ser construido el sistema que se analiza.

Figura 2.5: Vista general del DCD de la aplicacin HYDRA dFBA


53

CAPTULO II

2.9.1. DCD del paquete Modelo La Figura 2.6 muestra el diagrama de clases correspondiente al paquete que contiene todas las clases necesarias para crear un Modelo, estos son los datos que obtiene el sistema despus de leer un archivo, los cuales son necesarios para realizar la simulacin.
class Mo... 1.. * 1

1 1.. * 1.. *

1 1 1.. * * 1.. * 1 1 *

Figura 2.6: DCD que conforman un Modelo.

54

CAPTULO II

2.9.2. DCD del paquete Simulacin Las clases que se encargan de la simulacin y el curso que esta sigue son mostradas en la Figura 2.7. Los datos para la simulacin son tomados del Modelo, representado en el epgrafe anterior, y de los parmetros y restricciones entradas por el usuario.
class Simulation

call

call

library GLPKSharp.dll

build

build build

build

Figura 2.7: DCD para la Simulacin.

55

CAPTULO II

2.9.3. DCD del paquete Presentacin Las clases que se encargan de la presentacin tanto del modelo como de los resultados son mostradas en la Figura 2.8.
class Presentation

call

call call

call

call

Figura 2.8: DCD para la presentacin de los datos.


56

CAPTULO II

Conclusiones del captulo Se han descrito y fundamentado la metodologa de desarrollo y las herramientas empleadas para el diseo de la aplicacin. Han quedado definidas las caractersticas ms importantes del sistema y los servicios que este debe brindar, los cuales sern posteriormente implementados. Se definieron los requerimientos, funcionales y no funcionales, se realiz su trazabilidad hacia los casos de uso del sistema y se designaron los actores. La modelacin realizada ha facilitado la mejor comprensin de las necesidades de automatizacin del sistema, expresado sobre todo en los diagrama de clases del diseo.

57

CAPTULO III

CAPTULO III: IMPLEMENTACIN DE LA SOLUCIN PROPUESTA Introduccin El presente captulo consta de once epgrafes a travs de los cuales se describen las caractersticas del XML as como la especificacin SBML, formato desde donde sern obtenidos los modelos que se trabajaran, son abordados la plataforma .NET,

Microsoft Visual Studio, y el lenguaje C#, usado para implementar la aplicacin. Aparecen las consideraciones que se tuvieron en cuenta durante el desarrollo del sistema, respecto a los estndares de cdigo, el diseo e implementacin de la interfaz y el tratamiento de excepciones. Siguiendo la metodologa escogida, son obtenidos los diagramas de Componentes y de Despliegue. 3.1. Lenguaje de Marcado Extensible (XML) XML no ha nacido slo para su aplicacin en Internet, sino que se propone como un estndar para el intercambio de informacin estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de clculo y casi cualquier cosa imaginable. XML es una tecnologa sencilla que tiene a su alrededor otras que la complementan y la hacen mucho ms grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la informacin de una manera segura, fiable y fcil. Estructura de un documento XML La tecnologa XML busca dar solucin al problema de expresar informacin estructurada de la manera ms abstracta y reutilizable posible. Que la informacin sea estructurada quiere decir que se compone de partes bien definidas, y que esas partes se componen a su vez de otras partes. Estas partes se llaman elementos, y se las seala mediante etiquetas. Documentos XML bien formados Los documentos denominados como "bien formados" (del ingls well formed) son aquellos que cumplen con todas las definiciones bsicas de formato y pueden, por lo

58

CAPTULO III

tanto, analizarse correctamente por cualquier analizador sintctico (parser) que cumpla con la norma. Los documentos han de seguir una estructura estrictamente jerrquica con lo que respecta a las etiquetas que delimitan sus elementos. Una etiqueta debe estar correctamente incluida en otra, o sea correctamente anidadas. Los elementos con contenido deben estar correctamente cerrados. Los documentos XML slo permiten un elemento raz del que todos los dems sean parte. Los valores atributos en XML siempre deben estar encerrados entre comillas simples o dobles. El XML es sensible a maysculas y minsculas. Las construcciones como etiquetas, referencias de entidad y declaraciones se denominan marcas; son partes del documento que el procesador XML espera entender. El resto del documento entre marcas son los datos "entendibles" por las personas. La importancia de XML en la informtica actual est fuera de cualquier tipo de duda. Dentro de la plataforma .NET XML tiene un papel principal, gran parte de la arquitectura de .NET trabaja internamente con XML, ADO.NET, SOAP, ASP.NET. 3.2. Lenguaje de Marcado para Sistema Biolgicos (SBML) Las representaciones de modelos son tiles para diferentes propsitos. Los diagramas grficos de procesos biolgicos son usados para la presentacin visual a las personas, pero al nivel de software, un formato diferente se necesita para cuantificar a un modelo al punto que pueda simularse y analizarse. Es entonces donde el SBML juega su papel. SBML son las siglas en ingls de Systems Biology Markup Language (lenguaje de marcado para sistemas biolgicos). Es el nombre de un formato libre y abierto, basado en XML que se utiliza para representar modelos cuantitativos de inters biolgico, que aboga por la especificacin consistente de los mismos, facilitando el desarrollo de software y el intercambio de modelos (Hucka, et al., 2008). SBML puede representar redes metablicas, rutas de sealizacin celular, redes de regulacin gnicas, y muchas otras clases de sistemas. WebServices,

59

CAPTULO III

SBML no constituye un esfuerzo por definir un lenguaje universal para representar modelos cuantitativos, es ms un formato comn intermedio, una lengua franca, que habilita la comunicacin de los aspectos ms esenciales de los modelo. La adopcin del SBML ofrece variados beneficios, incluidos: (1) El uso de herramientas mltiples, sin necesidad de volver a escribir los modelos para cada una de ellas, (2) habilitndolos para ser compartidos y publicados, de forma que otros investigadores los puedan usar, incluso en ambientes de software diferentes, (3) asegurando la supervivencia de los modelos, y el esfuerzo intelectual puesto en estos, ms all de la vida del software usado para crearlos (Sbml Web Site, 2009). Los Componentes de un Modelo La definicin de un modelo SBML nivel dos consta de las siguientes listas de componentes, siendo estas opcionales (Sbml Web Site, 2009): Definicin de Funcin: Una funcin matemtica que puede ser en todo el modelo. Definicin de Unidad: Designacin de una nueva unidad de medida, o redefinicin de una ya existente. Tipo de Compartimiento: Define el tipo de el/los recipientes donde las sustancias qumicas estarn localizadas. Tipo de Especies: Define el tipo de entidad que participa en las reacciones qumicas, por lo general iones y molculas, otras pueden ser agregadas. Compartimiento: Recipiente de un tipo particular, y tamao finito, donde pueden localizarse las especies de un SBML. Especies: Concentracin de Especies del mismo tipo y localizadas en el mismo Compartimiento. Parmetro: Es una cantidad, con un nombre genrico, puede designar indistintamente constantes o variables, puede abarcar todo el modelo, o solo una reaccin en especfico. Regla: Expresin matemtica agregada las reacciones definidas en un modelo. Restriccin: Medio para detectar condiciones fuera de los lmites durante la simulacin.

60

CAPTULO III

Reaccin: Una declaracin que describe alguna transformacin, transporte o proceso obligatorio que pueden cambiar la cantidad de una o ms especies. Evento: Una declaracin que describe un cambio instantneo, discontinuo en un juego de variables de cualquier tipo.

3.3. Plataforma .NET .NET es un framework de Microsoft que hace nfasis en la transparencia de redes, con independencia de plataforma de hardware y que permita un rpido desarrollo de aplicaciones. Basado en ella, la empresa intenta desarrollar una estrategia horizontal que integre todos sus productos, desde el sistema operativo hasta las herramientas de mercado. .NET podra considerarse una respuesta de Microsoft al creciente mercado de los negocios en entornos Web, como competencia a la plataforma Java de Oracle Corporation y a los diversos frameworks de desarrollo web basados en PHP. Su propuesta es ofrecer una manera rpida y econmica, a la vez que segura y robusta, de desarrollar aplicaciones y/o soluciones, permitiendo una integracin ms rpida y gil entre empresas y un acceso ms simple y universal a todo tipo de informacin desde cualquier tipo de dispositivo. La plataforma .NET proporciona (Recio, et al., 2007): Interoperabilidad transparente entre tecnologas. Fcil migracin desde tecnologas existentes. Un completo soporte de tecnologas de Internet independientes de la plataforma y basadas en estndares, incluyendo HTTP, XML y SOAP10. Algunos de los lenguajes desarrollados para el marco de trabajo .NET son: C#, Visual Basic, Delphi, C++, J#, Perl, Python, Fortran, Prolog (existen al menos dos implementaciones, el P# y elProlog.NET), Cobol y PowerBuilder (Microsoft Corporation, 2010). Visual Studio .NET es la herramienta definitiva para la rpida generacin de aplicaciones .NET a escala empresarial y aplicaciones de escritorio de alto rendimiento, es un entorno de desarrollo integrado para sistemas operativos Windows. Permite a los desarrolladores crear aplicaciones de escritorio, sitios y
10

Del ingls Simple Object Access Protocol

61

CAPTULO III

aplicaciones web, as como servicios web en cualquier entorno que soporte la plataforma .NET (a partir de la versin 2002). As se pueden crear aplicaciones que se intercomuniquen entre estaciones de trabajo, pginas web y dispositivos mviles. 3.3.1. Lenguaje de programacin C Sharp (C#) El lenguaje de programacin C#.NET es una actualizacin tcnica de otros lenguajes de programacin ms antiguos como lo son el C, C++, Java, Visual Basic, Delphi, etc. (Hernndez Daz, 2011) . C# es un lenguaje orientado a objetos, desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que despus fue aprobado como un estndar por la ECMA11 e ISO. Su sintaxis bsica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET, similar al de Java aunque incluye mejoras derivadas de otros lenguajes (entre ellos Delphi) (Hernndez Daz, 2011) . Algunas caractersticas de C# son: Provee el beneficio de un ambiente elegante y unificado. No maneja apuntadores, para emular la funcin de los apuntadores se utilizan delegates lo cul provee las bases para el .NET event model. La Plataforma .NET provee un colector de basura que es responsable de administrar la memoria en los programas C#. El manejo de errores est basado en excepciones. Soporta los conceptos como encapsulamiento, herencia y polimorfismo de la programacin orientada a objetos. Soporta los modificadores de acceso private, protected, public y agrega un cuarto modificador internal. Es orientado a objetos. Elimina los ficheros de cabecera. Es orientado a componentes, la propia sintaxis de C# incluye elementos propios del diseo de componentes que otros lenguajes tienen que simular

11

Del ingls European Manufacturers Association.

62

CAPTULO III

Fundamentacin del Uso de C# La perfeccin de los lenguajes de programacin avanza a grandes pasos, pero teniendo en cuenta las razones que a continuacin se exponen se escogi C# como lenguaje para la implementacin de HYDRA dFBA: Da soporte para lectura y escritura de documentos XML, as como para su transformacin, filtrado, integracin con bases de datos y creacin de servicios Web entre otras tareas ms complejas. Recoleccin de basura automtica. Eliminacin del uso de punteros. No hay necesidad de declarar funciones y clases antes de definirlas. Soporta definicin de clases dentro de otras. Todos los valores son inicializados antes de ser usados (automticamente se inicializan al valor estandarizado, o manualmente se pueden inicializar desde constructores estticos). No se pueden utilizar valores no booleanos para condicionales. Es mucho ms limpio y menos propenso a errores. Concepto formalizado de los mtodos get y set, con lo que se consigue cdigo mucho ms legible. Con respecto a algunos lenguajes como por ejemplo Java el rendimiento es, por lo general, mucho mayor. Tipos de datos: en C# existe un rango ms amplio y definido de tipos de datos que los que se encuentran en C, C++ o Java. Propiedades: un objeto tiene propiedades, y debido a que las clases en C# pueden ser utilizadas como objetos, C# permite la declaracin de propiedades dentro de cualquier clase. Es orientado a objetos, de una forma ms pura y clara que en otros lenguajes como C++. Permite controlar la aparicin de errores durante la ejecucin de la aplicacin capturando y haciendo tratamiento de las excepciones (try - catch). Permite personalizar los mensajes que brinda el sistema en dependencia de las necesidades.

63

CAPTULO III

Un entorno completamente visual es proporcionado para la creacin de las interfaces, de una forma rpida y sencilla y con una apariencia visual muy profesional, adems de brindar de una serie de imprescindibles para esta tarea. 3.4. Implementacin de la interfaz de usuario El diseo de la interfaz de usuario es una tarea que ha adquirido relevancia en el desarrollo de un sistema informtico. La calidad de la interfaz de usuario puede ser uno de los motivos que conduzca a un sistema al xito o al fracaso (Meyer, 1998). Con la implementacin de la interfaz para el sistema que tratamos, se persigue darle cumplimiento a un grupo de aspectos tales como: consistencia, retroalimentacin, minimizar posibilidades de error, proveer recuperacin de errores, y minimizar memorizacin. Se ha propuesto para la presente aplicacin una interfaz sencilla pero atractiva, que cumpla con los estndares para las herramientas de la plataforma HYDRA, y que a la vez posea un estilo propio, que la identifique y proporcione una vista agradable e informativa. Para lograr estos propsitos se tuvieron en cuenta algunos elementos como las propiedades de los colores y de la tipografa. Se utilizaron los colores claros, donde predominan el blanco, el gris y diferentes tonos de verde, siendo este el color caracterstico. Se hizo uso de los contrastes para resaltar elementos importantes, y de los degradados, con fines estticos. Toda la informacin es mostrada en listas, tablas o grficos, ordenada lgica, jerrquica y/o alfabticamente, con los identificativos correspondientes, en color negro, y con fondo blanco, con un formato de fuente estndar para todos los componentes: letra normal, tamao 8.5pt. Los distintos componentes utilizados en la aplicacin fueron cuidadosamente seleccionados de manera que cumplieran con el diseo de interfaz que se deseaba mostrar y le fueron agregadas todas las funcionalidades requeridas por el usuario del sistema. Cada componente mantiene informado al usuario en cuanto a su uso y estado mediante los llamados Tooltips12, que guiarn al usuario inexperto en las funcionalidades de la aplicacin. Se hace un uso intensivo de una barra de estado
12

componentes en la pestaa de Herramientas,

Microsoft Sans Serif, tipo

Consejos de herramientas que se visualizan al detener el mouse sobre ellas.

64

CAPTULO III

con la intensin de mantener informado al usuario del estado y el progreso de operaciones que por su costo computacional, pueden tomar tiempo. Se cuenta con un logotipo propio, especficamente diseado para la aplicacin, el cual se muestra en la interfaz inicial. Leer grandes archivos, visualizar considerables cantidades de informacin, y la realizacin de costosos clculos matemticos, son necesarios para proveer los servicios que brinda la herramienta. Por lo anterior se hizo imprescindible el empleo de Threads13 para mantener funcional la interfaz cuando alguna de estas tareas est en curso. De este modo los resultados de la simulacin son mostrados a medida de que se van obteniendo, se evitan los estados inconscientes y los bloqueos del sistema y se le otorga mayor interactividad y retroalimentacin a la solucin. Los errores que pudiera cometer el usuario al introducir los datos en el sistema, son validados directamente en el momento de la captacin, haciendo las aclaraciones pertinentes a travs de mensajes en lenguaje natural. En el sistema se impide la ocurrencia de muchos de los errores de entrada de datos validndolos por interfaz. 3.4.1. Interfaz de usuario Todas las ventanas y/o interfaces muestran una estructura visual similar, fcil de manejar para los usuarios, altamente especializadas en el servicio que proveen y consecuentes con los principios de diseo anteriormente establecidos. Para todas las interfaces as como la ayuda y cualquier comunicacin con el usuario se hace empleo del idioma Ingles.

13

Del ingls hilo, en programacin hilos de ejecucin.

65

CAPTULO III

3.4.2 Interfaz Inicial Al iniciarse el sistema se muestra la interfaz inicial (Figura 3.1), desde la cual ser posible cargar un Modelo, ya sea mediante el Men o la Barra de Herramientas Estndar. Si algn modelo fue exitosamente cargado con anterioridad, este se muestra en el Historial de Modelos, facilitando la operacin. La Barra de Estado servir de retroalimentacin al usuario durante el proceso de cargado de un Modelo, y el Explorador del Modelo estar habilitado en el instante en que el proceso termine, permitiendo la navegacin dentro del mismo. La Ayuda Lateral, describe estas y otras opciones, y la Barra de Herramientas Especializada estar deshabilitada hasta que alguna simulacin se haya completado.
Men Barra Herramientas Estndar Barra Herramientas Especializada

Historial Modelos

Explorador del Modelo Ayuda Lateral

Barra de Estado

Figura 3.1: Interfaz inicial HYDRA dFBA.

66

CAPTULO III

3.4.3 Interfaz para la presentacin del Modelo En la Figura 3.2 se muestran los componentes empleados para mostrar al usuario la informacin del Modelo, esta se hace visible al terminar de ejecutarse la lectura de algn Modelo. Se encuentra habilitado el Explorador de Modelo que permite navegar dentro de este, a travs de los Compartimientos, las Especies o las Reacciones del mismo (Anexo VII). Se muestra un resumen cuantitativo e informacin especfica. Se brinda una va para llegar hasta el rea de simulacin (Figura 3.3).

Resumen Modelo rea de Simulacin

Explorador del Modelo

Figura 3.2: Interfaz una vez cargado el Modelo. 3.4.4. Interfaz del rea de simulacin Una vez cargado un Modelo se puede acceder al rea de simulacin (Figura3.3) la cual brinda las herramientas y la informacin requeridas para esta tarea. Es mediante esta que el usuario introduce los parmetros iniciales, biomas, duracin del intervalo de tiempo y cantidad de intervalos; y cualquier restriccin adicional sobre los lmites y/ o la concentracin de los substratos de intercambio. A partir de esta interfaz, y despus de haber ejecutado el anlisis simulado, se puede acceder a una serie de herramientas (Anexo VIII) tiles al usuario. Se cuenta con una ayuda lateral especializada en esta vista as como la posibilidad de navegar hacia la pantalla anterior (Figura 3.2). La Barra de Estado es igualmente empleada en esta interfaz.
67

CAPTULO III

Parmetros Iniciales

Barra Herramientas de Simulacin

Resultados

Substratos

Lmites y Concentraciones

Figura 3.3: Interfaz para la simulacin del anlisis dinmico. 3.4.5. Otras interfaces Despus de finalizada alguna simulacin se cuenta con la informacin necesaria para habilitarle al usuario un grupo de herramientas que le sern de gran utilidad en su trabajo, estas son: rea de Grficos, Distribucin de Flujos, Historial de Biomasa y Matriz de Concentraciones (Anexo VIII). La va para acceder a estas es a travs del Men Herramientas (Figura 3.5). (Figura 3.4) o de la Barra Herramientas Especializadas

Figura 3.4 Men Herramientas.

Figura 3.5: Barra Herramientas Especializada.


68

CAPTULO III

3.5. Tratamiento de errores El sistema ha sido diseado sobre la base de: los errores mejor evitarlos que tratarlos. No obstante la solucin cuenta con la capacidad para lidiar con estos en caso de que ocurran. Siendo consecuentes con lo anterior: Se aplic un filtro en los cuadros de dilogos empleados para abrir archivos, de modo que solo muestre los .xml. Los diferentes componentes solo son activados cuando se cuenta con la informacin que deben mostrar o q necesitan para operar adecuadamente. Se examinan cuidadosamente todos los elementos que conforman al Sistema Biolgico antes de crear el Modelo y habilitrselo al usuario. Se concibi un historial de archivos, que se crea dinmicamente y solo almacena aquellos cuya valides fue aceptada. Cada uno de los campos que el usuario pueda usar para entrar informacin, tienen habilitados solo los caracteres vlidos y acordes con esta informacin. Toda la informacin recibida del usuario es comprobada, antes de usarla en las simulaciones y/o al sobrescribirla al Modelo. El sistema cuenta con todo un tratamiento y manejo de excepciones. Los mensajes de error (Figura 3.6) usan el formato estndar de Windows, el identificativo de error, una cruz roja, el texto con la informacin del error y alguna posible solucin, y el aviso acstico.

Figura 3.6: Interfaz de tratamiento de excepciones. 3.6. Estndares de Codificacin Si bien es cierto que programar es una tarea ardua, entender, actualizar y/o extender lo que otro programador ha realizado con anterioridad, puede ser incluso ms engorroso y en ocasiones imposible.

69

CAPTULO III

El uso de un estilo uniforme facilita, la lectura del cdigo por parte de los programadores, particularmente en las etapas de mantenimiento y los ciclos de depuracin de errores. Esto se traduce en un evidente aumento de la eficiencia. El uso de estndares est justificado porque la mente humana se adapta a ellos y encuentra rpidamente la manera de reconocer patrones familiares, asimilando de forma rpida y sin grandes esfuerzos su significado. En el sistema implementado se le otorg esa uniformidad al cdigo aplicando los siguientes estndares: Los nombres de las variables siempre en minscula. Si el nombre fuere compuesto la segunda palabra comienza en mayscula, sin caracteres auxiliares para separarlas. Los nombres de los mtodos comenzando en mayscula siempre excepto cuando es un nombre compuesto, en tal caso se aplica el procedimiento inverso al de las variables. Las propiedades con letra inicial mayscula as sea compuesto o no el nombre. Ninguno de los anteriores se compone de ms de dos palabras, en idioma ingls, y siempre lo ms cercano posible a la informacin que almacenan, que representan o a la funcin que realizan. Al interior de cada clase el cdigo se agrupa en regiones, denotadas segn la informacin que guardan, Fields, Properties, Methods, Events, etc. El cdigo se encuentra ampliamente comentariado, sobre todo los

procedimientos ms complicados y los ms abstractos. Otros conceptos como el espacio entre operadores, la organizacin de las llaves, parntesis y corchetes; interlineado y signos de puntuacin, son manejados por

Microsoft Visual Studio 2010.

70

CAPTULO III

3.7. Modelo lgico de datos El modelo lgico de los datos se muestra a travs del diagrama de clases persistentes (Figura 3.7), representando los objetos que perduran en el tiempo y las relaciones entre ellos.
class Logical 1.. * 1

1.. *

1.. * 1 1

1 1.. * 1 * 1.. * 1 *

1.. *

1.. * 1.. * 1 1

Figura 3.7: Vista del Modelo Lgico de Datos

71

CAPTULO III

3.8. Modelo Fsico de los Datos Dado que HYDRA dFBA no contempla el uso de una base de datos para el almacenamiento y/o lectura de la informacin, se explica detalladamente la estructura fsica que tiene un archivo .xml con datos de un Sistema Biolgico. Como se puede ver en la Figura 3.8 se cuenta con el nivel y la versin de SBML empleado para estructurar el archivo, cada archivo SBML contiene informacin de un Modelo, el cual es identificado por Id y Nombre. Principalmente un Modelo contiene una lista de Compartimientos una de Especies y otra de Reacciones. Cada una de estas cuenta con un identificativo (Id), y atributos especficos Las Reacciones a su vez estn conformadas por una lista de Reactantes, una de Productos y otra de Parmetros. Los dos primeros no son ms que Especies, denotadas por su Id y un atributo nuevo que es la Estequiometra, la cual indica la cantidad de estos que est presente en la expresin que rige la reaccin . Los Parmetros incluyen a los lmites, inferiores y superiores y al coeficiente objetivo, que a los fines de nuestro sistema siempre sealar a la ecuacin de Biomasa.

72

CAPTULO III

Figura 3.8: Estructura fsica del archivo xml que contiene la informacin sobre el Sistema Biolgico.

73

CAPTULO III

3.9. Modelo de Implementacin El modelo de implementacin describe cmo los elementos del modelo de diseo, se implementan en trminos de componentes. Describe tambin cmo se organizan los componentes de acuerdo con los mecanismos de estructuracin disponibles en el entorno de implementacin, en el lenguaje o lenguajes de programacin utilizados y cmo dependen los componentes unos de otros (Rumbaugh, et al., 2000). El modelo de componentes del sistema propuesto es el siguiente:

Figura 3.9: Modelo de Componentes para HYDRA dFBA.

74

CAPTULO III

3.10. Modelo de Despliegue El modelo de despliegue define la arquitectura fsica del sistema por medio de nodos interconectados. Estos nodos son elementos de hardware sobre los cuales pueden ejecutarse los elementos de software. (Rumbaugh, et al., 2000).En la Figura 3.10 se muestra el modelo de despliegue para el sistema que se analiza.

Figura 3.10: Modelo de despliegue HYDRA dFBA En el nodo Computadora Personal (PC) se ejecuta el proceso HYDRA dFBA.exe, nombre que recibe el ejecutable de la herramienta. Ntese que se cuenta con un solo nodo, dado que el sistema no requiere de conectividad. Otros elementos presentes son el archivo .xml con la informacin del Sistema Biolgico, el cual ser ledo por el sistema, los archivos que pueden ser salvados desde el software, ya sean imgenes o datos y el fichero que se encarga de almacenar el historial de modelos cargados.

75

CAPTULO III

3.11. Implementacin de la Ayuda Toda aplicacin informtica debe contar con una ayuda que guie al usuario inexperto en su uso, para de esta forma facilitar el trabajo con la herramienta. La ayuda de HYDRA dFBA fue implementada con Help Maker. Esta es una herramienta de gran utilidad para los desarrolladores de software, posee multitud de caractersticas y es sencilla de usar. Entre las caractersticas de Help Maker, se destaca su capacidad para generar archivos de diversos tipos (WinHelp, HTML Help, Website Help y PDF), insertar hipervnculos, imgenes, objetos OLE, etc. La Ayuda del sistema est diseada mediante tpicos que corresponden con las opciones de la aplicacin (Figura 3.11), en cada uno de estos tpicos se realiza una descripcin detallada del funcionamiento del sistema, y al igual que la interfaz est disponible en idioma Ingles.

Figura 3.11: Distribucin de los temas de la Ayuda

76

CAPTULO III

Conclusiones del captulo Ha sido desarrollado el flujo de trabajo de Implementacin para el sistema HYDRA dFBA basado en la metodologa RUP, describindose las tecnologas y herramientas empleadas y obtenindose los correspondientes artefactos. El sistema qued expresado en trminos de componentes, as como las relaciones entre cada uno de estos, y el nodo donde sern ejecutados, debido a que no se requiere conectividad. Se definieron e implementaron los estndares para la interfaz grfica de usuario, la codificacin y el tratamiento de errores. Se implement la ayuda de la aplicacin.

77

CONCLUSIONES

CONCLUSIONES En la bibliografa consultada se evidenci que si bien hace diez aos que se cuenta con la extensin dinmica para el FBA (dFBA), esta es usada a diario por la comunidad cientfica, siendo una til herramienta para el trabajo con redes metablicas. En el estudio que se realiz de los sistemas afines se encontr que, en contraste con su probada utilidad, no existe un gran nmero de herramientas que incorporen el dFBA entre sus prestaciones, a excepcin de COBRA Toolbox, no fue posible encontrar otro que permitiera aplicarlo, al menos no en su estado puro. Siguiendo la gua del Rational Unified Process (RUP) y haciendo uso del Unified Modeling Language (UML) se dise y model un proyecto de software orientado a obtener una herramienta computacional para simular en redes metablicas el dFBA, mediante una aproximacin esttica (SOA). Como resultado del proyecto de software se desarroll y obtuvo una herramienta computacional que permite simular en redes metablicas el dFBA, mediante una aproximacin esttica (SOA). Para la creacin de la interfaces grficas de usuario (GUI) se aplicaron principios de diseo que garantizaron un producto atractivo, grfico, amigable, interactivo, etc., que en conjuncin con la ayuda y el manual de usuarios acercan el software a sus usuarios finales. Atendiendo a los costos y al tiempo de produccin, se puede afirmar que el desarrollo del software fue factible.

78

RECOMENDACIONES

RECOMENDACIONES Luego de hacer un anlisis del trabajo desarrollado se propone lo siguiente: Ampliar las funcionalidades de la herramienta con la implementacin de la aproximacin dinmica (DOA) para el dFBA. Extender los servicios prestados para modelos en formato de texto (.txt), que son ampliamente usados.

79

REFERENCIAS BIBLIOGRFICAS

REFERENCIAS BIBLIOGRFICAS Bajic, V. B., et al. (2003). From informatics to bioinformatics. Proceedings of the first AsiaPacific bioinformatics conference on bioinformatics, Adelaide. Borodina I, Nielsen J. 2005. From genomes to in silico cells via metabolic networks. s.l. : Curr Opin Biotechnol, 2005. Brazlez, Alfonso, Garca de Jaln, Javier y Rodrguez, Jos Ignacio. 2001. Aprenda Matlab. Madrid : Universidad Politcnica de Madrid, 2001. Craig, Larman. 2004. UML y Patrones Introduccin al anlisis y diseo orientado a objetos (I, II). La Habana : Editorial Flix Varela, 2004. Eknoyan, G. 1999. Santorio Sanctorius (1561- 1636) - Founding father of metabolic balance studies. 1999. Enciclopedia Mdica. 2006. Enciclopedia Mdica. s.l. : Medline Plus, 2006. Fell, D. 1996. Understanding the Control of Metabolism. Protland Press. 1996. Fowler, Martin y S, K. 1999. UML Distilled Second Edition A Brief Guide. 1999. Frederik P, Brooks. 1987. No Silver Bullet. Essence and Accidents in Software Engineering. s.l. : IEEE Computer, 1987. GLPK Proyect. 2010. Reference Manual for GLPK Version 4.45. 2010. Hernndez Daz, Ana Beatriz . 2011. Sistema Automatizado para la Gestin de Expedientes de Profesores. Pinar del Ro : UPR HERMANOS SAZ MONTES DE OCA, 2011. Hernndez, Enrique. El Lenguaje Unificado de Modelado (UML). Hucka, Michael; Hoops, Stefan y Keating, Sarah Le. 2008. Nature Precedings. Nature Precedings. [En lnea] 2008. [Citado el: 14 de 12 de 2011.] http://dx.doi.org/10.1038/npre.2008.2715.1. 2008.2715.1.

80

REFERENCIAS BIBLIOGRFICAS

Jacobson, Ivar; Booch, Grady y Rumbaugh, James. 2000. El Proceso Unificado de Desarrollo de Software. 2000. Kompala, D.S. 1984. Bacterial growth on multiple substrates. Experimental verification of cybernetic models. Ph.D. thesis. Purdue University,West Lafayette, IN. 1984. Lpez, M, Romero, G. R y Vega, M. 2007. Informe de vigilancia tecnolgica. Espaa : s.n., 2007. Mahadevan, Radhakrishnan; Edwards, Jeremy S. y Doyle, Francis J. 2002. Dynamic Flux Balance Analysis of Diauxic Growth in Escherichia coli. Biophysical Juornal Volume 28. 09 de 2002. McDaniel R, Weiss R. 2005. Advances in synthetic biology: on the path from prototypes to applications. Biotechnology, 16: 476-83. Mesarovic, M. D. 1968. Systems Theory and Biology-View of a Theoretician, in System Theory and Biology. s.l. : M. D. Mesarovic, 1968. Metabolism. The Online Etymology Dictionary. [En lnea] [Citado el: 25 de 10 de 2011.] Meyer, B. 1998. Construccin de software orientado a objetos. s.l. : Prentice-Hall, 1998. Microsoft Corporation. 2010. MSDN. [En lnea] Microsoft Corporation, 2010. [Citado el: 25 de Enero de 2012.] http://msdn.microsoft.com/es-s/vcsharp/default.aspx. Molpeceres, Alberto. 2002. Proceso de Desarrollo: Rup, XP y FDD. 2002. National Center for Biotechnology Information. 2001. Bioinformatic. 2001. Cuthrell, J. E y Biegler, L. T. 1987. On the optimization of differential. 33:1257 1270, s.l. : AIChE J. , 1987. Orth, Thiele y Palsson. 2010. What is flux balance analysis. 2010. volume 28 number 3.

81

REFERENCIAS BIBLIOGRFICAS

Pacheco Surez, Yarlenis. 2011. Servicio Web Cliente orientado a la obtencin de la informacin biolgica disponible en la Base de Datos Kegg. Pinar del Ro : UPR HERMANOS SAZ MONTES DE OCA, 2011. Peralta, Mario. 2004. Estimacin del esfuerzo basada en casos de uso. 2004. Recio, F y Provencio, D. 2007. Plataforma .Net. 2007. Riel, A. 1996. Object-Oriented Design Heuristics. s.l. : Addison-Wesley, 1996. Rumbaugh, James; Jacobson, Ivar y Booch, Grady. 2000. El Lenguaje Unificado de Modelado. Manual de Referencia. Madrid : ADDISON WESLEY, Pearson, 2000. Santiago, Mara de Lourdes. Desarrollando aplicaciones Informticas con el Proceso de Desarrollo Unificado. Savageau, M. A., E. O. , Voit y D. H., Irvine. 1987. Biochemical systems theory and metabolic control theory: 1. Fundamental similarities and differences. Math. Biosci. 1987, 86:127145. Sbml Web Site. 2009. The Systems Biology Markup Language. [En lnea] 18 de Mayo de 2009. [Citado el: 14 de Diciembre de 2011.] http://sbml.org/More_Detailed_Summary_of_SBML. Sbml Web Site. 2009. The Systems Biology Markup Language. [En lnea] 18 de Mayo de 2009. [Citado el: 14 de Diciembre de 2011.] http://sbml.org/Basic_Introduction_to_SBML. Smith E, Morowitz H. 2004. Universality in intermediary metabolism. s.l. : Proc Natl Acad Sci U S A , 2004. Snoep JL, Bruggeman F, Olivier BG, Westerhoff HV. 2006. Towards building the silicon cell: A modular approach. BioSystems, 83: 207-16. Sparx, Geoffrey. 2008. Enterprise Architect User Guide. s.l. : Sparx Systems, 2008. Stephanpoulos, G. 1999. Metabolic fluxes and metabolic engineering. Metab. 1999, Vols. 1:111.

82

REFERENCIAS BIBLIOGRFICAS

The Rational egde: e-zine for the rational community. [En lnea] [Citado el: 05 de 01 de 2012.] http://www.therationaledge.com/. Triana Dopico, Julin, y otros. 2011. HYDRA: Una plataforma informtica orientada al diseo, anlisis y visualizacin de redes metablicas. Universidad de Pinar del Ro. Pinar del Ro : s.n., 2011. 48-827-1-SP. Varma, A y B. O, Palsson. 1994. Stoichiometric flux balance models quantitatively predict growth and metabolic by-product secretion in wild-type Escherichia coli W3110. s.l. : Appl. Environ. Microbiol., 1994. Varner, J y D, Ramkrishna. 1999. Metabolic engineering from a cybernetic perspective I. Theoretical preliminaries. 1999, 15: 407425. Yang X. S., 2008. Introduction to Computational Mathematics, World Scientific Publishing.

83

BIBLIOGRAFA

BIBLIOGRAFA

Blaxter, Loraine; Hughes, Christina; Tight, Malcolm. Primera edicin 2000. Cmo se hace una Investigacin. Borodina I, Nielsen J. 2005. From genomes to in silico cells via metabolic networks. s.l. : Curr Opin Biotechnol, 2005. Brazlez, Alfonso, Garca de Jaln, Javier y Rodrguez, Jos Ignacio. 2001. Aprenda Matlab. Madrid : Universidad Politcnica de Madrid, 2001. C#: Ventajas y desventajas. Disponible en http://software.guides4it.com/ES/t/171327.aspx. Recuperado en marzo del 2012. Craig, Larman. 2004. UML y Patrones Introduccin al anlisis y diseo orientado a objetos (I, II). La Habana : Editorial Flix Varela, 2004. Creacin de Reportes con Crystal Reports. Disponible en http://vbcodigopocketpc.blogspot.com/2009/01/creacin-de-reportes-con-crystalreports.html. Recuperado en enero del 2012. Eknoyan, G. 1999. Santorio Sanctorius (1561- 1636) - Founding father of metabolic balance studies. 1999. Enciclopedia Mdica. 2006. Enciclopedia Mdica. s.l. : Medline Plus, 2006. Fell, D. 1996. Understanding the Control of Metabolism. Protland Press. 1996. Fowler, Martin y S, K. 1999. UML Distilled Second Edition A Brief Guide. 1999. Frederik P, Brooks. 1987. No Silver Bullet. Essence and Accidents in Software Engineering. s.l. : IEEE Computer, 1987. GLPK Proyect. 2010. Reference Manual for GLPK Version 4.45. 2010. Hernndez Daz, Ana Beatriz . 2011. Sistema Automatizado para la Gestin de Expedientes de Profesores. Pinar del Ro : UPR HERMANOS SAZ MONTES DE OCA, 2011.
84

BIBLIOGRAFA

Hernndez, Enrique. El Lenguaje Unificado de Modelado (UML). Hucka, Michael; Hoops, Stefan y Keating, Sarah Le. 2008. Nature Precedings. Nature Precedings. [En lnea] 2008. [Citado el: 14 de 12 de 2011.] http://dx.doi.org/10.1038/npre.2008.2715.1. 2008.2715.1. Jacobson, Ivar; Booch, Grady y Rumbaugh, James. 2000. El Proceso Unificado de Desarrollo de Software. 2000. Kompala, D.S. 1984. Bacterial growth on multiple substrates. Experimental verification of cybernetic models. Ph.D. thesis. Purdue University,West Lafayette, IN. 1984. Lpez, M, Romero, G. R y Vega, M. 2007. Informe de vigilancia tecnolgica. Espaa : s.n., 2007. Mahadevan, Radhakrishnan; Edwards, Jeremy S. y Doyle, Francis J. 2002. Dynamic Flux Balance Analysis of Diauxic Growth in Escherichia coli. Biophysical Juornal Volume 28. 09 de 2002. Mesarovic, M. D. 1968. Systems Theory and Biology-View of a Theoretician, in System Theory and Biology. s.l. : M. D. Mesarovic, 1968. Metabolism. The Online Etymology Dictionary. [En lnea] [Citado el: 25 de 10 de 2011.] Meyer, B. 1998. Construccin de software orientado a objetos. s.l. : Prentice-Hall, 1998. Microsoft Corporation. 2010. MSDN. [En lnea] Microsoft Corporation, 2010. [Citado el: 25 de Enero de 2012.] http://msdn.microsoft.com/es-s/vcsharp/default.aspx. Molpeceres, Alberto. 2002. Proceso de Desarrollo: Rup, XP y FDD. 2002. National Center for Biotechnology Information. 2001. Bioinformatic. 2001. Cuthrell, J. E y Biegler, L. T. 1987. On the optimization of differential. 33:1257 1270, s.l. : AIChE J. , 1987.

85

BIBLIOGRAFA

Orth, Thiele y Palsson. 2010. What is flux balance analysis. 2010. volume 28 number 3. Pacheco Surez, Yarlenis. 2011. Servicio Web Cliente orientado a la obtencin de la informacin biolgica disponible en la Base de Datos Kegg. Pinar del Ro : UPR HERMANOS SAZ MONTES DE OCA, 2011. Peralta, Mario. 2004. Estimacin del esfuerzo basada en casos de uso. 2004. Recio, F y Provencio, D. 2007. Plataforma .Net. 2007. Reyes Chirino, R. 2010. Diseo de bases de datos biolgicas, un paso hacia la automatizacin del proceso de construccin de modelos a escala genmica. 2010. Riel, A. 1996. Object-Oriented Design Heuristics. s.l. : Addison-Wesley, 1996. Rodrguez, Eduardo A. 2008 .Procesos de software. Rumbaugh, James; Jacobson, Ivar y Booch, Grady. 2000. El Lenguaje Unificado de Modelado. Manual de Referencia. Madrid : ADDISON WESLEY, Pearson, 2000. Santiago, Mara de Lourdes. Desarrollando aplicaciones Informticas con el Proceso de Desarrollo Unificado. Savageau, M. A., E. O. , Voit y D. H., Irvine. 1987. Biochemical systems theory and metabolic control theory: 1. Fundamental similarities and differences. Math. Biosci. 1987, 86:127145. Sbml Web Site. 2009. The Systems Biology Markup Language. [En lnea] 18 de Mayo de 2009. [Citado el: 14 de Diciembre de 2011.] http://sbml.org/More_Detailed_Summary_of_SBML. Sbml Web Site. 2009. The Systems Biology Markup Language. [En lnea] 18 de Mayo de 2009. [Citado el: 14 de Diciembre de 2011.] http://sbml.org/Basic_Introduction_to_SBML. Smith E, Morowitz H. 2004. Universality in intermediary metabolism. s.l. : Proc Natl Acad Sci U S A , 2004. Sparx, Geoffrey. 2008. Enterprise Architect User Guide. s.l. : Sparx Systems, 2008.
86

BIBLIOGRAFA

Stephanpoulos, G. 1999. Metabolic fluxes and metabolic engineering. Metab. 1999, Vols. 1:111. The Rational egde: e-zine for the rational community. [En lnea] [Citado el: 05 de 01 de 2012.] http://www.therationaledge.com/. Triana Dopico, Julin, y otros. 2011. HYDRA: Una plataforma informtica orientada al diseo, anlisis y visualizacin de redes metablicas. Universidad de Pinar del Ro. Pinar del Ro : s.n., 2011. 48-827-1-SP. Grupo Intertech/UPR. 2011. Herramientas Computacionales Integrales para el Diseo, Modelizacin y Anlisis en Biologa de Sistemas: Aplicaciones a la Produccin de Biocombustibles. 2011. Varma, A y B. O, Palsson. 1994. Stoichiometric flux balance models quantitatively predict growth and metabolic by-product secretion in wild-type Escherichia coli W3110. s.l. : Appl. Environ. Microbiol., 1994. Varner, J y D, Ramkrishna. 1999. Metabolic engineering from a cybernetic perspective I. Theoretical preliminaries. 1999, 15: 407425.

87

ANEXOS

ANEXOS

ANEXO I ANLISIS DE FACTIBILIDAD 1. Clculo de los Puntos de Casos de Uso (PCU) sin ajustar : En esta instancia se calculan los Puntos de Casos de Uso sin ajustar a partir de la siguiente ecuacin: Donde, PCU: Puntos de Casos de Uso sin ajustar. FPA: Factor de Peso de los Actores sin ajustar. FPCU: Factor de Peso de los Casos de Uso sin ajustar.

1.1. Factor de Peso de los Actores sin ajustar (FPA) Se determina teniendo en cuenta la cantidad de actores y su complejidad, un actor puede ser simple (1), medio (2) o complejo (3). Un actor tiene valor de complejidad 1 si se trata de otro sistema que interacta mediante una interfaz de programacin, tiene valor de complejidad 2 si es otro sistema que interacta mediante un protocolo o una interfaz basada en texto y 3 si es una persona que interacta mediante interfaz grfica. HYDRA dFBA cuenta con 1 actor (usuario): el cual interacta con el sistema mediante una interfaz grfica, de ah que su FAP tiene valor 3. 1.2. Factor de Peso de los Casos de Uso sin ajustar (FPCU) Se calcula mediante un anlisis de la cantidad de Casos de Uso presentes en el sistema y la complejidad de cada uno de ellos. La complejidad de un Caso de Uso se determina a partir de la cantidad de transacciones que este posee. Un Caso de Uso ser de tipo Simple cuando posee menos de cuatro transacciones (peso cinco), Medio cuando posee de cuatro a siete transacciones (peso diez) y Complejo cuando posee ms de siete transacciones (peso quince). El sistema cuenta con siete casos de usos de complejidad simple, uno de complejidad media y ocho de complejidad alta (Tabla 4.1), por tanto su FPCU tiene un valor 165.

88

ANEXOS

Una vez obtenidos los valores de FPA y FPCU, los Puntos de Casos de Uso sin ajustar resultan

Simples

Medios

Complejos

Cargar Sistema Biolgico

Explorar Detalles de la reaccin

Modificar Limites de la Reaccin

Cerrar Sistema Biolgico

Correr Simulacin

Consultar Ayuda

Consultar Grficos

Explorar Modelo

Consultar Grficos de Substratos

Gestionar rea de Simulacin

Salvar Imagen de Grficos

Gestionar Substratos Concentracin constate

Solicitar Distribucin de Flujos.

Solicitar Historial Biomasa

Solicitar Matriz de Concentracin

Salvar Datos Tabla 4.1: Clasificacin de los Casos de Uso segn su complejidad.

89

ANEXOS

Paso 2: Clculo de Puntos de Casos de Uso ajustados. Despus que se tienen los Puntos de Casos de Uso sin ajustar, estos se deben ajustar: Donde, : Puntos de Casos de Uso ajustados : Puntos de Casos de Uso sin ajustar : Factor de complejidad tcnica : Factor de ambiente 2.1 Factor de complejidad tcnica (FCT) Se calcula mediante la cuantificacin del peso de un conjunto de factores que determinan la complejidad tcnica del sistema, estos factores se cuantifica con un valor de cero a cinco. El Factor de complejidad tcnica se calcula mediante la siguiente ecuacin: Despus de realizar estos clculos (Tabla 4.2), el FCT para HYDRA dFBA result ser 0.965

Mtrica

Descripcin

Peso Valor

FCT

Justificacin

FCT01

Sistema distribuido. Objetivos de performance o tiempo de respuesta. Eficiencia del usuario final. Procesamiento interno complejo.

2.00

0.00

0.00

El sistema es centralizado. La velocidad es limitada por la capacidad de cmputo del hardware. Escasas restricciones de eficiencia. Existe un procesamiento interno complejo de los datos.

FCT02

1.00

4.00

5.00

FCT03

1.00

2.00

2.00

FCT04

1.00

5.00

5.00

90

ANEXOS

FCT05

El cdigo debe ser reutilizable. Facilidad de instalacin.

1.00

4.00

4.00

Algoritmos y procesos deben ser reutilizables. Se requiere que la aplicacin sea fcil de instalar. Se requiere que la aplicacin sea fcil de usar.

FCT06

0.50

5.00

2.50

FCT07

Facilidad de uso.

0.50

4.00

2.00

FCT08

Portabilidad.

2.00

5.00

FCT09

Facilidad de cambio.

1.00

3.00

Se brindarn ambas 10.00 opciones, instalador y versin portable. Se requiere un costo 3.00 moderado de mantenimiento. 0.00 No hay concurrencia.

FCT10

Concurrencia. Incluye objetivos especiales de seguridad. Provee acceso directo a terceras partes. Facilidades especiales de entrenamiento a usuarios.

1.00

0.00

FCT11

1.00

3.00

3.00

Seguridad normal.

FCT12

1.00

0.00

0.00

No provee acceso directo. No se requieren facilidades especiales de entrenamiento a usuarios.

FCT13

1.00

0.00

0.00

Total: 36.50 Tabla 4.2: Factor de complejidad tcnica (FCT)

2.2 Factor de ambiente (FA) Se estima a partir de un grupo de factores relacionados con las habilidades y el entrenamiento del equipo de desarrollo. Al igual que el clculo del FCT, se trata de un
91

ANEXOS

conjunto de factores que se cuantifican con valores de cero a cinco. El Factor de ambiente se calcula mediante la siguiente ecuacin:

Al realizar los clculos para FA, se obtuvo el valor 0.71 (Tabla 4.3). Una vez obtenido el FCT y el FA, se calcula el PCUA, adems de ya conocer desde el paso 1 los puntos de casos de uso sin ajustar (PCU).

Mtrica

Descripcin

Peso Valor

FA

Justificacin

Familiaridad con el FA01 modelo de proyecto utilizado. Experiencia en la aplicacin. 1.50 3.00 4.50

Conocimientos medios del modelo utilizado. Se ha trabajado con este

FA02

0.50

2.00

1.00

tipo de aplicaciones, pero el concepto es nuevo. Se ha programado orientado a objetos.

FA03

Experiencia en orientacin a objetos.

1.00

5.00

5.00

FA04

Capacidad del analista lder.

0.50

5.00

2.50

El analista lder tiene buena preparacin y experiencia.

FA05

Motivacin.

1.00

5.00

5.00

Altamente motivado.

FA06

Estabilidad de los requerimientos.

2.00

4.00

8.00

No hay grandes cambios en los requerimientos.

92

ANEXOS

FA07

Personal part-time.

-1.00

0.00

0.00

Full-time.

FA08

Dificultad del lenguaje de Programacin.

-1.00

3.00

-3.00

Se usar C# como lenguaje de programacin.

Total: 23.00

Tabla 4.3: Factor de Ambiente (FA)

Paso 3: Clculo del Esfuerzo de Implementacin (E): Se convierten los Puntos de Casos de Uso Ajustados a esfuerzo de desarrollo. El esfuerzo en horas-hombre viene dado por: Donde, Esfuerzo estimado en horas-hombre : Puntos de Casos de Uso ajustados : Factor de Conversin El Factor de Conversin ( ), denota la cantidad de horas-hombre/Punto de Casos

de Uso y se determina segn el siguiente criterio: Se contabilizan cuntos factores de los que afectan al factor de ambiente estn por debajo del valor medio (tres), para los factores E1 a E6. Se contabilizan cuntos factores de los que afectan al factor de ambiente estn por encima del valor medio (tres), para los factores E7 y E8. Si el total es dos o menos, se utiliza el factor de conversin veinte horashombre/Punto de Casos de Uso. Si el total es tres o cuatro, se utiliza el factor de conversin 28 horashombre/Punto de Casos de Uso.
93

ANEXOS

Segn este criterio, se obtuvo que existe uno por debajo de tres para los factores E1 a E6 y cero por encima de tres para los factores E7 y E8, por tanto el total es uno y se utiliza como FC 20 horas-hombre/Punto de Casos de Uso. Se calcula el esfuerzo estimado en horas-hombre:

Conociendo que la implementacin representa un 40% del tiempo de desarrollo de un software, se obtiene el esfuerzo total y la distribucin por cada una de las etapas del proceso de desarrollo (Tabla 4.4). Porcentaje % 5 25 40 20 10 Total: Tabla 4.4: Esfuerzo del proyecto Paso 4: Estimacin del tiempo de desarrollo del proyecto A partir del esfuerzo se puede estimar el tiempo de desarrollo aproximado del proyecto: Donde, : Tiempo de desarrollado del proyecto : Esfuerzo total : Cantidad de hombres que desarrollan el proyecto. En la construccin de HYDRA dFBA particip una persona, por tanto:

Actividad Anlisis Diseo Implementacin Pruebas Sobrecarga (otras actividades)

Horas-Hombres 407.08 2035.38 3256.60 1628.30 814.50 8141.50

94

ANEXOS

Paso 5: Estimacin del costo de desarrollo del proyecto El costo total se obtiene mediante la siguiente ecuacin: Donde, : Costo total : Costo del proyecto Donde, : Costo por hombre - hora Donde, : Coeficiente que tiene en cuenta los costos indirectos (1,5 y 2,0) : Tarifa Horaria Promedio. El salario promedio de las personas que trabajan en el proyecto dividido entre 160 horas. El salario promedio para el desarrollador fue $100, de ah se obtiene 0.625, por lo tanto: igual a

Con los resultados anteriores se obtiene:

95

ANEXOS

ANEXO II: LICENCIA CeCILL V2 The purpose of this Free Software license agreement is to grant users the right to modify and redistribute the software governed by this license within the framework of an open source distribution model. The exercising of these rights is conditional upon certain obligations for users so as to preserve this status for all subsequent redistributions. In consideration of access to the source code and the rights to copy, modify and redistribute granted by the license, users are provided only with a limited warranty and the software's author, the holder of the economic rights, and the successive licensors only have limited liability. In this respect, the risks associated with loading, using, modifying and/or developing or reproducing the software by the user are brought to the user's attention, given its Free Software status, which may make it complicated to use, with the result that its use is reserved for developers and experienced professionals having in-depth computer knowledge. Users are therefore encouraged to load and test the suitability of the software as regards their requirements in conditions enabling the security of their systems and/or data to be ensured and, more generally, to use and operate it in the same conditions of security. This Agreement may be freely reproduced and published, provided it is not altered, and that no provisions are either added or removed herefrom. This Agreement may apply to any or all software for which the holder of the economic rights decides to submit the use thereof to its provisions. CeCILL stands for Ce(a) C(nrs) I(nria) L(ogiciel) L(ibre) Version 2.0 dated 2006-09-05. Texto completo disponible en: http://www.cecill.info".

96

R.F. 1 Leer datos del Sistema Biolgico R.F. 10 Mostrar informacin detallada de las Reacciones R.F. 10.1 Salvar informacin detallada de las Reacciones R.F. 11 Actualizar el Lmite Inferior de las Reacciones R.F. 12 Actualizar el Lmite Superior de las Reacciones R.F. 13 Habilitar rea de simulacin R.F. 14 Listar substratos para reacciones de intercambio X Cerrar Sistema Biolgico Consultar Ayuda Consultar grfico de substratos Consultar grficos Correr simulacin Explorar Modelo X Explorar detalles de la reaccin Gestionar area de simulacin Gestionar substratos con concentracin constante Modificar lmites de la Reaccin X Salvar datos Salvar imagen del grfico Solicitar Distribucin de Flujos Solicitar Historial de Biomasa Solicitar Matriz de Concentracin Cargar Sistema Biolgico

ANEXO III: MATRIZ DE TRAZABILIDAD REQUERIMIENTOS-CASOS DE USO

97

ANEXOS

ANEXOS

R.F. 15 Listar reacciones de intercambio R.F. 16 Mostrar ayuda lateral para el rea de simulacin R.F. 17 Recibir Reacciones de Intercambio constantes R.F. 18 Quitar Reacciones de Intercambio R.F. 19 Recibir del usuario Biomasa Inicial R.F. 2 Normalizar el Id de las Especies del Modelo R.F. 20 Recibir del usuario Intervalo de Tiempo R.F. 21 Recibir del usuario Nmero de Intervalos R.F. 22 Permitir al usuario cambiar la concentracin de substrato R.F. 24 Mostrar los resultados de la simulacin R.F. 25 Salvar los resultados de la simulacin R.F. 26 Interrumpir la simulacin por solicitud del usuario R.F. 27 Graficar la concentracin de Biomasa R.F. 28 Graficar la concentracin de los substratos

98

ANEXOS

R.F. 29 Salvar los grficos en formato (.jpg) R.F. 3 Normalizar el Id de las Reacciones del Modelo R.F. 30 Mostrar la Distribucin de Flujos R.F. 31 Salvar la Distribucin de Flujos R.F. 32 Mostrar un Historial de Biomasa R.F. 33 Salvar Historial de Biomasa R.F. 34 Mostrar Matriz de Concentracin R.F. 36 Salvar Matriz de Concentracin R.F. 37 Abandonar el rea de simulacin R.F. 38 Cerrar el Modelo abierto R.F. 39 Guardar un historial Modelos recientes R.F. 4 Construir la Matriz Estequeomtrica del Modelo R.F. 40 Consultar la Ayuda R.F. 5 Buscar las Reacciones de Intercambio del Modelo R.F. 6 Buscar la Reaccin de Biomasa del Modelo R.F. 7 Llevar las Reacciones a su

X X X X

X X X

X X

99

ANEXOS

forma matemtica R.F. 8 Mostrar resumen del Sistema Biolgico R.F. 9 Mostrar datos del Sistema Biolgico R.F.23 Correr la simulacin

X X

ANEXO IV ESPECIFICACIN DE LOS CASOS DE USO MS SIGNIFICATIVOS Caso de Uso: Actor: Propsito: Cargar Sistema Biolgico Usuario (inicia) Obtener del Sistema Biolgico datos necesarios para realizar la simulacin. El caso de uso se inicia cuando el Usuario decide cargar un Sistema Biolgico, haciendo uso de alguna de las tres opciones disponibles para ello (1) a travs del Men File, (2) directamente desde la barra de herramientas Resumen: Standar", ambas descritas en la seccin Buscar Archivo, (3) haciendo uso del historial de modelos recientes, seccin Modelos Recientes. El sistema crea un modelo virtual con los datos que necesita y le informa al usuario que modelo fue ledo, finalizando as el curso normal de los eventos. Referencias: R.F 1 Precondiciones: R.F 8.

Ningn otro Sistema Biolgico puede estar abierto. Para usar la opcin Modelo Recientes, algn Modelo debe haber sido previamente abierto.

Poscondiciones:

Se cuenta con parte de la informacin necesaria para realizar las simulaciones.

100

ANEXOS

Interfaz 1

Interfaz 1.1

Interfaz 1.2

Interfaz 1.3

101

ANEXOS

Interfaz 2

102

ANEXOS

F G

Interfaz 3 Curso Normal de los Eventos Seccin: Buscar archivo. Acciones del Actor 1. El Usuario selecciona la opcin Open Sbml Model desde la barra de herramientas Estndar toolbox (B) o desde el men File (A). 2. El Usuario recorre la ruta hasta el archivo que desea abrir y se lo indica al sistema. Respuesta del Sistema 1.1. El sistema muestra el cuadro de dialogo Open Sbml Model (Interfaz 2), para que el usuario busque el archivo (.xml) que contiene la informacin del Sistema Biolgico. Se cuenta con un filtro "Xml files (*.xml), para minimizar el nmero de estados errneos. 2.1. El sistema lee los datos requeridos del archivo (ver R.F. del 1 al 1.3.5.8). 2.2. El sistema normaliza el Id de las Especies del Modelo (R.F. 2). 2.3. El sistema normaliza el Id de las Reacciones del Modelo (R.F. 3).
103

ANEXOS

2.4. El sistema construye la Matriz Estequeomtrica del Modelo (R.F. 4). 2.5. El sistema busca las Reacciones de Intercambio del Modelo. (R.F. 5). 2.6. El sistema busca la Reaccin de Biomasa del Modelo (R.F. 6). 2.7. El sistema lleva las Reacciones a su forma matemtica (R.F. 7). 2.8. El sistema actualiza la lista de Modelos Recientes (R.F. 30) (C). 2.9. El sistema muestra en pantalla un resumen del Modelo ledo (R.F. 8) (H), y habilita las opciones: a-) Solicitar rea de Simulacin (E, F). (C. U. S) b-) Explorar Modelo (G). (C. U. S) c-) Cerrar Modelo (D). (C. U. S) 2.10. Durante el tiempo que dure el proceso de cargado del Modelo, el sistema mantendr al usuario informado del progreso de las actividades, mediante el uso de barras de progreso y etiquetas de texto. (Interfaz 1.1, 1.2, 1.3). Seccin : Modelos recientes 1. El Usuario selecciona el link que hace referencia al Sistema Biolgico que desea cargar, desde el historial de modelos recientes (C). Cursos Alternos 1.1. El sistema realiza los pasos del 2.1 al 2.10 de la seccin Buscar archivo.

104

ANEXOS

Mensaje 1

Mensaje 2

Mensaje 3

Mensaje 4

105

ANEXOS

Mensaje 5

Mensaje 6

Mensaje 7

Mensaje 8

106

ANEXOS

Mensaje 9

Mensaje 10 1. Seccin Buscar archivo lnea 2.1 1.1. Si el archivo indicado por el usuario no es un archivo xml vlido, se muestra el Mensaje 1 y se interrumpe el curso normal de eventos. 1.2. Si el archivo indicado por el usuario no es un archivo Sbml vlido, o pertenece a un nivel y/o versin no soportada por el sistema se muestra el Mensaje 2 y se interrumpe el curso normal de eventos. 1.3. Si el archivo indicado por el usuario no contiene informacin sobre ningn modelo biolgico, se muestra el Mensaje 3 y se interrumpe el curso normal de eventos. 1.4. Si en el archivo indicado por el usuario no se encuentra informacin referente a los Compartimientos, se muestra el Mensaje 4 y se interrumpe el curso normal de eventos. 1.5. Si en el archivo indicado por el usuario la informacin sobre los Compartimientos no se encuentra en el formato esperado, se muestra el Mensaje 5 y se

107

ANEXOS

interrumpe el curso normal de eventos. 1.6. Si en el archivo indicado por el usuario no se encuentra informacin referente a la Especies, se muestra el Mensaje 6 y se interrumpe el curso normal de eventos. 1.7. Si en el archivo indicado por el usuario la informacin sobre las Especies no se encuentra en el formato esperado, se muestra el Mensaje 7 y se interrumpe el curso normal de eventos. 1.8. Si en el archivo indicado por el usuario no se encuentra informacin referente a las reacciones, se muestra el Mensaje 8 y se interrumpe el curso normal de eventos. 1.9. Si en el archivo indicado por el usuario la informacin sobre las reacciones no se encuentra en el formato esperado, se muestra el Mensaje 9 y se interrumpe el curso normal de eventos. 2. Seccin Modelos recientes lnea 2.1 2.1. Si el archivo al que seala el link seleccionado por el usuario, fue movido, renombrado, eliminado y/o no se tiene acceso a la ruta en que este se localiza, se muestra el Mensaje 10 y se interrumpe el curso normal de eventos. Prioridad: Alta.

Caso de Uso: Actor: Propsito:

Correr Simulacin Usuario (inicia) Obtener los resultados de la simulacin y habilitar el uso de los servicios que necesitan de esos. Se inicia cuando el usuario introduce los datos

Resumen:

necesarios, biomasa, intervalo de tiempo y nmero de intervalos, opcionalmente puede seleccionar de la lista de reacciones de intercambio cuales de estas
108

ANEXOS

van a poseer una concentracin de substratos constante (CU Gestionar substratos con concentracin constante) y le solicita al sistema realizar la simulacin con los mismos, el sistema verifica la validez e integridad de estos y comienza realizar la simulacin hasta el nmero de intervalos indicado por el usuario, o hasta que los nutrientes se agoten. Los resultados que se van obteniendo para cada iteracin son presentados dinmicamente al usuario. Una vez terminada la simulacin, por cualquiera de los motivos antes expuestos se le hace saber al usuario. Para finalizar el caos de uso el sistema activa las herramientas que harn uso de estos resultados. R.F 19 24.

Casos de uso Asociados: o Solicitar Matriz de Concentracin. o Solicitar Distribucin de Flujos. Referencias: o Consultar Grficos. o Salvar Datos. o Abortar Simulacin en Curso. o Gestionar substratos con concentracin constante. o Solicitar Historial de Biomasa.

109

ANEXOS

El rea de simulacin debe estar visible. Los vectores de tiempo y biomasa para la simulacin son obtenidos. La opcin para consultar la Matriz de concentracin es activada (CU Solicitar Matriz de Concentracin).

Poscondiciones:

La opcin para consultar la distribucin de flujos es activada (CU Solicitar Distribucin de Flujos). La opcin para consultar los grficos es activada (CU Consultar Grficos). La opcin para salvar los datos de la simulacin es activada (CU Salvar Datos). Si es la primera ejecucin del caso de uso, la opcin para consultar el historial de biomasa es

L G A B C

activada (CU Solicitar Historial de Biomasa).


N H O

P E F D

Interfaz 1

110

ANEXOS

Mensaje 1 Curso Normal de los Eventos Acciones del Actor 1. El Usuario entra los valores para la biomasa inicia (A), el intervalo de tiempo (B) y el nmero de intervalos (C). 2. El usuario gestiona los substratos con concentracin constante (D) (opcional). 3. El usuario ajusta los lmites inferiores (Lb) (E) y los valores de concentracin (F) para los substratos de intercambio, a su gusto. 4. El usuario acciona el botn de iniciar Run dfba (G). Respuesta del Sistema 4.1. El sistema crea un nuevo hilo de ejecucin (Thread), para que el proceso pueda ejecutarse independientemente, sin bloquear la interfaz de usuario.[motivo por el cual se deben deshabilitar las opciones que puedan crear conflictos con el proceso de simulacin] 4.2. El sistema deshabilita el botn Run dFBA (G). 4.3. El sistema chequea que los parmetros iniciales (A, B, C) entrados por usuario tengan el formato requerido. 4.4. El sistema chequea que los valores para el Lb (E) y la Concentracin (F) tengan el formato requerido. 4.5. El sistema actualiza en el modelo biolgico los lmites inferiores (Lb) de las reacciones de intercambio, entrados por el usuario, validando que su formato sea correcto. 4.6. El sistema crea el vector de concentracin para los substratos de intercambio, validando que su formato sea correcto. 4.7. El sistema deshabilita las opciones de la interfaz (L, M, N, O) que requieren de los resultados de la simulacin (si es la primera

111

ANEXOS

corrida, estas estn deshabilitadas por defecto). 4.8. El sistema activa el botn para abortar (H) la simulacin en curso si el usuario as lo desea. 4.9. El sistema comienza a realizar la simulacin, mostrando los valores de tiempo (I) y biomasa (J) para cada una de las iteraciones, a medida que estos son obtenidos (tiempo real), y mediante la barra de estado (K) muestra el progreso del proceso. 4.10. El sistema construye la matriz de concentracin, almacena los vectores de tiempo y biomasa, como parte del resultado de la simulacin, el cual ser usado para otros servicios, adicionan los vectores de tiempo y biomasa al historial de biomasa, el cual trascender todas las simulaciones realizadas sobre un mismo modelo. 4.11. El sistema muestra un mensaje de

confirmacin para que se conozca que el proceso de simulacin concluyo satisfactoriamente (Mensaje 1). 5. El usuario acepta el Mensaje 1 5.1. El sistema desactiva la opcin de abortar simulacin y la barra de estado (H, K). 5.2. El sistema activa la opcin para iniciar una nueva simulacin (G). 5.3. El sistema activa las opciones: o Salvar resultados de la simulacin (P). o Consultar grficos (L). o Consular distribucin de flujo (M). o Consultar Historial de biomasa (N). o Consultar Matriz de concentracin (O).

112

ANEXOS

Cursos Alternos

Mensaje 2

Mensaje 3

Mensaje 4

Mensaje 5

113

ANEXOS

Mensaje 6

Mensaje 7

Mensaje 8 1. Lnea 4.3 1.1. Si el valor para la biomasa inicial (A) no tiene el formato requerido, se interrumpe el curso normal de eventos y se muestra el Mensaje 2. 1.2. Si el valor para el intervalo de tiempo (B) no tiene el formato requerido, se interrumpe el curso normal de eventos y se muestra el Mensaje 3. 1.3. Si el valor para el numero de intervalos (C) no tiene el formato requerido, se interrumpe el curso normal de eventos y se muestra el Mensaje 4.

114

ANEXOS

2. Lnea 4.4

2.1. Si alguno de los valores para los lmites inferiores (E) no tiene el formato requerido, se interrumpe el curso normal de eventos y se muestra el Mensaje 5, indicando donde se localiza el error. 2.2. Si alguno de los valores para las concentraciones (F) no tiene el formato requerido, se interrumpe el curso normal de eventos y se muestra el Mensaje 6, indicando donde se localiza el error.

3. Lnea 4.11

3.1. Si el agotamiento de alguno de los substratos (Concentracin =0), influye directamente en el crecimiento de la biomasa resultante (crecimiento =0), se interrumpe el proceso de simulacin y esta se da por concluida, computndose solo los resultados que se tiene hasta el momento, se muestra el Mensaje 7. El curso normal de eventos, continua una vez que el usuario acepta el mensaje, el paso 4.11 no es realizado.

4. Lneas 4.8 4.10

4.1. Si durante el transcurso de la simulacin el usuario acciona el botn Abortar (H), el sistema interrumpe el proceso de simulacin y esta se da por concluida, computndose solo los resultados que se tiene hasta el momento, se muestra el Mensaje 8. El curso normal de eventos, continua una vez que el usuario acepta el mensaje, el paso 4.11 no es realizado.

Prioridad:

Alta.

115

ANEXOS

Caso de Uso: Actor: Propsito:

Consultar grficos Usuario (inicia) Acceder a las herramientas para graficar la biomasa resultante de la simulacin. El caso de Uso inicia, cuando, una vez ejecutado el caso de uso Correr simulacin, el usuario selecciona de la interfaz principal la opcin grficos (Charts); el sistema busca en el resultado de la simulacin, los vectores de

Resumen:

tiempo y de biomas, y muestra una nueva ventana, donde estos son mostrados en forma de grfico (biomasa/tiempo), el grfico puede ser visualizado en barras, columnas, rea o lnea de pasos, segn el deseo del usuario, y en el color escogido por este. R.F 27.

Referencias:

Casos de Usos asociados: o Consultar grficos de substratos. o Salvar imagen del grfico.

Precondiciones:

Se tiene que haber realizado alguna simulacin sobre el modelo abierto. La concentracin de biomasa es graficada e funcin del tiempo y presentada al usuario.

Poscondiciones:

116

ANEXOS

A1

Interfaz 1
A B C D E F J

G I

Interfaz 2

Curso Normal de los Eventos


117

ANEXOS

Acciones del Actor 1. El Usuario selecciona de la Interfaz Principal (Interfaz 1) la opcin grficos (Charts) (A1).

Respuesta del Sistema 1.1. El sistema busca en los resultados de la ltima simulacin realizada sobre el modelo abierto, los vectores de tiempo y de biomasa. 1.2. El sistema busca en la matriz de concentracin de la ltima simulacin los nombres de todos los substratos graficables (concentracin distinta de cero en al menos dos iteraciones). 1.3. El sistema muestra la Interfaz 2, donde se visualiza: o Grfico (de barras por defecto) (I), donde se representa la concentracin de biomasa (H), en funcin del tiempo (G). o Opcin para grfico de Barras (A). o Opcin para grfico de rea (B). o Opcin para grfico de Columnas (C). o Opcin para grfico de Lnea de Pasos (D). o Opcin para salvar el grfico como imagen (E). (CU Salvar Imagen del grfico). o Opcin para cambiar el color (F). o Lista de los substratos graficables (J). Para graficar los substratos. (CU Consultar Grficos de Substratos).

Prioridad:

Media.

118

ANEXOS

Caso de Uso: Actor: Propsito:

Consultar grficos de substratos Usuario (inicia) Graficar los substratos graficables. El caso de uso inicia, cuando, una vez ejecutado el caso de uso Consultar grficos, el usuario decide consultar grficos para los substratos de intercambio. El usuario selecciona de la lista el substrato que desea graficar, ante lo cual el sistema busca en la matriz de

Resumen:

concentraciones la columna que se corresponde con dicho elemento, y lo representa en un grfico de concentracin/tiempo, el grfico puede ser visualizado en barras, columnas, rea o lnea de pasos, segn el deseo del usuario, y en el color escogido por este, finalizando de esta forma el caso de uso. R.F 28.

Referencias:

Casos de Usos asociados: o Consultar grficos. o Salvar imagen del grfico. Se tiene que haber ejecutado el caso de uso Consultar Grficos Tiene que haber al menos un substrato graficable. La concentracin del substrato seleccionado es graficada e funcin del tiempo y presentada al usuario.

Precondiciones:

Poscondiciones:

119

ANEXOS

A1

Interfaz 1

120

ANEXOS A B C D E F

Interfaz 2

Curso Normal de los Eventos Acciones del Actor 1. El Usuario selecciona de la interfaz para el rea de los grficos (Interfaz 1) la lista de los substratos graficables (A1), y de ellos el que desea graficar. Respuesta del Sistema 1.1. El sistema busca en la matriz de concentracin de la ltima simulacin la columna los valores de tiempo y concentracin que se corresponden con el substrato seleccionado. 1.2. El sistema muestra la Interfaz 2, donde se visualiza:

121

ANEXOS

o Grfico de substratos (de barras por defecto) (I), donde se representa la concentracin del substrato seleccionado (G), en funcin del tiempo (H). o Opcin para grfico de Barras (A). o Opcin para grfico de rea (B). o Opcin para grfico de Columnas (C). o Opcin para grfico de Lnea de Pasos (D). o Opcin para salvar el grfico como imagen (E). (CU Salvar Imagen del grfico). o Opcin para cambiar el color (F). Prioridad: Media.

Caso de Uso: Actor: Propsito:

Salvar imagen del grfico. Usuario (inicia) Salvar el grfico como imagen (.jpg). El caso de Uso inicia, cuando, despus de ejecutarse el caso de uso Consultar grficos y/o el caso de uso Consultar grficos de substratos, el usuario decide salvar

Resumen:

una copia del grafico en pantalla, como imagen (.jpg) en el disco duro. El sistema garantiza que el usuario escoja la ruta y el nombre deseados, y crea la imagen, finalizando el caso de uso. R.F 29.

Referencias:

Casos de Usos asociados: o Consultar grficos. o Consultar grficos de substratos.

Precondiciones:

Se tiene que haber ejecutado el casos de uso

122

ANEXOS

Consultar grficos. Poscondiciones:


A

La imagen del grafico es salvada.


B

Interfaz 1

123

ANEXOS

Interfaz 2

Mensaje 1 Curso Normal de los Eventos Acciones del Actor 1. El Usuario selecciona de la Interfaz para el rea de grficos (Interfaz 1), la opcin para salvar el grafico como imagen(A, B). Respuesta del Sistema 1.1. El sistema muestra el cuadro de dialogo para que el usuario especifique el nombre y la ruta donde desea que se salve la imagen del grfico. 2. El usuario introduce el nombre para el archivo e indica la ruta done desea salvarlo. 2.1. El sistema crea el archivo, cierra el cuadro de dialogo e indica al usuario que la operacin se realiz (Mensaje 1). Prioridad: Baja.

Caso de Uso: Actor:

Solicitar distribucin de flujos. Usuario (inicia) Mostrar en pantalla la distribucin de flujos para

Propsito:

la iteracin(s) solicitada por el usuario, pueden ser todas las iteraciones. El caso de Uso inicia, cuando, el usuario selecciona la opcin Flux Distribution de la interfaz principal, el sistema muestra la ventana
124

Resumen:

ANEXOS

correspondiente desde la cual el usuario podr especificar que iteraciones desea, y pedirle al sistema que las muestre, una vez visualizadas se activa la opcin para exportarlas a un archivo Excel. R.F 30. Referencias: Casos de Usos asociados: o Correr simulacin. o Salvar datos. Precondiciones: Se necesita que alguna simulacin haya sido corrida. La distribucin de flujo para cada una de las reacciones del modelo, en las iteraciones Poscondiciones: solicitadas, es mostrada en pantalla. La opcin para exportarla a un archivo Excel es activada.
A

125

ANEXOS

Interfaz 1
H E

Interfaz 2 Curso Normal de los Eventos Acciones del Actor 1. El Usuario selecciona la opcin Flux Distribution (A) de la interfaz 1. 2. El usuario introduce el (los nmeros de las iteracin(s) deseada(s), separados por punto y coma (;), en el campo de texto de la ventana (B), y acciona el botn Run (C). Respuesta del Sistema 1.1. El sistema muestra la interfaz 2, con los recursos necesarios para que el usuario solicite el servicio en cuestin. 2.1. El sistema verifica que el formato de las entradas sea correcto. 2.2. El sistema valida que las iteraciones solicitadas se encuentren en el rango de las que se realizaron durante la simulacin. 2.3. El sistema desactiva el campo de texto y el botn Run mientras la operacin se

126

ANEXOS

completa, ya que esta se ejecuta en un hilo de ejecucin alternativo. 2.4. El sistema muestra en la primera columna (D) los nombres de cada una de las reacciones, y en las contiguas (E), los valores de flujo para cada una de las iteraciones solicitadas. 2.5. Mientras la operacin se estn realizando el sistema muestra una barra de progreso (F) indicando el estado de la misma y la informacin correspondiente (G). 2.6. El sistema activa la opcin para salvar los datos (H). Cursos Alternos:

Mensaje 1

Mensaje 2

Curso Normal de eventos Lnea 2.1

1.1. Si el formato de las entradas no es correcto el sistema muestra el Mensaje 1, limpia el campo de texto e interrumpe el

127

ANEXOS

curso normal de los eventos. Curso Normal de eventos Lnea 2.2 1.1. Si alguna(s) iteracin(s) solicitadas por el usuario no se encuentra en el rango de las realizadas durante la simulacin, el sistema muestra el Mensaje 2, limpia el campo de texto e interrumpe el curso normal de los eventos. Prioridad: Media.

Caso de Uso: Actor:

Solicitar historial de biomasa. Usuario (inicia) Mostrar en pantalla el historial de biomasa, con

Propsito:

los resultados de cada una de las simulaciones realizadas sobre el modelo que se encuentre actualmente abierto. El caso de Uso inicia, cuando, el usuario selecciona la opcin Biomass History de la interfaz principal, el sistema muestra la ventana

Resumen:

correspondiente desde la cual el usuario puede analizar los resultados de todas las simulaciones realizadas sobre el modelo abierto, una vez visualizadas se activa la opcin para exportarlas a un archivo Excel. R.F 32.

Referencias:

Casos de Usos asociados: o Salvar datos.

Precondiciones:

Se necesita que alguna simulacin haya sido corrida. El historial de biomas es mostrado en pantalla.
128

Poscondiciones:

ANEXOS

La opcin para exportarlo a un archivo Excel es activada.


A

Interfaz 1

129

ANEXOS

Interfaz 2 Curso Normal de los Eventos Acciones del Actor 1. El Usuario selecciona la opcin Biomass History (A) de la interfaz 1. Respuesta del Sistema 1.1. El sistema busca el historial de biomasa, donde estn guardados los resultados de todas las simulaciones que se han realizado sobre el modelo abierto. 1.2. El sistema muestra la interfaz 2, donde en la primera columna se encuentra el vector de tiempo (C) y en las restantes los valores de biomasa (D). 1.3. El sistema activa la opcin (B) para salvar

130

ANEXOS

el historial en un archivo Excel. Prioridad: Media.

Caso de Uso: Actor:

Solicitar matriz de concentracin. Usuario (inicia) Mostrar en pantalla la matriz de concentracin,

Propsito:

con los valores para los substratos de las reacciones de intercambio. El caso de Uso inicia, cuando, el usuario selecciona la opcin Concentration Matrtix de la interfaz principal, el sistema muestra la ventana correspondiente desde la cual el

Resumen:

usuario puede disponer de los valores de concentracin en el tiempo, para los substratos de las reacciones de intercambio, una vez visualizadas se activa la opcin para exportarlas a un archivo Excel. R.F 34.

Referencias:

Casos de Usos asociados: o Salvar datos. o Correr simulacin.

Precondiciones:

Se necesita que alguna simulacin haya sido corrida. La matriz de concentracin es mostrada en pantalla.

Poscondiciones:

La opcin para exportarla a un archivo Excel es activada.

131

ANEXOS

Interfaz 1
B D

Interfaz 2

132

ANEXOS

Curso Normal de los Eventos Acciones del Actor 1. El Usuario selecciona la opcin Concentration Matrix (A) de la interfaz 1. Respuesta del Sistema 1.1. El sistema busca en los resultados de la simulacin, la matriz de concentracin. 1.2. El sistema recorre la matriz eliminando aquellas columnas en la que todos sus valores son cero. 1.3. El sistema muestra la interfaz 2, donde en la primera columna se encuentra el vector de tiempo (C) y en las restantes los valores de concentracin para los substratos (D). 1.4. El sistema activa la opcin (B) para salvar la matriz en un archivo Excel.

Mensaje 1 Cursos Alternos Curso normal de eventos Lnea 1.2 1.1. Si todas las columnas de las matriz de concentracin son cero el sistema muestra el Mensaje 1 e interrumpe el curso normal de los eventos. Prioridad: Media.

Caso de Uso: Actor:

Salvar datos Usuario (inicia)

133

ANEXOS

Propsito:

Exportar a un archivo Excel (Microsoft Office 2010), datos visualizados en pantalla. El caso de Uso inicia, cuando, el usuario selecciona la opcin salvar datos, el sistema comienza a exportar los datos para el archivo, el

Resumen:

usuario es informado en todo momento del progreso del proceso, mediante la barra de estado. El caso de uso finaliza con la visualizacin del archivo Excel con los datos ya estructurado. R.F 10.1, R.F 31, R.F 31, R.F 33, R.F 36. Casos de Usos asociados: o Explorar detalles de la reaccin. o Solicitar historial de biomasa. o Solicitar matriz de concentracin. o Correr simulacin. o Solicitar distribucin de flujo.

Referencias:

Precondiciones:

Se tiene que haber ejecutado alguno de los casos de uso asociados. La informacin deseada es exportada a un archivo Excel.

Poscondiciones:

Curso Normal de los Eventos Acciones del Actor 1. El Usuario selecciona la opcin salvar en la interfaz correspondiente. Respuesta del Sistema 1.1. El sistema comienza a exportar los datos para el archivo Excel. 1.2. El sistema muestra en la barra de estado el progreso del proceso. 1.3. El sistema abre el archivo un vez que todo los datos fueron exportados. Prioridad: Media.

134

ANEXOS

ANEXO V: DIAGRAMAS DE COLABORACIN DE LOS CASOS DE USO MAS SIGNIFICATIVOS C.U Cargar Sistema Biolgico.
sd Cargar Sistema Biolgico

Compartment

1.2: 1.3: Specie

1.1: 1: SbmlIn 1.5: 1.4 :

Usuari o

Start F

2:

Reaction

1.6: SbmlModel

Stoichiometry

135

ANEXOS

C.U Correr Simulacin.


sd Correr simulacin

1.4 : library Simulation:: GLPKSharp.dll

SbmlModel 1.2: 1.3: 1.1: 1: 2: 1.5:

Fba

Start F Usuari o (from Act ors)

dFb a 1.6:

Concentration

1.8:

1.7:

Biomass

SimResults BiomassHistory

C.U Consultar Grficos.


sd Consultar grficos

1:

1.3:

Start F Usuari o (from Act ors) 1.1: 2: 1.2:

Graphics

SimResults

GrphicsF

136

ANEXOS

C.U Consultar Grficos de Substratos.


sd Consultar grfico de substratos

1: 1.2:

1.3:

Usuari o (from Act ors) 1.1:

Start F

Graphics

SimResults

2:

GrphicsF

C.U Salvar Imagen del Grfico.


sd Salv ar imagen del grfi... 1.3: 1: 1.4 : Usuari o (from Act ors) 1.1: 2.1: Start F 1.2: SaveImage 2: SaveImage <<Image>> Image.jpg

graphic

C.U Solicitar Historial de Biomasa


sd Solicitar Historial de Biomasa

1:

1.1:

1.2:

1.3:

Start F Usuari o (from Act ors)

BiomassHystoryF

2:

BiomassHistory

BiomassHistory

137

ANEXOS

C.U Solicitar Distribucin de Flujos.


sd Solicitar Distribucin de Fluj ... 1.2: 1: 1.1: 2: 1.3:

Usuari o (from Act ors)

Start F

FluxF

FluxDistribution

SimResults

C.U Solicitar Matriz de Concentracin.


sd Solicitar Matriz de Concentraci... 1.2: 1: 1.1: 2: 1.3:

Usuari o (from Act ors)

Start F

ConcentrationMatrixF

ConcentMatrix

SimResults

138

ANEXOS

ANEXO VI: DIAGRAMAS DE SECUENCIA DE LOS CASOS DE USO MS SIGNIFICATIVOS C.U Cargar Sistema Biolgico (Curso normal de eventos).

139

ANEXOS

C.U Cargar Sistema Biolgico (Seccion: Archivos recientes).

140

ANEXOS

C.U Correr Simulacin.

141

ANEXOS

C.U Consultar Grficos.

142

ANEXOS

C.U Consultar Grficos de Substratos.

143

ANEXOS

C.U Salvar Imagen del Grfico.

C.U Solicitar Historial de Biomasa

144

ANEXOS

C.U Solicitar Distribucin de Flujos.

145

ANEXOS

C.U Solicitar Matriz de Concentracin.

C.U Salvar Datos.

146

ANEXOS

ANEXO VII: INTERFACES DE LA APLICACIN Interfaz del Explorador del Modelo (seccin de los Compartimientos).

147

ANEXOS

Interfaz del Explorador del Modelo (seccin de las Especies).

148

ANEXOS

Interfaz del Explorador del Modelo (seccin de las Reacciones).

149

ANEXOS

Interfaz del Explorador del Modelo (Listado de todas las Reacciones del Modelo).

150

ANEXOS

ANEXO VIII: INTERFACES DE LAS HERRAMIENTAS ESPECIALIZADAS DE LA APLICACIN. Interfaz del rea de Grficos.

151

ANEXOS

Interfaz para la Distribucin de Flujos de la Red.

152

ANEXOS

Interfaz del Historial de Biomasa.

Interfaz de la Matriz de concentracin.

153

ANEXOS

ANEXO VIIII: MTRICAS DEL CDIGO DE LA APLICACIN

Mtrica Maintainability Index Cyclomatic Complexity Depth of Inheritance Class Coupling Lines of Code

Valor 82 831 7 206 5,058

154

ANEXOS

ANEXO X: CASOS DE PRUEBA Caso de Uso: Caso de prueba: Cargar un sistema biolgico desde un archivo .xml, que no est estructurado segn las directivas del sbml. El usuario necesita cargar el sistema biolgico desde el archivo. El archivo pasa el filtro del cuadro de dialogo Open Sbml Model, por ser .xml. El archivo no es un formato sbml vlido. Cargar Sistema Biolgico.

Entrada:

Se muestra un mensaje de error informndole al usuario que el formato no es el esperado/soportado por el sistema.

Resultado:

El sistema se mantiene en su estado original. Condiciones: No se permite que se ejecuten los casos de uso relacionados con Cargar Sistema Biolgico, los cuales necesitan la informacin del mismo.

155

ANEXOS

Caso de Uso: Caso de prueba:

Consultar Grfico de Substratos

Consultar los grficos para substratos, cuando no hay substratos graficables. El usuario desea consultar los grficos de substratos, una vez terminada la simulacin.

Entrada:

El grafico de biomasa se encuentra disponible, pero ningn substrato graficable fue hallado.

El grfico para los substratos se muestra vaco y sin posibilidades de seleccin (A) de algn substrato.
A

Resultado:

Condiciones: No se obtienen grficos para los substratos.

156

ANEXOS

Caso de Uso: Caso de prueba:

Correr simulacin

Correr una simulacin, con los parmetros iniciales en un formato incorrecto. 1.1. El usuario intenta correr una simulacin, con el parmetro inicial (biomasa) en un formato que no es el esperado por el sistema. 1.2. El usuario intenta correr una simulacin, con el parmetro inicial (Time Step) en un formato que no es el esperado por el sistema. 1.3. El usuario intenta correr una simulacin, con el parmetro inicial (n Steps) en un formato que no es el esperado por el sistema. 1.4. El usuario intenta correr una simulacin, con un valor de concentracin para alguno de los substratos de intercambio, en un formato que no es el esperado. 1.5. . El usuario intenta correr una simulacin, con un valor de Lb para alguno de los substratos de intercambio, en un formato que no es el esperado. 1.1. Se muestra el mensaje:

Entrada:

Resultado:

1.2.

Se muestra el mensaje:

157

ANEXOS

1.3.

Se muestra el mensaje:

1.4.

Se muestra, en correspondencia con el substrato que sea, el mensaje:

1.5.

Se muestra, en correspondencia con el substrato que sea, el mensaje:

No se inicia la simulacin, mientras que los parmetros permanezcan Condiciones: incorrectos, ni se ejecutan los casos de uso relacionados con este y necesitan de la informacin que en las simulaciones se genera.

158

ANEXOS

Caso de Uso: Caso de prueba:

Modificar lmites de la Reaccin

Modificar los lmites de la reaccin, cuando los valores entrados no estn en el formato esperado. 1.1. El usuario intenta modificar el lmite inferior (Lb) de una reaccin, pero el valor entrado no est en el formato esperado. 1.2. El usuario intenta modificar el lmite superior (Ub) de una reaccin, pero el valor entrado no est en el formato esperado. 1.1. El sistema muestra el mensaje:

Entrada:

Resultado:

1.2.

El sistema muestra el mensaje:

Condiciones: Los lmites de la reaccin conservan su valor por defecto.

159

You might also like