Как стать автором
Обновить
7.55

UML Design *

Унифицированный язык моделирования

Сначала показывать
Порог рейтинга
Уровень сложности

Разработка визуального языка моделирования с помощью Sirius

Время на прочтение15 мин
Количество просмотров13K


Это третья статья цикла, посвященного разработке, управляемой моделями. В предыдущих статьях мы разбирались с OCL и метамоделями, создавали свою метамодель для языка Anchor с древовидным редактором. Сегодня сделаем редактор Anchor-диаграмм.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии1

Разработка метамодели с помощью Eclipse Modeling Framework (и немного про моделирование данных)

Время на прочтение11 мин
Количество просмотров29K


Это вторая статья цикла, посвященного разработке, управляемой моделями. Сегодня мы создадим метамодель, основанную на метаметамодели Ecore. Вскользь затронем моделирование данных, а именно Anchor, 6НФ и концептуальное моделирование.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии12

Объектный язык ограничений (и немного про метамодели)

Время на прочтение16 мин
Количество просмотров35K
image

На наш взгляд, объектный язык ограничений (Object Constraint Language, OCL) должен знать каждый, кто занимается моделированием или кому интересна модельно-ориентированная разработка. Однако, он незаслуженно обделен вниманием в сети вообще, а, уж, в русскоязычном сегменте информации просто мизер. Что это за язык и зачем он нужен, описано в этой статье. Статья не претендует на фундаментальность, полноту охвата, точность определений и т.п. Её задача: 1) на простых примерах познакомить с OCL тех, кто никогда не слышал об этом языке, 2) а для тех, кто о нём слышал, возможно, открыть новые способы его применения.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии20

Пишем реализацию Observer-а над KVO на objective-c

Время на прочтение6 мин
Количество просмотров7.3K
Добрый день, хабрачитатели. Спешу поделиться с вами опытом, недавно мной полученным.


Почему в этом есть нужда?

Как вы, наверное, знаете — создание более менее внятных и серьезных приложений не может обойтись без грамотного проектирования. Одними из основных задач современного программирования — являются контроль над сложностью, требования создания гибких и расширяемых, изменяемых приложений. Из этого вытекают концепции ортогонального программирования, максимального уменьшения связности между классами, использования наиболее подходящих архитектурных решений (алсо грамотные подходы создания архитектуры проекта, подходы к проектированию классов). За многие человекочасы и человекодни мирового опыта всех разработчиков — были выработаны наиболее естественные и удачные подходы, названные паттернами проектирования… А подходы к проектированию классов — могут в некоторой степени изменяться, в зависимости от используемого языка программирования и требуемых свойств объекта. Описываемый сегодня мной паттерн является одним из моих самых любимых (и вообще достаточно значимый), а именно встречайте:… "Observer" (по-русски — Наблюдатель). Исходя из последних двух предложений — вытекает название этой статьи.
Читать дальше →
Всего голосов 9: ↑5 и ↓4+1
Комментарии13

Истории

Моделирование процедуры соединения bluetooth устройств и есть ли потребность в моделях такого рода

Время на прочтение2 мин
Количество просмотров6.6K
Здравствуйте! В этом году начинаю учиться в аспирантуре, на данный момент мне поставлена следующая задача: смоделировать взаимодействие узлов самоорганизующейся сети на основе соответствующих технологий.
И здесь возникают следующие вопросы:
  • есть ли смысл в таком моделировании;
  • какой язык моделирования выбрать (на данный момент мне известны наиболее подходящие языки SDL и UML);
  • на каком уровне абстракции строить модель; строить модель работы конкретно каждого протокола или достаточно построить модель определенной процедуры взаимодействия устройств в самоорганизующейся сети;


В виде пробного варианта смоделировал процедуру соединения между устройствами bluetooth на языке UML с использованием диаграммы последовательности. Далее приведены текстовое описание данной процедуры и модель построенная по этому описанию.
Читать дальше →
Всего голосов 13: ↑7 и ↓6+1
Комментарии8

Системные и бизнес-аналитики в ожидании самого значимого события сферы!

Время на прочтение5 мин
Количество просмотров9.5K
До Международной конференции по системному и бизнес анализу «Analyst Days-2014», которая пройдет 24 мая в Москве, еще чуть больше месяца, а свободных мест уже почти не осталось. Кто еще хочет попасть на мероприятие, тому стоит поспешить, чтобы обеспечить себе местечко!

image


Возможно, мешают пройти регистрацию сомнения, нужна ли вам конференция или нет? Тогда окончательно убедят вас посетить столь значимое мероприятие сферы несколько эксклюзивно подготовленных интервью со спикерами конференции – Ириной Суровой, системным аналитиком в R&D «Лаборатории Касперского», и Денисом Бесковым, руководителем «Школы системного анализа». Из беседы вы узнаете, какие ключевые качества нужны аналитикам, почему важно посещать отраслевые конференции и что ждет участников «Analyst Days-2014».
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии2

Конференция Analyst Days словами участников

Время на прочтение1 мин
Количество просмотров4.2K
Салют коллеги!
24 мая в Москве пройдет 3-я конференция по системному и бизнес анализу Analyst Days.
image

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

Об организации конференции

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии1

Отношения классов — от UML к коду

Время на прочтение7 мин
Количество просмотров763K
Введение

Диаграмма классов UML позволяет обозначать отношения между классами и их экземплярами. Для чего они нужны? Они нужны, например, для моделирования прикладной области. Но как отношения отражаются в программном коде? Данное небольшое исследование пытается ответить на этот вопрос — показать эти отношения в коде.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии21

Online UML editor

Время на прочтение1 мин
Количество просмотров99K
Сегодня в новостях от CodeProject проскочила ссылка на интересный online-редактор. Позволяет написать написать псевдокоде и получить диаграмму.
Собственно ссылка на codeuml
Всего голосов 12: ↑7 и ↓5+2
Комментарии3

Еще одна статья о code review

Время на прочтение5 мин
Количество просмотров93K

Что такое code review


Code review - инженерная практика в терминах гибкой методологии разработки. Это анализ (инспекция) кода с целью выявить ошибки, недочеты, расхождения в стиле написания кода, в соответствии написанного кода и поставленной задачи.

К очевидным плюсам этой практики можно отнести:
  • Улучшается качество кода
  • Находятся «глупые» ошибки (опечатки) в реализации
  • Повышается степень совместного владения кодом
  • Код приводится к единому стилю написания
  • Хорошо подходит для обучения «новичков», быстро набирается навык, происходит выравнивание опыта, обмен знаниями.

Читать дальше →
Всего голосов 50: ↑41 и ↓9+32
Комментарии22

16 инструментов для создания прототипов

Время на прочтение5 мин
Количество просмотров491K


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

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

16 инструментов со ссылками и их краткое описание
Всего голосов 53: ↑47 и ↓6+41
Комментарии33

Интеллект-карты как неплохой способ систематизировать любую деятельность

Время на прочтение7 мин
Количество просмотров97K
Каждый мой рабочий день на протяжении нескольких месяцев начинается с того, что я открываю интеллект-карту с многообещающим названием «Задачи». Карта постоянно развивается, обрастает новыми веточками и идеями. Несколько месяцев назад этот способ систематизации всего на свете пришёлся мне по вкусу, показался очень естественным и окончательно въелся в сознание.
Интеллект-карты пригодятся, чем бы вы ни занимались. Особенно, если ваша деятельность связана планированием, проект-менеджментом, организацией мероприятий, копирайтингом, проектированием сайтов и т.п. В чём фишка mindmaps, что стоит описывать с помощью интеллект-карт, как они помогают в работе, и чем хороша свободная программа FreeMind — читайте под катом.

image

Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии60

Quantum Leaps QP и UML statecharts

Время на прочтение6 мин
Количество просмотров7.6K

Предисловие


Данная статья, как мне кажется, будет интересна тем, кто знаком с UML диаграммами состояний и последовательности (statecharts diagram и sequence diagram), а также с событийно-ориентированным программированием (event-driven programming).

Вступление


Кроссплатформенный фреймворк QP (Quantum Platform) от компании Quantum Leaps представлен его создателями как средство разработки RTOS на C/C++. Он позволят существенно увеличить скорость разработки и надежность приложений, а также имеет мощный инструментарий по отладке и логированию. Ко всему этому добавляется еще и то, что QP является очень гибким и легким: разделен на множество модулей, почти каждый из которых можно реализовать самому при сборке фреймворка или воспользоваться предложенным решением; множество настроек выполняется во время прекомпиляции.
Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии8

Ближайшие события

Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Кодогенерация на основе UML-модели

Время на прочтение3 мин
Количество просмотров29K
Как нам уже известно, Visual Studio 2010 Ultimate предоставляет достаточно удобные возможности для реверс-инжиниринга. С помощью средств Visual Studio мы можем на основе существующего кода построить UML-модель и понять как у нас, собственно, все работает, но при этом не прилагать гигантские усилия по созданию диаграмм вручную и поддержанию их в актуальном состоянии.

Все бы хорошо, но у данного инструмента напрочь отсутствует возможность синхронизации модель с кодом. Т.е., после изменения модели, нам приходится вручную изменять классы. В случае большого количества мелких изменений, получается довольно неудобно, и по этой причине от полноценного моделирования частенько отказываются.
Далее - трафик
Всего голосов 44: ↑36 и ↓8+28
Комментарии21

Кодогенерация UML->Python (Django)

Время на прочтение3 мин
Количество просмотров13K
Четыре года назад, устроившись на новое место работы, увидел учетную систему приличных размеров на python + wxWidgets + MSSql. Весь исходный код генерировался автоматически на основе UML диаграмм. Спустя несколько лет, я настолько проникся таким способом разработки, что и в собственных проектах на Django стал использовать автогенерацию кода.
Давайте в общих чертах рассмотрим, как выглядит процесс создания «кодогенерируемого» проекта?

Давайте
Всего голосов 55: ↑45 и ↓10+35
Комментарии45

Проектирование программного обеспечения

Время на прочтение5 мин
Количество просмотров308K
Сегодня процесс создания сложных программных приложений невозможно представить без разделения на этапы жизненного цикла. Под жизненным циклом программы будем понимать совокупность этапов:
  • Анализ предметной области и создание ТЗ (взаимодействия с заказчиком)
  • Проектирование структуры программы
  • Кодирование (набор программного кода согласно проектной документации)
  • Тестирование и отладка
  • Внедрение программы
  • Сопровождение программы
  • Утилизация

Остановимся детально на процессе проектирования. В ходе проектирования архитектором или опытным программистом создается проектная документация, включающая текстовые описания, диаграммы, модели будущей программы. В этом нелегком деле нам поможет язык UML.
Читать дальше →
Всего голосов 52: ↑36 и ↓16+20
Комментарии36

Изучение времен английского языка с помощью UML-CRC. Заметка

Время на прочтение1 мин
Количество просмотров6.8K
Добрый день, уважаемое сообщество! Хочу поделиться с вами неплохим, по моему мнению, способом изучения времен английского языка. Я очень надеюсь, что эта заметка будет полезна тем, у кого трудности с изучением времен в английском языке. Не такое уж это простое дело ─ знать 26 времен, а еще сложнее научиться их использовать в нужное время.
суть метода
Всего голосов 9: ↑8 и ↓1+7
Комментарии10

yUML — средство для генерации UML диаграмм для веба

Время на прочтение1 мин
Количество просмотров5.6K
Обнаружил забавное средство для быстрой генерации UML-диаграм для вставки в блоги, статьи и прочее. Интересность в том, что для того, чтобы вставить диаграмму в статью, нужно просто указать ссылку на изображение, в которой и описываются сами классы, с помощью специального языка.
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии3

Сравнение средств проектирования — 2

Время на прочтение5 мин
Количество просмотров37K
Этот топик является продолжением статьи о средствах проектирования.
В данной части я постараюсь рассмотреть не менее достойных представителей данной «отрасли».
Итак следующая тройка выходит на старт!
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии30