Project Management Issue Tracking

Все те, кто работает в сфере IT сталкивались с проблемой, когда команде (как минимум) просто жизненно необходим софт для ведения пректа. А когда это крупная компания, где менеджер ведет десятки проектов и работает с десятками команд, с сотнями людей… Интересная тема, особенно если учесть, что бесплатных и качественных разработок тут не так уж и много!

Благо есть университет и выпускной, пятый, курс и надо писать диплом!

Так что в этой ветке форума я буду первым со следующей задумкой. Если вы использовали какой-нить софт для issue tracking’a, то при выборе онного, небось, сталкивались с таким проектом как Jira. Хороший, качественный продукт. Но за бугром, да и теперь у нас за качество берут хорошие деньги! Я бы даже сказал ДЕНЬЖИЩИ… Так вот Jira предоставляет отличный сервис: на сервере вы имеете server-side приложение, которое по запросу возвращает типизированный запрос, а клиент уже делает с этим всё, что угодно. Удобно…

Отсюда вопрос: а что если вернуть не просто набор данных, а набор семантически связанных данных!?!

Вот на этом и буду основываться 2 дипломные работы: Сервер и Клиент! Ваши мысли…

jupy В принципе идея интересная, но надо четко понимать, какие именно преймущества даст использование «семантически связанных данных».

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

DeleteR Я, конечно же, согласен! :) Но для диплома в МОЕМ универе, нужно именно что-то крутое!!! А то наш завкаф не любит фигню… Ему сразу Windows подавай… :)

Вот, сейчас сообщили печальную новость — предзащита 26 марта… Я в ужасе…

DeleteR Не буду печалиться… Новость о предзащите — всего лишь повод отлынивать от работы, ссылаясь на работу над дипломом.

mihazimin Если говорить о технологиях Semantic Web, таких как RDF, OWL и SPARQL, то вот какие преимущества они нам дают:

Данные можно хранить в RDF-документах. При этом для построения системы с приемлемой скоростью ответов на запросы можно положить эти RDF-данные в репозитории (такие, например, как BOCA). При необходимости репозиторий можно поменять на другой, стандарт RDF — для всех один. Таким образом получаем независимость от различных ОС и сред. Проектировать архитектуру можно при помощи OWL. По сути, в OWL описываются классы и свойства. А в RDF — экземпляры этих классов (индивиды). При этом добавить новый класс и новое свойство в существующий OWL не составляет труда. Третьим в этой компании является язык запросов к RDF-документам — SPARQL. Причем, с его помощью можно как осуществлять обычные запросы к документам (использую SELECT), так и конструировать новые RDF-данные (используя CONSTRUCT). В принципе, есть люди, среди них много талантливых и опытных программистов, которые считают, что все тоже самое нам уже дал XML, а RDF вообще трудный и необоснованно сложный язык. Начну со второго: сложности в RDF никакой нету. Просто W3C попытался запихнуть RDF в нотацию XML. Отсюда появился синтаксис RDF/XML, который невозможно читать и сделан он только для совместимости с XML: RDF/XML Syntax Specification (Revised) RDF/XML Syntax Specification (Revised) RDF/XML Syntax Specification (Revised) Der Baum Das Buch ist außergewöhnlich The Tree На самом же деле RDF документ, — это описание графа. И описывать его можно при помощи тройки (две вершины и ребро): субъект-предикат-объект. Для этого существует вполне нормальный human-readable язык n3, который и надо использовать (по крайней мере при ручной работе с rdf-документами). Теперь насчет XML и того, что он якобы лучше, чем RDF. Есть принципиальная разница среди этих языков. XML — описание дерева. RDF — описание системы графов. Причем ребра графов могут являться также и вершинами. Теперь самое интересное, — языки запросов. SPARQL-подобные языки должны произвести маленькую революцию. Это действительно шаг вперед по сравнения с языками запросов к XML. По сути, простым, человечным запросом мы можем вынуть из графа любую информацию. Причем, специалисту создать sparql-запрос намного легче, чем запрос к XML. В итоге мы получаем: полную независимость от ОС, сред и репозиториев, вся информация описывается графами (что является совершенно для человеческого мышления), очень удобный язык запросов.

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

А вообще идея интересная, и Semantic Web как раз кстати.

DeleteR Миша, спасибо за ответы и советы. Постараемся прислушаться! ;) Я думаю, что после пятницы (если все будет хорошо) я тебе пришлю введение+первую главу! ;)

Нам вообще сказали, что наша достопочтимая верхушка кафедры посмотрит на наши ТРУДЫ и решит стоит ли нам дальше этим заниматься! :( Так что вполне вероятно, что один из нас после пятницы займется другой темой! Но эта разработка нужна для конторы, поэтому она не заглохнет! Во всяком случае, будем надеятся!

jupy mihazimin пишет:

[quote]Если говорить о технологиях Semantic Web, таких как RDF, OWL и SPARQL, то вот какие преимущества они нам дают: Данные можно хранить в RDF-документах. При этом для построения системы с приемлемой скоростью ответов на запросы можно положить эти RDF-данные в репозитории (такие, например, как BOCA). При необходимости репозиторий можно поменять на другой, стандарт RDF — для всех один. Таким образом получаем независимость от различных ОС и сред. Проектировать архитектуру можно при помощи OWL. По сути, в OWL описываются классы и свойства. А в RDF — экземпляры этих классов (индивиды). При этом добавить новый класс и новое свойство в существующий OWL не составляет труда. Третьим в этой компании является язык запросов к RDF-документам — SPARQL. Причем, с его помощью можно как осуществлять обычные запросы к документам (использую SELECT), так и конструировать новые RDF-данные (используя CONSTRUCT). [/quote] Это все справедливо, но это взгляд на проблему со стороны разработчика. Между тем, когда ты начинаешь новый проект, нужно смотреть на идею со стороны заказчика/пользователя. Иначе, просто, трудно получить средства на разработку, не говоря уже о том, что и результат может оказаться высокотехнологичным, но никому не нужным. Так вот с точки зрения пользователя, какую новую функциональность мы получим, если попытаемся встроить семантическую информацию в системы Project Management & Issue Tracking? mihazimin пишет: [quote]и Semantic Web как раз кстати.[/quote] Semantic Web очень интересная штука, и может быть эффективно использована почти везде. Но сейчас такой этап развития этой идеи, когда подавляющему большинству потенциальных пользователей совершенно не очевидны преймущества, которые она сулит.

DeleteR Понимаешь тут с помощью семантики будеться строится клиентский интерфейс. Может я не точно выражаюсь… У клиента будет находится OWL-файл, который и будет отвечать за тот или иной вид отображения информации!

mihazimin [quote]Semantic Web очень интересная штука, и может быть эффективно использована почти везде. Но сейчас такой этап развития этой идеи, когда подавляющему большинству потенциальных пользователей совершенно не очевидны преймущества, которые она сулит.[/quote]

В этом — абсолютно согласен. Нашей задачей является приближение Semantic Web «к народу». Т.е. обеспечение удобства пользовательских интерфейсов и общей системной архитектуры. К счастью, все-таки, уже есть удачные примеры использования Semantic Web. Это всем известные FOAF и RSS. Но потенциал у SW конечно же намного больше. Действительно «может быть эффективно использована почти везде».

dulanov mihazimin пишет:

[quote]Так вот Jira предоставляет отличный сервис: на сервере вы имеете server-side приложение, которое по запросу возвращает типизированный запрос, а клиент уже делает с этим всё, что угодно. Удобно… Отсюда вопрос: а что если вернуть не просто набор данных, а набор семантически связанных данных!?! Вот на этом и буду основываться 2 дипломные работы: Сервер и Клиент! [/quote] Не думаю, что тебе надо отдельный продукт разрабатывать. Попробуй для Jira разработать расширение, которое при просмотре тех или иных страниц (например при просмотре заявки или проекта) позволит экспортировать данные о ней в RDF. Сейчас есть экспорт в XLS, XML, RSS, а ты сделаешь в RDF. Т.е. ты напишешь семантическую обертку для Jira. Задача актуальная, подумай ;) Используй для этого онтологии DC, FOAF и DOAP. Возьми ряд идей из реализации аналогичного функционала для экспорта RSS.