Сервис коллективной работы (проект) — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Telegram)
 
(не показаны 2 промежуточные версии ещё одного участника)
Строка 8: Строка 8:
 
|number_of_students=1
 
|number_of_students=1
 
|categorize=yes
 
|categorize=yes
 +
|is_archived=yes
 
}}
 
}}
  
Строка 13: Строка 14:
  
 
Канал в Telegram для объявлений: [https://telegram.me/hse_cs_projects_15x_yacovlev @hse_cs_projects_15x_yacovlev]
 
Канал в Telegram для объявлений: [https://telegram.me/hse_cs_projects_15x_yacovlev @hse_cs_projects_15x_yacovlev]
 +
 +
Нужно создать '''приватный''' репозиторий в BitBucket или GitHub, и добавить в collaborators ментора:
 +
 +
- BitBucket: victor_yacovlev
 +
- GitHub: victor-yacovlev
 +
 +
После этого - заполнить форму [https://goo.gl/forms/lzoRPbyyWJskFc2j2 https://goo.gl/forms/lzoRPbyyWJskFc2j2], в которой нужно указать ссылку на страницу с репозиторием.
  
 
=== Что это за проект? ===
 
=== Что это за проект? ===
Строка 62: Строка 70:
  
 
=== Ориентировочное расписание занятий ===
 
=== Ориентировочное расписание занятий ===
В зависимости от расписания других занятий, которое еще не опубликовано
+
По договоренности.

Текущая версия на 19:19, 18 октября 2017

Ментор Яковлев Виктор
Учебный семестр Осень 2016
Учебный курс 2-й курс
Максимальное количество студентов, выбравших проект: 1


Внимание! Данный проект находится в архиве и реализован не будет.

Контактная информация

Канал в Telegram для объявлений: @hse_cs_projects_15x_yacovlev

Нужно создать приватный репозиторий в BitBucket или GitHub, и добавить в collaborators ментора:

- BitBucket: victor_yacovlev
- GitHub: victor-yacovlev

После этого - заполнить форму https://goo.gl/forms/lzoRPbyyWJskFc2j2, в которой нужно указать ссылку на страницу с репозиторием.

Что это за проект?

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

Чему вы научитесь?

1. Разработке веб-сервисов

2. Проектированию высоконагруженных систем

Какие начальные требования?

1. Знание современных технологий HTML5

2. Понимание основ работы с нереляционными базами данных

3. Понимание принципов работы одной из систем контроля версий, например git

Какие будут использоваться технологии?

1. NoSQL система управления базами данных, на выбор студента

2. Любой веб-фреймворк, на усмотрение студента, ориентированный на одновременную обработку большого количества соединений.

Темы вводных занятий

1. Введение в задачу

2. Внутреннее устройство систем контроля версий

3. Введение в проблему “10K одновременных соединений”

Направления развития

Возможна реализация веб-приложения, функционально эквивалентного Google Documents или Google Spreadsheets.

Критерии оценки

4 балла - реализовано веб-приложение, которое позволяет зарегистрированному пользователю создавать и редактировать тексты.

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

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

7 баллов - под изменением документа подразумевается не только изменение текста, но и изменения в его форматирование.

8 баллов - при одновременном редактировании документа несколькими пользователями, новые правки видны всем пользователям в реальном времени.

9 баллов - гарантируется фиксированное максимальное время уведомления всех пользователей о внесении изменения в редактируемый документ одним из пользователей. Подготовлена система тестов для определения этого времени t при N одновременных подключениях к сервису и k одновременных попытках редактирования одного и того же документа.

10 баллов - выполнение сервиса на современном ноутбуке под управлением ОС Linux гарантирует время ответа не более 500 мс при одновременном подключении не менее 1000 пользователей.

Внимание: критерий на больший балл подразумевает выполнение всех предшествующих ему критериев с меньшим баллом.

Ориентировочное расписание занятий

По договоренности.