Файл: Проектирование БД для учёта домашних финансов (Описание предметной области. Постановка задачи).pdf
Добавлен: 28.03.2023
Просмотров: 2116
Скачиваний: 60
СОДЕРЖАНИЕ
1.1 Описание предметной области. Постановка задачи
1.2 Выбор средств / методологии проектирования. Выбор СУБД
1.3 Проектирование логической структуры базы данных
1.4 Проектирование физической структуры базы данных
2.1 Инструкции по работе с базой данных
Среднее количество рабочих дней в месяце равно 21. Следовательно, дневная заработная плата определяется делением размера оклада на количество рабочих дней в месяце и вычисляется по формуле (10):
ЗДЗП = О / 21, (10)
Трудоемкость каждого этапа определяется для группы специалистов, отвечающих за этот этап разработки.
Произведение трудоемкости на сумму дневной заработной платы определяет затраты по основной зарплате для каждого работника на все время разработки.
Расчет оклада разработчиков веб-сайта за один рабочий день приведен в таблице 3.
Таблица 3. Расчет оклада сотрудников за один рабочий день
|
Должность |
Оклад в месяц, руб. |
Стоимость одного рабочего дня, руб. |
|
Программист |
30000 |
1428,57 |
В дополнительную заработную плату входит районный коэффициент (Р), равен 15%.
Расчет дополнительной заработной платы производится от основной заработной платы и соответственно будет равен:
P=30000*0,15=4500 (руб).
Затраты на фонд заработной платы за время разработки веб-сайта приведены в таблице 4.
Таблица 4. Расчет фонда заработной платы за период разработки веб-сайта
|
Вид заработной платы |
Денежная оценка, руб. |
|
Основная заработная плата |
30000 |
|
Районный коэффициент |
4500 |
|
Итого |
34500 |
Рассчитаем отчисления по налогам.
На эту статью относятся отчисления по единому социальному налогу (страховые взносы), который составляет 30%. Затраты по данной статье определяются установленным нормативом от расходов на оплату труда работников, непосредственно занятых созданием научно-технической продукции, и вычисляются по формуле (11):
(11)
где
- затраты по страховые взносы, руб.;
- фонд заработной платы, руб.;
- вид налоговых отчислений, %.
Расчет отчислений по страховым взносам приведен в таблице 5
Таблица 5. Отчисления по страховым взносам при разработке веб-сайта
|
Налоговая база на каждого исполнителя |
Фонд заработной платы, руб. |
Общая сумма, руб. |
|
Программист |
30000 |
9000 |
Список переменных издержек и их содержание приведены в таблице 6.
Из этой таблицы можно получить представление на общую сумму переменных издержек, которая впоследствии в сумме с постоянными издержками дадут представлении о полных издержках.
Таблица 6. Переменные издержки при разработке веб-сайта
|
Вид переменных издержек |
Величина, руб. |
|
Затраты на приобретение материалов |
1470 |
|
Затраты на потребляемую электроэнергию |
459,48 |
|
Затраты на оплату труда разработчику |
34500 |
|
Отчисления по налогам |
9000 |
|
Итого |
45429,48 |
Рассмотрим общие затраты.
На эту статью относятся все издержки, которые были произведены при создании веб-сайта.
Структура полных издержек приведена в таблице 7.
Таблица 7. Структура полных издержек при разработке веб-сайта
|
Вид издержек |
Величина, руб. |
|
Постоянные |
1006,86 |
|
Переменные |
45429,48 |
|
Итого |
46436,34 |
Полная себестоимость разработки веб-сайта определяется суммированием постоянных и переменных издержек и вычисляется по формуле (12):
(12)
где
- себестоимость веб-сайта
- постоянные издержки;
- переменные издержки.
Таким образом, себестоимость веб-сайта равна:
= 46436,34руб.
Из таблицы 7 видно, что при веб-сайта наибольший удельный вес занимают переменные издержки.
Рассмотрим, за какое время окупится веб-сайт.
Доход - денежные средства или материальные ценности, полученные государством, физическим или юридическим лицом в результате какой-либо деятельности за определённый период времени.
Доходы от экономии средств планируются в среднем на уровне 5000руб в месяц.
В год при использовании веб-сайта получим: 5000*12 = 60000 (руб.) дохода.
Как было показано, на создание веб-сайта мы потратили 46436,34 рублей, то можно подсчитать, что наш сайт окупится через 0,78 года (26232,83/60000) или, примерно, 9 месяцев.
Учитывая короткую окупаемость веб-сайта (9 месяцев), можно утверждать о целесообразности создания веб-сайта.
ЗАКЛЮЧЕНИЕ
Результатом курсовой работы стало создание БД «Домашняя бухгалтерия». Приложение выполнено в виде веб-приложения и имеет интуитивно-понятный и дружелюбный интерфейс и функционал.
Во время работы над данным проектом были решены следующие задачи:
- Была изучена предметная область, сформированы требования к разрабатываемому программному обеспечению.
- Была разработана простая структура сайта. Страницы сайта построены по одному общему шаблону. Разработка велась на Microsoft Windows 10 в установленной сборке XAMPP, где установлены веб-сервер Apache и база данных MySQL.
- Для хранения информации была разработана база данных MySQL. Разработана инфологическая модель в виде схемы сущностей и связей и текстового описания, с помощью специализированной программы MySQL Workbench была создана даталогическая модель в виде схемы таблиц и связей. Затем с помощью веб-интерфейса phpmyadmin была создана структура таблиц базы данных «home_buh» на 4 таблицы.
СПИСОК ЛИТЕРАТУРЫ
- Дунаев Вадим. HTML, скрипты и стили. Спб.: Издательство “БХВ-Петербург” – 2008. - 1024с
- Ллойд Йен. Создай свой веб-сайт с помощью HTML и CSS. - СПб.: Питер, 2013. - 416 с.
- Локхарт Джош. Современный PHP. Новые возможности и передовой опыт. - М.: ДМК, 2016. - 304 с.
- Макфарланд Дэвид JavaScript. Подробное руководство. - М.: Эксмо, 2009. - 608 c.
- Мальчук Е.В. HTML и CSS. Самоучитель. М.: Издательский дом Вильямс –2008. - 416 с.
- Пауэрс Дэвид. PHP. Создание динамических страниц. - М.: Аст, 2012. - 640 с.
- Робсон Элизабет, Фримен Эрик. Изучаем HTML, XHTML и CSS 2-е изд. - М.: Питер, 2013. - 720 c.
- Холмогоров В. Основы Web-мастерства. Учебный курс. - СПб.: Питер, 2001. - 352 с.
- Хавербеке Марейн. Выразительный JavaScript. Современное веб-программирование. - Спб.: Питер, 2020. - 480 с.
- Чаффер Д. Изучаем jQuery 1.3. Эффективная веб-разработка на JavaScript. - М.: Символ-плюс, 2010. - 448 c.
- Шпильман Сью JSTL. Практическое руководство для JSP-программистов. - М.: КУДИЦ-Образ, 2012. - 272 c.
- Шеер А.В. ARIS - моделирование бизнес-процессов: Вильямс, 2009. - 224с.
- Эспозито Дино. Разработка современных веб-приложений. Анализ предметных областей и технологий. - М.: Вильямс, 2017. - 464 с.
- Гамма Э., Хелм Р. Приемы объектно-ориентированного проектирования. Паттерны проектирования. М.: Изд-во Питер, 2016. – 366 с. Рамбо Д., Блаха М.
- UML 2.0. Объектно-ориентированное моделирование и разработка. М.: Изд-во Питер, 2007. – 544 с.
- Федоров Ю. Н. Справочник инженера по АСУТП: проектирование и разработка. М.: Изд-во Инфра-Инженерия, 2008 г. – 928 с.
- Фаулер М. Архитектура корпоративных программных приложений. М.: Изд-во Вильямс, 2006. – 544 с.
- Иванова Г. С. Технология программирования: учебник для вузов — 3-е изд., перераб. и доп. — М.: Изд-во МГТУ им. Н. Э. Баумана, 2006. — 334 с.
- Маклаков С. В. Создание информационных систем с AllFusion Modeling Suite. М.: Изд-во Диалог-МИФИ, 2005. – 432 с.
- Власов А. И., Лыткин С. Л., Яковлев В. Л. Краткое практическое руководство по языку PL/SQL. — М.: Изд-во Машиностроение — 2000. 64 с.
ПРИЛОЖЕНИЕ А
Листинг дампа БД
-- phpMyAdmin SQL Dump
-- version 5.0.2
-- https://www.phpmyadmin.net/
--
-- Хост: 127.0.0.1
-- Время создания: Янв 10 2021 г., 15:33
-- Версия сервера: 10.4.11-MariaDB
-- Версия PHP: 7.4.5
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- База данных: `home_buh`
--
-- --------------------------------------------------------
--
-- Структура таблицы `items`
--
CREATE TABLE `items` (
`id` int(11) NOT NULL,
`dt` datetime NOT NULL,
`type_oper` int(11) NOT NULL,
`note` text NOT NULL,
`user` int(11) NOT NULL,
`amount` decimal(10,2) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Дамп данных таблицы `items`
--
INSERT INTO `items` (`id`, `dt`, `type_oper`, `note`, `user`, `amount`) VALUES
(5, '2020-12-31 00:00:00', 1, '', 1, '154.00'),
(4, '2020-12-11 11:34:00', 2, '4214234', 1, '4.00'),
(6, '2020-12-31 00:00:00', 2, 'gfg', 2, '3.00'),
(7, '2020-12-18 09:44:00', 1, 'свет', 1, '7.00'),
(8, '2020-12-26 14:19:00', 2, '2', 1, '999.00'),
(9, '2021-01-10 00:00:00', 1, 'надо', 2, '7777.00'),
(10, '2021-01-10 00:00:00', 2, 'gredgergerg', 1, '4545.00'),
(11, '2021-01-10 00:00:00', 1, 'павпвап', 1, '12.00'),
(12, '2021-01-10 00:00:00', 2, 'папавп', 2, '0.02'),
(13, '2021-01-16 17:02:00', 2, 'ттееееееееееест', 1, '123.00'),
(14, '2021-01-14 14:35:00', 2, 'gdg6456', 1, '4.00'),
(15, '2021-01-14 12:35:00', 1, '', 2, '5.00'),
(16, '2021-02-17 14:07:00', 2, '', 1, '7.00'),
(17, '2021-01-10 00:00:00', 1, 'дролд', 1, '234.00'),
(19, '2021-02-05 00:00:00', 1, 'дролд', 1, '2333.00'),
(20, '2021-01-10 00:00:00', 1, '55', 4, '55.00'),
(21, '2021-01-10 00:00:00', 1, '55', 3, '55.00'),
(22, '2021-01-10 00:00:00', 1, '55', 3, '55.00'),
(23, '2021-01-10 00:00:00', 1, '55', 1, '55.00'),
(24, '2021-01-10 00:00:00', 1, '55', 1, '55.00'),
(25, '2020-12-04 17:03:00', 2, 'завтрак', 4, '555.00');
-- --------------------------------------------------------
--
-- Структура таблицы `levels`
--
CREATE TABLE `levels` (
`id` int(11) NOT NULL,
`name` varchar(100) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Дамп данных таблицы `levels`
--
INSERT INTO `levels` (`id`, `name`) VALUES
(5, 'пользователь'),
(10, 'администратор');
-- --------------------------------------------------------
--
-- Структура таблицы `types`
--
CREATE TABLE `types` (
`id` int(11) NOT NULL,
`name` varchar(100) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Дамп данных таблицы `types`
--
INSERT INTO `types` (`id`, `name`) VALUES
(1, 'приход'),
(2, 'расход');
-- --------------------------------------------------------
--
-- Структура таблицы `users`
--
CREATE TABLE `users` (
`id` int(11) NOT NULL,
`fio` varchar(200) DEFAULT NULL COMMENT 'фио ',
`rank` varchar(200) DEFAULT NULL COMMENT 'должность',
`level` int(11) DEFAULT NULL,
`password` varchar(32) DEFAULT NULL,
`login` varchar(20) DEFAULT NULL,
`phone` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Дамп данных таблицы `users`
--
INSERT INTO `users` (`id`, `fio`, `rank`, `level`, `password`, `login`, `phone`) VALUES
(1, 'Иванков Иван Иванович', 'Папа', 10, 'pap', 'pap', ''),
(2, 'Иванкова Иванна Петровна', 'Мама', 10, 'mam', 'mam', ''),
(3, 'Иванкова Ольга Ивановна', 'Дочь', 5, 'doch', 'doch', ''),