Доработка продукта, передача заказчику, завершение сделки

Заключительный день прошел как по маслу. Перед отправкой я, конечно же, расписала все файлы комментариями и составила небольшую инструкцию по установке, точнее просто информацию о подключении баз данных.

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

Появление новой задачи и попытка ее преодоления.

Новая задача и ее реализация.

Закончив с прототипом проекта, в понедельник я уже рассчитывала отдать заказ его владельцу. Но в субботу, к моему удивлению, заказчик сам написал мне. Он попросил добавить в панель персонажа возможность прохождения теста, после которого, само собой результат теста сохраняется. 


Решив, что, почему бы и нет, я реализовала данную возможность. Тест был написан по всем канонам "тестостроения". Вопросы рандомно перемешивались и после прохождения удачного теста, кнопка одобряюще перекрашивалась в зеленый цвет.

Добавление панели персонажа и исправление багов. Итог.

Исправление недоработок.

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

Панель персонажа.

Кроме того,не пришлось сделать страницу с отображением информации, список которой мне предоставил заказчик вчера вечером. Благодаря bootstrap это не заняло много времени.


Итог.

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

Извлечение недостающих ресурсов разными способами.

Извлечение пользы от уже существующего.

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

Получение необходимого от заказчика.

Дальше легче, мне нужно написать уже само отображение информации о пользователе. Это-то и стало необходимым для меня ресурсом, который извлечь я могла только от самого заказчика. Я спросила у него, какую именно информацию потребуется отображать, на что получила внятный ответ. Но этим я уже займусь завтра.

Определение недостающих ресурсов и их поиск.

Панель управления.

Если говорить о какой-то конкретной нехватки ресурсов, то это регистрация/авторизация для сайта. Не долго думая, я нашла нужную мне информацию и изучила её, затем выбрала один из наиболее подходящих и безопасных методов авторизации. Его суть состоит в простом использовании сессий, а для того что бы не вводить пароль каждый раз я при каждой авторизации сохраняю логин в cookie, а так же случайно сгенерированную хешированную строку, затем уже при каждом посещении используя все это определяю, показывать ли пользователю страницу или нет.
Ну а перед этим мне нужно было написать саму регистрацию, да и вообще пора бы опробовать библиотеку, для работы с базой данных. Простым запросом через mysqli_query было бы куда проще, но подключив новенькую orm, я столкнулась с тем, что я совершенно не понимала как ее использовать. Благо сеть пестрит информацией, поэтому я все же разобралась со всем этим. В итоге получилась регистрацию с шифровкой пароля по алгоритму whirepool. 


Дизайн.

Увидев примеры применения bootstrap’a, я решила, что сайту подойдет анимированное окошко с изображениями, на сайте фреймворка это называется carousel. Кажется, именно это и нужно заказчику. Я сразу вставила изображения, которые мне прислал заказчик еще в первый день, что бы наглядно увидеть результат. Помимо этого окошка на главной странице так же есть три кнопки, одна из которых – переход к самой панели, другие две уже по желанию заказчика. 

Первая попытка сделать проект. Первые ограничения. Устранение проблем.

Начало работы.

Осознавая то, что у меня всего одна неделя на столь амбициозный проект, я сразу же решила приступить к выполнению задачи. Я написала базовую графическую оболочку сайта, подключив к нему необходимый фреймворк.
Макет сайта я сразу же решила продемонстрировать заказчику, отослала ему по почте. Мне повезло, заказчик остался доволен моей работой.


Первые ограничения.

Дальше я приступила к системной реализации проекта. Тут я и столкнулась со своей первой проблемой - защита сайта. Изначально я хотела использовать встроенные в php функции для работы с sql запросами, но безопасность подобного метода оставляет желать лучшего. А может подключить уже готовую ORM? 


Поиск решения.

Моя интуиция подсказывала мне, что лучшим выходом из этого положения будет подключить к сайту ORM, которая одновременно обеспечит защиту и легкость использования баз данных.
Я решила, что библиотека RedBeanPHP отлично подойдет для решения моих проблем, поэтому я незамедлительно обратилась к заказчику с вопросом, могу ли я использовать эту библиотеку. К счастью, заказчик ответил положительно. А уже завтра я приступлю к реализации.

В статье описывается процесс поиска заказчика, обсуждение задачи, а также оплата аванса.

Поиск заказчика.

Общение мне легче даётся в письменной форме, поэтому я решила найти работодателя в сети. Однако мне никак не везло. Некоторые отказывались от подобной авантюры, некоторые вовсе не отвечали. Помогла мне информация о новом заказчике в Telegram, который искал человека на разработку UserControlPanel, иначе говоря, панель управления пользователя. Я сразу загорелась такой идеей, ведь раньше имела дело с веб-разработкой, в том числе и с UCP, но достаточно поверхностно.

Совещание с заказчиком о задаче.

Задача оказалась немного обширнее, чем я предполагала. Изначально я поняла, что у заказчика уже есть какая-то основа, то есть сайт и мне всего-то и нужно внедрить туда UCP. Однако заказчик сразу разуверил меня в этом и поставил вполне конкретную цель, а именно создать сайт, используя Bootstrap, с панелью управления, при этом не забыть и о безопасности сайта. Конечно, у меня тут же возникло множество вопросов, но работодатель незамедлительно мне обо всем рассказал.

Думаю, моей ошибкой было то, что я немного поторопила события и уже попросила у заказчика

необходимые изображения для сайта, хотя мы еще даже не договорились о начале работы.

Оплата.

Заказчик поставил передо мной конкретный вопрос, на какую сумму я рассчитываю. Взвесив все, я решила предложить сойтись на 1000 рублей, благо, заказчик согласился и вскоре прислал мне авансом 300 рублей.

Объявления

Проектная практика для студентов Института фундаментального образования УрФУСобытие

Новости:

Открыта регистрация команд для участия в проектной практике (открыто до 27.06.2017)

Партнеры:

ИнФО УрФУ - Генеральный партнер в проведении проектной практики в июне-июле 2017 года

Роботология - Российское оборудование для программирования и конструирования роботов

Уральский клуб нового образования - общественная организация, которая разрабатывает и реализует социально-образовательные проекты

Архив событий:

Молодежный космический форум - 2017 (Четвертые Семихатовские чтения)Конкурс

Выбор темы работы для участия в IV Семихатовских чтенияхО Форуме-2017

Подписка на новости
Контакты

Адрес: г. Екатеринбург, ул. Мамина-Сибиряка 145, к. 1119 (на карте)

Тел.: +7 (343) 355-93-88

info@cosmoport.club