Организация совместной разработки веб-приложений в рамках социальной сети GITHUB

Автор: Шалтунович Анна Викторовна

Журнал: Вестник Нижневартовского государственного университета @vestnik-nvsu

Статья в выпуске: 3, 2011 года.

Бесплатный доступ

В статье произведен обзор социальной сети GITHUB, а также показаны ее преимущества при использовании в процессе обучения специалистов в сфере информационных технологий

Информация, информационные технологии, программное обеспечение, социальная сеть, открытое программное обеспечение, свободное программное обеспечение, совместная разработка, веб-приложение, образование

Короткий адрес: https://sciup.org/14116666

IDR: 14116666

Текст научной статьи Организация совместной разработки веб-приложений в рамках социальной сети GITHUB

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

Совместно с развитием информационных технологий, как известно, меняются и способы ведения различных видов деятельности. Так, например, в области организации переговоров большой популярностью пользуются системы онлайн-конференций. Для организации бизнес-процессов широкое применение получили корпоративные порталы, позволяющие организовать деятельность предприятия на удаленной основе. В сфере образовательных услуг активно распространяются системы дистанционного обучения.

Таким образом, сегодня для того чтобы обладать необходимой актуальной информацией в рамках определенной цели, достаточно иметь доступ к сети Интернет с персонального компьютера любого класса.

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

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

Социум требует адаптировать учебные мероприятия к современным условиям, что должно повысить их ценность и важность. Задания, имеющие практическую значимость, а не решение типовых задач, проблемные ситуации, а не простое изложение материала, нацеленность на совместное проектирование, а не на одиночную разработку — такими должны быть занятия. Все эти практические навыки гораздо больше востребованы студентами, чем традиционные методы обучения и знания, полученные при решении классических задач.

Далее стоит рассмотреть коренные изменения в коммуникационной жизни общества, в частности, продвижение технологий социальных сетей и интернет-общения. Информационные средства сетевого общения позволили по-новому организовать способы коммуникации между людьми, а вместе с тем и некоторые виды проводимых учебных работ. Студенту уже недостаточно быть простым пассивным слушателем в процессе обучения, его повседневная жизнь в интернет-сообществах позволяет быть активным автором за пределами учебного заведения. Поэтому необходимо предоставить всем участникам образовательного процесса возможность для творческого мышления и активного продвижения своих идей и проектов, особенно в рамках организации самостоятельной деятельности студентов. Самостоятельную проектную деятельность необходимо организовывать в качестве совместной работы над проектом группы студентов. При этом каждый студент сможет реализовать наиболее развитые способности именно на своем функционально обоснованном месте в группе. Прошли те времена, когда разработкой программных продуктов занимался один программист. Сегодня выпуск готового программного продукта и его успех на рынке — это результат труда команды разработчиков, службы внедрения и сопровождения, специалистов в области рекламы и продвижения товаров, технического и обслуживающего персонала [1].

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

  • 1.    Создание проекта и определение требований, предъявляемых к программному продукту.

  • 2.    Разработка информационной системы.

  • 3.    Тестирование и отладка.

  • 4.    Эксплуатация и сопровождение.

Для эффективной работы по созданию информационной системы необходимо правильно и рационально координировать работу всей группы специалистов, работающих над данным проектом. Кроме того, нужно не только распределить обязанности каждого члена группы, но и его уровневое назначение на том или ином этапе создания программного продукта. Уровневое назначение предполагает наличие двух взаимосвязанных подсистем — это контролирующая и рабочая группы. Соответственно, рабочая группа отвечает за непосредственную реализацию поставленной задачи, а контролирующая группа — за мониторинг эффективности, правильности, адекватности, своевременности и актуальности решения задачи.

Современные сетевые средства общения позволяют не только выступать в качестве автора некоторых идей, но и являться активным критиком и вносить свои собственные изменения в предложенные концепции. Так, в области разработки программного обеспечения организованно сообщество для совместной работы над проектами на базе социальной сети GITHUB (github.com).

GITHUB — это веб-сервис для размещения проектов и их совместной разработки. Данная социальная сеть основана на технологии GIT, являющейся распределенной системой управления версиями файлов. Проект был создан Линусом Торвалдсом для управления разработкой ядра Linux, первая версия выпущена 7 апреля 2005 г. Примерами проектов, использующих Git-технологии, являются ядро операционной системы Linux, система управления содержимым Drupal, библиотека векторного рендеринга Cairo, веб-браузер Chromium, библиотека jQuery и некоторые дистрибутивы Linux.

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

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

Особой популярностью данная социальная сеть пользуется у программистов Java Script. Предпочтения программистов, использующих социальную сеть, относительно языков программирования распределены следующим образом:

Спектр языков программирования, используемых в проектах этого сообщества, гораздо более широкий: ActionScript, Ada, Arc, Arduino, ASP, Assembly, AutoHotkey, Boo, C, C#, C++, Clojure, CoffeeScript, ColdFusion, Common Lisp, D, Delphi, Dylan, Eiffel, Emacs Lisp, Erlang, F#, Factor, Fancy, FORTRAN, Go, Gosu, Groovy, Haskell, HaXe, Io, Ioke, Java, Java-

Script, Lua, Matlab, Max/MSP, Mirah, Nemerle, Nu, Objective-C, Objective-J, OCaml, ooc, Parrot, Perl, PHP, Prolog, Pure Data, Python, R, Racket, Rebol, Ruby, Rust, Scala, Scheme, Self, Shell, Smalltalk, Standard ML, SuperCollider, Tcl, Turing, Vala, Verilog, VHDL, VimL, Visual Basic, XQuery.

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

Таким образом, использование профессионально-ориентированных социальных сетей позволяет организовать учебный процесс, в частности самостоятельную деятельность студентов, на базе наиболее популярных средств сетевой коммуникации, и следовательно наиболее простым образом заинтересовать студентов совместной разработкой приложений любого уровня.

Список литературы Организация совместной разработки веб-приложений в рамках социальной сети GITHUB

  • Осокина Е.В. Результаты внедрения методической системы обучения будущих ИТ-специалистов коллективной разработке прикладных информационных систем // Мир науки, культуры, образования. 2011. № 2(27).
Статья научная