Министерство образования и науки Российской Федерации
Федеральное агентство по образованию ГОУ ВПО
Всероссийский заочный финансово-экономический институт
Кафедра Автоматизированной обработкиэкономической информации
КУРСОВАЯ РАБОТА
по дисциплине «Информатика»
на тему «Пакеты прикладных программ»
Исполнитель: Андреева Мария Михайловна
Специальность МиМ
Группа 201
№ зачетной книжки 06ммб00255
Руководитель: Жидаков Владимир Петрович
Москва - 2008
СОДЕРЖАНИЕ
Введение……………………………………………………………………..3
1.1 Понятие пакетов прикладных программ …………………………….4-9
1.2 Структура и основные компоненты пакетов прикладных программ……………………………………………………………………..10-14
1.3Примеры прикладных программ……………………………………15-17
2.1 Практическая часть. Общая характеристика задачи……………...18-19
2.2 Описание алгоритма решения задачи……………………………...20-22
Заключение………………………………………………………………23-24
Список литературы…………………………………………………………25
ВВЕДЕНИЕ
Персональный компьютер, как известно, является универсальным устройством для обработки информации. Персональные компьютеры могут выполнять любые действия по обработке информации. Для этого необходимо составить для компьютера на понятном ему языке точную и подробную последовательность инструкций – программу.
При своем выполнении программы могут использовать различные устройства для ввода и вывода данных, подобно тому, как человеческий мозг пользуется органами чувств для получения и передачи информации. Сам по себе ПК не обладает знаниями ни в одной области своего применения, все эти знания сосредоточены в выполняемых на нем программах. Поэтому часто употребляемое выражение «компьютер сделал» означает ровно то, что на ПК была выполнена программа, которая позволила выполнить соответствующее действие.
В настоящее время весь комплекс ПО делится на системные и пользовательские программы. Системное программное обеспечение выполняет функции «организатора» всех частей ПК, а также подключенных к нему внешних устройств. Программы для пользователей служат для выполнения каких – либо конкретных задач во всех сферах человеческой деятельности.
ПРИКЛАДНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ – это часть программного обеспечения, состоящая из отдельных прикладных программ и пакетов прикладных программ, предназначенных для решения различных задач пользователей ЭВМ, и созданных на их основе автоматизированных систем. Пакет прикладных программ, ППП — набор (комплект) программ и связанной с ними документации (лицензионное свидетельство, паспорт, инструкции пользователя и т.п.), предназначенный для решения комплексов задач в определенной проблемной области.1
1.1 ПОНЯТИЕ ППП
Многочисленные программные средства для решения различных типов вычислительных задач можно разделить на 4 группы:
- отдельные прикладные программы;
- библиотеки прикладных программ;
- пакеты прикладных программ;
- интегрированные программные системы. 2
Рассмотрим по порядку каждую из этих групп. Отдельная прикладная программа пишется, как правило, на некотором универсальном языке программирования (Паскаль и т.п.) и предназначается для решения конкретной прикладной задачи. Примерами могут служить программа решения системы линейных алгебраических уравнений тем или иным численным методом, программа вычисления собственных значений матрицы и т. д. Авторами таких программ являются прикладные программисты, специализирующиеся в соответствующих предметных областях. Прикладная программа может быть реализована в виде набора модулей, каждый из которых выполняет некоторую самостоятельную функцию. Например, программа вычисления собственных значений матрицы может включать модули, - реализующие преобразования матрицы из одной, формы представления в другую, ввод и вывод данных, обработку аварийных ситуаций с выдачей диагностических сообщений пользователю и другие действия. Библиотека представляет собой набор отдельных программ, каждая из которых решает некоторую прикладную задачу или выполняет определенные вспомогательные функции (управление памятью, обмен с внешними устройствами).
2. http://bank-referatov.rudiplom.ru/i/8395
Библиотеки программ зарекомендовали себя эффективным средством решения вычислительных задач. Они интенсивно используются при решении научных и инженерных задач с помощью ЭВМ. Условно их можно разделить на библиотеки широкого применения и специализированные библиотеки.
Программы, входящие в состав библиотеки широкого применения, предназначены для решения задач из различных предметных областей.
Специализированные библиотеки ориентированы на решение отдельных, порой достаточно узких, классов задач.
Переход от разработки отдельных прикладных программ к созданию библиотек программ поставил перед разработчиками ряд проблем как системного, так и прикладного характера. К числу основных проблем, возникающих на различных этапах конструирования библиотеки, относятся проблемы систематизации, документирования, тестирования и переносимости.
Проблема систематизации состоит в разбиении библиотеки на разделы и подразделы в соответствии с классификацией задач предметной области и методов их решения. Сюда входит выбор единых правил наименования программ (с учетом модификации и развития библиотеки), единых форм представления и наименования математически сходных объектов, единой схемы контроля ошибок и т. д.
Проблема документирования заключается в составлении единых правил описания программ библиотеки. Наличие качественной документации существенно упрощает доступ к отдельным программам, организацию взаимодействия между программами, включение новых программ. Важную роль при решении указанной проблемы играют средства автоматизации документирования, обеспечивающие широкое применение шаблонов (для титульных листов, фрагментов текста и т. п.), использование текстов программ библиотеки для автоматизированного составления документации и т. д.
Тестирование библиотеки состоит в проверке программ на специально подготовленных тестовых данных. Результаты тестирования в большой мере зависят от правильности и полноты набора тестов. Тестирование, в частности, включает проверку соответствия текста программы выбранному стандарту языка программирования, определение области применимости программы и качестве диагностического аппарата, выявление разнообразных количественных характеристик, программы (скорость работы, точность получаемых результатов и т. п.) сравнение с другими программами для решения той же задачи.
Проблема переносимости состоит в разработке методов и средств, обеспечивающих возможность использования программ библиотеки в различных вычислительных условиях (на различных типах ЭВМ, в различных операционных системах и т.д.) Эта проблема включает в себя такие аспекты, как следование стандарту языка программирования, организация работы с машинно-зависимыми константами, создание инструментальных средств, позволяющих автоматизировать перенос программ из одной вычислительной среды в другую. Доступ к программам библиотеки осуществляется с использованием штатных средств того или иного языка программирования. Разработка библиотек программ обычно осуществляется силами прикладных программистов. При этом нередко в библиотеку включаются программы, написанные в разное время и разными авторами. Отсутствие в составе библиотеки специализированного системного обеспечения позволяет в большинстве случаев при ее конструировании обойтись без какой-либо существенной помощи системных программистов (они могут привлекаться, например, для написания лишь отдельных служебных программ).
Таким образом, характерной особенностью библиотек программ является отсутствие проблемно-ориентированного входного языка и достаточно развитого системного обеспечения. Как правило, библиотеки программ ориентированы на типовые задачи предметной области и не содержат средств решения специфических прикладных задач (в первую очередь это относится к библиотекам широкого применения, программы которых могут использоваться для решения задач из различных предметных областей).
Перейдем теперь к рассмотрению пакетов прикладных программ (ППП) как самостоятельной формы прикладного программного обеспечения. В настоящее время не существует признанной всеми специалистами единой точки зрения по этому вопросу. Отсутствует также единая терминология в пакетной проблематике.
Будем считать пакетом программ любой комплекс, ориентированный на решение некоторого класса задач. Формально такое определение не исключает из числа пакетов и библиотеки программ. Однако сложившееся на сегодняшний день представление о ППП как о самостоятельной форме программного обеспечения, позволяет указать на ряд характерных отличительных особенностей пакетов.
Одной из главных особенностей является ориентация ППП не на отдельную задачу, а на некоторый класс задач, включающий и специфические задачи предметной области. Отсюда следует необходимость модульной организации ППП как основного технологического принципа его конструирования. Суть этого принципа состоит в оформлении общих фрагментов используемых алгоритмов в виде самостоятельных модулей. Решение сформулированной пользователем задачи осуществляется некоторой "цепочкой" таких модулей.
Другой особенностью ППП является наличие в его составе специализированных языковых средств, обеспечивающих удобную работу пользователя с пакетом. Как правило, развитый пакет обладает несколькими входными языками, ориентированными на выполнение различных функций и различные типы пользователей. Язык может предназначаться для формулировки исходной задачи, описания алгоритма решения и начальных данных, организации доступа и поддержания базы данных или информационной базы ППП, разработки программных модулей, описания модели предметной области, управления процессом решения в диалоговом режиме и других целей.
Еще одна особенность ППП состоит в наличии специальных системных средств, обеспечивавших принятую в предметной области дисциплину работы. К их числу относятся специализированные банки данных, средства информационного обеспечения, средства взаимодействия пакета с операционной системой и т. п.
Наконец, интегрированной программной системой назовем комплекс программ, элементами которого являются различные пакеты и библиотеки программ. Примером служат системы автоматизированного проектирования, имеющие в своем составе несколько ППП различного назначения. Часто в подобной системе решаются задачи, относящиеся к различным классам или даже к различным предметным областям.
Следует указать на отсутствие четких и однозначных границ между перечисленными формами прикладного программного обеспечения. Так, отдельная прикладная программа, ориентированная на решение класса задач и оформленная в виде совокупности модулей может рассматриваться как библиотека или даже пакет программ несмотря на отсутствие специализированных языковых и системных средств.
Переход от создания библиотек программ к разработке ППП был вызван целым рядом причин. К их числу прежде всего относится резкое увеличение возможностей ЭВМ. Это привело к значительному усложнению системного обеспечения вычислительных машин. Произошли существенные изменения в большинстве областей применения ЭВМ
1.2 СТРУКТУРА И ОСНОВНЫЕ КОМПОНЕНТЫ ППП
Несмотря на большое разнообразие конкретных пакетных разработок, можно выделить следующие основные компоненты ППП:
- входные языки (языки заданий)
- предметное обеспечение (функциональная подсистема)
- системное обеспечение (управляющая программа)
Важно отметить, что такое разбиение на составные элементы отражает в первую очередь функции, выполняемые программами ППП, а не структуру самих программ, которая зависит от индивидуальных особенностей конкретного пакета. В разных пакетах указанные компоненты могут быть развиты в различной степени или вовсе отсутствовать. Однако наиболее развитые ППП, как правило, обладают всеми этими компонентами, каждый из которых может иметь довольно сложную структуру.
В многочисленных работах, посвященных пакетной проблематике, из-за не устоявшейся терминологии нередко используются другие названия составных элементов ППП. Например, входной язык называют также языком заданий или языком управления. Для обозначения предметного обеспечения применяются термины "функциональное наполнение", "функциональная подсистема" или "тело пакета". Системное обеспечение часто называют системным наполнением, организующей или управляющей программой, а также процессором пакета.
Рассмотрим функции каждого из компонентов ППП.
Входные языки представляют собой средство общения пользователя с пакетом. Как отмечалось в п. 3.1, развитый пакет может обладать несколькими входными языками, предназначенными для выполнения различных функций и ориентированными на различные типы пользователей. Можно выделить следующие основные типы пользователей ППП:
Разработчик ППП, осуществляющий его модификацию и развитие с учетом изменения круга пользователей, класса решаемых задач (появление новых типов задач, развитие численных методов, модификация форм проведения работ и т. д.), а также состава аппаратного и программного обеспечения ЭВМ:
Ответственный за сопровождение, в функции которого входит поддержание пакета в работоспособном состоянии в условиях конкретной вычислительной системы (обеспечение сохранности программ и массивов данных, своевременное дублирование информационных файлов, выявление ошибок в программах пакета).
Администратор, отвечающий за организацию доступа пользователей к пакету, содержимое базы данных, защиту информации от несанкционированного доступа;
Конечный пользователь, применяющий пакет для решения конкретных прикладных задач.
Входные языки отражают объем и качество предоставляемых пакетом средств, а также удобство их использования. Таким образом, с точки зрения конечного пользователя именно входной язык является основным показателем возможностей ППП.
В качестве входных языков могут использоваться как универсальные, так и специализированные языки программирования. Например, в качестве входного языка разработчика ППП для написания прикладных и системных программ пакета обычно используется тот или иной универсальный язык программирования (Фортран, Паскаль). В то же время входной язык конечного пользователя в развитом пакете, как правило, является языком качественно более высокого уровня по сравнению с универсальными языками. Изобразительные средства такого языка учитывают особенности задач предметной области и специфику пользователей. Подобные языки называют проблемно-ориентированными, или предметно-ориентированными.
Перейдем теперь к рассмотрению других компонентов ППП, конкретная прикладная деятельность характеризуется двумя факторами:
1) классом решаемых задач и используемых для этих целей методов,
2) дисциплиной работы, т.е. совокупностью правил, соглашений и технологических приемов, принятых при разработке, отладке, эксплуатации программ.
Предметное обеспечение представляет собой компонент пакета, отражающий особенности первого из этих факторов, т. е. особенности конкретной предметной области. Предметное обеспечение включает:
- программные модули, реализующие алгоритмы (или их отдельные фрагменты) решения прикладных задач;
- средства сборки программ из отдельных модулей,
Определение состава библиотеки модулей и форм их взаимодействия между собой является одной из наиболее трудоемких задач при построении ППП. Ее решение предполагает проведение тщательного и квалифицированного модульного анализа используемых алгоритмов. Удачно проведенный модульный анализ в значительной степени влияет на полноту охвата предметной области, а также на возможность расширения класса решаемых задач. Таким образом, выделение модулей существенно зависит от специфики задач и используемых алгоритмов и, по сути дела, отражает принятый в пакет способ сборки программ.
Наиболее распространено в настоящее время оформление каждого модуля в виде программной единицы на том или ином языке программирования (например, в виде подпрограммы или подпрограммы–функции на языке Фортран). Такой модуль обеспечивает решение некоторой самостоятельной задачи и связан с другими модулями лишь входной и выходной информацией. Организация предметного обеспечения в виде библиотеки программ характерна для большинства существующих ППП.
Помимо рассмотренного подхода к оформлению модулей как программных единиц используются и другие способы.
Системное обеспечение представляет собой совокупность системных средств (программы, файлы, таблицы и т. д.), обеспечивающих определенную дисциплину работы пользователя при решении прикладных задач. По своей роли в составе ППП и выполняемым функциям системное обеспечение по существу является специализированной операционной системой, определяющей операционное окружение пакета. Несмотря на многообразие способов реализации системного обеспечения в рамках конкретных пакетных разработок, можно выделить его следующие основные компоненты:
- монитор, управляющий процессом решения и взаимодействием всех компонентов ППП;
- трансляторы с входных языков;
- средства работы с данными;
- средства информационного обеспечения, реализующие выдачу разнообразной справочной информации как по запросам пользователей (о структуре и возможностях ППП, о допущенных ошибках и т.д.), так и по запросам различных компонентов пакета (например, сведения о свойствах модулей предметного обеспечения, необходимые планировщику вычислений);
- различные служебные программы, в том числе реализующие взаимодействие пакета с операционной системой (работа с внешней памятью, средства ввода/вывода, драйверы специализированных, внешних устройств и др.).
В конкретном ППП, как правило, отсутствует четкое структурное разделение программ на предметное и системное обеспечение. Например, программа планирования вычислений может одновременно выполнять те или иные служебные функции (информационное обеспечение, связь с операционной системой и т. п.) и тем самым относиться как к предметному, так и к системному обеспечению. Кроме того, одни и те же программы в одном пакете могут относиться к предметному обеспечению, а в другом - к системному. Так, программы вывода графиков в рамках специализированного пакета машинной графики естественно отнести к предметному обеспечению. Однако те же программы следует считать служебными и относящимися к системному обеспечению, например, в пакете решения вычислительных задач.
1.3 ПРИМЕРЫ ПРИКЛАДНЫХ ПРОГРАММ
В качестве примеров прикладных программ я рассмотрим две специализированные программы, поставляемые в пакете Microsoft Office: Microsoft Word и Microsoft Excel.
Microsoft Word представляет собой популярный текстовый процессор, предназначенный для работы под управлением ОС Windows. Он представляет широкие возможности по подготовке документов. В их числе выделим следующее: развитый интерфейс, обширную и удобную в применении систему справочной помощи, широкие возможности по внедрению и связыванию графических объектов, возможности редактирования рисунков средствами самого Word, разнообразные возможности по форматированию абзацев и символов, удобство в построении и редактировании таблиц, наличие развитого формульного редактора, наличие разнообразных конвертеров для связи с другими приложениями, наличие средств контроля грамматической правильности текста, автоматизированное форматирование документов на основе стилей.
Word входит в состав Microsoft Office и обеспечивает возможность интеграции с другими компонентами названной и более ранних версий пакета. В документы Word можно легко встроить данные (таблицы, графику), сформированные в среде табличного процессора Microsoft Excel, системы подготовки презентаций PowerPoint и СУБД Access.
Табличный процессор Excel поддерживает также общие функциональные возможности текстовых процессоров, такие как использование макросов, построение диаграмм, автозамена и проверка орфографии, использование стилей, шаблонов, автоформатирование данных, обмен данными с другими приложениями, наличие развитой справочной системы, печать с настройкой параметров и другие сервисные возможности.
Табличный процессор Excel целесообразно использовать для создания таблиц в случаях, когда предполагаются сложные расчеты, сортировка, фильтрация, статистический анализ массивов, построение на их основе диаграмм.
Опишем основные ключевые понятия, используемые при работе с табличным процессором Excel.
Рабочая книга является основным документом Excel. Она хранится в файле с произвольным именем и расширением xls. При создании или открытии рабочей книги ее содержимое представлено в отдельном окне. Каждая книга по умолчанию содержит 16 рабочих листов.
Листы предназначены для создания и хранения таблиц, диаграмм и макросов. Лист состоит из 256 столбцов и 16384 строк.
Ячейка является структурной наименьшей единицей для размещения данных внутри рабочего листа. Каждая ячейка может содержать данные в виде текста, числовых значений, формул или параметров форматирования. При вводе данных Excel автоматически распознает тип данных и определяет перечень операций, которые могут с ними производиться. По своему содержимому ячейки делятся на исходные (влияющие) и зависимые. В последних записаны формулы, которые имеют ссылки на другие ячейки таблицы. Следовательно, значения зависимых ячеек определяются содержимым других (влияющих) ячеек таблицы. Ячейка, выбранная с помощью указателя, называется активной или текущей ячейкой.
Адрес ячейки предназначен для определения местонахождения ячейки в таблице. Существует два способа записи адресов ячеек:
Указанием буквы столбца и номера строки таблицы, перед которыми может записываться знак $, указывающий на абсолютную адресацию. Этот способ используется по умолчанию и называется стилем А1.
Указанием номера строки и номера столбца, следующих после букв R и С, соответственно. Номера строк и столбцов могут заключаться в квадратные скобки, которые указывают на относительную адресацию.
Формула – это математическая запись вычислений, производимых над данными таблицы. Формула начинается со знака равенства или математического оператора и записывается в ячейку таблицы. Результатом выполнения формулы является вычисленное значение. Это значение автоматически записывается в ячейку, в которой находится формула.
Функция – это математическая запись, указывающая на выполнение определенных вычислительных операций. Функция состоит из имени и одного или нескольких аргументов, заключенных в круглые скобки.
Указатель ячейки – это рамка, с помощью которой выделяется активная ячейка таблицы. Указатель перемещается с помощью мыши или клавиш управления курсором.
Ссылка – это запись адреса ячейки в составе формулы. Ссылки могут быть абсолютные, относительные и смешанные.
Список – это специальным образом оформленная таблица, с которой можно работать как с базой данных. В такой таблице каждый столбец представляет собой поле, а каждая строка – запись файла базы данных.
Таким образом, каждый из этих пакетов решает свои функции. Развитие этих программ происходило от самого “архаического” периода до периода современности. Изменение интерфейса, простота в использовании улучшаются с каждой новой версией этих программных продуктов, Microsoft Word и Microsoft Excel являются признанными во всем мире прикладными программами, нам, обычным пользователям, остается ожидать новых версий этих программ, в надежде на их очередное усовершенствование и упрощение в пользовании.
2.1 ПРАКТИЧЕСКАЯ ЧАСТЬ. ОБЩАЯ ХАРАКТЕРИСТИКА ЗАДАЧИ.
Вариант 2
Хлебозавод «Колобок» осуществляет деятельность, связанную с выпечкой и продажей хлебобулочных изделий. Данные, на основании которых выполняется калькуляция стоимости выпечных изделий, приведены на рис. 2.1 и 2.2
Построить таблицы по приведенным ниже данным.
Результаты вычислений представить в виде таблицы, содержащей расчет стоимости выпечных изделий (рис. 2.2), и в графическом виде.
Организовать межтабличные связи для автоматического формирования калькуляции стоимости выпечных изделий.
Сформировать и заполнить форму калькуляции стоимости (рис. 2.3).
Расход продуктов
Рис. 2.1 Данные о стоимости компонентов выпечных изделий
Стоимость выпеченных изделий
Рис. 2.2 Расчет стоимости выпечных изделий
2.2 ОПИСАНИЕ АЛГОРИТМА РЕШЕНИЯ ЗАДАЧИ.
Запустить табличный процессор MS Excel.
Создать книгу с именем «Практическая».
Лист 1 переименовать в лист с названием Расход Продуктов.
4. На рабочем листе Расход Продуктов MS Excel создать таблицу наименования продуктов.
5. Заполнить таблицу продуктов исходными данными (рис.2.1).
Лист 2 переименовать в лист с названием «Стоимость выпеченных изделий».
На рабочем листе Заказчики MS Excel создать таблицу, в которой будет содержаться список составляющих пирожное и расчет стоимости выпечных изделий.
Стоимость выпечных изделий рассчитывается по формуле:
= RC[-2]*RC[-1]
Размножить введенную формулу для остальных ячеек (с R4C5 по R7C5)
Лист 2 переименовать в лист с названием «Форма калькуляций выпеченных изделий».
Просчитать стоимость Компонента в изделии ч/р формулы:
=ВПР(RC[-1];ссс;4;1)
Протянуть с ячейки R9C3 до R11C3 и с R13C3 до R14C3
И просчитать общую сумму изделия по формулам:
=R[-3]C+R[-2]C+R[-1]C
=R[-2]C+R[-1]C
10. Результаты вычислений представить графически.
Практическая часть находиться на дискете.
ЗАКЛЮЧЕНИЕ
Современный российский рынок прикладного программного обеспечения является, в значительной мере, рынком пиратского ПО. Это связано с тем, что потребитель не в состоянии платить полную стоимость лицензионного ПО западных и американских разработчиков. По оценкам экспертов, до 90% продаж составляет ворованное программное обеспечение. Вместе с тем, покупая взломанное ПО, потребитель должен быть готов, что в любой момент его компьютер может «зависнуть», или возможна потеря данных.
Западные крупнейшие производители программного обеспечения решили двигаться 2-я путями: с одной стороны, они вкупе с правоохранительными органами все чаще привлекают продавцов пиратского ПО к уголовной ответственности, а с другой стараются держать цены на свои продукты минимально низкими, разрабатывая и запуская разного рода партнерские программы.
Ошибки в прикладном программном обеспечении были и остаются основным путем проникновения злоумышленника как на сервера, так и на рабочие станции. Объективная причина этого – разработка подобного ПО различными группами разработчиков, которые просто не в состоянии уделить должного внимания сетевой и локальной безопасности своего продукта. И если фирмы-разработчики операционных систем тратят огромные суммы на тщательные испытания поведения их программ в нестандартных ситуациях, а также активно учитывают многолетний опыт своих же ошибок, то для небольших фирм это просто не под силу, да и крайне невыгодно экономически.
Ошибки активно ищутся группами "хакеров" практически во всем более или менее распространенном ПО, однако, наибольшую известность приобретают, конечно, исследования программ, установленных почти у каждого пользователя.
Многие атаки используют не только непосредственные ошибки в реализации ПО, но и непродуманные разработчиками аспекты использования стандартных возможностей программы. Так, пожалуй, самым ярким примером этого являются MACRO-вирусы в документах системы Microsoft Office. Возможность исполнения макросов была встроена в эту систему из самых благих побуждений, но тот факт, что макросы могут запускаться на определенные события (например, открытие документа) и получать доступ на модификацию к другим документам, сразу же был использован создателями вирусов отнюдь не в благих целях.
В заключение хотелось бы отметить то, что разработка и защита прикладного программного обеспечения весьма трудоемкий процесс, требующий определенных навыков и знаний.
СПИСОК ЛИТЕРАТУРЫ
Экономическая информатика/ В.П. Косарев, Л.В. Еремин/МФинансы и статистика, 2001 г.
Программное обеспечение персональных компьютеров//Учебное пособие для вузов/Можаров Р.В., Можарова Н.Р., Евтеев / М.: Финстатинформ, 1999.
Основы современных компьютерных технологий//Учебное пособие для вузов/ Хомоненко А.Д. /Ст-Петербург: Корона принт, 1998
HYPERLINK "http://www.bankreferatov.ru" www.bankreferatov.ru, 2004 г.
HYPERLINK "http://www.citforum.ru" www.citforum.ru , 2006 г.