Файл: Индивидуальное задание на производственную (преддипломную) практику.docx
Добавлен: 04.12.2023
Просмотров: 327
Скачиваний: 6
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
3) Сетевое оборудование – это компоненты, которые обеспечивают передачу данных между клиентскими устройствами и серверами. Сетевое оборудование может включать в себя маршрутизаторы, коммутаторы и другие элементы сетевой инфраструктуры.
4) Безопасность системы – это набор компонентов, которые обеспечивают безопасность информации предоставляемой системой. Эта область может включать в себя антивирусы, программы защиты от взлома и угроз безопасности, а также системы резервного копирования.
5) Операционные системы и приложения – это программное обеспечение, которое используется для обеспечения работы системы и её компонентов. Операционные системы и приложения обеспечивают работоспособность и эффективность информационной системы.
Ус тройственная архитектура системы обычно включает в себя определение аппаратного обеспечения, используемого для каждого компонента. Она может также определять взаимодействие между компонентами, их расположение и другие аппаратные особенности.
7. Основные требования к разработке информационной системы:
1) Языки программирования:
- Python 3.7 и выше для бекенда
- JavaScript для фронтенда
2) Фреймворки:
- Django 3.0 и выше для бекенда
- ReactJS для фронтенда
3) Инструменты разработки:
- PyCharm для написания кода на Python
- Visual Studio Code для написания кода на JavaScript и ReactJS
- Git и GitHub для контроля версий
- Docker для создания контейнеров
4) База данных:
- PostgreSQL
5) Требования к тестированию:
- Необходимо проводить все виды тестирования: модульное, функциональное, интеграционное, системное
- Тестирование должно проводиться на всех уровнях разработки
- В процессе тестирования должны быть обнаружены все ошибки и дефекты
6) Требования к документированию:
- Необходимо подготовить документацию на все компоненты, модули и функции системы
- Документация должна содержать описание всех функций и методов, примеры использования
- Документация должна быть обновлена после каждого изменения в системе.
8. Для разработки программного обеспечения для автоматизации учета клиентов необходимо подготовить следующие спецификации и техническую документацию:
1) Техническое задание (ТЗ) - основной документ, содержащий требования к разрабатываемому программному обеспечению. В ТЗ должны быть описаны следующие моменты:
- Описание функционала программы (например, учет контактной информации клиентов, их заказов и оплат, и т.д.).
- Требования к интерфейсам (например, удобства использования, дизайна и т.д.).
- Требования к базе данных (например, тип и структура базы данных, формат хранения данных и т.д.).
- Требования к производительности (например, количество клиентов, которых программа должна обслуживать, время отклика и т.д.).
- Требования к безопасности (например, шифрование конфиденциальной информации клиентов и т.д.).
- Дополнительная информация (например, распределенный доступ к данным, поддержка разных форматов файлов и т.д.).
2) Инструкция по установке и использованию программного обеспечения - этот документ, содержащий сведения о том, как установить и работать с программой. В нем должны содержаться:
- Информация о необходимом окружении программы (операционная система, версия языка программирования, требования к железу и т.д.).
- Шаги по установке и настройке программы.
- Инструкции по работе с программой (например, как добавить нового клиента, как удалить клиента из базы данных и т.д.).
3) Спецификация архитектуры приложения - документ, описывающий структуру и компоненты программы. Он содержит следующую информацию:
- Схему архитектуры приложения (например, блок-схема).
- Описание каждого компонента и связи между ними.
- Информацию о структуре базы данных и логики работы приложения.
4) Тестовая документация - документ, содержащий информацию о проведенных тестах на работоспособность приложения. Она включает в себя:
- Перечень тестов (например, тесты на добавление/удаление/редактирование информации по клиенту и т.д.).
- Результаты каждого теста.
- Информацию о методиках тестирования и используемом оборудовании.
5) Документация по безопасности - документ, описывающий все меры безопасности и защиты данных, применяемые в проекте. Он содержит следующую информацию:
- Информацию о доступе к программе и базе данных.
- Описание шифрования данных и методов защиты передачи данных между клиентом и сервером.
9. Для тестирования функциональности и производительности информационной системы необходимо подготовить различные тестовые данные и сценарии. Ниже представлены возможные примеры тестовых данных и сценариев:
1) Тестовые данные для проверки функциональности:
- Набор данных клиентов (имя, фамилия, адрес, номер телефона, адрес электронной почты и т.д.)
- Набор данных заказов (номер заказа, дата заказа, клиент, описание продукта, цена и т.д.)
- Набор данных оплат (номер заказа, дата оплаты, вид оплаты, сумма оплаты и т.д.)
2) Сценарии проверки функциональности:
- Добавление нового клиента и проверка, что он появился в базе данных
- Добавление нового заказа для клиента и проверка, что он был успешно добавлен
- Добавление новой оплаты для заказа и проверка, что сумма оплаты была корректно учтена
- Редактирование информации о клиенте и проверка, что изменения были успешно сохранены
- Удаление заказа и проверка, что он был удален из базы данных
- Поиск заказа по номеру заказа и проверка, что он был найден
3) Тестовые данные для проверки производительности:
- Набор данных клиентов, заказов и оплат малого объема (несколько десятков записей)
- Набор данных клиентов, заказов и оплат большого объема (несколько тысяч записей)
4) Сценарии проверки производительности:
- Добавление новых записей и проверка времени, необходимого для добавления
- Поиск заказа по номеру и проверка времени, необходимого для поиска
- Генерация отчета по заказам за период и проверка времени генерации
Для выполнения тестирования функциональности и производительности системы можно использовать автоматические инструменты тестирования, например, JMeter. Также можно провести ручное тестирование, следующие за предложенными выше сценариями. В результате проверки необходимо создать отчеты с описанием результатов тестирования и информацией о найденных проблемах и ошибках.
10. Процесс развертывания, настройки и обновления программного обеспечения:
1) Развертывание:
- Установка основной системы (операционной системы, PostgreSQL, Python и т.д.).
- Создание виртуальных окружений для бекенда и фронтенда.
- Установка зависимостей бекенда и фронтенда.
- Подготовка базы данных (создание таблиц, заполнение начальных данных)
- Запуск сервера бекенда и фронтенда
2) Настройка:
- Настройка параметров базы данных и приложения в файле конфигурации.
- Определение прав доступа для пользователей и групп.
- Настройка системных параметров для оптимизации работы приложения.
- Настройка логирования для сбора данных о работе системы.
3) Обновление:
- Получение новой версии приложения из репозитория Git.
- Установка зависимостей новой версии приложения.
- Обновление базы данных (в случае изменений в структуре).
- Перезапуск сервера.
План реализации проекта:
1. Анализ требований заказчика и составление ТЗ.
2. Разработка архитектуры системы.
3. Выбор языков программирования, фреймворков и инструментов разработки.
4. Разработка базы данных и создание начальных данных.
5. Разработка основной функциональности системы (бекенд и фронтенд).
6. Написание тестового плана и проведение тестирования.
7. Релизный процесс (тестирование, деплой, установка, настройка).
8. Разработка документации.
План сопровождения созданной системы:
1. Поддержка со стороны команды разработчиков (обновление кода, исправление ошибок и т.д).
2. Предоставление документации, необходимой для обслуживания и поддержки системы.
3. Проведение регулярных тестов производительности и безопасности системы.
4. Определение и исправление ошибок в ходе работы системы.
5. Разработка дополнительных функций и модулей в ответ на запросы клиентов.
3.2 Подготовка данных для реализации предмета проектирования
Подготовка данных для реализации предмета проектирования для автоматизации учёта клиентов включает в себя следующие пункты:
1. Сбор информации о клиентах является одним из важных этапов при разработке программного обеспечения для автоматизации учета клиентов. Ниже представлены возможные данные, которые следует собрать о каждом клиенте:
1) ФИО - полное имя клиента.
2) Контактные данные - телефон, email и другие данные, необходимые для связи с клиентом.
3) Адреса доставки - полный адрес клиента, включая район, улицу и номер дома.
4) Предпочтения по доставке - выбранный метод доставки, удобный график доставки и т.д.
5) История заказов - информация о предыдущих заказах, включая дату, номер заказа, товары, сумму заказа и т.д.
6) Комментарии к заказам - дополнительная информация о заказе, которую может оставить клиент, например, пожелания по упаковке или доставке.
Все данные о клиентах должны быть сохранены в базе данных для дальнейшей работы с ними в программном обеспечении.
2. Сбор требований к функционалу программного обеспечения для автоматизации учета клиентов включает следующие пункты:
-
Возможность добавления, редактирования и удаления клиентов, включая сведения о ФИО, контактных данных и адресах доставки. -
Возможность просмотра и анализа заказов и их статусов, включая информацию о дате заказа, номере заказа, сумме заказа, составе товаров, способов доставки и оплаты. -
Управление данными о клиентах, включая возможность просмотра и редактирования информации, связанной с каждым клиентом, а также создание отчетов о заказах клиента. -
Возможность фильтрации и поиска информации, включая поиск клиентов по ФИО, адресу, номеру телефона, поиск заказов по дате, номеру заказа или статусу. -
Наличие автоматического оповещения клиента о состоянии его заказа и сроках доставки. -
Наличие системы соответствующих скидок и бонусов для постоянных клиентов. -
Наличие системы учета и просмотра истории заказов клиентов, с возможностью просмотра информации за определенный период времени. -
Система контроля доступа и защиты данных от несанкционированного доступа к информации о клиентах и заказах. -
Наличие системы резервного копирования и восстановления данных для обеспечения надежности системы в случае сбоев и ошибок.