25.08.2014 |  support@ida-web.ru

Выбор подходящей технологии (фреймворка, системы)

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

 

Проблемы малочисленного использования технологий

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

То же самое происходит и в мире ИТ. Если технология практически нигде не применяется, то, с большой вероятностью, можно сказать, что ее выбор приведет к титаническим трудам. Любые ошибки и проблемы вам придется исправлять за счет собственных сил. Вы будете натыкаться обо все недокументированные условия. Практически все способы реализовать нужные механизмы придется придумывать самостоятельно. При возникновении критических ошибок, у вас не будет никаких гарантий, что вы сможете привести систему к нормальному состоянию. Кроме того, так же не будут известны сроки. День? Неделя? Месяц? Год? Безусловно, существуют успешные примеры таких технологий, но, как бы это не звучало, это примеры, а не повседневность.

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

 

Один из подходов для выбора подходящей технологий

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

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

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

Безусловно, такой подход стоит применять и в купе с другими методами. Но, даже его самостоятельное применение дает достаточно неплохие результаты. Ведь, не просто так существует выражение "Правильно заданный вопрос – половина ответа".

Компания "IDA-Web" надеется, что данный материал поможет вам лучше понять специфику мира ИТ.



Так же советуем

Обратная связь

Я согласен с вашими правилами и условиями

Опыт Знания Умения