Рубрика «Анализ и проектирование систем» - 147

История о двух мостах

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

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

Об опыте разработки Автоматизированной системы поддержки принятия решенийСегодня я хотел бы продолжить публикацию своих рассказов об опыте управления проектами по созданию различного рода автоматизированных систем. Если в позапрошлый раз я писал о некотором лабораторном исследовании типа proof-of-concept из области комплексной автоматизации (см. статью «Стенд Комплексной Автоматизации: описание опыта разработки»), а в прошлый раз — об опыте построения АСУ реального времени на железнодорожном транспорте (см. статью «Опыт разработки АСУ реального времени для железной дороги»), то сегодня я расскажу о том, как мы разрабатывали Систему поддержки принятия решений при ликвидации последствий дорожно-транспортных происшествий при участии транспортных средств, перевозящих опасные грузы. Именно такой была тема работы, по результатам которой должен был возникнуть прототип системы.

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

Читать полностью »

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

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

Предлагаю на ваш суд концептуальную модель индивидуального подхода к преподавателям и студентам при организации и планировании учебного процесса в высшем учебном заведении.
Читать полностью »

Нет-нет, статья не про план резервного копирования. Статья про план «Б».
Поддавшись массовой истерии, решил я перейти в НПФ. (Нет! Статья не про НПФ! =)
Почитал обзоры и рейтинги, выяснил, что разные источники без зазрения совести публикуют разную доходность по одним и тем же НПФ (опять отвлекаюсь)… и решил перевести в ХХХ24 (нет смысла обсуждать).

Прихожу в отделение, сижу с талончиком 1 час (один час) в очереди из трех человек, наконец попадаю на приём и выясняю, что «у нас сегодня система висит и почти не работает». (Вот! Вот про это статья!!!)
Ну что ж, я понимаю, бывает.
Через два дня, в эту пятницу, я прихожу в другое отделение ХХХ24 и уже совершенно без очереди узнаю, что у них тоже система «висит и не работает». И нет, без системы они не могут принять заявление.
— Как же так? — говорю — Все отделения что-ли не работают?
— Вот в понедельник ещё всё работало нормально. Вы приходите на следующей неделе.
Я даже на минуту задумался, когда у меня на следующей неделе будет возможность уйти с работы, чтобы прийти в банк, но тут же меня осенило:
— Нельзя в такой банк переводить свои деньги!!!

Нет, это не реакция капризного ребенка. Да, системы, бывает, глючат. Но как себя ведет этой ситуации банк? А никак. Он ничего не делает. У него нет плана «Б».
Как раз в те дни, когда всплеск активности переводов в НПФ.
А ведь это не мгновенные переводы, тут система вообще не нужна. Им достаточно принять от меня заявление с подписью, с правильно заполненными реквизитами, с бесполезной ксерокопией паспорта и СНИЛС-а, чтобы потом отослать его в пенсионный фонд и завести в систему.
То есть, где-то в банке сидит большой человек, ответственный за НПФ, получающий бонусы за его успешность, но ему пофигу, что клиенты несколько дней не могут написать заявления.
А ведь мог бы построить всех, разослать хоть по электронке, хоть курьером инструкции по приему заявлений в бумажном виде, отправил бы бланки для заполнения и процедуру, как их потом вводить при восстановлении работоспособности. Понятно, не сам, через подчиненных. Но он не делает этого.
Могу я быть уверенным, что когда нужно будет быстро отреагировать на изменения на рынке и перевести мои инвестиции из одних финансовых инструментов в другие, этот банк сможет быть эффективным?
Нет. Я не уверен. Читать полностью »

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

Первоначально эту нишу занимали крупные инновационные интернет-компании типа Google или Twitter, однако такие требования к приложениям начали всплывать во многих областях индустрии. Финансовые и телекоммуникационные компании первыми начали внедрять новые практики, чтобы удовлетворить новым требованиям, а теперь подтягиваются и остальные.

Новые требования требуют новых технологий. Предыдущие решения делали упор на управляемые сервера и контейнеры. Масштабирование достигалось засчёт покупки более крутых серверов и использования многопоточности. Для добавления новых серверов приходилось применять комплексные, неэффективные и дорогие проприетарные решения.

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

Читать полностью »

Введение

В один прекрасный день я получил по почте извещение о долге за горячую воду, по причине несвоевременного оповещения коммунальных служб о показаниях водомеров. К этому моменту я, праздного любопытства ради, осваивал WiFi радиомодуль от “Roving Networks” с целью «обучить» его дистанционно включать/отключать электрический водонагреватель для экономии электроэнергии при долгом отсутствии пользователей. И так все сошлось, что решил я свести эти задачи и еще некоторые задумки «умного дома» к практической реализации. Ну и конечно, было бы не интересно, если бы я использовал знакомые мне технологии, поэтому я решил использовать как можно больше нового и интересного.
Читать полностью »

Сейчас популярна тема онлайн-образования: все слышали про Coursera, Udacity, EdX. Это отличные образовательные платформы, содержащие много полезных курсов. Но можно ли их сделать более интеллектуальными? Вообще исследования по интеллектуальным обучающим системам (intelligent tutoring systems) ведутся давно и у ученых есть что предложить программистам-практикам. В этой статье в научно-популярной форме рассматриваются результаты и выводы, полученные научным сообществом, по построению конкретного вида интеллектуальных обучающих систем. Затрагиваются вопросы построения подсистем проверки решений задач, моделей обучаемого, алгоритмов управления учебным процессом.

Введение

Широко распространены обучающие программы с тестами, содержащими вопросы с вариантами выбора ответа, в числе которых один правильный, а остальные неверные, содержащие типичные ошибки. Теоретическую основу для создания подобных систем в 50-х гг. XX века разработали известный психолог Б.Ф. Скиннер и исследователь Н.А. Кроудер. Предложенные ими концепции неоднократно подвергались критике. В частности, критики отмечали, что контролироваться должны не только ответы, но и пути, ведущие к ним. Ну действительно, ведь главная цель обучения – не зазубривание правильных ответов, а формирование рациональных приемов решения типичных задач изучаемого предмета. Поэтому научная мысль пошла по новому пути. Во-первых, ученые начали создавать обучающие программы, способные распознать не только конечный ответ, но и оценить ход рассуждений обучаемого при выполнении задания (см. часть 1 этой статьи). Во-вторых, ученые начали разрабатывать средства измерения характеристик обучаемых, важных для управления процессом обучения (так называемые «модели обучаемого», см. часть 2) и алгоритмы управления учебным процессом (см. часть 3).

Читать полностью »

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

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

В конце 2012 года мне пришла в голову идея, что нельзя останавливаться на разработке системы только для транспортных средств, нужно мыслить шире. Так в системе появились новые узлы. Я их назвал: Машина, Дорога, Светофор, Сервер.

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

Читать полностью »

Итак, вы ☐ твитнули, ☐ написали в блог, ☐ опубликовали пресс-релиз, ☐ написали в комментариях о том, что знаете способ преодолеть CAP-теорему. Ваша идея не сработает. И вот почему:

☐ вы предполагаете, что сбоев софтажелезасети никогда не случается
☐ вы на самом деле всего-лишь перенесли проблему на другой логический слой
☐ ваше решение эквивалетно одному уже существующему, которое не преодолевает CAP-теорему
☐ вы на самом деле построили AP-систему (доступность и устойчивость к разделению, но не постоянная согласованность данных)
☐ вы на самом деле построили CP-систему(согласованность данных и устойчивость к разделению, но не постоянная доступность)
☐ вы на самом деле построили нераспределенную систему

А особенно в ваших планах плохо следующее:
Читать полностью »

Фраза «перезалил на habrastorage» теряет смыслПока разработчики сайта скромно молчат, занятые тестированием новой функциональности, сообщу о незаметном, но важном деле размножения интернетов на отдельном сайте.

Если раньше годами сайт Хабра пользовался сторонними сервисами показа изображений, в связи с чем изображения умерших сервисов искажали вид и иногда смысл старых статей, сейчас дошли руки и возможности до того, чтобы сайту уже не зависеть от произвола случайных хостингов — все изображения роботы автоматически переписывают на habrastorage.org. Над комментариями эта незаметная работа началась раньше, в июле, над содержанием статей — недавно, в начале августа (2013). Примеров даже приводить не надо — посмотрите исходный код HTML любых недавних статей — в них вы уже не найдёте доменов с «левыми» картинками. Или лучше посмотрите на код, где автор достоверно пользовался сторонним хостингом картинок: habrahabr.ru/post/189474/, потому что большая часть авторов добровольно пользуется habrastorage.org.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js