Date post: | 14-Jan-2016 |
Category: |
Documents |
Upload: | justin-hunter |
View: | 231 times |
Download: | 2 times |
Software Project MassAnalyst
Roeland Luitwieler
Marnix KammerApril 24, 2006
2
Overview
Introduction
System requirements
Our solution: SpectreProgress so far
Conclusion
3
Introduction
Project initiator
Scientific background
The need for software tools
4
Project initiator
Dr. ir. Bas van BreukelenDepartment of Biomolecular Mass SpectrometryUtrecht University!WENT building
Expert in:BioinformaticsProteomics
5
Scientific background: Proteomics
Our body consists of cellsCell functionality and structure is offered by proteins
ProteomicsMain research areas: Identification of proteins Interaction of proteins Comparison of protein levels
6
Protein identification
How to identify proteins? Identity defined by their structure
Protein structure Protein: sequence of peptides Peptide: sequence of amino acids
20 common types Consist of different atoms – have different masses
Too small to see… but not to weigh Mass Spectrometry!
7
Mass Spectrometry (MS)
Technique using a mass spectrometer
Input: sample of peptides Proteins have been split chemically
Provides a.o. more accuracy, efficiency Most head / tail subsequences are present
Output: mass spectrum Frequencies of particles of certain masses Full peptide sequence can be derived
8
9
Mass Spectrometry (MS)
How does it work? Ionize particles
Now particles have an electrical charge
Accelerate them in an electric field
Deflect them in a magnetic field
Deflection depends on mass (F = m a)
Measure how far they have been deflected
10
Mass Spectrometry (MS)Improvements for better analysis (1)Use chromatography
Spreads input over time: more detailsOutput: a sequence of MS spectra
11
Mass Spectrometry (MS)Improvements for better analysis (2) Use “recursive” mass spectrometry
Called MS/MS (or MS2 or tandem MS) Take part of the sample that produces a peak
Usually concerns one certain peptide Output: MS spectra with related MS/MS spectra
12
Mass Spectrometry (MS)
Improvements for better analysis (3)Use bioinformatics
All output is translated to mzXMLA database is searched on MS/MS spectra
Input: raw MS data Output: pepXML: peptide information
Tools are used to e.g. display the data
Lots of redundant / boring work is taken care of!
13
Bioinformatics:what can be done?
Remember the Proteomics research areas: Identification of proteins Interaction of proteins Comparison of protein levels
Most research: differ one aspect at a time
Requires interactive display of data Zooming, “stacking”, cross sections, etc.
But not just display of data Filtering, “warping”, peak detection, etc.
14
Bioinformatics:existing tools
Tools exist, but… Lots of different tools to do different things Functionality not always as desired They also lack functionality Not easily extendable
Example: Pep3D Nice visualization, but Only one sample at a time, only a single view
Solution: develop new software
15
System requirements
Load raw spectrometry data
Visualize the data
Manipulate and analyze the data interactively
Export data
Extendibility Use in open community Open source
16
Loading data
mzXML: raw spectrometry dataMS spectraEmbedded MS/MS spectra
pepXML: database of matches with peptides
17
Visualizing the data
List of loaded samples
MS spectrum
Cross sections of the MS spectrum
MS/MS spectra
Peptide information
18
Manipulating and analyzing the data
Stacking: toggle samples on/off
Warping
Zooming
Peak detection
More analysis, like ratio calculation
19
Export data
Lists of peak pairs
Modified PepXML (i.e. with ratios)
Images of spectra
Modified samples
20
Our solution: Spectre
21
Opening a workspace
22
Loading a workspace
23
After the workspace is loaded
24
Working in normal mode
25
Zoom on selection mode
26
After zooming in
27
Zoom on click mode
28
After zooming in
29
The structure of Spectre
Graph: MS spectra, cross sections, MS/MS spectraWorkspace: a collection of samples and settingsSample: internal data structure for one sampleGUI: the user interfaceProcessor: the main link between parts of the program
30
The structure of Spectre
Processor
GUI
Workspace
Sample
Graph
*
* 4
1
1
31
Systematic approachto the problem
Phased developmentThree versions
Lots of diagramsApplication of courses MSO, PM
HCI team and data layer teamLater on: data visualization team
Extreme Programming
32
Progress so far
First version will be due in week 18
Functionality: Loading raw data Visualization and user interface Basic interaction with zooming etc. Complete internal data structures Export of images
Missing link between mzXML and pepXML!
33
Further planning
Version 2 – week 23WarpingPeak detection / analysisExport of calculated data
Version 3 – week 27Ratio calculationModification of samples
34
After completion of the project
Web site
Open source further maintainingextendable
35
Conclusion
Spectre: a modular and extendable programA combination of many different requirementsPhased addition of features
Any questions?
36
The data structure
MzTable
Sample
MzNode*
1
SampleParser SampleWriter
MzParser PepParser … …