О Т З Ы В на бакалаврскую работу студентки 461 группы кафедры информатики математико-механического факультета СПбГУ Хохловой Дарьи Дмитриевны «РАЗРАБОТКА И РЕАЛИЗАЦИЯ МОБИЛЬНОГО ПРИЛОЖЕНИЯ ДЛЯ ИДЕНТИФИКАЦИИ АБОНЕНТОВ» Цель бакалаврской работы Хохловой Д.Д. состояла в разработке системы CallDialer, которая помогает пользователям определять цель поступающего вызова по его телефонному номеру. Актуальность такой задачи обусловлена возрастающим количеством контактов между различными людьми в современном обществе: социологические опросы, коллекторские агентства, рекламные акции повышают информационную и эмоциональную нагрузку на пользователя, который, во-первых, вынужден отвлекаться от своей работы, а во-вторых может пропустить действительно важный для него звонок. С другой стороны, такое приложение должно обеспечить идентификацию номеров как физических, так и юридических лиц, а также высокое качество информации о них. В эту задачу, кроме реализации непосредственно системы хранения и доступа к информации, также входит и реализация учета обратной связи от пользователей, предлагающих собственные варианты описания целей поступивших звонков. Научная новизна предложенной системы заключается в методике построения рейтинга поступающих вариантов, который препятствует искусственной “накрутке” баллов и эффективно приспосабливается к смене номера звонящего. Преимущество данной работы состоит в том, что в ней предлагается реализация серверной части системы CallDialer на облачной платформе Microsoft Azure, что обеспечивает ее высокую доступность и производительность, в то время как реализация клиентской части на каркасе Xamarin позволяет портировать мобильное приложение на платформы, отличные от Android. Теоретическая часть работы включает в себя сравнительный обзор существующих телефонных справочников в виде веб- и мобильных приложений. Далее делается обоснованный вывод о том, что они либо ограничиваются базой юридических лиц, либо не обеспечивают качество предоставляемой информации. В качестве решения этой проблемы предложена и формализована методика сбора и голосования за варианты, предложенные самими пользователями. Наконец, производится ее сравнение с аналогичными рейтинговыми системами. Практическая работа заключалась в проектировании облачной базы данных, которая хранит информацию о различных вариантах описания каждого абонента, его идентификаторе, времени последнего звонка, телефонных префиксах, связанных с ними регионах и пр. Кроме того описана реализация веб-приложения, которое служит интерфейсом к базе данных для мобильного приложения, чье описание архитектуры завершает практическую часть. Результатом стал программный комплекс, обеспечивающий быстрый отклик за счет многоуровневого кэширования (на клиентском устройстве и сервере), а также автоматически регулирующий рейтинг всех вариантов на основе голосов пользователей. В работе были решены задачи и достигнуты цели, которые были поставлены в рамках бакалаврской работы. Разработанная система является уникальной. Практическая часть дипломной работы была реализована и протестирована, а дипломная записка достаточно полно, подробно и грамотно отражает суть работы. Рассуждения объективны и полностью разрешают поставленные задачи. В то же время студенткой указаны и четко описаны несколько направлений развития, которые позволят улучшить систему, и могут являться темой для дальнейших исследований. Однако в работе присутствуют и недостатки. Во-первых, отмечаются такие погрешности оформления как не отобразившиеся дефисы и опечатки. Во-вторых, не дана достаточная мотивация принятых архитектурных решений. Например, почему для кэширования на стороне сервера не использованы соответствующие сервисы Microsoft Azure? Исходя из контекста становится понятно, что система CallDialer проектировалась с учетом минимально возможных затрат на облачный хостинг и ее текущая версия развернута на льготной пробной подписке DreamSpark, которая имеет ограниченные возможности. Такие предпосылки сильно влияют на архитектуру и должны быть явно сформулированы. В-третьих, во введении упомянуто второе веб-приложение для сбора информации о номерах на Интернет-ресурсах, однако оно еще не реализовано. Было бы логичнее переместить сведения о нем в раздел “Заключение и будущая работа”. В-четвертых, рейтинг описания номера строится на свободном вводе пользователей, которые затем сравниваются друг с другом по фонетическому алгоритму. Очевидно, чтобы сравнение описаний было успешным, необходимо наличие каких-то рекомендаций к их составлению: рекомендуемая длина, общий словарь, еще что-то. В работе они не упомянуты. Отмеченные недостатки существенно не снижают качество исследований и не влияют на главные результаты данной бакалаврской работы, которые были успешно представлены на конференциях “Наука настоящего и будущего 2016”, “СПИСОК 2016” и “Современные технологии в теории и практике программирования 2016”. По результатам проверки SafeAssign неправомерных заимствований в тексте работы не обнаружено. Поэтому Хохлова Д.Д. может быть рекомендована к продолжению своей научной деятельности в магистратуре. Считаю, что данная дипломная работа заслуживает оценки «ОТЛИЧНО». Рецензент, доцент кафедры информатики математико-механического факультета СПбГУ к.ф.-м.н. Григорьев Д.А. 12.05.2016