Uploaded by Фархад Рашидов

Проект (ИТ-11)

advertisement
УДМУТРТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНТИТУТ МАТЕМАТИКИ, ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И
ФИЗИКИ
Проект: “код-редактор для Pascal”
Выполнили Варламов Андрей
и Гизятшин Амаль
студенты группы ОБ.02.03.02.01
Руководитель Лашкарев А.Н
1. Идея актуальность:
Каждый год число людей, которые изучают язык программирования Pascal, только увеличивается.
В школах его преподают как наиболее простой для понимания язык, а в высших учебных
заведениях его изучают на более высоком уровне, погружаясь в сложные математические
функции. Чем дальше человек продвигается в изучении языка, тем больше кода ему нужно писать
для реализации своих идей или выполнения заданий. Однако для языка Pascal написание кода
является огромной проблемой, так как помимо оригинального редактора кода "Pascal ABC.net",
других редакторов не существует. Кроме того, оригинальный редактор не имеет всех удобных
функций, которые уже являются обязательными для современных редакторов. Это становится
настоящим кошмаром для каждого разработчика.
Язык программирования Pascal был создан в 1970-х годах в Швейцарии. Он был разработан в
качестве учебного языка для обучения программированию и быстро стал популярным в учебных
заведениях по всему миру. Несмотря на то, что Pascal был разработан более 40 лет назад, он попрежнему используется многими программистами и студентами.
Одной из основных причин, по которой Pascal продолжает быть популярным языком
программирования, является его простота. Pascal имеет простой и понятный синтаксис, который
легко понять даже новичку в программировании. Это делает его идеальным выбором для
начинающих программистов и студентов, которые только начинают изучать программирование.
Pascal также имеет множество полезных функций, которые делают его удобным для
использования в различных областях. Например, Pascal имеет мощные математические функции,
которые позволяют программистам легко решать сложные математические задачи. Кроме того,
Pascal имеет множество встроенных функций, которые упрощают написание кода и ускоряют
процесс разработки.
Однако, несмотря на все преимущества, Pascal имеет и недостатки. Один из главных недостатков
языка - это ограниченные возможности для разработки крупных проектов. Pascal не предназначен
для разработки крупномасштабных приложений и систем, поэтому его использование ограничено
небольшими проектами и задачами.
Кроме того, Pascal имеет проблемы с открытостью и доступностью. Оригинальный редактор кода
Pascal ABC.net имеет ограниченный набор функций и не соответствует современным стандартам
программирования. Это делает его неудобным для использования программистами, которые
привыкли к современным редакторам кода.
Тем не менее, Pascal по-прежнему остается популярным языком программирования, особенно в
учебных заведениях. Многие университеты и школы продолжают преподавать Pascal как
основной язык программирования, поскольку он предоставляет студентам простой и понятный
способ изучения программирования. Кроме того, Pascal используется в различных областях,
включая математику, науку, физику и инженерию.
В целом, Pascal остается важным языком программирования, который продолжает привлекать
новых пользователей и разработчиков. Он имеет свои преимущества и недостатки, но попрежнему остается популярным выбором для начинающих программистов и студентов.
2. Цель:
- Разработать новый код-редактор для Паскале с удобным интерфейсом и расширенной
функциональностью.
- Улучшить процесс разработки программ на Паскале и повысить эффективность работы
разработчиков.
-Добавить в новый код-редактор функции недостающие предшествующему редактору ABC.net
3. Аудитория:
- Программисты, использующие язык программирования Паскаль.
- Студенты и ученики, изучающие Паскаль в рамках учебной программы.
4. Затраты
Изначальные расходы:
Дизайнер - 15к руб.
Программисты и тестировщики - 200к руб.
Реклама – 100к руб.
Открытие ИП - 50к руб. в год
Аренда сервера на первый месяц – 10к руб.
Итог: 375к руб.
Постоянные затраты:
Постоянные расходы
Админ - 50к руб./месяц.
Реклама - 30к руб./месяц.
Сервер - 10к руб./месяц.
ИП- 50к руб./год = 4.167руб/месяц.
Итог: 94к руб./месяц.
5. Расчет окупаемости:
Количество потенциальных пользователей – 20 млн. чел.
Расчет прибыли от продаж нового код-редактора.
График окупаемости
₽900 000,00
₽800 000,00
₽700 000,00
₽600 000,00
₽500 000,00
₽400 000,00
₽300 000,00
₽200 000,00
₽100 000,00
₽1 мес
2 мес
Расходы
3 мес
4 мес
Доходы
В первый месяц ожидается приток 2000 пользователей, купивших подписку по 100 рублей.
По окончании второго месяца планируется снизить цену месячной подписки до 50 рублей из-за
достаточно большого объёма продаж, в следствии снижения цены ожидается повышение спроса
и увеличение числа пользователей с 3500 до 10000.
Итого срок окупаемости продукта составит 3 месяца с начала продаж.
6. Конкурентный анализ:
- Изучение существующих решений на рынке код-редакторов для Паскале.
На данный момент иных полноценных редакторов кода на языке Pascal помимо “Pascal ABC.net”
не существует. Однако есть дополнительные библиотеки для продуктов компании “Jet Brains”, но
данные библиотеки достаточно сложно установить и о них знает крайне маленький процент
пользователей, поэтому полноценным конкурентом “Jet brains” назвать нельзя.
Для начала, нужно определиться с целевой аудиторией программы "Pascal ABC.NET".
Предположительно, это начинающие программисты, которые изучают язык программирования
PASCAL.
Вот некоторые возможные требования и потребности пользователей, которые могут не
удовлетворяться программой " PASCAL ABC.NET":
1. Недостаточная поддержка новых функций языка программирования PASCAL. Пользователи
могут хотеть использовать более новые и современные функции языка, которые не
поддерживаются в "PASCAL ABC.NET".
2. Ограниченные возможности отладки. Пользователи могут испытывать трудности в отладке
своих программ в "PASCAL ABC.NET", что может затруднять процесс разработки.
3. Отсутствие возможности работы с библиотеками и фреймворками. Пользователи могут хотеть
использовать сторонние библиотеки и фреймворки, которые не поддерживаются в "PASCAL
ABC.NET".
4. Неудобный пользовательский интерфейс. Пользователи могут находить интерфейс "PASCAL
ABC.NET" неудобным в использовании, что может затруднять процесс разработки.
5. Недостаточная поддержка операционных систем. Пользователи могут испытывать проблемы с
работой "PASCAL ABC.NET" на своей операционной системе, что может стать причиной
недовольства.
Некоторые новые функции, которые можно добавить в новый код-редактор для Паскаля, чтобы
отличить его от конкурирующих продуктов, могут включать в себя:
1. Интегрированную среду разработки (IDE) с возможностью создания, отладки и тестирования
приложений, поддержкой нескольких языков программирования.
2. Расширенный набор инструментов для разработки, таких как система контроля версий,
автодополнение кода, интеграция с базами данных и многие другие.
3. Возможность обнаружения и исправления ошибок в реальном времени, что упрощает отладку и
ускоряет процесс разработки.
4. Интеллектуальный рефакторинг кода, который позволяет улучшить читаемость,
поддерживаемость и производительность программы.
5. Встроенный графический дизайнер для создания интерфейсов приложений, что упрощает
процесс создания пользовательских интерфейсов.
6. Инструменты для анализа кода и оптимизации производительности приложений, что позволяет
разработчикам создавать более эффективные программы.
7. Интеграция с облачными сервисами для хранения и совместной работы над проектами, что
позволяет разработчикам работать с проектом из любого места и на любом устройстве.
8. Добавление удобных функций, таких как режим "ночного" или "безотвлекающего" просмотра, а
также возможность настройки интерфейса и раскладки клавиатуры.
Эти функции помогут отличить новый код-редактор от конкурирующих продуктов и сделают его
более привлекательным для пользователей.
Примерное ТЗ:
1. Требования к ресурсам:
- Поддержка процессоров x86 и x64 архитектур;
- Минимальные требования по оперативной памяти 6гб для архитектуры х86 и 4гб для
архитектуры х64
-Поддержка операционных систем Windows и Linux.
- Объём свободного места на диске 5гб
2. Требования к производительности:
- Быстрая загрузка и открытие файлов, файл кода объёмом 1гб должен открываться не дольше 30
секунд.
- Высокая скорость компиляции и выполнения кода, с такой же скоростью или выше, чем в
“Pascal.ABC”.
- Отсутствие фризов и лагов во время работы с программой.
3. Требования к интерфейсу:
- Простой и интуитивно понятный интерфейс.
- Наличие стандартных элементов управления (меню, панели инструментов и т.д.).
- Настраиваемая цветовая гамма.
- Возможность использования специальных функций (например, подсветка синтаксиса).
- Поддержка различных языков.
4. Требования к правам пользователя:
- Наличие различных уровней доступа (администратор, пользователь);
- Возможность настройки прав доступа для каждого пользователя.
5. Требования к хранимым данным:
- Поддержка различных форматов файлов;
- Возможность сохранения кода в различных форматах (например, .pas, .dpr);
- Возможность использования внешних библиотек и модулей.
6. Требования к синхронизации данных и обновлению:
- Возможность авторизации аккаунта по средством сторонних сервисов и дальнейшая
синхронизация данных с привязкой к аккаунту.
- Возможность автоматического обновления программы через интернет.
7. Требования к основному функционалу:
- Удобное построение табуляции с визуализацией уровней табуляции.
- Возможность отладки и тестирования кода. Раздельные варианты компиляции Debug и Release.
- Наличие средств для работы с файлами (например, создание, копирование, перемещение
файлов);
- Возможность использования графических элементов и библиотек.
- Возможность создавать проекты, хранящие в себе множество файлов, автоматически
сортируемых по различным папкам
8. Требования к архитектуре программы:
- Разделение кода на модули и библиотеки;
- Использование современных технологий и архитектурных подходов (например, MVVM);
- Возможность расширения функционала программы через подключение дополнительных
модулей и библиотек.
9. Требования к безопасности данных:
- Защита пользовательских данных (например, паролей) от несанкционированного доступа;
- Возможность резервного копирования и восстановления данных.
10. Требования к установке и режиму распространения:
- Простая установка и настройка;
- Наличие документации и руководства пользователя;
- Соблюдение лицензионных условий и ограничений.
- Защита от нелицензированного распространения ПО, защита от раскрытия кода.
Download