What is Alloy? An E/R diagram and table index for Alloy The "Readme"
Sample Login Sample Individual Sample Pedigree Sample Marker Data Sample Genotype Data
Milestone 2 Information E/R Diagram Update
Alloy 1.0a Screenshots!
Ferrous: SOA in Action
Welcome to the Alloy demo. The links on the left will provide you with a variety of examples to look at. This demo's interface should provide a good idea of how Alloy's look and feel will appear. This is just the first glipmse at the full functionality of the web application to come.

Alloy is a web utility for bioinformaticians and geneticists. It can be used in a variety of ways and provides a number of functional components:
Data populating Alloy will include pedigree, marker and genotype data generously donated by the University of Miami division of cardiology's ongoing population genetics studies. All private demographic information will be withheld from the database, and will instead be replaced by automatically generated information.
Alloy is a Sentient product.
Constructed with WBCOP          a Sentient product
				
A copy of the Alloy sample database can be generated from rack040 by following these instructions:
  1. Head to the /home/teeb directory on rack040.
  2. Set up the sample database by executing the command

    { alloy_setup.sh }

    the above file will generate all the tables and sample data necessary to run basic queries. If you happen to be someone grading this project, please kindly use the batch command on the file alloy_drop.sql to reset the tables as I may change a few more things before the week is up.
  3. To run and examine a set of sample queries that will be used for applications within Alloy, run the batch command

    { db2 -tvf alloy_sample.sql > alloy_sample.out }

    These commands are sorted by section within the .sql file. For example, the login section is the first of the samples given, the first division of sql queries in the .sql file are written specifically for that section.
  4. Finally, when reading the results from instruction 3., make sure to look at the corresponding page examples given in the links provided.
Username=
Password=
Go!

Welcome falafel! Here are your projects:


Duke IGSP
Families in Durham

Start a new project...

Project 'Duke Population Genetics' - Individuals

NameAge Pedigree Name,Genotype Data on File?Link to Genotype Data
Anna Bello 34 Marcus-Bello Family YesReceived on 4/5/06
Christopher Marcus 32 Marcus-Bello Family YesReceived on 5/26/06
Maria Bello 67 Marcus-Bello Family YesReceived on 5/27/06
Andrew Barker Sr. 23 Barker Family NoN/A
Andrew Barker Jr. 23 Barker Family YesReceived on 4/23/06

Duke Population Genetics - Marcus-Bello Family


Marker Set

Marker rs #Affected GeneMajor AlleleMinor AlleleDen Dunnen Notation
rs12345ABC23CTdendunnen1
rs12346ABD23CAdendunnen2
rs12347ABE24GTdendunnen3
rs12348ABF25ACdendunnen4
...............

Duke Population Genetics - Genotype Results

Individual IDMarker IDWild Type / MutantZygosity
Anna Bellors12345Wild TypeN/A
Christopher Marcusrs12345Wild TypeN/A
Maria Bellors12345MutantHetero
............
wedge Milestone 2
wedgeI Additions
wedge As of milestone 2, Alloy's production dataset has been installed on db2. In converting between the University of Miami's format and Alloy's, the following changes were made to make information consistent:
wedgeA Genotype Information
*1 For zygosity and mutation type values, the following constants have been implemented. Homozygosity is denoted "ho" while heterozygosity is denoted "he". A mutation resulting in an ammino acid change is denoted "am" while a mutation resulting in a nucleotide change is denoted "nu." Unknown values are denoted "un" for both.
wedgeII Changes
wedge Schema Changes:
wedgeA The "Genotypes" table has been split into two tables, "Mutations" and "Normal". This change was made for several reasons
*1 The "Normal" table provides a separate table to explicitly mark the exons a particular individual has had 'cleared', or marked as not having any mutations.
*2 The cost of a schema that uses special notation to indicate that either the results of a genotyping test have been 'cleared' or are 'unknown' is much greater than simply splitting the information into two tables explicitly for known mutations and cleared exons and assuming all other information to be unknown. The two new tables can also still be referenced against the existing "Markers" and "Genes" tables. The revised E/R diagram will be available online.
*B The "Affects" table has had the field "Amino Acid" added.
*C Tables including the field "Exon" have been changed to varchars instead of ints, since exons may include sub-sections (eg "2c") or may be given in ranges ("4-6").
wedgeIII Production Dataset Scripts
* A set of utilities used to parse data sent directly by the University of Miami. The source code for these utilities can be found on rack040 under teeb/alloy/m2/utils. While the option of performing data conversions on rack040's Java utility was available, due to the private nature of patient data, the conversion took place entirely on my computer and had all the private demographic information removed from the .dat files.
* The same import methods used for sample code in milestone 1 was used to import the data directly into db2. For details, see Milestone 1.
* Testing the production dataset can be done by running the command 'db2 -tvf alloy_production.sql > alloy_production.out' . Notice that the information contained in the tables Users, WorkingOn, and Projects has remained relatively the same while data unrelated to site users has been updated to match the production dataset.
wedgeIV Platform
* Alloy will use rack040's JSP service.
* Alpha version will run using AJAX powered by the ContentLoader javascript class as a very basic prototype for server-client interaction.
wedge Coming very very soon: Sample Queries on the Production Dataset Through the Platform
* To see the production dataset in action, run 'ant deploy' in the alloy directory. localhost—alloy will link you directly to the demo page with some built in queries for viewing. Notice the use of the ContentLoader to asynchronously interact with the server.
* Remember to undeploy!

Ferrous is an addition to Alloy that will allow different research organizations producing useful services to share and share alike. The service will be particularly useful to groups with: Taking advantage of Service-Oriented design patterns, Ferrous will allow research groups to publish services that can be used in conjunction with existing components in Alloy. Not only does Ferrous facilitate the creation of service workflows, but will also help create service communities, in which groups with similar research goals can collaborate on service creation. The benefits of the service community approach can be found at the SOA and Bioinformatics blog.