Выбранные программные средства




Общее описание создаваемого сервиса

программное генеалогическое дерево

Создаваемый веб-сервис предназначается для пользователей сети интернет, интересующихся историей своего рода, собирающих сведения о своих предках, и желающих разобраться в родственных связях, а также привлечь к этому своих близких.

Функции, выполняемые сервисом в интересах пользователя:

а) построение и печать родословных деревьев;

б) импорт и экспорт данных;

в) вычисление и отображение степеней родства между двумя персонами в генеалогических деревьях;

г) хранение мультимедийных данных:

1) текст,

2) фотографии;

д) поиск и фильтрация данных;

е) статистика:

1) количество персон,

2) количество мужчин,

) количество женщин,

) число поколений,

) средняя продолжительность жизни,

) число детей.

Все эти функции доступны пользователю сервиса в личном кабинете - разделе, который доступен только для зарегистрированных пользователей. Личный кабинет позволяет авторизированным пользователям быстро и удобно получать доступ к таким функциям, как работа с генеалогическими деревьями, редактирование личной информации, обмен сообщениями с другими пользователями, хранение мультимедиа-файлов и так далее.


1.2 Суть задачи

 

Задача дипломного проекта - создать веб-сервис для построения генеалогических деревьев. Поставленная задача разбивается на следующие подзадачи:

- разработка и реализация серверной части сервиса;

- разработка и реализация клиентской части сервиса, которая будет предоставлять пользователям возможность создания и редактирования генеалогических деревьев;

- разработка и реализация возможностей импорта и экспорта данных.

Комплексный проект создания веб-сервиса для построения генеалогических деревьев инициирован группой студентов. Его окончательная формулировка и формулировка конкретных задач проведена совместно с научным руководителем.

Задачей данной дипломной работы является разработка и реализация ключевых компонентов системы создаваемого веб-сервиса, на которых будет основана работа всего сервиса для построения генеалогических деревьев. В эту задачу входят такие обширные подзадачи, как:

а) разработка и реализация базы данных для хранения всей получаемой от пользователей информации и всех данных проекта. Для решения этой подзадачи необходимо:

- исследовать существующие реляционные и нереляционные базы данных, их характеристики и главные достоинства;

- выбрать наиболее оптимальные СУБД для хранения данных проекта;

- разработать и реализовать архитектуру баз данных;

- реализовать возможность взаимодействия между выбранными базами данных.

б) разработка и реализация интерфейса для доступа к хранимым данным. В интерфейсе необходимо предоставить стандартный набор операций над данными:

- запись;

- чтение;

- редактирование;

- удаление.

в) авторизация зарегистрированных в сервисе пользователей;

г) разработка и реализация разграничения прав доступа для разных групп пользователей;

д) вычисление и отображение степеней родства между любыми двумя персонами в одном дереве.

Аналоги

 

В качестве аналогов рассмотрены такие существующие в настоящее время веб-сервисы для построения генеалогических деревьев, как:

а) сервис «Genway - больше, чем семья!» (см. [3]);

б) сервис «Moederevo» (см. [4]);

в) сервис «MyHeritage» (см. [5]).

Далее проанализируем достоинства и недостатки перечисленных аналогов.

1.3.1 Сервис «Genway - больше, чем семья!»

Сервис «Genway - больше, чем семья!» содержит графический редактор для построения генеалогических деревьев, обладает приятным дизайном и предоставляет возможность отметить местонахождение человека на карте.

В качестве недостатков сервиса можно отметить следующее:

- сложный интерфейс, неудобное расположение элементов управления;

- возможность строить некорректные деревья;

- отсутствие контроля приватности данных;

- отсутствие импорта и экспорта дерева.

Сервис «Moederevo»

Сервис «Moederevo», помимо графического редактора для построения деревьев и интуитивно понятного интерфейса, предоставляет возможность печати дерева. Но существенными недостатками являются отсутствие контроля приватности данных и отсутствие возможности импорта и экспорта генеалогических деревьев.

Сервис «MyHeritage»

В качестве достоинств сервиса «MyHeritage» отметим следующее:

- графический редактор для составления дерева;

- интуитивно понятный интерфейс;

- возможность печати дерева;

- разнообразие стилей и настроек вида дерева;

- приятный дизайн.

Существенным недостатком данного сервиса является отсутствие возможности импорта и экспорта генеалогических деревьев.

В таблице 1 представлен сравнительный анализ перечисленных выше веб-сервисов для построения генеалогических деревьев.

 

Таблица 1. Сравнительный анализ веб-сервисов для построения генеалогических деревьев

  «Genway - больше, чем семья» «Moederevo» «MyHeritage»
Приятный дизайн да да да
Интуитивно понятный интерфейс нет да да
Графический редактор да да да
Контроль приватности данных нет нет да
Возможность импорта и экспорта данных нет нет нет
Возможность печати дерева нет да да

 

Подводя итог проведенному анализу существующих в настоящее время веб-сервисов для построения генеалогических деревьев можно сказать, что одним из крупнейших в сети интернет генеалогическим ресурсом является сервис «MyHeritage». Существенным недостатком данного сервиса является ограниченные возможности в бесплатном режиме (ограниченное количество родственников в дереве, ограниченное количество доступного места для хранения мультимедийных данных). Ни один из рассмотренных ресурсов не поддерживает импорт и экспорт данных, то есть не предоставляет пользователю возможности сохранить свои наработки вне сервиса.

Создаваемый сервис разрабатывается с целью устранения найденных недостатков, не забывая про имеющиеся достоинства перечисленных сервисов.

Выбранные программные средства

 

Для реализации сервиса основным языком разработки выбран язык Python (см. [6]).

Язык Python - это стабильный и распространённый высокоуровневый язык программирования с акцентом на производительность разработчика и читаемость кода; язык общего назначения с широким спектром возможного применения, выразительным синтаксисом и приемлемой производительностью. Недостаток языка - относительно невысокая скорость выполнения программ - компенсируется уменьшением времени разработки программы. В среднем, программа, написанная на Python, в 2-4 раза компактнее, чем её аналог на C++ или Java.

В качестве каркаса приложения выбран фреймворк Django (см. [7]). Django (Джанго) - свободный фреймворк для веб-приложений на языке Python.

Для хранения данных проекта решено использовать два типа СУБД: реляционную и нереляционную базы данных (см. [8]). Такой выбор основан на необходимости хранения разнородных данных. Реляционная база данных хранит данные, удобно представимые в табличном виде: данные о пользователях, данные о географическом расположении пользователей, о правах доступа, о мультимедийных данных. Для хранения данных о генеалогических деревьях используется документо-ориентированная база данных.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-03-12 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: