Архитектура ИТ решений. Часть 2. Архитекторы

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

III ОПРЕДЕЛЕНИЕ ПОНЯТИЯ АРХИТЕКТОР

Врач может похоронить свою ошибку, архитектор – разве что обсадить стены плющом. Фрэнк Ллойд Райт.
Зачастую в ИТ отрасли, говоря об ИТ архитекторе, подразумевают продвинутого разработчика, способного самостоятельно спроектировать, а главное реализовать большую сложную систему. А иногда попросту полагают, что это следующая ступенька в профессиональной иерархии разработчиков. Например, начал молодой специалист свою карьеру разработчика, ему присвоили скромное, но почетное звание Junior. Он учится, развивается профессионально, растет над собой и коллегами, и ему, в качестве компенсации за труд и упорство, торжественно присваивается звание Middle. Но он неугомонный и дальше не останавливается в развитии, совершает ряд подвигов, самоотверженно взвалив на себя ответственность за принимаемые решения. Глядишь, и его уже удостаивают высочайшего звания Sinior. А дальше? А если он не желает почивать на лаврах успеха и хочет развиваться, ему что присвоят под звуки фанфар генеральское звание Архитектора? Так ли это? Специально ИТ архитекторов, насколько мне известно, не готовят в вузах. Чаще всего архитекторы получаются путем селекции из уже маститых специалистов в какой-либо ИТ области, «прокачивая» дополнительными знаниями до определенного уровня. Кстати существует профессиональный стандарт квалификационных требований системных архитекторов (5), на основании которых архитектору может быть присвоен один из шести квалификационных уровней. Будем использовать этот стандарт в ходе нашего рассмотрения темы, чтобы не упустить ничего важного в работе ИТ архитектора. ...Далее...

Создание параметрических объектов базы в nanoCAD Механика (Часть 2)



Работа с кодом объекта. Мастер скриптов


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

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

Как было отмечено в первой части, предлагаемый материал может использоваться в качестве инструкции по созданию параметрических объектов и управлению ими. Рекомендуется использовать nanoCAD Механика версии 8.0 и выше. Оценочная версия программы доступна по ссылке.

По ссылке ftp.nanosoft.su/file_102955a66ea93d3e85 можно скачать объект, который будет использоваться в качестве базового для данного примера.
Читать дальше →

Применяем принцип KISS к самим принципам проектирования

Коллега упомянул в беседе принцип "Convention over configuration", и я подумал, блин, наверно это что-то крутое, нужно изучить, почитать статьи, а то отстану от жизни.


Каково было моё удивление, что вcё обьяснение помещается в одной фразе "Используй дефолты, которые можно при желании переопределять".


И тут я подумал, что очень много понаверчено принципов, которые произносятся с умным лицом и наморщенным лбом, хотя по сути там ничего сложного нет. Многие из них можно объяснить буквально одной фразой. Ну, может, абзацем текста или практическим примером. На пальцах, короче. Вообще, очень часто бывает такое, что объясняешь кому-то за минуту то, что сам изучал довольно долго. А какие-то детали прирастают уже потом, главное получить "ключ".


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

Читать дальше →

(Не)безопасность систем мониторинга: NagiosXI

image

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

Архитектура ИТ решений. Часть 1. Архитектура предприятия

I ВСТУПЛЕНИЕ

Архитектура распределяет массы и объемы. Вдохновение превращает инертный камень в драму. Ле Корбюзье.
Недавно столкнулся со следующей ситуацией, одна крупная ИТ компания подбирала для себя архитектора, с целью доработки компьютерной платформы. Такая работа, естественно, требовала привлечения специалиста высокой квалификации. То есть разработчика ПО поименовали именно архитектором, рассчитывая заполучить помимо кодировщика, еще и профессионала, способного разобраться с чужими решениями, до проектировать их, на свое усмотрение принимать самостоятельные решения и т.п… Когда стали выяснять, а как же в организации вообще обстоит дело с архитектурой, обозначились следующие тенденции. Есть ряд высококвалифицированных разработчиков, позиционируемых как архитекторы. Помимо непосредственно создания кода, они выполняют проектирование различных технологических систем и задают вектор и горизонт их развития. Решения представлены ими в основном в виде текстовых описаний, разбавленных небольшим количеством схем, в основном производных от диаграмм компонентов. Каждый из архитекторов представляется уникальным и эксклюзивным носителем знаний, а по сути — является узким местом в процессе производства программных продуктов. Ведь на практике без его постоянных уточняющих консультаций, воспользоваться результатом евонной деятельности практически невозможно. Полная, логически выстроенная, структурированная картинка сложного решения есть лишь в его голове. ...Далее...

Методика проекционного моделирования

Методика моделирования


Проекции поверхности в 3-Д пространстве на три проекционные плоскости позволяют инженеру представить моделируемый объект, будь то деталь или конструкция. Для этого надо соотнести точки на чертеже с точками в пространстве. Этому умению обучают на уроках начертательной геометрии. Но полученное в результате этого представление о поверхности ничего не говорит инженеру ни о том, из чего сделан объект, ни о его свойствах. Чтобы представить деталь, поверхность надо трактовать (интерпретировать). Для этого нужно знать стандарты, выработанные в специальных областях деятельности. Только, если чертеж выполнен в соответствии с этими стандартами, его смогут прочитать и однозначно трактовать другие специалисты. Эти стандарты не относятся к предмету начертательной геометрии, они относятся к таким областям знаний, как архитектура, машиностроение, технология обработки материалов. Поэтому первое, что надо научиться делать, это разделять проекции и трактовку проецируемого объекта.


Ровно то же можно сказать про проекционное моделирование. Проекции 4-Д объема на пространство и на время позволяют представить моделируемый 4-Д объем. Но для трактовки этого объема нужны знания в специальных областях.

Читать дальше →

McSema и декомпиляция в исходный код LLVM: реально ли это?

Представьте себе, что есть некая очень полезная программа, но она, например, существует только в версии Windows и только 64 бита. А вам нужно, например, под ARM64 и под другую ОС, соответственно. Причём исходников у вас нет, и достать их невозможно.

image

Что делать? Существует проект MCSema (пост на хабре про mcsema: https://habrahabr.ru/post/232871/). Его создатели (а они на финансировании DARPA, между прочим), обещают сказочные вещи: перевод бинарноков в LLVM IR, оптимизации, семантический анализ кода и т.д. И конечно же, перекомпиляцию на любые архитектуры, которые поддерживает LLVM. Проект опенсорсный (ссылка на гитхаб: https://github.com/trailofbits/mcsema)

А теперь посмотрим, что происходит на самом деле.
Читать дальше →

О взаимодействии централизованных и распределённых организаций

Чем они отличаются? Какие у них преимущества и недостатки? Как перейти от одной к другой? Что произойдёт при их столкновении?
Давайте посмотрим...

Amazon MTurk и Emotion Miner: краудсорсинг, большие данные, эмоциональные технологии

Давайте зададимся вопросом: в какой мере краудсорсинговые инструменты востребованы в сфере эмоциональных (и нейрокогнитивных) технологий? Каким образом можно собирать, размечать и предварительно обрабатывать большие объемы данных, опираясь на ресурсы толпы? В качестве показательных кейсов обсудим платформу Amazon MTurk и, в приложении к эмоциональной проблематике, проект лаборатории Neurodata Lab — Emotion Miner.

image
Читать дальше →

Лучшая архитектура на базе Docker и Kubernetes — миф или реальность?

Как изменился мир разработки ПО в эпоху Docker и Kubernetes? Можно ли построить архитектуру один раз и навсегда на базе этих технологий? Возможно ли унифицировать процессы разработки и интеграции, когда все "упаковано" в контейнеры? Какие требования предъявляются таким решениям? Какие ограничения несут они с собой? Упростят ли они жизнь простым разработчикам или сделают её тяжелее?



Пришло время ответить на все эти и не только эти вопросы! (В тексте и оригинальных иллюстрациях)

Читать дальше →


Последние посты