Разработка сайта - порядок действий, бюджет и техническое задание

отредактировано Сентябрь 2019 Раздел: Общие темы

Порядок действий

Группа:

  • Руководитель проекта - Кылыч
  • Главный разработчик (front-end, back-end) - Мирбек
  • Дизайнер (интерфейс, главная страница и так далее) - российский
  • Контент-менеджер (новости, управлением наполнением материалов) - сообща
  • Внешний контроль и консультации - все тимлидеры и я

Пошаговые действия:

  • Разработка полного ТЗ (техническое задание). 6-7-8 сентября описать основные функции, далее постепенно доработать. Ответственный - я, остальные дополняют и корректируют.
  • Организация разработчика на фуллтайм (первые два месяца, далее можно перевести на part-time). С 9 сентября разработчик должен сидеть на фуллтайме. До 25 сентября должен быть реализован функционал, достаточный для проведения онлайн-теста и некоторые другие функции.
  • Разработка дизайна интерфейсов и всех остальных макетов - дизайнер на удаленке. Начнет работу 10 сентября, 20 сентября будут готовы часть макетов, 25 сентября остальные.
  • Ежедневный контроль всех процессов.
  • Над контентом начнем работу 9 сентября, готовим текстовые документы для публикации на сайт 20-25 сентября.
  • 1 октября выкатываем готовый проект с частичными функциями, в октябре проводим отбор, добавляем новый функционал.
  • С 1 ноября разработчика можно перевести на part-time.

Бюджет:

  • Разработка с 9 сентября по 30 октября - $3000.
  • Дизайн всех макетов - $1500-3000.
  • Контент - бесплатно, пока что.
  • Сервер - $100 в месяц, если на территории КР, $30, если можно использовать серваки на территории других стран.
  • Все работы финансируются из фонда олимпиадного совета, счет которого необходимо открыть в ближайшее время. С поступлением средств пока проблем не вижу.
  • Общий минимальный бюджет только на оболочку сайта в течение года - 1 млн. сомов, это не считая контента, который, надеюсь, мы сможем сделать сами.

Разработка:

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

Разработка узкоспециализированных высокоскоростных web-серверов.

Типичный проект: отказоустойчивый и масштабируемый кластерный движок браузерной игры, портала и т.п. из 5 VDS.

Стоимость аренды оборудования у хостера – около 2000 рублей в месяц.

Производительность ~ 20 миллионов http-запросов в сутки


По разработке какие есть варианты:

  • Мирбек, но только на фуллтайм.
  • Топовый специалист из России на удаленке, можно part-time.
  • Я ездил на IMO2000 вместе с Мундузом Субановым, он лицейский, сейчас работает в Бишкеке. Принимал участие в разработке Balance.kg в качестве одного из главных разработчиков. Знает всех хороших разработчиков в Бишкеке. Можно с его участием подключить местного специалиста на фуллтайм.

Как желательно действовать во всех олимпиадных делах, включая разработку сайта:

  • Если что-то делаешь, делай это хорошо.
  • Делать говно, которое чуть лучше старого говна, нет никакого смысла. Делать говно в другой обертке нет смысла.
  • Сделать отбор ради того, чтобы сказать - я сделал отбор, не стоит. Если стоит задача сделать сайт, на котором можно провести онлайн-тест, такой сайт можно и за сутки запустить. Но зачем? У нас пока вообще ничего не готово.
  • Делать надо системно, а не так, что это на коленке, то на коленке, а на выходе фуфло.
  • Основная проблема олимпиад - пропал олимпиадный дух. Да и время другое сейчас. Поэтому главная задача это восстановить олимпиадный дух, математические кружки, повысить массовость участников, увеличить конкуренцию и так далее. Таким образом можно воздействовать на всю систему школьного образования.
  • Процесс обучения очень сложный, тем более в настоящее время. Не стоит себя переоценивать. Необходимо объединять усилия и использовать современные технологии.
  • Авторитет и роли участников нашего процесса должны быть основаны на их реальных достижениях, как то - какие были результаты в школе, в каком вузе учился, каких учеников подготовил, какие они реальные результаты получили, какой у тебя опыт в том или ином направлении, в котором требуется работа. Должен быть реальный фундамент. На пустом месте трава не растет.
  • Случайные люди никак не помогут реальному улучшению дел, олимпиадных и других.
  • Мы должны работать и сотрудничать со всеми, кто готов реально помочь всему процессу. Такие люди есть и в министерстве (включая нового потенциального министра), и среди профессоров. Как и то, что среди молодежи есть куча пассажиров.
  • Сейчас отличная конъюнктура для реальных изменений в олимпиадах. Мы начинаем объединяться, у нас есть ресурсы, у нас есть связи, потенциальный министр может поддержать все наши реальные дела. Поэтому спешить не стоит.
  • Если говорить о том, что сделано к текущему моменту. Ничего, кроме того, что есть понимание необходимости реформ и объединение молодых участников процесса. Все эти положения по отбору, полусайты и так далее сейчас ничего не стоят и будут стоить ноль при таком развитии событий. Получим новую фигню вместо старой. Пример - Кылыч. Его заслуга в том, что он подготовил трех призеров IOI и создал конкурентную сборную. Ему не нужны эти положения и отборы, по большому счету. Но ему интересно увеличить масштаб своей работы, улучшить результаты, монетизировать в будущем все это через крутые летние школы, которые он сможет организовать на платформе текущего проекта.
  • Необходимо двигаться в трех направлениях: олимпиадный совет, грамотная работа совета с министерством, чтобы проводить свои реформы, сайт.


Комментарии

  • отредактировано Сентябрь 2019

    Техническое задание

    Это не полноценное техническое задание, а простое описание проекта. Для нормального ТЗ можно подключить профильного специалиста (редактор).

    Три основные составляющие проекта:

    • Информационная часть. Главная страница, новости, положения, рейтинги, результаты. Примеры - WP, ModX. Разделы /, /news, /ratings и так далее.
    • LMS. CMS для обучения. Электронная система подготовки школьников, платформа для проведения онлайн-тестов, различные курсы и материалы, онлайн-учебник. Разделы /school, /testing и так далее. Пример - Moodle.
    • Community. Форум, площадка для обсуждений. Раздел /talk.

    Принцип проекта:

    • Надо понять, на чем лучше всего акцентировать проект. Это не изменит функции проекта, но позволит грамотно его позиционировать.
    • Первый вариант - образовательная социальная сеть. Это продвинутый личный кабинет, стена, фото и другие социальные фишки. Несколько ролей - ученики, учителя, наши земляки заграницей и так далее. А уже внутри добавляем функции, типа LMS, онлайн-теста, новостей. Тогда всем пользователям дается больше функций, соответственно они могут сами генерировать контент, вроде новостей.
    • Второй вариант - LMS с онлайн-туром, олимпиадами и туда добавляется форум для социальных фишек. Более официальный вариант.

    Разделение на предметы:

    • Форум пусть будет общий по всем предметам.
    • Для остального возможны такие принципы разделения:
    • По каждому предмету свой подсайт. Тогда, грубо говоря, один движок используем 5 раз, в каждом предмете могут быть отличия. Деление по предметам идет на главной странице сайта. Типа 5 плиток, выбирая плитку Math, попадаем на подсайт /math и уже внутри все остальное, что касается математики.
    • Или разделение по предметам идет внутри каждого раздела, блока, если этот раздел/блок не общий. Например, блок рейтингов может быть поделен на 5 предметов, если по второму варианту. А в первом варианте, в каждом подсайте будет свой блок рейтингов, который будет касаться только своего предмета.

    Варианты реализации:

    • Можно взять три готовых движка и кастомизировать их. Например, связка WP+Moodle+Vanilla. Или просто все на базе Moodle.
    • Можно LMS написать самостоятельно, чистый код или фреймворк. Добавить блок с информационной частью и прикрутить текущий форум.

    Разделы LMS:

    • Тест или экзамен, который можно провести в запланированное время. Участники должны заранее добавить этот тест в список своих мероприятий, осуществить электронную запись на олимпиаду. Всего тест пройдет по 5 предметам - математика, физика, информатика, химия, биология. Результат фиксируется в личном кабинете. Возможны два формата - все пишут тест в одно время (например, с 12-00 до 14-00) или дается интервал, например, 96 часов, внутри которого участник может выбрать сам время начала выполнения теста, активировать его и написать в течение 2 часов.
    • Пробные тесты. Аналогичное разделение на 5 предметов. По каждому предмету ученик может пройти тесты различной сложности онлайн в удобное ему время. Результаты тестов фиксируются в его личном кабинете.
    • Банк заданий. Раздел закрыт для учеников.
    • Курсы по подготовке. Разделение по предметам. Разделение по уровням (3-5 уровней сложности). Разделение по темам. Пример - если уровень IMO, то всего 4 темы. Ученик должен записаться на курс, предварительно пройдя пробный тест. После записи ему будет предложено пройти курс определенной сложности. Например, в одном курсе может быть 100 задач с разбором и 100 задач, где требуется ввести ответ. В личном кабинете отслеживается прохождение курса. Все курсы сопровождаются подробными инструкциями. Например, на себя я могу взять курс по теории чисел для уровней физмат, республика и IMO.
    • Онлайн-учебник по каждому предмету, в котором будут перечислены основные теоремы, так, чтобы материалы могли на них ссылаться. Например, если в каком-то решении используется факт, то можно сделать перекрестную ссылку.
    • Курсы по подготовке к Toefl/Gmat.
    • Можно добавить ОРТ или задания аналогичные ОРТ, которые позволят к нему готовиться.
    • Электронные книги с нашими аннотациями. Не совсем законно, но наверное можно нарушить.
    • Рейтинг участников, который зависит от результатов пробных тестов, прохождения курсов и так далее.
    • Личный кабинет.
    • Информационный блок, где транслируются новости из информационной части и заголовки последних тем форума.
    • Социальные фишки особо не нужны, этого на форуме будет достаточно.
    • Все материалы и юниты (типа решения задачи) комментируемые.

    Роли в LMS и функции:

    • Ученик. Регистрация/авторизация, добавление/прохождение тестов, добавление/прохождение курсов, возможность комментирования.
    • Эксперт. Добавление материалов в банк заданий, добавление материалов в курсы, добавление иных материалов.
    • Администратор. Добавление тестов, курсов и так далее, которые далее будут наполнять эксперты.
  • Информационная часть

    Главная страница:

    • Блок регистрации/авторизации в LMS.
    • Блок описания проекта.
    • Блок новостей, некоторые с анонсами.
    • Блок с онлайн-туром.
    • Блок с заголовками последних тем на форуме.
    • Блок LMS.
    • Блок про национальную олимпиаду.
    • Блок с рейтингами.

    Навигация информационной части:

    • Новости - ссылка на раздел с новостями /news.
    • Онлайн-тур - ссылка на страницу с онлайн туром /testing.
    • Результаты и рейтинги - ссылка на раздел с результатами и рейтингами /results.
    • Национальная олимпиада/отбор - ссылка на раздел про этапы олимпиады/отбора, положения и так далее /olympiads.
    • LMS
    • Форум
    • Личный кабинет в LMS

    За наполнение информационной части отвечает пресс-секретарь совета.

  • отредактировано Сентябрь 2019

    Форум

    Принцип форума всем понятен. Функции и прочее тоже. В будущем база пользователей форума и LMS будет единой.

    Разделы форума:

    • Общие темы
    • Математика
    • Физика
    • Информатика
    • Химия
    • Биология
    • Другие предметы
    • ОРТ
    • Поступление в зарубежные вузы

    Могут быть подразделы. Например, в математике, подраздел IMO.

    Если мы делаем LMS с нуля или на фрейморвке, понятно, что лучше форум тоже дописать вручную. Но у готовых движков, вроде текущего, отличный функционал, не надо придумывать велосипед (что может быть оправдано для LMS). Если получится скомбинировать, то лучше использовать текущий движок. Если нет, то надо добавить блок с форумом в LMS, то есть не скрещивать, а сделать сразу с нуля, как и LMS. Это лучше обсудить с разработчиком.

  • Здравствуйте! Не могу найти раздел LMS. Это тех задание для данного сайта?

Войдите или Зарегистрируйтесь чтобы комментировать.