- •I. Правила ведения дневника
- •II. Основные положения по организации практики Права и обязанности студентов
- •1. Студенты имеют право:
- •2. Студенты при прохождении практики обязаны:
- •III. Направление на практику
- •IV. Индивидуальное задание студента на практику
- •V. Календарный график (план) прохождения практики
- •Содержание отзыва
- •Российский государственный социальный университет
- •VI. Заключение студента по итогам практики
- •VII. Отзыв
- •Рабочие записи практиканта
- •Разработка слоя бизнес - логики для предприятий, осуществляющих розничную торговлю
Рабочие записи практиканта
1-ая неделя.
Дата 02.02.2016
Изучение нормативных документов, регламентирующих условия и режим работы сотрудников: законов и нормативные акты РФ
Дата 03.02.2016
Изучение нормативных документов, регламентирующих условия и режим работы сотрудников: законов и нормативные акты РФ
Дата 04.02.2016
Изучение структуры рабочего процесса в сети магазинов ООО «Остров» и правил ведения торговли и отчетной документации
Дата 05.02.2016
Изучение структуры рабочего процесса в сети магазинов ООО «Остров» и правил ведения торговли и отчетной документации
Дата 06.02.2016
Изучение коллективного договора, Корпоративного кодекса ООО «Остров», прочих локальных нормативных актов
Дата 07.02.2016
Изучение коллективного договора, Корпоративного кодекса ООО «Остров», прочих локальных нормативных актов
Дата 08.02.2016
Изучение программного обеспечения и информационных систем на предприятии. На персональных компьютерах предприятия установлены такие информационные системы как 1C: Предприятие 7.7, Microsoft Office 2010.
2-ая неделя.
Дата 09.02.2016
Разработка слоя бизнес - логики для предприятий, осуществляющих розничную торговлю
Для начала разберемся, что же представляет собой эта бизнес-логика. Под этим понятием обычно принимают совокупность некоторых правил, принципов и зависимостей поведения некоторых объектов предметной области. Говоря более простым языком — это реализация правил и ограничений автоматизируемых операций. Так же можно сказать, что это реализация предметной области в информационной системе.
В качестве примера рассмотрим сеть магазинов, осуществляющих продажу электроинструментов, крепежа, строительного материала и прочих комплектующих. Основными подразделениями, которые осуществляют деятельность магазина, являются:
Бухгалтерия, которая отвечает за расчет и выдачу зарплаты, а так же составление отчетности для налоговых служб;
Отдел менеджмента, в свою очередь обеспечивает обновление базы данных и управление магазином;
Продавцы отвечают за продажу и консультацию клиентов.
Для начала рассмотрим, как происходит учет и реализация продукции на предприятиях. В момент, когда товар продан клиенту, однако он еще не оплачен им, тогда продукция считается отгруженной. Момент времени реализации отгруженной продукции это и есть дата зачисления средств на расчетный счет платежа от клиента.
Выход товара происходит через розничную торговлю по средствам свободной продажи. До своего выхода отгруженная продукция учитывается на активном счете предприятия.
По дебету счета показывается конечная сумма, которую, в свою очередь, следует оплатить покупателю.
Дата 10.02.2016
Реализованный товар обычно учитывается на лицевом счете предприятия. Особенностью этого счета считается вывод данных по дебету и кредиту равного объема проданного товара. По дебету выводятся данные по затратам организации проданного товара, а так же по его производству.
Вырученные деньги от проданного товара отражается уже по кредиту счета. Если по дебету происходит повышение оборота. То это приводит к убытку, в противном случае к прибыли. В случае, когда товар выходит на продажу клиенту без предоплаты, тогда операции по учету формируются в следующем порядке:
Учтен готовый товар по его фактической себестоимости;
Продан товар клиенту по фактической себестоимости;
Выведена прейскурантная стоимость тары, которая оплачивается клиентом помимо стоимости товара;
Выведены расходы на транспортировку товаров, которые так же оплачиваются клиентом;
Получена выручка от продажи товара;
Проданный товар списан по фактической себестоимости;
Списана стоимость продукции;
Клиент оплатил затраты на транспортировку;
По проданному товару выведены суммы на налоги и акцизы;
Списаны коммерческие расходы;
Списан исход от продажи.
Теперь рассмотрим варианты операций модификации данных.
1. Для добавления нового товара, нового поставщика, нового чека, чека на возврат, а так же данных о поставке следует выполнить следующий алгоритм действий: Проверить существует ли в нужной таблице данные с таким же кодом товара, если да то выйти с кодом ошибки 0, если нет, то добавить новую строку с данными в таблицу и отправить значения выходных параметров на выход с кодом 1.
2. Для внесения изменений в таблицы базы данных, существует следующий алгоритм действий: Проверить существуют ли в таблице данные с таким же кодом, если да, то изменить нужные поля и занести их в таблицу, если нет, то выйти с кодом ошибки - 0. В случае, кода нужно внести изменения в сам код товара, код поставщика или в код чека, который, в свою очередь, является первичным ключом, тогда следует выполнить следующие действия: проверить существует ли в таблице данные с таким же кодом, если да, то отредактировать данные и сохранить, в противном случае изменить номер карты на новый и занести изменения в таблицу.
3. Для удаления данных из таблиц следует выполнить следующий алгоритм действий: проверить существует ли в таблице данные с таким же кодом, если да, то удалить строку данными, если нет, то выйти с кодом ошибки 0.
Структура таблиц информационной базы данных, все связи и сущности отображены на схеме ниже. В ее состав входят 6 таблиц, взаимосвязанных друг с другом.
Рис.1. Структура информационной базы данных.
После всего вышеперечисленного можно сделать вывод, что разработка слоя бизнес – логики является немаловажной частью любого продукта, будь то автоматизированная информационная система или программное обеспечение. Продумав все возможные процессы работы человека и системы, установленной на машине предприятия в совокупности, можно избежать большинства ошибок и сбоев системы, всяческих взломов и несанкционированного входа в систему.
Дата 11.02.2016
Преимущества и недостатки СУБД Firebird
На сегодняшнее время в нашей стране в области баз данных смело можно выделить СУБД SQL Server, выпущенную компанией Microsoft. Так как данную СУБД действительно можно назвать достаточно удобной для разработки. Она может удовлетворить многие потребности современного бизнеса. Однако, не смотря на такую популярность SQL Server в России, огромное количество программистов пользуются Firebird. По всему миру насчитывается миллионы программ, которые используют в качестве базы данных Firebird. Поэтому можно сказать, что Firebird обладает немалым количеством преимуществ перед SQL Server. Рассмотрим некоторые из них.
В работе с базами данных чаще всего нуждаются предприятия, занимающиеся торговлей, которые ведут учет и реализацию продукции. И компании разрабатывающие системы автоматизации для таких предприятий постоянно прибывают в состоянии конкуренции, так как из-за большого спроса на такие системы, насчитывается огромное количество организаций, выпускающих автоматизированные системы по учету и реализации продукции. Однако большинство заказчиков стремятся купить более дешевый продукт, а так как SQL Server является платным продуктом, то Firebird здесь более выигрышный вариант. Но дело даже не в цене данной СУБД, все разработчики стремятся, что бы их продукт работал на любом железе, а SQL Server на слабом, относительно устаревшем компьютере показывает слабые результаты.
Так же можно отметить, что во время работы SQL Server занимает все допустимое место в оперативной памяти, и не освобождает ее, пока другим приложениям не потребуется место. Это может быть связано с кластерными индексами. SQL Server так же как и остальные СУБД стремиться держать свои индексы в ОЗУ, в целях ускорения выполнения запросов, но так как страницы с данными входят в состав индексов, получается, что вся база данных загружается в ОЗУ. Однако в Firebird первичный ключ, в свою очередь, не является кластерным, следовательно, много оперативной памяти не занимается. Объем той памяти, которую может занять база данных, регулируется через файл конфигурации, который не мешает работе других приложений, работающих в данный момент.
Вечный спор разработчиков, что лучше многоверсионная или блокировочная база данных. Нельзя однозначно ответить на этот вопрос. Firebird является многоверсионной базой данных. То есть если запись в данный момент времени изменяется оператором, то она все равно открыта для чтения для другого оператора, то есть читатель и писатель не блокируют друг друга при одновременном использовании одной и той же записи.
SQL Server же, в свою очередь, относится к блокировочным базам данных. То есть если один пользователь открыл окно добавления записи в таблицу и изменив данные не сохранил изменения и отошел от компьютера на какое то время, то другой пользователь уже не может прочитать эту таблицу. Вместо того что бы открыть таблицу база данных зависает и пока первый пользователь не сохранит изменения у второго окно с таблицей так и не откроется. Что является не всегда удобным. Конечно, при работе с Firebird тоже возникает потребность во временной блокировке. В этом случае создается новая версия записи, которая, в свою очередь и блокируется, однако операция чтения старой записи не блокируется.
В работе с любой базой данных всегда может возникнуть потребность во внесении изменений в уже существующую запись. Если к примеру информация была введена неверно и нужно изменить данные то в Firebird можно просто откатить транзакцию
Дата 12.02.2016
В СУБД Firebird есть только 2 уровня изоляции транзакции. Это Snapshot, что означает мгновенный снимок внесенных изменений, и Read committed, что означает невоспроизводимое чтение внесенных изменений. В первом случае транзакция может увидеть все зафиксированные изменения в момент начала своей работы и изменения, проделанные в пределах данной транзакции. Во втором случае транзакция видит все изменения, и свои, и чужие, не смотря на то, были ли они во время начала ее работы или нет. На мой взгляд, этих 2 вида транзакция достаточно для удобной работы и решения поставленных задач. Оба эти уровня достаточно недорого обходятся для данной СУБД.
В SQL Server дела с уровнями транзакций обстоят немного по-иному. Здесь их изначально было 4, а именно: READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, SERIALIZABLE и относительно с недавних пор был реализован уровень Snapshot и имитация много версионности. Однако работа с этим новым уровнем требует еще больше памяти и ресурсов процессора, и для разработчиков требуются навыки для работы с эти уровнем изоляции.
Однако следует отметить, что Firebird не обладает журналом транзакций. Многие разработчики убеждены, что база данных, у которой нет этого журнала, нельзя назвать серьезной СУБД. Однако если подробнее разобраться в работе транзакций, то этот недостаток может стать достоинством. Каждая модификация в БД Firebird может осуществляться в пределах работающей транзакции. У любой транзакции есть свой порядковый номер, называемый TID, и любая запись в БД отмечается также. В том случае, когда транзакция подтверждается, поле с этим TID будет открыта для последующих операций. Однако когда транзакция не подтверждается, то записанное поле будет недоступно. То есть можно сделать вывод, что Firebird не обращается к жесткому диску без особой необходимости.
Так же можно отметить, что размер файла базы данных Firebird в разы меньше, чем размер БД SQL Server, включающий в себя такое же количество информации. Плюс следует учесть, что SQL Server обладает журнал транзакций, который чаще всего весит больше, чем сама база данных.
Исходя из вышеперечисленного, можно сделать следующий вывод: Конечно в сравнении с Firebird СУБД SQL Server обладает рядом преимуществ, например такими как встроенная репликация и генератор отчетов, Выборка информации из множества других баз данных, хранящихся на одном сервере, поиск в Blob – полях, встроенные в систему средства шифрования. Однако, несмотря на все вышеперечисленные достоинства SQL Server у СУБД Firebird тоже достаточно преимуществ, а именно:
Firebird является абсолютно бесплатным продуктом и достаточно доступным.
Поддержка работы достаточно большого количества пользователей
Кроссплатформенность.
Исходный код открыт
Наличие достаточно удобного инструмента для администрирования, а именно IBExpert, который тоже является бесплатным и легкодоступным продуктом.
Данная СУБД не сильно требовательна к имеющимся ресурсам
Дата 13.02.2016
Перспективы работы с реляционными базами данных
В наше время существует огромное количество организаций и предприятий, где ведется постоянный сбор и переработка данных, ведение отчетности и многие рутинные операции. А если это не маленькая организация, а большое предприятие, либо даже объединение предприятий? Необходимо вовремя заводить материалы на склады, прогнозировать закупку расходных материалов, отправлять отчет в налоговую инспекцию и другие инстанции. В связи с этим, возникла потребность в создании специальных автоматизированных систем, которые в свою очередь могли бы выполнять все выше перечисленные действия, а также были бы гибкими к изменяющимся требованиям заполнения отчетности.
Однако для любой автоматизированной системы нужна база данных, которая в свою очередь хранит в себе всю информацию о товаре и услугах организации, дает возможность внесения, изменения и удаления данных и прочее.
В наше время существует множество разновидностей хранения данных. Например, таких как иерархическая, объектная и объектно-ориентированная, объектно-реляционная, реляционная, сетевая и функциональная. Однако, не смотря на все свои недостатки достаточной популярностью пользуется реляционная модель хранения данных.
Дата 14.02.2016
Реляционной базой данных называют совокупность некоторого количества таблиц которые связаны друг с другом, в каждой таблице хранятся данные. В строках данных таблиц содержаться информация об определенном объекте, а в столбцах характеристика этого объекта, которые называются атрибутами.
Строки таблицы называют записями. Они, в свою очередь, структурированы и делятся на поля, которые еще называют элементами данных. Эти элементы включают в себя атрибуты данного объекта. Что бы найти требуемую запись пользователь работает с первичным ключом. Он представляет собой информационное поле или комбинацию из некоторого количества полей, где с помощью их значения можно найти каждую запись в таблицах.
Для работы в системе используются SQL – запросы. Они осуществляют выполнение всех действия с информацией, хранящейся в базе данных. Информацию можно получить не только из одной таблицы, но и из нескольких, это осуществляется путем соединения нескольких таблиц или колонок через процедуру.
Дата 15.02.2016
Доступ к реляционным базам данных осуществляется через реляционные системы управления базами данных (РСУБД). К реляционным базам данных можно отнести такие, как: Oracle, SQL Server, MySQL, Sybase, DB2, TeraData и прочие.
Реляционные базы данных обладают широким спектром возможностей, и имеет большое количество положительных аспектов, таких как:
устойчивость систем к сбоям;
гибкость к разным системам;
достаточно высокую производительность;
масштабируемость;
совместимость с системами в такой сфер, как управление данными.
Но для обеспечения устойчивой работы всех вышеперечисленных положений структура реляционных хранилищ достаточно сложная. К примеру самый обычный запрос имеет множество разнообразных путей выполнения команды, которые, в свою очередь, оцениваются оптимизатором только в момент выполнения самого запроса. Данные процессы скрыты от глаз пользователя, но внутри распределенных систем управления данных действует алгоритм.
Не смотря на такую популярность данной модели построения базы данных количество информационных систем и приложений совершенно разного характера растет, вследствие чего возрастает важность всех ее положительных особенностей. С появлением новых продуктов на рынке информационных систем, одна из важных особенностей превосходит остальные, а именно - масштабируемость. Потому что с каждым днем все большее количество систем и приложений отдают свое предпочтение работы с веб – сервисами, что ведет к увеличению нагрузки. Потому что требования к масштабируемости мгновенно растут и изменяются.
Хорошо масштабироваться они могут только в одном случае – если находятся на одном сервере. В случае истощения ресурсов этого сервера возникает необходимость добавления большего количества техники и распределения нагрузки уже между ними. В этом случае тяжелое для работы устройство запросов реляционных баз данных начинает оборачивается против масштабируемости. Если эту модель использовать для больших распределенных систем, где количество серверов доходит до сотни, то сложность работы возрастет и затмит всю привлекательности характеристик реляционной базы данных.
Исходя из всего вышеперечисленного, можно сделать вывод, что, не смотря на свои достаточно серьезные недостатки, реляционная модель базы данных остается одной из самых популярных и широко используемых в России.
3-я неделя.
Дата 16.02.2016
Преимущества и недостатки среды разработки Delphi
В наше время существует огромное количество разнообразных сред разработки программного обеспечения и приложений для смартфонов, компьютеров и прочих гаджетов, без которых современный человек не представляет своей жизни. В свою очередь, наряду с развитием современных компьютерных технологий развиваются и подходы к программированию.
Рождение более новых подходов и методов программирования можно объяснить попыткой ускорить процесс создания разработки. Все это делается лишь с одной целью, а именно для упрощения самого хода создания достаточно крупных и масштабных программных проектов, в разработки которых может участвовать достаточно большое количество разработчиков. Одним из значащих нововведений за последние годы, на мой взгляд, можно назвать объектное и событийное программирование. Так же можно отметить зрительный подход к созданию приложений, бесспорно развивающийся в последние годы.
Delphi можно назвать достаточно многофункциональной и сильной средой разработки приложений, RAD-оболочкой, в которой собраны последние подходы к программированию. Библиотеку VCL, на основе которой написана оболочка Delphi, называют в какой-то степени революционной. Если сравнить Delphi и C++ нельзя не заметить, что эффективность работы кода, который написан на языке Pascal, на пару процентов отличается от кода, сгенерированного на языке C++. Можно сделать вывод, что потенциалы языка почти не ограничены.
Одним из основных преимуществ Delphi перед его аналогами заключается в достаточно быстром процессе разработки программных продуктов, которые, в свою очередь, включают в себя довольно замысловатый интерфейс. Еще можно отметить наличие обширного набора компонентов, обеспечивающих работу с базами данных. Упорядоченный набор данных работает с разными базами данных, как с локальными, так и с промышленными. Например с такими, как, Oracle или MS SQL Server. Так же возможность управления базами данных на логическом уровне не используя низкоуровневые запросы к драйверам можно назвать значительным плюсов Delphi в этой области применения.
Дата 17.02.2016
Данные возможности рассматриваемой среды разработки обеспечили ей обширную популярность при разработке автоматизированных систем управления предприятиями. Но их нельзя назвать однозначной сферой использования, потому что потенциал Delphi не ограничен. Delphi можно назвать языком программирования достаточно широкого спектра применения. Она дает возможность создания приложений любого уровня и сложности, используемых в разных областях. Если нужный потенциал среды не работает напрямую это можно легко исправить, путем присоединения нужного компонента. Как пример можно рассмотреть технологию DirectX, которая не поддерживается Delphi, но есть специальные компоненты, которые с легкостью работают с данной средой разработки.
Под операционную систему Linux была разработана программа практически схожая с Delphi, так называемая Kylix. И с тех пор появилась возможность переноса программ написанных на Delphi на Linux, открывая новые горизонты для данной среды разработки.
Но все равно нельзя не отметить, что язык Object Pascal накладывает некоторые границы, однако одним из преимуществ Borland в Object Pascal, можно выделить некоторые свойства, такие как properties и перегрузку процедур и функций. Так же можно сказать о еще некотором ряде особенностей, которые нельзя оставить без внимания, а именно:
Удобная среда разработки, в которой существует быстрый функциональный отладчик, который, в свою очередь, достаточно доступен в любой момент времени.
Наличие справочной системы, в виде контекстного меню, что позволяет изучать язык.
Достаточно мощная скорость компиляции и выполнения откомпилированных программ.
В данной среде имеется возможность работы со вставками, написанными на языке Assembler.
5. Нет нужды в сторонних библиотеках.
6. Компонентная модель программирования. Использование данной модели дает возможность использовать компоненты, которые разработаны прочими программистами, без использования исходного кода. Применение компонентной модели позволяет сократить время разработчика.
7. Достаточно резвый браузер классов и вывод авто подсказки авто завершения кода.
Помимо такого обширного спектра плюсов, существуют и некоторые недочеты, хоть их и мало. Однако в некоторых случаях их выделяют и как достоинства.
Основным недостатком, можно назвать нединамическое добавление библиотеки VCL и компонентов к исполняемому файлу. Можно выделить, что присоединение VCL осуществляется и инерционно, однако с каждой новой разработкой разработчик будет вынужден увеличивать еще и VCL.
Еще один недочет заключается в том, что в форме Form все данные о форме, а именно: атрибуты, настройки элементов, значения, установленные по умолчанию, находятся в exe-файле. Проанализировав исходный код, можно прийти к выводу, что при генерировании формы происходит практически синтаксический разбор данных инициализации, что, в свою очередь, тормозит ее.
Сам Object Pascal тоже можно обозначить как недостаток. Конечно простота, эффективность и легкость в изучении это хорошо, однако ему не помешала бы взгляд наличие мощных средств языка C++. Например, таких как: стандарты, перемещение операторов, объектного образца модели. Кроме всего прочего, достаточно сильно ощущается тенденция к разрастанию exe-файлов, которые генерируются Delphi. То есть, большинство маленьких проектов, которые разработаны в Delphi 4, при перекомпиляции в Delphi 5 увеличились на 40-70 Кбайт, при всем при этом, не обретя новой функциональности.
Исходя из выше перечисленного, можно сделать вывод, что, несмотря на достаточную конкуренцию, и обширное количество аналогов в сфере разработки программ Delphi отнюдь не уступает и находит свое применение на рынке информационных систем.
Дата 18.02.2016
Исследование актуальности внедрения иной разработки системы учета реализации продукции на предприятии.
Реализация данной системы позволит учесть все нюансы работы магазина и создать систему «Остров» специально для данной сети магазинов, что обеспечит:
Автоматизацию магазинов
Оптимизацию работы продавцов магазина
Увеличения темпов и качества регулярного решения основных задач
Так же одним из плюсов внедрения данной программы является экономическая сторона работы магазина. Так как это позволит сократить количество работающего персонала, а так же не требует постоянной покупки нового программного обеспечения 1С.
Дата19.02.2016
Разработка базы данных
Определение программы и СУБД на которой будет выполнена база данных
Разработка структуры базы данных
Дата 20.02.2016
Разработка базы данных. Разработка таблиц базы данных. Определение сущностей и связей.
Дата 21.02.2016
Разработка базы данных. Установка первичных ключей. Создание тригеров и генераторов.
Дата 22.02.2016
Разработка базы данных. Написание SQL запросов и процедур.
4-я неделя
Дата 23.02.2016
Разработка интерфейса автоматизированной системы управления данными по учету реализации продукции на предприятии ООО «Остров». Определение программы в которой будет программироваться клиентское приложение.
Дата 24.02.2016
Разработка интерфейса автоматизированной системы управления данными по учету реализации продукции на предприятии ООО «Остров». Разработка структуры приложения
Дата 25.02.2016
Разработка интерфейса автоматизированной системы управления данными по учету реализации продукции на предприятии ООО «Остров». Разработка структуры приложения в Delphi 2010.
Дата 26.02.2016
Разработка интерфейса автоматизированной системы управления данными по учету реализации продукции на предприятии ООО «Остров». Разработка структуры приложения в Delphi 2010.
Дата 27.02.2016
Разработка клиентского приложения автоматизированной системы управления данными по учету реализации продукции на предприятии ООО «Остров»
Дата 28.02.2016
Написание отчета
Дата 29.02.2016
Написание отчета
