Стоит ли добавлять специальные отчеты в приложение?

16

У нас есть приложение, которое собирает много данных и готовит отчеты. Первой итерацией была интеграция Crystal Reports, которая работала хорошо. Создайте отчет в конструкторе Crystal Report, а затем импортируйте файл RPT в приложение. Это работало хорошо, но пользователям требовалось приложение для запуска отчета, и, кроме того, пользователи не могли создать отчет. Мы добавили фильтры, сортировщики и группировки, чтобы RPT-файл можно было настраивать, но они не могли создать его с нуля.

Второе направление - это веб-решение с использованием SSRS, SSAS и инструмента построения отчетов от Microsoft. Это потребовало некоторой работы с базой данных и некоторой работы, чтобы настроить кубы и запустить их из схемы OLTP, но в итоге было гораздо проще создавать сводные отчеты. Однако нам все еще нужно создавать отчеты с помощью инструмента построителя отчетов, публиковать их и т. Д. Мы также добавили фильтры, сортировщики и группировщики, чтобы сделать их «настраиваемыми».

В обоих этих sceanarios у нас есть около 30-50 готовых отчетов со временем.

Сейчас обсуждается вопрос о добавлении специальных отчетов, чтобы пользователи могли создавать отчеты с нуля на лету. Теперь наша модель данных очень сложна, и для ее понимания необходимы хорошие рабочие знания. Чтобы сделать это как минимум, потребуется большой объем работы, чтобы привести модель данных в схему, которая «более отчетлива» и более проста для понимания. Я не думаю, что наше приложение подходит для специальных отчетов (не стоит усилий).

Кто-нибудь имел успех в предоставлении специальных отчетов? Какой набор инструментов вы использовали? Повлияло ли это на успех вашего приложения?

Джон Рейнор
источник

Ответы:

13

Существуют некоторые опасности со специальными отчетами.

  1. Сообщения имеют тенденцию распространяться в результате комбинаторного взрыва.

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

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

  4. Речь идет не только о предоставлении людям возможности отчетности. Это также касается управления документами: какова политика хранения и уничтожения таких документов? Каковы требования к хранению и хранению?

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

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

Роберт Харви
источник
2
+1 за тщательное ограничение структуры и объема. Легко пойти за борт и создать монстра.
GrandmasterB
Эта дискуссия обсуждалась недавно в моем офисе, и у меня было много таких же чувств, но их трудно обосновать. Я не думаю, что вы знаете где-нибудь, чтобы получить углубленное рассмотрение этого предмета? Например, как будет выглядеть хорошее определение отчета и / или политика хранения?
Ааронаут
@Aaronaught: Вы начинаете с юридических полномочий для ведения учета и возвращаетесь оттуда. Например, в большинстве (вменяемых) организаций существует политика хранения электронной почты, потому что если вы держите их слишком долго или недостаточно долго, компания может быть привлечена к юридической ответственности. Записи, относящиеся к таким вещам, как гарантии и налоги, очень четкие; другие виды записей, не так много.
Роберт Харви
Как насчет части об увеличении бремени, а не о его снижении - как бы вы объяснили / обосновали это, скажем, техническим директором или генеральным директором?
Аарона
@Aaronaught: Как вы, наверное, уже поняли, специальные инструменты отчетности не являются серебряной пулей; они обеспечивают некоторую степень упрощения процесса, но люди, которые не могут мыслить с точки зрения наборов и объединений (например, SQL), также, похоже, испытывают трудности при использовании своих компьютеров для более обыденных дел. Таким образом, ваши усилия по поддержке просто переходят от написания пользовательских отчетов (которые производят корпоративные активы, которые можно многократно использовать) к оказанию помощи новичкам в написании собственных отчетов о клиентах (которые все являются однократными).
Роберт Харви
7

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

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

Мы продолжали пытаться улучшить его и потратили сотни тысяч долларов. У Crystal Decisions был довольно модный набор инструментов в качестве дополнения к корпоративному продукту Crystal Reports. Это была версия 9 или 10. Она давно переименована, переименована в Business Objects, но я думаю, что есть еще версия. Это было довольно дорого, и это дало вам полный веб-дизайнер для создания практически любого формата отчета. В нем также был пример приложения, которое было скорее волшебником, которое помогло вам изменить существующий отчет. Мы добились успеха с идеей «сохранить и поделиться параметризованным шаблоном», так что это привлекло нас, сделав шаг вперед. Короче говоря, мы на самом деле не справились. Я думаю, что инструмент был в порядке, но то, что мы пытались сделать, было слишком запутанным и неправильным, чтобы работать.

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

В конце концов они начали активно использовать Business Objects - настольную версию инструмента BI. Это позволяет интегрировать локальные данные с данными, которые вы обнаружили в онлайн-каталоге метаданных. Таким образом, вы могли бы выполнять как реальные производственные процессы для масс, так и количество клиентов, а менеджеры могли продолжать обрабатывать разные наборы данных, к которым привели их исследования. Набор навыков стал еще более редким, он, конечно, не был чем-то, что любой мог бы взять и сделать. Тем не менее, они смогли получить гораздо больше людей, эффективно использующих его, чем могли бы нанять в качестве преданных сотрудников MIS. Персонал MIS никогда не был значительно сокращен, хотя, что говорит.

Мое собственное впечатление от этой общей проблемы состоит в том, что вы должны быть готовы вложить значительные средства в развитие навыков для людей, которых вы себе представляете, используя этот инструмент, и вы должны признать, что не все ваши сотрудники когда-либо попадут туда. И если они не могут потратить пару недель на изучение платформы BI, они никогда не смогут получить максимальную отдачу от любого инструмента, который вы им дадите. Некоторые люди, по какой-то причине, просто никогда не получают базовые идеи, такие как внешние соединения. Огромные классы проблемных задач никогда не будут доступны для решения с помощью какого-либо инструмента, потому что они недостаточно углубляются в него, чтобы понять на концептуальном уровне, что они действительно пытаются попросить компьютер сделать. Это не значит, что они «не могут» научиться этому, просто многие из них никогда не узнают.

Джереми
источник
5

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

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

Кстати, если вы хотите поговорить о некоторых деталях реализации, дайте мне знать.

Ричард Фантоцци
источник
+1, офис во многих отношениях является основной платформой отчетности
Wyatt Barnett
2

В аналогичном сценарии проекта, которым я управляю, мы предложили клиенту добавить хранилище данных с решением OLAP сверху. Чтобы снизить затраты, мы выбрали PostgreSQL в качестве базы данных DWH, а Pentaho Enterprise в качестве инструмента анализа BI / OLAP - мы выбрали платную версию, поскольку инструмент OLAP намного удобнее для пользователя.

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

Дэн Мадзини
источник
2

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

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

Для отчетности это создает возможность взимать плату за дополнительное обучение. Специальная отчетность может иметь дополнительную плату.

Ваша работа в качестве разработчика станет жестче. В большинстве мест, где я когда-либо работал, где было стороннее программное обеспечение, были отчеты. Некоторым было легко, потому что у них были простые структуры данных. Более крупные / более сложные из них нуждались в пользовательских отчетах, потому что именно так они управляют своим бизнесом. Если бы они хотели делать то же самое, что и все остальные, они бы меня не наняли. Мне пришлось поставить несколько вопросов по DevExpress Reporting на SO.

Это зависит от продаж и маркетинга, чтобы увидеть, есть ли необходимость. Не «Специальная отчетность была бы хороша», а «Я бы купил ваше программное обеспечение, потому что оно имеет специальную отчетность». Вам просто нужно, чтобы все знали о необходимых технических вложениях.

JeffO
источник
2

Мое решение состоит в том, чтобы заставить ваше приложение генерировать некоторые базовые таблицы и позволить пользователям играть с Access, пока они не увидят, что они хотят.

Более сложный подход заключается в написании программы access / vbscript для «обновления» базовых данных, что позволяет пользователям повторно использовать их настройки.

Джеймс Андерсон
источник
1

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

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

GrandmasterB
источник
1

Краткий ответ: это может быть.

В середине 90-х я работал в компании, которая создавала программное обеспечение, которое выполняет именно то, что они просят. У нас был хороший рынок в фармацевтической промышленности, где клинические испытания требовали большого количества запросов и отчетов - настолько, что имело смысл исключать посредников из IS.

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

Тем не менее, (оксюморонный) мир бизнес-аналитики частично основан на предоставлении конечным пользователям возможности определять или, по крайней мере, уточнять запросы к системам данных. Существуют инструменты для того, чтобы сделать это несколько проще для пользователя. Business Objects (теперь часть SAP) был королем в этой области. Затем они купили Кристалл. Затем SAP купил их. Их текущим предложением в этой области является SAP Crystal Interactive Analysis.

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

Мэтью Флинн
источник
1

Я работаю в правительственной ИТ-системе, которая имеет специальные и постоянные требования к отчетности. Кроме того, пользователи хотели создать специальное решение для отчетности, которое было бы «встроено» в существующие приложения, обеспечивало возможности просмотра информации о записях в выходных данных отчета и предоставляло полную информацию. Доступ к запросу базы данных. Продукты для целевых отчетов обычно представляли собой просто веб-страницу или MS Excel. Служба безопасности хотела, чтобы отчеты интегрировались с существующими средствами управления безопасностью JEE.

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

Некоторые проблемы, с которыми мы сталкивались, были упомянуты другими:

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

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

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

Джон Френч
источник