Разработка программы для учета семейного бюджета
Понятия семейного бюджета, его составляющие: доходы и расходы, их характеристика. Особенности классификаций и способы сокращения расходов. Описание технологического процесса написания программы для автоматизированного расчета и планирования бюджета.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 29.03.2009 |
Размер файла | 1,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
34
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
1. ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ И ПОСТАНОВКА ЗАДАЧИ
1.1 Постановка задачи
1.2 Экономическая характеристика предметной области
1.3 Экономическая и техническая сущности комплекса информационных задач
1.4 Обоснование решений по автоматизации экономико-информационных задач
2. ПРОЕКТНАЯ ЧАСТЬ
2.1 Описание технологического процесса выполнения задачи
2.2 Описание алгоритма
2.3 Описание модулей
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
ВВЕДЕНИЕ
В последние годы на первый план выдвигается новая отрасль - информационная индустрия, связанная с производством технических средств, методов, технологий для производства новых знаний. Эта индустрия тесно связана с развитием компьютерных технологий.
В информационном обществе доминирует производство информационного продукта, а материальный продукт становится более информационно емким. Изменятся весь уклад жизни, система ценностей: возрастает значимость культурного досуга, возрастает спрос на знания, от человека требуется способность к интеллектуальному труду и творчеству.
В результате появились противоречия между ограниченными возможностями человека по восприятию и переработке информации и существующими массивами хранящейся и передаваемой информации. Возникло большое число избыточной информации, в которой иногда трудно сориентироваться и выбрать нужные сведения. Для решения подобных проблем применяются автоматизированные базы данных. Они стали неотъемлемой частью практически всех компьютерных систем - от отрасли до отдельного предприятия.
За последние несколько лет вырос уровень потребительских качеств систем управления базами данных (СУБД): разнообразие поддерживаемых функций, удобный для пользователя интерфейс, сопряжение с программными продуктами, в частности с другими СУБД, возможности для работы в сети и т.д. СУБД позволяет сводить воедино информацию из самых разных источников (электронные таблицы, другие базы данных) и помогает быстро найти необходимую информацию, донести ее до окружающих с помощью отчетов, графиков или таблиц.
К настоящему времени накоплен значительный опыт проектирования БД, предназначенных для управления производством, это позволяет сделать процесс создания БД более эффективным. Одной из наиболее распространенных СУБД является MS Access. Широкое применение именно этой СУБД для небольших офисных программ связано с тем, что она интегрирована в пакет прикладных программ MS Office, не требует большого объема памяти и достаточно проста в использовании.
В качестве темы для своего курсового проекта я выбрал разработку базы данных для автоматизированного расчёта и планирования семейного бюджета.
Базы данных играют особую роль в современном мире. Все, с чем мы ежедневно сталкиваемся в жизни, скорее всего, зарегистрировано в той или иной базе. Умение работать с базами данных сегодня является одним из важнейших навыков в работе с компьютером, а специалисты в этой области никогда не окажутся безработными.
Основной целью данной работы служит разработка программы «Семейный бюджет», с помощью которой можно облегчить процесс расчета и ведения семейного бюджета.
Программа расчета и ведения домашнего бюджета представляет собой разработанную базу данных в средах Microsoft Access и Borland Delphi, которая может служить как отдельное приложение при работе дома в связи с вычислением бюджетных сравнительных характеристик, либо может применяться как дополнительный компонент к курсу «Семейная экономика» при его организации в форме элективного курса по экономике в Урюпинском филиале Волгоградского института бизнеса.
Данная работа содержит в себе две главы. В первой главе раскрыты основные понятия семейного бюджета, его составляющие: доходы и расходы. Представлены схемы их классификаций. Даётся некоторая информация о том, как сократить расходы. Вторая глава посвящена непосредственно написанию программы. В настоящее время наиболее широко используется седьмая версия пакета - Borland Delphi 7 - 7.1, которая позволяет создавать самые различные программы: от простейших однооконных приложений до программ управления распределенными базами данных. Я решил разработать программу в среде Borland Delphi 7. Это связано с тем, что в последнее время возрос интерес к. программированию, что связано с развитием и внедрением в повседневную жизнь информационно-коммуникационных технологий. Если человек имеет дело с компьютером, то рано или поздно у него возникает желание, а иногда и необходимость программировать. В основе систем быстрой разработки (RAD-систем, Rapid Application Development - среда быстрой разработки приложений) лежит технология визуального проектирования и событийного программирования. Суть этой технологии заключается в том, что среда разработки берет на себя большую часть рутинной работы, оставляя программисту работу по конструированию диалоговых окон и функций обработки событий.
Современная экономическая мысль рассматривает семью или, более обобщенно - домашнее хозяйство как важного потребителя и производителя, жизнедеятельность которых осуществляется для реализации социальных, экономических и духовных потребностей индивида, самой семьи и общества в целом.
Актуальность темы подчеркивается тем, что институт семьи сегодня переживает кризис. Семья испытывает на себе влияние экономических, правовых, идеологических, нравственных отношений. Последствия перехода к рыночной экономике и устранения государства от комплексной поддержки семьи не замедлили сказаться.
Косвенным подтверждением тому служит захлестнувшая страну волна детской беспризорности и безнадзорности. Прямым - низкий уровень доходов основной массы российских семей, жилищно-бытовая неустроенность, сознательная ориентация на малодетность, основанная на неуверенности в завтрашнем дне, рост числа гражданских браков и внебрачных рождений.
Создание нормальных условий для производства человеческого фактора требует не только эффективного ведения домашнего хозяйства, но и формирования и использования семейного бюджета.
Использование баз данных и информационных систем становится неотъемлемой составляющей деловой деятельности современного человека и функционирования преуспевающих организаций.
Важной категорией являются системы обработки информации, от которых во многом зависит эффективность работы любого предприятия или учреждения.
Такая система должна:
1. Обеспечивать получение общих и детализированных отчетов по итогам работы;
2. Позволять легко определять тенденции изменения важнейших показателей;
3. Обеспечивать получение информации, критической по времени, без существенных задержек;
4. Выполнять точный и полный анализ данных.
Поэтому, чтобы универсальным способом извлекать из базы данных записи, обрабатывать их, изменять и удалять, требуются специальные программы, которые называются системами управления базами данных или сокращенно СУБД.
На сегодняшний день разработчик не связан рамками какого-либо конкретного пакета, а в зависимости от поставленной задачи может использовать самые разные приложения.
Поэтому, более важным представляется общее направление развития СУБД и других средств разработки приложений в настоящее время. Также одной из целей курсовой работы является практическое освоение методов разработки приложений базы данных в среде визуального проектирования Borland Delphi 7.0. Предметом курсовой работы является огромное количество компонент, необходимое для создания программных продуктов.
1. ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ И ПОСТАНОВКА ЗАДАЧИ
1.1 Постановка задачи
Миссия детализирует статус и обеспечивает направление и ориентиры для определения целей и стратегий на различных уровнях. Хорошо сформулированная миссия проясняет то, чем является организация и какой она стремиться быть, а также показывает отличие организации от других ей подобных.
Темой данной работы является учет средств семейного бюджета. Данная тема близка каждому. У любой семьи есть свои доходы и расходы. Естественно возникает необходимость учета финансовых средств.
Под доходными статьями можно понимать любые источники средств. Например, зарплата, стипендия, подработки, финансовая помощь от родителей и тому подобное.
Расходы также можно разделить на множество подразделов: траты на еду; хозяйственные нужды; расходы на транспорт; коммунальные услуги.
Для обеспечения надежности разрабатываемой информационной системы управления данными следует выполнить следующие основные требования: целостность и непротиворечивость данных, достоверность данных, простота управления данными, безопасность доступа к данным.
Программа должна позволять легко вводить информацию о доходах и расходах, а также позволять осуществлять анализ информация. Она должна позволять отображать информацию за введенный пользователем период с сортировкой по указанному полю, вести классификатор статей дохода и расхода, позволяя добавлять дополнительные элементы, графически отображать доли доходов и расходов с группировкой по статьям, а также предоставлять удобный пользовательский интерфейс, отвечающий стандартам эргономики.
Моей приоритетной задачей является создание базы данных для маленькой семейной бухгалтерии, чтобы быстро и точно учитывать все доходы и расходы. Следовательно, в перечень обязательных должны войти следующие требования: учет всех поступлений по суммам; учет источников поступлений; учет текущего курса, например к доллару, так как высокие темпы инфляции в стране не позволяют корректно сравнивать даже цены на масло трехмесячной давности; учет наименований статей расходов по группам товаров; учет расходов по наименованию товаров; учет остатков средств; учет различных вариантов вложений средств в разные финансовые инструменты, например в валюту, на депозиты и так далее.
Чем подробнее и скрупулезнее будет проделана вся первоначальная подготовительная работа, тем меньше потом уйдет времени на конкретное программирование. Проблема заключается в том, что "всплывшая" на каком-либо этапе ошибка или логическое несоответствие при программировании оборачивается порой даже полным изменением всего проекта в целом, что нередко вызывает переработку таблиц, переписывание запросов и написание новых форм.
1.2 Экономическая характеристика предметной области
Для того, чтобы эффективно использовать свои доходы, семья должна правильно составить свой бюджет, тщательно продумать покупки и делать сбережения для достижения своих целей. Для составления семейного бюджета необходимо составление списка всех источников доходов членов семьи. Это зарплата, социальные пособия и проценты на сбережения. В статье расходов нужно перечислить все, за что надо заплатить в течении месяца: квартплата и услуги, питание, проезд, уплата налогов и взносов. В планируемые расходы так же включаются и сбережения на будущее.
Если доходы равны расходам, то это сбалансированный бюджет. Если предполагаемые расходы превышают доходы, то этот бюджет имеет дефицит. Бюджет, в котором доходы превышают расходы, будет иметь избыток. Если доходы превышают расход, необходимо исключить из планов лишние покупки, чтобы сбалансировать бюджет.
Семейный бюджет - роспись денежных доходов и расходов семьи, составляемая обычно на месячный срок в виде таблицы, баланс семейных расходов и доходов, это финансовый план, который суммирует доходы и расходы (семьи) за определенный период времени. Другими словами - это соизмеренные суммы доходов и расходов семьи.
Материальное положение семьи, состояние ее финансов характеризуются семейным бюджетом, показывающим величину и сбалансированность всех доходов и расходов семьи.
Бюджет - слово французское, его буквальный перевод - денежный кошелек.
Баланс доходов и расходов семьи - это расчет и сопоставление семейных расходов с получаемыми доходами.
Баланс доходов и расходов семьи, составляемый за отчетный истекший период (обычно месяц, квартал, год), называется отчетным балансом, а составляемый на предстоящие периоды - плановым балансом.
В результате составления отчетного или планового баланса доходов и расходов семьи выявляется дефицит (недостаток) или накопления (избыток) семейного бюджета.
Жить по средствам - непременный закон семейной экономики. В виде круговых диаграмм среднюю структуру доходов и расходов можно представить следующим образом:
Рис 1.2. Структура доходов
Рис 1.3. Структура расходов
Бюджет - это финансовый план, который суммирует доходы и расходы семьи за определенный период времени. Для того, чтобы эффективно использовать свои доходы, семья должна правильно составить свой бюджет, тщательно продумать покупки и делать сбережения для достижения своих целей.
Для составления семейного бюджета необходимо составление списка всех источников доходов членов семьи. Это зарплата , социальные пособия и проценты на сбережения. В статье расходов нужно перечислить все, за что надо заплатить в течение месяца: квартплата и услуги, питание, проезд, уплата налогов и взносов. В планируемые расходы так же включаются и сбережения на будущее.Если доходы равны расходам, то это сбалансированный бюджет. Если предполагаемые расходы превышают доходы, то этот бюджет имеет дефицит. Бюджет, в котором доходы превышают расходы, будет иметь избыток. Если доходы превышают расход, необходимо исключить из планов лишние покупки, чтобы сбалансировать бюджет.
1.3 Экономическая и техническая сущности комплекса информационных задач
Под доходами населения понимается сумма денежных средств и материальных благ, полученных или произведенных домашними хозяйствами за определенный промежуток времени. Роль доходов определяется тем, что уровень потребления населения прямо зависит от уровня доходов.
Денежные доходы населения включают все поступления денег в виде оплаты труда работающих лиц, доходов от предпринимательской деятельности, пенсий, стипендий, различных пособий, доходов от собственности в виде процентов, дивидендов, ренты, сумм от продажи ценных бумаг, недвижимости, продукции сельского хозяйства, различных изделий, доходов от оказанных на сторону различных услуг и др.
Уровень доходов членов общества является важнейшим показателем их благосостояния, так как определяет возможности материальной и духовной жизни индивидуума: отдыха, получения образования, поддержания здоровья, удовлетворения насущных потребностей. Среди факторов, оказывающих непосредственное влияние на величину доходов населения, кроме размеров самой заработной платы, выступает динамика розничных цен, степень насыщенности потребительского рынка товарами и пр.
Для оценки уровня и динамики доходов населения используются показатели номинального, располагаемого и реального дохода.
Номинальный доход - количество денег, полученное отдельными лицами в течение определенного периода также он характеризует уровень денежных доходов независимо от налогообложения.
Располагаемый доход - доход, который может быть использован на личное потребление и личные сбережения. Располагаемый доход меньше номинального дохода на сумму налогов и обязательных платежей, т.е. это средства, используемые на потребление и сбережение. Для измерения динамики располагаемых доходов применяется показатель «реальные располагаемые доходы», рассчитываемый с учетом индекса цен.
Реальный доход - представляет собой количество товаров и услуг, которое можно купить на располагаемый доход в течение определенного периода, т.е. с поправкой на изменение уровня цен.
Стремление к максимизации своего дохода диктует экономическую логику поведения любому рыночному субъекту. Доход является конечной целью действий каждого активного участника рыночной экономики, объективным и мощным стимулом его повседневной деятельности.
Всего могут существовать три возможных варианта использования информации: информация вводится, выводится или вычисляется. Допустим, заработная плата, прочие поступления и действующий курс доллара (неважно какой) обычно однозначно вводятся пользователем, в то время как величина доходов в валютном выражении однозначно вычисляется самой системой исходя из суммы полученных рублей и курса на момент их получения. Проставляя в каждой строке способ использования данной информации, следует предусматривать все возможные варианты. К примеру, однозначно видно, что цену на молоко можно не только вводить в качестве входного параметра, но и время от времени выводить на экран для просмотра (допустим, при демонстрации общей статистики за тот или иной период).
В СУБД все данные хранятся в таблицах. Этих таблиц обычно несколько, что позволяет избежать лишнего расхода системных ресурсов на многократное заполнение ключевых полей уже имеющейся информацией. В создаваемой СУБД учет проводится в рублях, причем программа не будет самостоятельно определять текущую стоимость товаров и услуг в USD исходя из вводимого курса рубля к доллару. Однако таблица есть таблица, при ее ведении неизбежно придется либо проставлять курс каждый раз, как только будут вводиться какие бы то ни было рублевые суммы, либо сразу их пересчитывать в валюту и опять же вводить результат самостоятельно в соответствующую графу. И то и другое одинаково неудобно. Во-первых, любая из перечисленных величин может легко быть получена путем простой математической операции деления цены на курс. Во-вторых, одновременно и рублевые и валютные величины вряд ли когда-нибудь потребуются одновременно, да еще и ежедневно. В-третьих, раз данные могут быть получены расчетным путем, то их дублирование оператором есть не что иное, как непростительная пустая трата рабочего времени. Отсюда вырисовывается следующее очевидное решение: данные разделить на две таблицы - в одной содержать только наименования товаров и рублевые величины платежей, а в другой - текущий курс и дату его введения. Кроме таблиц, понадобится еще запрос, который будет брать рубли, делить на курс и показывать, сколько это в валюте. В результате мы можем добиться, как минимум, двух важных эффектов: СУБД не будет хранить избыточной информации и в то же время она станет производить пересчет только для тех данных, которые запросил пользователь в данный конкретный момент, чем значительно сэкономит вычислительную мощность персонального компьютера.
Обычно к единому объекту стремятся относить однородные вещи. К примеру, совершенно очевидно, что все поступления, откуда бы они ни исходили, относятся к одной группе, так как для данной СУБД это однозначно входящая информация.
Вполне детально конкретизируется тот тип данных, который следует использовать в том или ином случае, - если это наименование, значит предполагается текстовый тип, если это дата, значит понадобится тип дата/время и так далее. Причем тут же рекомендуется прикинуть и желаемую величину данных. Если для даты это не имеет особого значения, то в случае текста или чисел от изначально заданного размера во многом зависит и точность полученного результата и общий объем всей СУБД в целом. Совершенно очевидно, что количество любой покупки измеряется вполне конкретными единицами: килограммами, литрами, стандартизированными пачками, упаковками, нормализованными бутылками и тому подобным; таким образом, графа "Единицы измерения" требует наличия вполне определенного условия на значение. Хотя поле и текстовое, но вводить в него должно быть разрешено только заранее оговоренные комбинации символов. Аналогичным образом: цена товара не может быть отрицательной или количество стандартизированного товара не может быть дробным.
1.4 Обоснование решений по автоматизации экономико-информационных задач
Функциональные возможности разных СУБД лежат в весьма широком диапазоне. В некоторые комплексы встроены специализированные языки программирования, и даже целые системы визуальной разработки, генераторы сложных отчетов, аналитические модули. Они способны поддерживать одновременную работу с данными десятков тысяч пользователей. Другие СУБД обладают только базовым набором возможностей (хранение данных в таблицах и выполнение запросов). При их использовании разработчикам приходится самостоятельно программировать работу по созданию отчетов, удобному просмотру и редактированию содержимого базы данных и так далее. В зависимости от представляемых ими средств СУБД обычно сильно различаются по цене.
Наиболее интересной чертой этих пакетов являются их большие возможности интеграции, совместной работы и использования данных, так как данные пакеты являются продуктами одного производителя, а также используют сходные технологии обмена данными.
Базы данных (БД) составляют в настоящее время основу компьютерного обеспечения информационных процессов, входящих практически во все сферы человеческой деятельности.
Действительно, процессы обработки информации имеют общую природу и опираются на описание фрагментов реальности, выраженное в виде совокупности взаимосвязанных данных. Базы данных являются эффективным средством представления структур данных и манипулирования ими. Концепция баз данных предполагает использование интегрированных средств хранения информации, позволяющих обеспечить централизованное управление данными и обслуживание ими многих пользователей. При этом БД должна поддерживаться в среде ЭВМ единым программным обеспечением, называемым системой управления базами данных (СУБД). СУБД вместе с прикладными программами называют банком данных.
Одно из основных назначений СУБД - поддержка программными средствами представления, соответствующего реальности.
Предметной областью называется фрагмент реальности, который описывается или моделируется с помощью БД и ее приложений. В предметной области выделяются информационные объекты - идентифицируемые объекты реального мира, процессы, системы, понятия и т.д., сведения о которых хранятся в БД.
В мире существует множество систем управления базами данных. Несмотря на то, что они могут по-разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. В качестве такого объекта я выбираю СУБД Microsoft Access, входящую в пакет Microsoft Office 2007.
Переход к преимущественно безбумажному делопроизводству дает возможность наладить комплексное управление документированной информацией в единой автоматизированной среде, получить целостную картину исполнения документов и поручений по всем уровням управления, проводить согласование документов в электронной форме, контролировать все операции с электронным документом и внедрить единые процедуры безопасности.
Access входит в состав самого популярного пакета Microsoft Office. Основные преимущества: знаком многим пользователям и обладает высокой устойчивостью данных, прост в освоении, может использоваться непрофессиональным программистом, позволяет готовить отчеты из баз данных различных форматов. Предназначен для создания отчетов произвольной формы на основании различных данных и разработки некоммерческих приложений.
Разработка приложения в Access начинается с создания таблиц в режиме конструктора таблиц или путем импорта из электронных таблиц или файлов баз данных. Мастера таблиц создают таблицы по американским стандартам и потому мало применимы. Очень легко создаются поля с возможностью выбора одного данного из предлагаемого списка, т.е. поля подстановки. Для внедрения графики существуют две возможности - поля OLE, хранящие графику непосредственно в базе данных, что увеличивает объем приложения и понижает его быстродействие, и введение гиперссылок на внешние файлы, что затрудняет переносимость приложения, но не влияет на быстродействие.
Создание запросов производится при помощи конструктора, нескольких мастеров или собственно на встроенном языке SQL, что позволяет составлять более сложные конструкции.
Экранные формы и отчеты создаются в основном по мастерам, а затем доводятся вручную в режиме конструктора. Формы, также, как и Visual Fox Pro, состоят из отдельных элементов интерфейса (кнопок, переключателей, надписей и т.д.), каждый из которых необходимо описать при создании приложения.
Access предоставляет, в основном, хорошие возможности создания экранных форм и генерации отчетов, т.е. наиболее развиты оформительские возможности. Та обработка данных и расчеты, которые не могут быть произведены с помощью запросов, трудновыполнимы и возможны только с привлечение языка программирования Visual Basic. Таким образом, применение Access ограничивается текстовыми базами данных с возможностью подключения файлов мультимедиа.
Вопросы защиты информации в СУБД Access решены плохо, в особенности защита от ошибок пользователя. Механизм проверки и поддержки ссылочной целостности данных нормально не функционирует, а блокирует ввод новых данных в подчиненную таблицу (при связи один-ко-многим), что требует его принудительного отключения при создании каждой очередной связи.
Защита информации от сбоев решена путем автоматического сохранения данных после каждого нажатия Enter или щелчка левой кнопкой мыши, что, конечно, не улучшает быстродействие системы.
Система Access не имеет компилятора ЕХЕ-файлов, что не позволяет правильно закончить технологический цикл разработки приложения без привлечения других средств программирования, т.к. обычным образом созданное приложение требует для своего функционирования на машине пользователя отдельной копии Access.
Несмотря на эти недостатки, СУБД Access остается одной из наиболее популярных баз данных за счет необыкновенно высокой технологичности работы (оформительские возможности по технологичности выше, чем возможности Delphi) и доступности для пользователей, имеющих минимальную компьютерную подготовку, что обеспечивается возможностью создания макросов на естественном языке, выбором нужных действий и данных из многочисленных меню и встроенными генераторами элементов интерфейса, которые в системе Access называются мастерами. Также положительной чертой Access является хранение всего приложения (таблиц, запросов, экранных форм, отчетов, программ и индексов) в одном файле, что улучшает переносимость приложений.
Также Access предоставляет возможность работы пользователя непосредственно с данными, не создавая приложения; имеет встроенную версию языка SQL для создания более сложных запросов, чем при помощи стандартного конструктора.
Очень хороша также возможность системы поддерживать имена полей на родном языке пользователя с небольшим списком ограничений, тогда как в подавляющем большинстве систем каждое поле имеет имя, используемое для обработки данных, на английском, и подпись, необходимую для вывода базы данных на экран в приемлемом виде.
Среда Delphi представляет собой интегрированную оболочку разработчика, в которую входит набор специализированных программ, ответственных за разные этапы создания готового приложения.
Исходный текст программы готовится в среде Delphi с помощью встроенного редактора исходных текстов. Этот редактор отличается гибкими возможностями цветового выделения различных элементов текста программ (ключевых слов, названий, операций, чисел и строк) и предоставляет возможность быстрого ввода часто встречающихся конструкций - подсказки завершения кода. Левая панель редактора представляет собой Проводник, позволяющий быстро перемещаться между частями исходного текста и по структуре создаваемой программы.
Важнейшая характеристика разрабатываемой программы -- удобство ее пользовательского интерфейса, наличие и доступность необходимых элементов управления. В системе Delphi имеется специальный проектировщик форм, с помощью которого окна будущей программы подготавливаются в виде форм. Проектировщик позволяет подобрать оптимальные размеры окон, разместить и настроить всевозможные элементы управления и меню, добавить готовые изображения, указать заголовки, подсказки, подписи и т. д., т.е. экранная форма в системе Delphi состоит из элементов интерфейса, как и в предыдущих визуальных системах.
На этапе проектирования форм программа как бы составляется из готовых компонентов -- частей машинного кода, которые можно добавлять к ней с помощью всего нескольких щелчков мыши. Компоненты располагаются на палитре компонентов, разделенной на несколько самостоятельных панелей. Компоненты обладают наборами свойств, характеризующими их отличительные особенности. Некоторые свойства имеются практически у всех компонентов -- таково, например, свойство Name (Имя). Другие свойства, например Caption (Заголовок) имеются у большинства компонентов -- ведь заголовок необходим и для окна, и для кнопки, имена которых должны быть строго англоязычными. Некоторые свойства уникальны для конкретных компонентов, например SimpleText (Простой текст), содержащее текст для компонента Строка состояния.
Свойства компонентов в процессе проектирования формы настраиваются с помощью Инспектора объектов. Это специальная программа, показывающая список всех свойств данного компонента, отсортированных по категориям или в алфавитном порядке.
Значение любого свойства можно изменить, введя в соответствующее поле Инспектора объектов новую строку или выбрав нужное значение в раскрывающемся списке доступных значений. Некоторые свойства содержат вложенные подсвойства, например свойство Font (Шрифт) характеризуется размером, стилем, цветом, гарнитурой. Такие свойства удобнее редактировать с помощью специальных редакторов, как стандартных (шрифт), так и специально разработанных для конкретного компонента.
Помимо свойств, компоненты содержит методы -- программный код, обрабатывающий значения свойств (например, устанавливающий переключатель в нужное положение), а также события -- сообщения, которые компонент принимает от приложения, если во время работы программы выполняется определенное действие (например, изменяется состояние флажка). Программист может самостоятельно формировать реакции программы на любые события каждого компонента.
Правильно подбирая компоненты и настраивая их совместную работу путем использования свойств, предназначенных для связи компонентов друг с другом, нередко удается создать приложение, не написав вручную ни строчки исходного текста. В системе Delphi существуют сотни готовых компонентов, и при решении многих задач бывает полезно предварительно поискать нужный компонент вместо того, чтобы выполнять работу по программированию, возможно, уже сделанную другими людьми. Компонентный подход к созданию программ позволяет повторно использовать готовые разработки и во многих случаях значительно повышает эффективность труда.
Потребность в ручном программировании возникает, только когда обойтись готовыми компонентами не удается. Языком программирования среды Delphi является объектно-ориентированный Pascal, а для поддержки баз данных имеется система InterBase. Используемый язык не накладывает ограничений, поэтому в системе Delphi одинаково рационально создавать как текстовые базы данных, так и системы обработки данных с большим количеством расчетов.
2. ПРОЕКТНАЯ ЧАСТЬ
2.1 Описание технологического процесса выполнения задачи
Разработку информационного обеспечения АРМ я провел на базе системы управления базами данных (СУБД) Access XP из состава выбранного интегрированного пакета Microsoft Office XP.
СУБД Access предназначена для разработки баз данных реляционного типа для локального их использования на персональных компьютерах и для работы с этими базами.
Данная СУБД была выбрана по следующим причинам:
1. простота средств реализации,
2. легкость освоения инструментарием разработчика (VBA),
3. наглядность визуализации информации.
Базы данных созданные с помощью системы управления базами данных «Microsoft Access» полностью реализую реляционную модель построения данных. База данных «Microsoft Access» представляет собой набор групп объектов, таких как таблицы, запросы, формы, отчеты.
Связи между таблицами можно разбить на четыре базовых реляционных типа с отношениями:
1. один-к-одному;
2. один-ко-многим;
3. многие-к-одному;
4. многие-ко-многим.
Структура организации таблиц позволяет создание первичных и внешних ключей. Имеется возможность изменения типа внутренних объединений для связанных таблиц. Также «Microsoft Access» предоставляет большое количество внутренних средств по оптимизации работы проектируемого приложения. К ним относятся:
1. загрузка модулей по требованию;
2. оптимизация дерева вызовов;
3. использование файлов MDE;
4. автоматическая поддержка компилированного состояния;
5. использование библиотек Windows API;
6. индивидуальная настройка системы;
7. эффективное использование индексов;
8. встроенный оптимизатор запросов.
Рассмотрим схему информационных потоков данных (Рис 2.1.).
Рис 2.1. Схема информационных потоков данных
Для реализации функции создания новой БД создадим файл базы данных Access "nokill.mdb", который представляет собой пустую базу Access, содержащую структуру таблиц. Когда создается новая БД, этот файл копируется под выбранным пользователем именем.
Для открытия файла БД Access используется строка подключения "'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;Persist Security Info=False';", хранящаяся в программе в виде строковой константы. Используя оператор format формируется окончательная строка соединения, где параметр "%s" заменяется именем файла БД. Строка соединения присваивается свойству "ConnectionString" компонента "tAdoConnection". После чего соединение открывается вызовом метода "Open".
Фильтрация осуществляется в обработчике события OnFilterRecord. Здесь вычисляется условие, при котором записи будут отображаться. Условие заключается в проверке условия вхождения даты в выбранный пользователем период.
Изменение направления сортировки осуществляется путем формирования нового SQL запроса, где после ключевого слова "ORDER BY" указывается имя поля по которому необходима сортировка.
Для построения графиков используются компоненты "tDBChart", каждый из которых связан со своим запросом. Запросы для графиков представляют собой SQL запросы с агрегатными функциями вычисления сумм. Ограничение на используемый в запросе период дат накладывается с помощью параметров.
2.2 Описание алгоритма
В начале работы программы происходит создание экземпляра класса tIniFile, представляющего собой реализацию windows ini файла. И инкапсулирующего в себе методы по работе с ним. В конструкторе класса указывается имя файла для открытия. Затем с помощью метода ReadString читается имя последней рабочей БД.
Если файл существует, то запускается процедура открытия БД. Если нет, то его создания.
После этого устанавливается свойство "Date" компонента tMonthCalendar в текущую дату. Далее переключаются закладки на первую страницу и устанавливается источник данных для навигатора БД (TDBNavigator).
Далее вызывается процедура открытия запроса к БД.
В теле любой windows программы находится глобальный цикл обработки сообщений. При программировании на Delphi данный цикл скрывается от программиста, тем самым, позволяя абстрагироваться от рутинных внутренних описаний и фокусироваться собственно на решении прикладной задачи. Такой принцип называется событийно ориентированным программированием. Здесь программист только описывает реакцию программы на различные происходящие события.
В программе обрабатываются следующие пользовательские события:
- изменение поле для сортировки. Обработчик данного события вызывает процедуру переоткрытия запроса к БД;
- добавление записи. Добавление данных происходит автоматически. В программе после этого происходит запуск процедуры обновления запроса для отображения графиков;
- редактирование. Аналогично предыдущему;
- удаление. Аналогично добавлению;
- создание новой БД. Обработчик вызывает одноименную процедуру;
- изменение периода просмотра. Действие аналогичное изменению поля сортировки;
- переключение закладок. При переключении закладок переустанавливается свойство DataSource для компонентов tDBNavigator и tDBMemo;
- классификатор статей. Здесь создается одноименная форма, в которой пользователь может редактировать список статей. После чего форма показывается модально после вызова метода ShowModal. После этого память выделенная для формы освобождается и обновляются все запросы.
- выход. Зарывает главную форму, при этом автоматически закрываются все запросы и соединение с БД.
Процедура открытия БД заключается в следующем.
С помощь метода Execute невизуального компонента tOpenDialog открывается диалог открытия файла. Если пользователь отказался от выбора, то происходит выход из процедуры.
Если файл выбран, то его имя подставляется в строку соединения с БД. Далее текущее активное соединение закрывается, в свойство ConnectionString компонента доступа к данным tADOConnection записывается полученная строка соединение. В конце происходит открытие соединения с помощью вызова метода Open.
Процедура создания нового файла БД заключается в запросе пользователя нового имени файла. Если пользователь отказался от выбора происходит выход из процедуры.
Если введено имя уже существующего имя файла, то происходит запрос подтверждения перезаписи файла. Если подтверждение не получено, то выходим из процедуры.
Далее введенное имя файла сравнивается с "nokill.mdb". Данные файл не может быть испорчен.
Если пользователь выбрал его, то выдается соответствующее сообщение об ошибке и процедура заканчивает свою работу.
Если все нормально, то происходит копирование файла"nokill.mdb" под введенным именем и запускается процедура открытия БД. Рассмотрим блок-схему алгоритма (Рис. 2.2.):
Рис 2.2. Блок схема алгоритма
2.3 Описание модулей
Модуль русифицированных сообщений. Содержит в себе описание трех основных экспортируемых процедур
procedure Notify(Msg: string);
Показывает сообщение с кнопкой 'Ок'
function Confirm(Msg: string): Boolean;
Функция выводит диалог подтверждение со строкой переданной параметрами и кнопками "Да", "Нет". Возвращает истину если пользователь выбрал "Да"
procedure Error(Msg: string);
Процедура выдает сообщение об ошибке.
Модуль классификатора типов статей. Форма содержит визуальные компоненты для отображения таблицы "kl", а также компонент tDataSource для связывания их с источником данных.
Здесь на форме находятся набор компонент обеспечивающих работу программы. Визуальные компоненты обеспечивают визуализацию данных и обеспечивают пользовательский ввод данных. Не визуальные компоненты разделяются по предназначению:
- компоненты доступа к данным (Соединение с БД, таблицы, запросы)
- компоненты хранилища данных (хранение изображений и пользовательских событий)
- Диалоги (диалог открытия файла, диалог сохранения)
Код программы данного модуля содержит обработчики пользовательских событий:
- выбор пунктов меню
- изменение порядка сортировки
- изменение глубины запросов
- изменение текущей даты в календаре
- переключение закладок
- изменение данных в таблицах
Рис. 2.3 Взаимодействие модулей
На рисунке представлена структурная схема программы (Рис 2.4.).
Рис. 2.4 Структурная схема программы
Тестирование программы осуществлялось методом покрытия переходов. При этом подходе тестирование производится последовательно по всем функциям системы.
Программа имеет очень простой и понятный интерфейс, поэтому пользователи без труда выполняли расчеты. Программа разработана на русском языке, и нет сложных бухгалтерских операций по статьям расходов и доходов. Большинство тестируемых отметили, что программа является полезной.
ЗАКЛЮЧЕНИЕ
В соответствии с целью нашей работы и в результате проведенного исследования были получены следующие выводы и результаты:
1. Проанализирована экономическая литература, литература по информационным технологиям по проблеме исследования.
2. Обработан необходимый материал для содержания программы.
3. Разработана программа «Семейный бюджет».
4. Проведена проверка результатов.
Сведения, содержащиеся в работе, обладают практической значимостью для всех, так как могут служить в дальнейшем хорошим помощником детям и их родителям, тем самым облегчить процесс расчета и ведения семейного бюджета, так как в каждой семье сталкиваются с проблемой правильного распределения денежных ресурсов.
Использование данной системы в реальных условиях позволит повысить эффективность работы и уменьшить издержки.
Практическая значимость курсовой работы заключается в создании автоматизированной системы управления.
Переход к автоматизированному методу делопроизводству дает возможность:
- наладить комплексное управление информацией в единой автоматизированной среде;
- получить целостную картину доходов и расходов;
- контролировать все операции, связанные с планированием бюджета;
- повысить эффективность ведения домашнего хозяйства.
Создание АИС способствует повышению эффективности производства экономического объекта и обеспечивает качество управления.
Использование данной автоматизированной системы электронного документооборота в реальных условиях приведет к улучшению ряда экономических показателей бюджета семьи.
Сегодня эффективность планировочной деятельности зависит в первую очередь от автоматизации всех процессов. Таким образом, успешная автоматизация управления домашним хозяйством будет зависеть от правильного выбора автоматизированной системы.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Атре Ш. Структурный подход к организации баз данных. - М.: Финансы и статистика, 1983. - 320 с.
2. Банк В.С., Зверев В.С. Информационные технологии в экономике, -2003
3. Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем. - М.: Финансы и статистика, 1989. - 351 с.
4. Голицина О.Л., Максимов Н.В., Попов И.И. Базы данных: Учебное пособие. - М.: ФОРУМ: ИНФРА-М, 2003. - 352 с.
5. Джексон Г. Проектирование реляционных баз данных для использования с микроЭВМ. -М.: Мир, 1991. - 252 с.
6. Докучаев А.А., Мошенский С.А., Назаров О.В. Средства информатики в офисе торговой фирмы. Средства компьютерных коммуникаций. - СП б, ТЭИ, 1996. - 32с.
7. Карпова Т.С. Базы данных: модели, разработка, реализация. - СПб.: Питер, 2002. - 304 с.
8. Кириллов В.В. Структуризованный язык запросов (SQL). - СПб.: ИТМО, 1994. - 80 с.
9. Клименко С.В., Уразметов В.Ф. Internet: среда обитания информационного общества. Протвино.: РЦ ФТИ, 1995.
10. Климова Р.Н., Сорокина М.В., Хахаев И.А., Мошенский С.А. Информатика торговой фирмы / Учебное пособие. Для студентов всех специальностей всех форм обучения. - СП б.: СПбТЭИ, 1998. - 32с.
11. Компьютерные технологии обработки информации./Под ред. Назарова С.И. - М.: Финансы и статистика, 1996.
12. Корнеев И.К., Машурцов В.А. Информационные технологии в управлении. - М.: ИНФРА-М, 2001. - 158 с.
Подобные документы
Подходы к планированию семейного бюджета. Анализ программ для учета и планирования семейного бюджета. Создание конфигурации для учета денежных средств и планирования доходов и расходов семьи. Работа со справочниками и документами. Формирование отчетов.
дипломная работа [2,1 M], добавлен 14.02.2015Рассмотрение элементов автоматизированной системы планирования и контроля доходной части бюджета. Использование Microsoft Office Access и технологии ADO в Delphi для связи база данных с программой. Описание структуры и результатов работы программы.
курсовая работа [691,6 K], добавлен 10.11.2013Существующие альтернативы программы. Описание формул для выкроек, используемых в разработке. Описание разрабатываемой программы, а также структура ее интерфейса. Детальное описание возможностей и спецификация, функциональные особенности программы.
курсовая работа [427,4 K], добавлен 10.10.2015Графическое изображение последовательности технологического процесса. Описание метода решения задачи на математическом языке. Общий алгоритм решения задачи и структура программы. Основные понятия сетевых моделей. Разработка программы на языке С++.
курсовая работа [1,3 M], добавлен 23.05.2013Бюджетирование как один из важных инструментов управления предприятием в условиях рыночной экономики, знакомство с основными целями. Особенности составления операционного бюджета в торговой организации при помощи программы Microsoft Office Excel.
курсовая работа [4,2 M], добавлен 19.10.2015Разработка программных средств автоматизированного анализа динамических свойств позиционной следящей системы с учетом люфта редуктора. Проектирование алгоритма и программы расчета и построения фазовых портретов или переходных процессов данной системы.
курсовая работа [432,5 K], добавлен 28.11.2012Создание схемы автоматизации парокотельной установки. Описание технологического процесса. Перечень входных и выходных переменных. Блок-схема технологического процесса. Разработка программы автоматизации с помощью программной среды LOGO! Soft Comfort.
курсовая работа [826,7 K], добавлен 20.11.2013Схема технологического процесса вывоза опилок из строительного цеха. Выбор среды разработки программного обеспечения. Описание функциональных блоков. Классификация сигналов. Разработка алгоритма технологического процесса. Листинг программы автоматизации.
дипломная работа [1,6 M], добавлен 22.11.2013Исследование арифметических, логических и вспомогательных операций, выполняемых микропроцессором. Построение блок-схемы инициализации резидентной программы и тела резидента. Характеристика основных особенностей написания программы на языке ассемблера.
лабораторная работа [67,8 K], добавлен 20.11.2012Автоматизация учета рабочего времени сотрудников войсковой части №63180. Проектирование баз данных, алгоритм решения задачи, описание архитектуры программы и реализация функционального назначения программы. Расчет себестоимости программного продукта.
дипломная работа [1,7 M], добавлен 12.09.2016