- •Тема: Функциональные спецификации приложений WhatsApp, Telegram и сервера обслуживания ip-телефонии
- •Основные термины
- •- Android os 2.3.3 , либо iOs 4.3, либо ос Windows Phone 7.5, либо BlackBerry os 4.6.
- •Текущие и исключённые возможности приложения
- •Uml диаграмма прецедентов (Use Case) приложения WhatsApp
- •- Android os 2.2 , либо iOs 6.0, либо ос Windows Phone 8.1, либо MacOs 10.8, либо наличие обновлённого интерент-браузера на пк.
- •Текущие и исключённые возможности приложения
- •Uml диаграмма прецедентов (Use Case) приложения Telegram
- •Uml диаграмма классов (Class Model) приложений WhatsApp, Telegram
- •Описание кода приложений WhatsApp, Telegram
- •Диаграмма коммуникации протоколов приложения WhatsApp
- •Описание кода взаимодействия протоколов приложения WhatsApp
- •Xmpp ServerRequestRef); /ссылка ServerRequest
- •Описание протоколов приложения Telegram
- •Диаграмма коммуникации протоколов приложения Telegram
- •Описание кода взаимодействия протоколов приложения Telegram
- •IncludePayload (ref /через скрипт mtproto
- •Invite (приглашение) — приглашает пользователя принять участие в сеансе связи (служит для установления нового соединения; может содержать параметры для согласования);
- •Диаграмма коммуникации сервера обслуживания ip-телефонии
- •Описание кода сервера обслуживания ip-телефонии
- •Список использованных источников
- •Приложение
Основные термины
Термины и сокращения |
Значение |
UML |
Унифицированный язык моделирования - язык графического описания для моделирования ПО, организационных структур и т.п. |
Use Case Diagram |
Диаграмма прецедентов (вариантов использования) — диаграмма, отражающая отношения между актёрами и прецедентами |
Прецедент |
Определённая возможность моделируемой системы (часть её функциональности, отдельный сервис), выполняемое ей действие |
Пользователь (актёр, actor) |
Совокупность ролей пользователя (человек, внешняя сущность, класс, другая система) взаимодействующая с некоторой системой (подсистемой, классом). |
Простая ассоциация (association) |
Показывает основную (базовую) связь между актёром и/или вариантами использования, специфицируя особенности взаимодействия. |
Направленная ассоциация |
Простая ассоциация, показывающая, что вариант использования определяется актёром. |
Включение прецендента (include) |
Показывает, что вариант использования включается в базовую последовательность и выполняется всегда |
Расширение прецендента (extend) |
Показывает, что вариант использования расширяет базовую последовательность действий и вставляет собственную последовательность, но при определённых условиях. |
Аккаунт, ID |
Идентификационный номер, код учётной записи |
Чат |
Область (средство, ПО) обмена сообщениями в реальном времени |
Профиль |
Учётная запись, совокупность данных и настроек окружения пользователя |
Аватар |
Графическое представление пользователя |
Обои |
Фоновое изображение, для оформления рабочего стола, окон и т.д. |
Рингтон |
Мелодия звонка |
Смайл |
Стилизованное графическое изображение человеческого лица для изображения эмоций |
Галерея |
Ряд пользовательских картинок, фотографий |
Статус |
Короткая ёмкая фраза, призванная сообщать что-либо о текущем состоянии пользователя в настоящее время. |
Gif-изображение |
популярный формат, представляющий собой анимацию из меняющихся графических растровых изображений. |
Кроссплат - форменность |
Работа ПО более чем на одной аппаратной платформе и/или ОС. |
Push-уведомление |
Оповещение в виде «всплывающих окон» на экране устройства. |
Сквозное шифрование |
Шифрование внутри системы, при котором сообщение шифруется локально на устройстве отправителя и может быть расшифровано исключительно на устройстве получателя. |
Мессенджер |
Система мгновенного обмена сообщениями |
Скрипт |
(или сценарий) отдельная подпрограмма (или программный файл) автоматизирующая некоторую задачу, которую пользователь делал бы вручную, используя интерфейс текущей программы. |
API |
Программный интерфейс приложения - набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением для использования во внешних программных продуктах. |
Веб-сервер |
Сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными. |
Приложение |
(прикладная программа) программа, предназначенная для выполнения определённых задач и рассчитанная на непосредственное взаимодействие с пользователем |
Браузер |
(веб-обозреватель) прикладное программное обеспечение для просмотра веб-страниц, веб-документов, компьютерных файлов и их каталогов, управления веб-приложениями и т.п. |
Протокол |
набор соглашений интерфейса логического уровня, которые определяют обмен данными между различными программами. Эти соглашения задают единообразный способ передачи сообщений и обработки ошибок при взаимодействии программного обеспечения. Разные протоколы зачастую описывают лишь разные стороны одного типа связи. Сигнальный протокол используется для управления соединением. Сетево́й протоко́л — набор правил и действий, позволяющий осуществлять соединение и обмен данными между устройствами. |
Псевдокод |
компактный (зачастую неформальный) язык описания алгоритмов, использующий ключевые слова императивных языков программирования, но опускающий несущественные подробности и специфический синтаксис. Псевдокод обычно опускает детали, несущественные для понимания алгоритма человеком. Такими несущественными деталями могут быть описания переменных, системно-зависимый код и подпрограммы. |
TCP |
Transmission Control Protocol (протокол управления передачей) — один из основных протоколов передачи данных интернета, предназначенный для управления передачей данных. |
HTTP |
HyperText Transfer Protocol (протокол передачи гипертекста) — протокол прикладного уровня передачи данных (изначально — в виде гипертекстовых документов в формате «HTML», в настоящий момент используется для передачи произвольных данных). |
UDP |
User Datagram Protocol (протокол пользовательских датаграмм) — один из ключевых элементов TCP/IP, набора сетевых протоколов для Интернета. С UDP компьютерные приложения могут посылать сообщения (в данном случае называемые датаграммами) другим хостам по IP-сети без необходимости предварительного сообщения для установки специальных каналов передачи или путей данных. |
VoIP |
Voice over IP (передачи голоса через IP) технология для организации двустороннего общения по протоколу IP. К данной технологии относится IP-телефония, а так же передача звука от IP-камер и т.п. |
Архитектура |
совокупность важнейших решений об организации программной системы. Архитектура включает все структурные эл-ты и их интерфейсы, их сотрудничество и их соединение. |
Криптография |
методы обеспечения конфиденциальности (невозможности прочтения информации посторонним), целостности данных (невозможности незаметного изменения информации), аутентификации (проверки подлинности авторства или иных свойств объекта) |
Мультимедиа |
содержимое, в котором одновременно представлена информация в различных формах — звук, анимированная компьютерная графика, видеоряд и т.д., а так же возможность интерактивного взаимодействия пользователя с этим содержимым. |
Бэкдор |
(back door, чёрный ход) дефект алгоритма, который намеренно встраивается в него разработчиком и позволяет получить несанкционированный доступ к данным или удалённому управлению операционной системой и компьютером в целом. |
Канал связи |
система технических средств и среда распространения сигналов для односторонней передачи данных (информации) от отправителя (источника) к получателю (приёмнику). |
Class Diagram |
диаграмма, демонстрирующая классы системы, их атрибуты, методы и взаимосвязи между ними |
Sequence Diagram |
диаграмма, на которой для некоторого набора объектов на единой временной оси показан жизненный цикл какого-либо определённого объекта и взаимодействие актёров (действующих лиц) системы в рамках какого-либо определённого прецедента (отправка запросов и получение ответов). |
Communication Diagram |
диаграмма на которой явно указываются отношения между объектами, а время (в отличии от диаграммы последовательности) как отдельное измерение не используется (применяются порядковые номера вызовов). |
Класс |
элемент ПО, описывающий абстрактный тип данных и его частичную или полную реализацию. |
Объект |
некоторая сущность в компьютерном пространстве, обладающая определённым состоянием и поведением, имеющая заданные значения свойств (атрибутов) и операций над ними (методов). |
Атрибут класса |
переменная, связанная с классом или объектом. |
PSTN |
(телефонная сеть общего пользования) абонентская сеть связи, для доступа к которой используются телефонные аппараты, АТС и оборудование передачи данных. |
Запрос/Ответ |
(запрос клиента, ответ сервера) основные действия программной концепции клиент-сервер |
Резервное копирование |
(backup) процесс создания копии данных на носителе, предназначенном для восстановления данных в случае их повреждения или разрушения. |
Тайм-аут |
(время ожидания) — параметр, связанный с совершением события и предназначен для оценки его завершения за определенное время. |
Функциональная спецификация приложений WhatsApp, Telegram
Приложение WhatsApp
Общие сведения
Whatsapp - система мгновенного обмена текстовыми сообщениями. К основным концепциям сервиса относятся: близкая к реальному времени передача сообщений и небольших файлов между двумя и более пользователями, возможность телефонного разговора между двумя пользователями используя только интернет-траффик, а также возможность оценки доступности контакта пользователем, с помощью системы уведомлений, а так же с помощью установленного контактом статуса.
Первая версия была выпущена 24 февраля 2009 года Яном Кумом и Брайаном Эктоном. Приложением пользуется больше миллиарда человек. С октября 2014 года принадлежит Facebook Inc. У WhatsApp нет проблем с запретом в Китае, Саудовской Аравии и Иране, а также по утверждению Павла Дурова Google и Apple имеют прямой доступ к большей части истории чатов WhatsApp.
Текущая версия 2.17.223
Минимальные системные требования
