4. Четвертий етап виконання курсової роботи - sophiakravchuk/geneanalysis_project GitHub Wiki
Моя програма працює на основі введених користувачем даних і даних, які вона запитує у NCBI. Деякі дані з NCBI кешуються у форматі HTML.
- назва гену(gene_name)
- номер бази даних зі списку(db_number)
Під час введення користувачем назви гена відбувається запит до бази даних, для пошуку ID цього гена, також після введення бази даних певних організмів формується ще певна кількість запитів (пошук RID, фасти і тд.). Оскільки ця інформація є різною для кожного гена чи організму, то обсяг даних завжди різний.
Моє дослідження ґрунтується на пошуку схожостей певного гена з генами іншого організму. При введені користувачем назви гена чи бази даних, спочатку програма перевіряє чи є інформація по заданій назві на NCBI, якщо інформація відсутня, користувач отримує можливість ввести назву повторно.
Отже, за результатом введеної користувачем назви гена здійснюється її перевірка та пошук ідентифікаційного номера на NCBI або у кеші. Після цього користувачу дається список баз даних, по яких можна аналізувати даний ген. База даних перевіряється і формується запит для знаходження посилання на фасту і самої фасти (інформація кешується), тоді дані подаються на бласт і отримується RID, пізніше по цьому RID програма отримує результат. Програма намагається отримати результат кожних 3 секунди, якщо результат не отриманий протягом 300 секунд, програма видає помилку з текстом “Time is out for blasting!”.
Усі отримані файли є у форматі HTML.
Якщо людина правильно ввела всі параметри(назву гену та номер бази даних зі списку), як результат вона отримує звіт порівняння у консолі і можливість зберегти повний результат у файл формату HTML. При введені помилкових параметрів, користувачу буде сповіщено про помилку і буде надана можливість ввести дані повторно.