Бы рассказать об Open Source продукте который мы разрабатываем. Речь идет о системе управления




Скачать 51.02 Kb.
НазваниеБы рассказать об Open Source продукте который мы разрабатываем. Речь идет о системе управления
Дата публикации27.03.2013
Размер51.02 Kb.
ТипРассказ
odtdocs.ru > География > Рассказ

Вступление


Добрый день

Я хотел бы рассказать об Open Source продукте который мы разрабатываем. Речь идет о системе управления содержанием сайта (CMS) Energine, которая базируется на одноименном каркасе для создания веб приложений (то есть Content Management Framework (CMF)). Это разработка компании ColoCall, которая, как возможно многим известно, является крупным ISP, специализирующимся на размещении ресурсов в Интернете. Поскольку именно владельцы Интернет-проектов являются нашими клиентами, то одним из перспективных направлений деятельности компании стала разработка веб приложений различной степени сложности (как части комплексной услуги, включающей последующее размещение ресурса на тех. площадке, его администрирование и поддержку).

Соответственно, возникла необходимость в системе, которая бы позволяла в сжатые сроки создавать типовое программное обеспечение, удовлетворяющее следующим требованиям:

  • высокая скорость разработки

  • гибкость и настраиваемость под потребности клиента

  • невысокая цена сопровождения (общая стоимость владения (TOC))

  • наличие инструментов позволяющих конечному пользователю (редактору или контент менеджеру) легко вносить изменения в содержание и структуру сайта.

Поскольку данная система должна работать на протяжении сравнительно долгого периода, необходимо разрабатывать ее «на вырост», используя перспективные (новые) технологии, которые бы не устарели через короткий промежуток времени.

Ни одна из существующих на тот момент открытых систем не отвечала всем перечисленным требованиям, поэтому и решено было разрабатывать собственную.

Для того чтобы объяснить причины побудившие нас перейти к Open Source распространению продукта, необходимо вкратце рассказать об основных принципами функционирования систем управления содержимым (частным случаем которых системы управления сайтами).
^

Построение content management framework – основные понятия и процесс разработки


Любой современный сайт является, по сути, результатом работы набора скриптов, которые формируют страницы «на лету» - в ответ на запрос по определенному УРЛу. Данные о содержании страниц поступают из внешних хранилищ (это могут быть файлы или БД). Часто, для ускорения работы применяется полное или частичное кэширование. Задача системы управления содержанием - предоставить редактору, обычно, не являющемуся специалистом по программированию, возможность вносить изменения в содержание сайта путем заполнения различных форм. Неотъемлемой частью системы управления содержанием есть редактор разделов - средство позволяющее управлять структурой сайта.

Рано или поздно, компании которая разрабатывает сайты приходится упорядочивать принципы создания новых страниц, как общедоступных, так и страниц административного интерфейса, систематизировать методы работы с ними. Следовательно, появляется определенный каркас для разработки сайтов, представляющий собой набор типовых решений наиболее часто встречающихся задач. Следующая ступень развития – это Content Management Framework, так сказать, более универсальное средство, позволяющее создавать любые веб приложения, а всю специфичную для каждого конкретного случая функциональность разрабатывать в рамках единой схемы.
^

Об Energine


Специфика нашей системы управления содержанием является то, что она создана уже как прикладная реализация существующего фреймворка. Разработка ведется на языке РНР 5ой версии, что позволяет использовать все новые объектные (да и не только) возможности которые он предоставляет. Для хранения данных используется БД MySQL c расширением InnoDB. Впрочем наличие абстрактной прослойки для доступа к базе делает возможным миграцию на любую современную БД, предоставляющую схожие возможности (наличие транзакций, поддержку ссылочной целостности и прочее). В основу системы положена компонентная концепция, то есть представление страницы сайта как набора типовых элементов – компонентов (главное меню, текстовые блоки, список дочерних страниц, карта сайта, редактор разделов). Каждый из них обладает методами, управляющими его поведением и обеспечивающими стандартизированный вывод результатов работы. Результаты работы компонентов объединяются в единый XML документ, который с помощью XSLT преобразований выводится в любом нужном формате, чаще всего в HTML. Система работает под управлением веб сервера Apache и (с определенными оговорками) может быть использоваться на любой ОС, на которой его можно установить.

Расширение системы достигается путем создания новых компонентов. Для удобства они объединены в модули, каждый из которых отвечает за определенную специфичную область (работа с пользователями, магазин, управление изображениями). Поскольку часть функциональности повторяется из проекта в проект, а часть является специфичной только для конкретного сайта то возникает разделение модулей на стандартные и пользовательский.
^

Переход к Open Source развитию


Как и любой долгосрочный проект, такая система должна постоянно развиваться, так как остановка в развитии означает отставание, поскольку не стоит на месте и сама индустрия ПО; постоянно усовершенствуются и средства разработки, которые позволяют оптимальным путем решать поставленные задачи. (Иногда, «оптимально» - означает увеличение скорости работы, иногда – просто более быстрое и гибкое решение). Собственно возникают два пути

  • выпуск коммерческой (по сути коробочной версии), при этом усилия разработчиков полностью направляются на развитие и усовершенствование продукта.

  • распространение как Open Source и параллельно предоставление услуг с использованием этого продукта.

В первом случае - существует довольно высокая конкуренция в этой нише(продажи коробочной), причем многие компании специализируются именно на этом направлении , соответственно могут направить больше ресурсов на разработку и рекламу своего продукта. Кроме того, коммерческий продукт требует подробной и разноплановой сопроводительной документации, тщательного многоуровневого тестирования, создания службы поддержки пользователей. Все это удорожает разработку и требует дополнительных затрат времени. Не нужно забывать также и о специфике отечественного рынка программных продуктов, с его устоявшимися пиратскими традициями, когда защита от не лицензионного копирования (распространения) является серьезной, а часто, и не решаемой проблемой особенно для небольших компаний.

Преимущества второго путь развития – свободного распространения системы:

  • «быстрый старт» - привлечение внимания к своему продукту еще на ранних этапах разработки

  • тестирование готового продукта в различных условиях

  • open source community имеет довольно мощные и налаженные каналы распространения информации о новом продукте(имеется ввиду как сервисы наподобие SourceForge, многочисленные специализированные блоги, форумы и прочее)

  • «свежая кровь» - привлечение к процессу разработки сторонних специалистов (в том или ином виде заинтересованных в развитии и усовершенствовании продукта).

Конечно, переход к свободному распространению имеет и свои недостатки, среди которых необходимо отметить то, что открытость исходных кодов облегчает всем желающим возможность найти бреши в безопасности системы, и совершить какие то злоумышленные действия. Путь решения у этой проблемы один – создание по максимуму защищенного кода(насколько это возможно).

После сравнения обоих вариантов дальнейшего развития нами было принято решения выложить в открытый доступ исходные коды системы, для того чтобы, предоставить всем желающим, только использовать ее для собственных нужд, но и внести свою лепту в усовершенствование системы. Energine распространяется по лицензии LGPL, что позволяет использовать ее как базис для создания коммерческих продуктов.

В заключение хотелось бы отметить что поскольку индустрия разработки программного обеспечения (как и вообще IT сфера ) сравнительно молодая и одновременно бурно развивающаяся отрасль, то в ней легче использовать неклассические (новаторские) схемы распространения продуктов и Open Source – как один из них.

Добавить документ в свой блог или на сайт

Похожие:

Программа gsoc впервые была запущена в 2005 году, тогда в ней приняли...
В докладе рассказано о инициативах Google Summer of Code и Highly Open Participation Contest для поддержки Open Source проектов....

Teos (tnu education Open Source)
Описание модуля регистрации, авторизаци и восстановления пароля пользователей в системе

Отчет о работе учебно-научной лаборатории открытого программного...
Лаборатория открытого программного обеспечения и мобильных платформ (Open Source & Linux Lab) основана в 2007 году на кафедре Математического...

Применение Open Source в курсе «Методы и Средства Анализа данных»
В начале учебного года встала задача создать курс, который давал бы студентам знания по методам анализа данных и навыки использования...

С чего начинается open source проект?
Этот вопрос приобретает особое значение

Статья называется «Муж на час» о чём, по вашему мнению, идёт речь?
Статья называется «Муж на час» о чём, по вашему мнению, идёт речь? По названию попробуйте определить содержание текста

Общество с ограниченной ответственностью «Барнаульская сетевая компания»
«Заявитель», в лице Error: Reference source not foundError: Reference source not foundError: Reference source not found, действующего...

Программирование для корпораций и open source: java way / jungle framework as example
Открытое по уже давно стало неотъемлимым элементом инфраструктуры, хотя вокруг возможности жизнеспособных экономических моделей до...

О. Л. Садов ОАО линукс инк sadov@linux-ink ru
Свободное Аппаратное Обеспечение (сао) — явление, получившее распространение сравнительно недавно и еще не имеющее своего четкого...

Разработка Open Source программного обеспечения для незрячих (Denis Kirin)
Поэтому для обеспечения взаимодействия пользователя с компьютерной программой используют специальные средства, это либо синтезаторы...

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
odtdocs.ru
Главная страница