मैं कंप्यूटर विज्ञान से आया हूं। पृष्ठभूमि, लेकिन अब मैं जीनोमिक्स कर रहा हूँ।जैव सूचना विज्ञान परियोजनाओं को व्यवस्थित करने का सबसे अच्छा तरीका?
मेरी परियोजनाओं में जैव सूचनाओं में शामिल हैं, जिनमें आमतौर पर शामिल हैं: अनुक्रमों और विभिन्न जीनोम-एनोटेशन-फीचर्स के बीच अनुक्रमों को संरेखित करना, जैविक नमूने के विभिन्न वर्गों, समय-पाठ्यक्रम डेटा, microarray, उच्च-थ्रूपुट अनुक्रमण ("next-generation" sequencing, हालांकि यह वर्तमान पीढ़ी वास्तव में है) डेटा, इस तरह की चीजें।
इस प्रकार के विश्लेषण के साथ वर्कफ़्लो जो मैंने अपने कंप्यूटर विज्ञान अध्ययन के दौरान अनुभव किया उससे काफी अलग है: कोई यूएमएल और विचारशील रूप से डिज़ाइन की गई वस्तुओं को उत्कृष्ट लालित्य, कोई संस्करण प्रबंधन, कोई उचित दस्तावेज नहीं है (अक्सर कोई दस्तावेज़ीकरण नहीं) बिल्कुल कोई सॉफ्टवेयर इंजीनियरिंग नहीं।
इसके बजाए, इस क्षेत्र में हर कोई क्या करता है, एक पर्ल-स्क्रिप्ट या AWK-दूसरे के बाद एक-लाइनर है, आमतौर पर एक बार उपयोग के लिए।
मुझे लगता है कि कारण यह है कि इनपुट डेटा और प्रारूप इतनी तेजी से बदलते हैं, प्रश्नों को जल्द ही उत्तर दिया जाना चाहिए (समय सीमा!), कि परियोजना संगठन के लिए कोई समय नहीं लगता है।
इसका वर्णन करने के लिए एक उदाहरण: मान लीजिए कि आप एक रेट्रेटर लिखना चाहते हैं। आप शायद सॉफ्टवेयर इंजीनियरिंग में पहले बहुत प्रयास करेंगे। फिर इसे प्रोग्राम करें, आखिर में कुछ बेहद अनुकूलित फॉर्म में। क्योंकि आप विभिन्न इनपुट डेटा के साथ कई बार रेट्रैसर का उपयोग करेंगे और आने वाले वर्षों की अवधि में स्रोत कोड में परिवर्तन करेंगे। स्क्रैच से गंभीर रेएट्रैसर को कोड करते समय बहुत अच्छी सॉफ्टवेयर इंजीनियरिंग सर्वोपरि होती है। लेकिन कल्पना करें कि आप एक रेट्रेटर लिखना चाहते हैं, जहां आप पहले से ही जानते हैं कि आप इसका इस्तेमाल एक, एक तस्वीर को फिर से करने के लिए करेंगे। और वह तस्वीर एक चेकर्ड फर्श पर एक प्रतिबिंबित क्षेत्र का है। इस मामले में आप इसे किसी भी तरह से एक साथ हैक करेंगे। जैव सूचना विज्ञान केवल बाद के मामले की तरह है।
आप अलग-अलग प्रारूपों में एक ही जानकारी के साथ पूरे निर्देशिका पेड़ के साथ समाप्त होते हैं जब तक आप अगले चरण के लिए आवश्यक एक विशेष प्रारूप तक नहीं पहुंच जाते हैं, और "tmp_SNP_cancer_34521_unique_IDs_not_Chimp.csv" जैसे नामों वाली दर्जन फाइलें हैं जहां आपके पास नहीं है एक दिन बाद मामूली विचार आपने इस फाइल को क्यों बनाया और यह वास्तव में क्या है।
थोड़ी देर के लिए मैं MySQL का उपयोग कर रहा था जिसने मदद की, लेकिन अब जिस गति में नया डेटा जेनरेट किया गया है और स्वरूपों में परिवर्तन ऐसा है कि उचित डेटाबेस डिज़ाइन करना संभव नहीं है।
मैं एक एकल प्रकाशन जो इन मुद्दों के साथ सौदों के बारे में पता कर रहा हूँ (नोबल, डब्ल्यू एस (2009 जुलाई)। कम्प्यूटेशनल जीव विज्ञान परियोजनाओं के आयोजन के लिए एक त्वरित गाइड। PLoS कंप्यूटर बॉय 5 (7), e1000424 +)। लेखक रकम लक्ष्य काफी अच्छी तरह से:
मूल सिद्धांत मार्गदर्शक सरल है: किसी अपरिचित अपनी परियोजना के साथ अपने कंप्यूटर फ़ाइलों को देखो और विस्तार से समझते हैं कि आप क्या किया और क्यों में सक्षम होना चाहिए।
ठीक है, मैं यही चाहता हूं! लेकिन मैं पहले से ही उस लेखक के समान अभ्यासों का पालन कर रहा हूं, और मुझे लगता है कि यह बिल्कुल अपर्याप्त है।
Bash में आपके द्वारा जारी किए गए प्रत्येक आदेश को दस्तावेज करते हुए, यह टिप्पणी करते हुए कि आपने वास्तव में ऐसा क्यों किया, आदि, यह केवल कठिन और त्रुटि-प्रवण है। वर्कफ़्लो के दौरान चरण बहुत बढ़िया हैं।यहां तक कि यदि आप इसे करते हैं, तो यह भी पता लगाने के लिए एक बेहद कठिन कार्य हो सकता है कि प्रत्येक फ़ाइल किस चीज के लिए थी, और जिस बिंदु पर एक विशेष वर्कफ़्लो बाधित था, और किस कारण से और आपने जारी रखा।
(मैं Taverna के अर्थ में "वर्कफ़्लो" शब्द का उपयोग नहीं कर रहा हूं; वर्कफ़्लो द्वारा मेरा मतलब केवल उन चरणों, आदेशों और प्रोग्रामों का अर्थ है जिन्हें आप किसी विशेष लक्ष्य तक पहुंचने के लिए निष्पादित करना चुनते हैं)।
आप अपनी जैव सूचना विज्ञान परियोजनाओं को व्यवस्थित कैसे करते हैं?
मेरे सवालों का है: कैसे * आप * => समुदाय विकी – fredley
बहुत बढ़िया सवाल करना । मुझे अपने आप को संतोषजनक उत्तर नहीं मिला है। मैं जवाब के लिए तत्पर हूं! – pufferfish