Разное

Basic команды: Basic — Энциклопедия языков программирования

📖 Диалоговый язык программирования MSX-BASIC [Мозаика системного администрирования]

М.В. Швецкий, Т.А. Агошкова, А.П. Никитин

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

Может быть использована в качестве: учебного пособия для самостоятельного изучения языка программирования MSX BASIC; справочного руководства пользователя по диалоговому языку программирования MSX BASIC; дополнительного материала при изучении других версий языка BASIC.

Научный редактор кандидат физико-математических наук В.И. Пугач

Рецензенты: профессор В.А.Сойфер, профессор Б. М.Бредихин, доцент В.М.Зеленин

Выходные данные

Выходные данные

УДК 519.682.2
   24.4.1
    Ш 34
   24О4О1ОООО-3О            (С)        М.В.Швецкий, Т.А.Аошкова,
Ш ────────────── 7-91                      А.П.Никитин, 1991.
    176(О2)-91

Издательство Саратовского университета, Самарский филиал, 1991
Объем работы: 614 страниц (на странице 54·73 ≈ 3900 символов)

Отзыв

Отзыв

Отзыв о работе «Диалоговый язык программирования MSXBASIC» авторов Агошковой Т.А. и Никитина А.П.

В связи с компьютеризацией процесса обучения в учебные заведения страны поступают персональные компьютеры («ДВК-2», «ДВК-3», КУВТ «YAMAHA» и др.). Все эти компьютеры «обучены» диалоговому языку программирования

BASIC. В частности, на КУВТ «YAMAHA» реализован один из «диалектов» языка BASICMSXBASIC.

В настоящее время имеется острый дефицит учебно-методической литературы по данной версии языка. Авторам настоящего отзыва известна только одна методическая разработка (Есаян, Лапицкая, Ефимов г. Тула,1986 г.) по названной версии языка,тираж которой всего 525 экзем- пляров. В конце 1989 года планируется выход в свет переводной монографии Г.Бленда (Великобритания) «Основы программирования на языке MSX

BASIC» тиражом лишь 20 тыс. экземпляров. В связи с очевидным недостатком справочной и учебно-методической литературы по диалоговому языку MSXBASIC появление настоящей работы представляется своевременным.

Работа состоит из девяти глав.

Первая глава содержит подробное описание основных конструкций языка MSXBASIC (алфавит, константы, переменные, массивы, числовые функции, выражения).

Вторая глава посвящена правилам организации и написания простейших программ.

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

Четвертая глава содержит все сведения о функциях для работы со строковыми величинами.Подробно рассмотрен вопрос об организации под программ на языке MSXBASIC.

В пятой главе дано детальное описание возможностей применения компьютерной графики. Рассмотрены элементы создания мультипликации.

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

В девятой главе основное внимание уделено работе с памятью и видеопамятью.

В десятой главе рассмотрены основные правила работы с файлами прямого и последовательного доступа.

Очень важна одиннадцатая глава: в ней подробно разбирается работа с подпрограммами на машинном языке, что иногда бывает необходимо!

Двенадцатая глава посвящена методологии отладки программ и изложению необходимых для отладки средств языка MSXBASIC.

Ну,а тринадцатая глава несомненно понравится не только читателям, имеющим отношение к вычислительной технике!

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

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

Работа может быть с успехом использована в качестве:

  • учебника по программированию для студентов;

  • справочного руководства по диалоговому языку MSXBASIC;

  • пособия для преподавателей информатики средней и высшей школы.

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

для советских ПЭВМ «Корвет», которые программно совместимы с ПЭВМ «YAMAHA».

Работа заслуживает выдвижения на соискание Всесоюзной премии Ленинского комсомола.

Доцент каф. «Техническая кибернетика» Куйбышевского авиационного института, к.т.н. Храмов А.Г.


В данный момент текст книги находится в процессе преобразования.

Примечания к примерам программ:

  • Для запуска примеров программ в WebMSX используйте ссылку на пример, перед которой находится значок

  • Для работы с примерами можно использовать openMSX

  • Список всех примеров

Это наиболее полное описание MSX BASIC на русском языке.

Короткая ссылка на книгу

… И указывают тысячами пальцев
тысячи дорожек для скитальцев.

Г.Лорка

  • Предисловие редактора

  • От авторов

  • Введение

  • Глава I. Основные объекты MSX BASIC

  • I.1. Алфавит

  • I.2. Константы. Одинарная и двойная точность

  • I. 3. Переменные

  • I.4. Понятие оператора. Оператор DEF

  • I.5. Массивы переменных. Оператор ERASE

  • I.6. Имена, значения и типы

  • I.7. Операции

    • I.7.1. Арифметические операции

    • I.7.2. Операции отношения. Логические операции

    • I.7.3. Строковые операции

    • I.7.4. Операции–функции

    • I.7.5. Функция RND. Псевдопеременная TIME

  • I.8. Выражения

    • I.8.1. Арифметические и строковые выражения

    • I.8.2. Логические выражения

  • I.9. Дополнение

  • Диск с примерами

  • Глава II. Программирование линейных алгоритмов

  • II.1. Режимы работы

  • II.2. Интерпретаторы и компиляторы

  • II.3. Оформление и редактирование программ

    • II.3.1. Команда AUTO. Команда RENUM

    • II.3.2. Команда DELETE. Команда [L]LIST

  • II.4 Линейные программы

    • II.4.1. Оператор присваивания LET

    • II.4.2. Оператор SWAP

    • II.4.3. Оператор комментария REM

    • II.4.4. Оператор вывода данных PRINT в простейшем случае

    • II.4.5. Операторы ввода данных DATA и READ. Оператор RESTORE

    • II.4.6. Оператор вывода PRINT в общем случае

    • II.4.7. Оператор ввода данных INPUT

    • II.4.8. Оператор LINEINPUT

    • II.4.9. Операторы END и STOP. Команда CONT

  • Диск с примерами

  • Глава III. Программирование разветвляющихся и циклических алгоритмов

  • III.1. Оператор безусловной передачи управления GOTO

  • III.2. Оператор условной передачи управления IF

  • III.3. Оператор ON GOTO

  • III.4. Программирование циклов

  • III.5. Примеры

  • Диск с примерами

  • Глава IV. Функции и подпрограммы

  • IV.1 Встроенные функции преобразования

    • IV.1.1. LEN–функция

    • IV.1.2. INSTR–функция

    • IV.1.3. VAL–функция

    • IV.1.4. STR$–функция

    • IV.1.5. ASC–функция

    • IV.1.6. CHR$–функция

    • IV.1.7. BIN$–функция

    • IV.1.8. OCT$–функция

    • IV.1.9. HEX$–функция

  • IV.2. Встроенные строковые функции

    • IV.2.1. MID$–функция

    • IV.2.2. LEFT$–функция

    • IV.2.3. RIGHT$–функция

    • IV.2.4. STRING$–функция

    • IV.2.5. SPACE$–функция

    • IV.2.6. Примеры

  • IV.3. Функции пользователя. Оператор DEF FN

  • IV.4. Подпрограммы

    • IV.4.1. Примеры

  • IV.5. Оператор ON GOSUB

  • IV.6. Дополнение 1 [77]

  • IV.7. Дополнение 2 [90]

  • Диск с примерами

  • Глава V. Графические средства MSX BASIC

  • V.1. Оператор SCREEN в простейшем случае (для компьютера MSX 1)

  • V.2. Оператор WIDTH. Операторы KEY OFF и KEY ON

  • V.3. Управление текстовым курсором

    • V.3.1. Оператор LOCATE. Функция CSRLIN. Функции POS(α) и LPOS(α)

  • V.4. Базовые графические операторы MSX BASIC

    • V.4.1. Оператор COLOR для компьютера MSX 1

    • V.4.2. Оператор COLOR для компьютера MSX 2

    • V.4.3. Оператор CLS

    • V.4.4. Оператор PSET. Оператор PRESET

    • V.4.5. Оператор LINE

    • V.4.6. Оператор CIRCLE

    • V.4.7. Функция POINT. Оператор PAINT

    • V.4.8. Вывод рисунков на принтер

  • V.5. Графический макроязык GML

  • V.6. Спрайты

    • V.6.1. Формирование значения спрайта

    • V.6.2. Вывод спрайта на экран

    • V.6.3. Столкновение спрайтов

  • V. 7. Оператор SCREEN в общем случае

  • V.8. Понятие файла [5]. Вывод текстовой информации на графические экраны

  • V.9. Режим SCREEN 4 (только для компьютера MSX 2)

    • Цветные спрайты

  • V.10. Режим SCREEN 5 (только для компьютера MSX 2)

  • V.11. Режим SCREEN 6 (только для компьютера MSX 2)

  • V.12. Режим SCREEN 7 (только для компьютера MSX 2 с видеопамятью 128 Кбайт)

  • V.13. Режим SCREEN 8 (только для компьютера MSX 2 с видеопамятью 128 Кбайт)

  • V.14. Дополнение

  • Диски с примерами

  • Глава VI. Музыкальные средства MSX BASIC

  • VI.1. Описание команд MML

  • VI.2. Оператор PLAY. Функция PLAY. Оператор BEEP

  • VI.3. Оператор SOUND

  • VI.4. Примеры музыкальных программ

  • Диск с примерами

  • Глава VII. Дополнительные возможности языка MSX BASIC

  • VII. 1. Работа с клавиатурой

    • VII.1.1. Нестандартный ввод с клавиатуры

    • VII.1.2. Функциональные клавиши

    • VII.1.3. Джойстик

  • VII.2. Переход к подпрограмме по событию

    • VII.2.1. Переход по ключу

    • VII.2.2. Переход по временному интервалу

    • VII.2.3. Переход по нажатию клавиш «CTRL»+»STOP»

    • VII.2.4. Переход по джойстику

    • VII.2.5. Особенности одновременной обработки событий различных типов

  • VII.3. Инициализация в языке MSX BASIC

  • VII.4. Работа с принтером

    • VII.4.1. Команды для управления типом печати

    • VII.4.2. Управление вертикальной позицией печатающей головки

    • VII.4.3. Управление горизонтальной позицией печатающей головки

    • VII.4.4. Команды управления графикой

    • VII.4.5. Использование макрокоманд

    • VII.4.6. Другие полезные команды

  • Диск с примерами

  • Глава VIII. Некоторые вопросы методологии отладки программ

  • VIII.1. Ошибки при программировании

  • VIII.2. Некоторые классические приёмы тестирования программ

    • VIII.2.1. Ручная проверка

    • VIII.2.2. Ручная прокрутка. Методические указания по её проведению

    • VIII.2.3. Метод контрольных тестов

  • VIII.3. Методы локализации ошибок

    • VIII.3.1. Трассировка

    • VIII.3.2. Аварийная печать

    • VIII.3.3. Локализация с точками останова

    • VIII.3.4. Программная обработка ошибок

    • VIII.3.5. Некоторые причины, осложняющие поиск ошибок [57]

  • VIII.4. Принципы исправления и анализа допущенных ошибок

  • VIII.5. Основные понятия структурного программирования

    • VIII.5.1. Модульность программ [49]

    • VIII.5.2. Строение программ [49]

    • VIII.5.3. Структурное программирование

  • VIII. 6. О стиле программирования [57]

  • VIII.7. Недостатки языка программирования BASIC [59]

  • VIII.8. Сравнительная характеристика языков программирования

  • Диск с примерами

  • Глава IX. Файловые средства MSX BASIC

  • IX.1. Работа с файлами на дискетах

    • IX.1.1. Форматирование дискеты

    • IX.1.2. Имена файлов

    • IX.1.3. Справочная информация о файлах

    • IX.1.4. Операторы NAME, COPY и KILL

    • IX.1.5. Операторы LOAD, SAVE, RUN и MERGE

  • IX.2. Файлы данных прямого доступа

    • IX.2.1. Контрольные буферы файлов

    • IX.2.2. Операторы OPEN и CLOSE

    • IX.2.3. Оператор FIELD

    • IX.2.4. Операторы LSET и RSET

    • IX.2.5. Функции MKI$(), MKS$(),MKD$(), CVI(), CVS(), CVD()

    • IX.2.6. Операторы PUT и GET

  • IX.3. Файлы данных последовательного доступа

    • IX.3.1. Оператор MAXFILES=, OPEN и CLOSE

    • IX.3.2. Операторы PRINT#, PRINT#n, USING. Функции LOF() и LOC()

    • IX.3.3. Операторы INPUT, LINE INPUT#n. Функции INPUT$ и EOF

    • IX.3.4. Примеры

    • IX.3.5. Вывод файлов данных на экран и принтер

  • IX.4. Использование RAM–диска (только для компьютеров MSX 2)

  • IX.5. Файлы на магнитной ленте

    • IX.5.1. Работа с программными файлами

    • IX.5.2. Работа с файлами данных

  • IX.6. Дополнение

  • Диск с примерами

  • Глава X. Управление ресурсами памяти

  • X.1. Карта памяти (для компьютеров MSX 1)

  • X.2. Функция PEEK и оператор POKE

  • X.3. Таблица программных команд (PIT)

  • X.4. Таблица переменных (VT)

    • X.4.1. Хранение простых переменных

    • X. 4.2. Хранение элементов числовых массивов

  • X.5. Стек

  • X.6. Хранение строковых величин

  • X.7. Оператор CLEAR

  • X.8. Функция FRE

  • X.9. Рабочая область

    • X.9.1. Матрица клавиатуры

    • X.9.2. Динамическая клавиатура [46]

  • X.10. Порты ввода–вывода

    • X.10.1. Программируемый периферийный интерфейс (PPI)

    • X.10.2. Программируемый звуковой генератор (PSG)

    • X.10.3. Другие порты. Оператор WAIT

  • X.11. Дополнение

  • Диск с примерами

  • Глава XI. Работа с видеопамятью и видеопроцессором

  • XI.1. Видеопамять

    • XI.1.1. Псевдопеременная BASE

    • XI.1.2. Функция VPEEK. Оператор VPOKE

    • XI.1.3. Текстовые режимы

    • XI.1.4. Режимы SCREEN 2 и SCREEN 4

    • XI.1.5. Режим SCREEN 3

    • XI. 1.6. Режимы SCREEN 5, SCREEN 6, SCREEN 7 и SCREEN 8 (для компьютеров MSX 2)

    • XI.1.7. Таблица палитр (для компьютеров MSX 2)

    • XI.1.8. Спрайты

    • XI.1.9. Слоты видеопамяти

    • XI.1.10. Порты, отвечающие за работу с видеопамятью

  • XI.2. Работа с видеопроцессором

    • XI.2.1. Регистры установки режима

    • XI.2.2. Регистры базовых адресов

    • XI.2.3. Регистры цветов

    • XI.2.4. Регистры управления экраном

    • XI.2.5. Некоторые регистры доступа

    • XI.2.6. Доступ к видеопамяти

    • XI.2.7. Регистры статуса

  • XI.3. Нестандартные режимы видеопроцессора

    • XI.3.1. Режим SCREEN 4 на компьютерах MSX 1

    • XI.3.2. Текстово–графические режимы

  • Диск с примерами

  • Глава XII. Примеры решения задач повышенной трудности

  • XII. 1. Задачи

    • Диск с примерами

  • XII.2. Задачи для самостоятельного решения

  • Глава XIII. Программисты шутят

  • XIII.1. Проза

  • XIII.2. Поэзия

  • XIII.3. Словари

  • Приложение 1. MSX BASIC и машинный язык

  • 1.1. Связь программы на MSX BASIC с подпрограммами в машинных кодах

  • 1.2. Использование подпрограмм BIOS

    • 1.2.1. Подпрограммы BIOS без параметров

    • 1.2.2. Подпрограммы BIOS, требующие параметров

    • 1.2.3. Подпрограммы BIOS, возвращающие параметры

    • 1.2.4. Примеры

  • 1.3. Работа с подпрограммами BDOS

  • 1.4. Использование ловушек

  • 1.5. Работа с двоичными файлами

  • 1.6. Реализация вещественной арифметики на машинном языке

    • 1.6.1. Пересылки

    • 1.6.2. Арифметические операции над целыми числами

    • 1. 6.3. Арифметические операции над вещественными числами

    • 1.6.4. Возведение в степень

    • 1.6.5. Сравнение

    • 1.6.6. Преобразование типов

    • 1.6.7. Преобразование чисел для вывода на печать

  • 1.7. Программирование звуковых эффектов

    • Фоновое музыкальное сопровождение

  • 1.8 Возможность расширения программного обеспечения на MSX–компьютерах

    • 1.8.1. Подробная карта памяти

    • 1.8.2. Работа со слотами

    • 1.8.3. Создание новых операторов

  • 1.9. Примеры использования входных точек системы BDOS

  • 1.10. Коды команд микропроцессора Z80

  • 1.11. Мнемоника команд микропроцессоров Intel 8080 и Z80

  • Приложение 2. Справочный материал

  • 2.1. Список служебных слов

  • 2.2. Внутренние коды служебных слов

  • 2.3 Описание действия управляющих клавиш при работе в экранном редакторе системы MSX BASIC

  • 2. 4. Таблица кодов ASCII

  • 2.5. Сообщения об ошибках в системе MSX BASIC

  • 2.6. Рабочая область

    • 2.6.1. Таблица системных переменных

    • 2.6.2. Таблица ловушек

  • 2.7. Структура видеопамяти

  • 2.8. Команды видеопроцессора [89]

    • 2.8.1. Типы команд

    • 2.8.2. Состояние регистров после выполнения команд

    • 2.8.3. Описание команд

      • 2.8.3.1. Команда HMMC

      • 2.8.3.2. Команда YMMM

      • 2.8.3.3. Команда HMMM

      • 2.8.3.4. Команда HMMV

      • 2.8.3.5. Команда LMMC

      • 2.8.3.6. Команда LMCM

      • 2.8.3.7. Команда LMMM

      • 2.8.3.8. Команда LMMV

      • 2.8.3.9. Команда LINE

      • 2.8.3.10. Команда SRCH

      • 2.8.3.11. Команда PSET

      • 2.8.3.12. Команда POINT

    • 2.8.4. Работа с «мышью» и световым пером [89]

    • 2. 8.5. Регистры статуса и регистры команд

  • 2.9. Приложение к разделу «Фоновое музыкальное сопровождение»

  • 2.10. Использование ОЗУ таймера в компьютерах MSX-2

  • 2.11. Тайны микропроцессора Z80

  • 2.12. Комплекс упражнений для профилактики зрительного утомления [28]

  • 2.13. Комплекс физических упражнений для снятия утомления [28]

  • Библиографический список

  • Предметный указатель операторов и функций

Обсуждения:

  • Пособие по программированию на MSX-BASIC | MSX Resource Center

  • MSX Programmer Ref (ru) — MAXIOL

  • Пособие по программированию на MSX BASIC

  • Заметка на pikabu.ru

MSX, BASIC, Швецкий Михаил Владимирович, 📖 Диалоговый язык программирования MSX-BASIC

Методика Large-Scale Scrum (LeSS) | Atlassian

Agile-команды состоят из владельцев продукта, Scrum-мастеров, разработчиков ПО и других участников. Вместе они ищут нестандартные решения для создания ценных продуктов, отвечающих сложным потребностям клиентов. Scrum — это популярная Agile-методика, с помощью которой команды разрабатывают, поставляют и поддерживают многофункциональные продукты. Но только недавно нам удалось найти эффективные способы развертывания Scrum в масштабе корпорации. Так появились методики масштабирования Agile-процессов, такие как Large-Scale Scrum (LeSS).

Что такое методика LeSS?

LeSS — это методика, позволяющая применять Scrum в масштабе нескольких команд, совместно работающих над одним продуктом. За ее основу взята одна Scrum-команда, определение которой дали Кен Швабер и Джефф Сазерленд в Руководстве по Scrum, но применяется она к нескольким командам, работающим над одним продуктом.

Подробнее эта методика рассмотрена в книге Large-Scale Scrum: More with LeSS (Scrum в крупномасштабных проектах: как добиться большего средствами LeSS) от Крейга Лармана и Баса Водде. На основании многолетнего опыта применения авторы определяют LeSS как методику, которая позволяет создать ценность, при этом отсекая все сложное и ненужное.

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

Структура методики LeSS

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

Принципы, основы, руководства и эксперименты

Принципы

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

  • Методика Large-Scale Scrum — это Scrum
  • Эмпирический контроль процессов
  • Прозрачность
  • Лучшие результаты меньшими усилиями
  • Внимание ко всему продукту
  • Клиентоориентированность
  • Непрерывное совершенствование на пути к идеалу
  • Системное мышление
  • Бережливость
  • Теория массового обслуживания

Основы

Методика LeSS представлена в двух конфигурациях: Basic LeSS для компаний с 2–8 командами (10–50 человек) и LeSS Huge, которая подходит, когда команд больше 8 (50–6000 человек и более).

LeSS Huge — это конфигурация Basic LeSS плюс новая ключевая роль — владелец продукта по области (APO) — и новые артефакты, а также изменения в собраниях. На первых порах организации рекомендуется попробовать Basic LeSS. Поэкспериментируйте с новой методикой, «прочувствуйте» ее и получите отзывы от участников. Затем приступайте к освоению LeSS Huge. Есть два рекомендуемых подхода к внедрению LeSS Huge.

  1. Работа над одной областью требований за раз; сосредоточенность на области требования в рамках более крупного продукта.
  2. Постепенное расширение области работы команды, критериев готовности работы и определения продукта.

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

Руководства

Руководства по LeSS представляют собой свод рекомендаций, составленный авторами методики Крейгом Ларманом и Басом Водде на основе экспериментов с LeSS. Эти руководства появились спонтанно, став побочным продуктом третьей книги авторов — Large-Scale Scrum: More with LeSS (Scrum в крупномасштабных проектах: как добиться большего средствами LeSS). Тем не менее они весьма полезны для освоения способов внедрения LeSS, ролей и обязанностей участников, особенностей координирования и интеграции нескольких команд и многого другого. Помните: только вы решаете, нужно ли следовать руководствам при реализации методики LeSS.

Эксперименты

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

В первых двух книгах Крейга Лармана и Баса Водде — Scaling Lean & Agile Development (Масштабирование Agile- и бережливой разработки) и Practices for Scaling Lean & Agile Development (Практическое руководство по масштабированию Agile- и бережливой разработки) — методика Large-Scale Scrum преподносилась как серия экспериментов, объединенных принципом «никаких рекомендаций, поскольку они неразрывны с условиями, в которых применяются».

Третья книга автора Large-Scale Scrum: More with LeSS (Методика LeSS: лучшие результаты меньшими усилиями) может служить пособием по освоению LeSS. В ней содержатся эксперименты из первых двух книг, приводится описание ролей в методике LeSS, объясняется, как согласовывать работу нескольких команд и превращать их в единый организм, и многое другое.

Все три книги постепенно сформировали методику LeSS. Мы настоятельно рекомендуем прочитать их, чтобы лучше понимать, на чем она строится.

Роли и планирование в LeSS

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

Мы упомянули ранее, что владелец продукта по области в рамках LeSS Huge помогает владельцу всего продукта и согласовывает с ним действия. Он — важное звено между бизнес-потребностями и командой технических специалистов. Владелец продукта по области занимается тем же, что и владелец всего продукта, но у команды, которую он курирует, более узконаправленный объем работы. На долю владельца продукта по области приходятся задачи, ориентированные на клиента. Он выступает в качестве владельца всего продукта для ориентированных на продукт функциональных команд.

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

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

В чем заключаются отличия LeSS?

С другими методиками масштабирования Agile LeSS роднит пять основных компонентов: Манифест Agile (источник вдохновения) и его 12 принципов, график работ в виде спринтов или итераций, синхронизация между разными уровнями организации, укорененность в Scrum и методы качественной разработки, такие как DevOps, CI/CD и разработка на основе тестирования. При этом несколько характерных особенностей отличают LeSS от других методик.

Сравнение LeSS и Scrum

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

Конфигурация Basic LeSS очень похожа на Scrum для одной команды. LeSS предусматривает единый бэклог продукта и критерии готовности работы, а также одного владельца продукта. И хотя таким образом могут работать несколько команд, все они действуют вместе как одна команда Scrum. В конце каждого спринта они поставят общий, готовый к выпуску продукт. В LeSS предусмотрен один владелец продукта, отвечающий за один бэклог продукта, однако при этом результат достигается усилиями одной или нескольких команд. В конфигурации LeSS Huge, в частности, получает развитие роль владельца продукта. Вводятся владельцы продукта по области, которые согласовывают работу множества команд и отвечают за их взаимодействие. Чтобы помочь им в этом, владелец продукта проводит собрание для общекомандного уточнения бэклога продукта. Так все команды, участвующие в совместной работе, могут согласовать поставку результатов.

Кроме того, в LeSS планирование спринта делится на две части. Сначала команды собираются вместе, чтобы решить, как лучше поделить элементы бэклога продукта. Затем команды планируют свой спринт, взаимодействуя и общаясь с другими командами, чтобы выполнить задачи из этого бэклога.

Особенности LeSS на этом не заканчиваются. В других собраниях, таких как ежедневное Scrum-совещание, обзор итогов спринта и общая ретроспектива, также есть нюансы.

LeSS и SAFe

Хотя LeSS и набирает популярность среди корпораций с крупными командами по разработке ПО, другие методики масштабирования Agile, например Scrum of Scrums или Scrum@Scale, также получили широкое распространение. Одной из ведущих методик является Scaled Agile Framework® (SAFe).

Между LeSS и SAFe много общего. Например, основой для обеих методик является масштабирование команды Scrum и внедрение таких принципов, как бережливость, непрерывное совершенствование и клиентоориентированность. Однако LeSS отличает стремление упростить организационную структуру за счет сохранения гибкости и возможности адаптации.

В отличие от LeSS SAFe вводит новые роли, включая технического руководителя релизов (Release Train Engineer, RTE), технического руководителя решений (Solution Train Engineer, STE) и владельцев эпиков. SAFe также предусматривает процессы, артефакты и организационные изменения, которые не все организации будут готовы принять, даже если их Agile-команды уже одинаково успешно применяют Scrum. LeSS Huge в чем-то отличается от Basic LeSS, но в целом этот вариант не сложнее других методик.

Преимущества методики LeSS

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

Перечислим некоторые преимущества, которые может дать LeSS.

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

Для многих организаций подход LeSS к масштабированию команд Scrum может стать очередным логическим шагом на пути к масштабированию Agile.

Следующий шаг

Методики вроде LeSS помогают компаниям эффективно масштабировать принципы Agile и добиваться желаемых бизнес-результатов. Но не менее важны инструменты, которые они выбирают для дополнения существующих методов работы и реализации всех преимуществ этих методов. С помощью Jira Align, платформы для корпоративного agile-планирования от Atlassian, вы сможете повысить прозрачность и обеспечить соответствие стратегическим целям и потребностям компании, чтобы быстрее осуществить цифровые преобразования. Узнайте, как Jira Align сейчас поддерживает LeSS.

Подробнее

Thomas E. OConnor

Том имеет опыт развития информационных технологий и служб в сфере здравоохранения, энергетики, производства, финансовых служб и страхования, поэтому не понаслышке знает, что при переходе на Agile крупные клиенты сталкиваются с трудностями. Том также знает, что переход на Agile того стоит. Ему приходилось наблюдать проблемы в компаниях, работающих по-старому, и он был свидетелем успеха, которого достигали обучающиеся организации после внедрения масштабируемого подхода Agile и методики Lean Portfolio Management (LPM). Том настолько убежден в своих идеях, что ввел практики Agile даже в районном управлении по защите от пожаров в городе Дивайд, Колорадо, где 13 лет проработал начальником пожарной охраны и чуть больше 25 лет — волонтером. Он посвящает большую часть свободного времени своей семье, юношескому спорту, катанию на внедорожном мотоцикле или снегоходе, а также посещению автомобильных выставок со своим Camaro SS 1968 года. Хотите узнать больше? Свяжитесь с Томом на LinkedIn.

если — ОСНОВНЫЕ команды — PICAXE

Имя:
если
Синтаксис:

 

Опции для одной линии:

ЕСЛИ условие, ТО этикетка

ЕСЛИ условие ТОГДА ПЕРЕЙТИ к ярлыку

IF Состояние THEN GOSUB Этикетка

ЕСЛИ условие ТОГДА ВЫХОД

Условие — Условие, при котором связанная команда будет выполнена или нет.

 

Многострочные/блочные варианты структуры:

IF условие THEN
  
{code}
ELSEIF условие THEN
  
{code}
ELSE
  
{code}
ENDIF

8

Условие   – Условие, при котором соответствующие кодовые команды будут выполняться или нет.

Код — операторы команд, которые будут выполняться в зависимости от оценки условия . Эти операторы команд могут включать дополнительные однострочные и многострочные команды «если». Это обычно известно как «вложенные операторы if».

 

Описание:

Условно выполнять разделы кода.

Статус if используется для проверки общих переменных (или входных контактов) на определенные условия. Если условие выполняется, соответствующая команда выполняется. В противном случае команда игнорируется, и выполнение программы продолжается на следующей строке после команды «если».

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


Условия

Условия определяют, должно ли быть выполнено действие или нет. Каждое условие принимает форму —

  значение сравнения переменных
 

Значение переменной сравнивается со значением, чтобы определить, выполняется ли условие. Например —

ЕСЛИ b1 >= 10 ТО …

или  
  переменная переменная сравнения
 

Значение левой переменной сравнивается со значением правой переменной, чтобы определить, выполняется ли условие. Например —

ЕСЛИ b2 < b3 ТО ...

Оператор сравнения может быть любым из . ..

  = равно
  это равно
  <> не равно
  != не равно
  > больше
  < меньше
  >= больше или равно
  <= меньше или равно

Дополнительно для частей X1 и X2 могут быть применены условия проверки битов —

  переменная BIT номер бита SET
  переменная БИТ номер бита ОЧИСТИТЬ

Результат условия будет зависеть от того, установлен или сброшен бит в переменной . Номер бита — это номер бита в переменной , подлежащей тестированию.

Обратите внимание, что при тестировании входного вывода должно использоваться имя переменной ‘pin’, а не номер контакта или метка port.number контакта. Например —

  ЕСЛИ контакт 2 = 1, ТО GOSUB нажата кнопка
  ЕСЛИ контакт C.0 = 0, ТО кнопка GOSUB не нажата

Если имя переменной ‘pin’ не указано, вероятно, будет вызвана ‘синтаксическая ошибка’ для команды ‘if’. Необходимо соблюдать осторожность при указании входного вывода для тестирования с помощью команды символа. Для получения дополнительной информации о тестировании входных контактов с помощью команды if см. команду if pin.


Несколько условий

В команде if можно указать несколько условий. Это могут быть комбинации «и» или «или» —

.
  состояние И состояние
  состояние ИЛИ состояние

Комбинированное условие «и» будет оцениваться как истинное, только если оба условия истинны, в то время как комбинированное условие «или» будет оцениваться как истинное, если истинно любое условие.

Можно добавить дополнительные комбинации «и» или «или», но не рекомендуется смешивать их в комбинированном условном предложении. Например —

  ЕСЛИ b0 > 10 И b0 < 20, ТО ПЕРЕЙТИ К МЕЖДУ 11 И 19
  ЕСЛИ pinC.0 = 1 ИЛИ b1 = 1 ИЛИ b2 = 3, ТО ВЫХОД

ЕСЛИ условие, ТО метка

Если условие верно, поток программы переходит к указана метка и продолжается выполнение оттуда.

IF условие THEN GOTO label

Работает так же, как и команда ‘if condition then label’. Если условие истинно, поток программы переходит к указанной метке и продолжает выполнение оттуда.

ЕСЛИ условие ТО GOSUB метка

Если условие истинно, программа выполняет команду gosub на метку, переходя на метку , работает до тех пор, пока не дойдет до команды возврата, а затем возвращается к коду после команды «if condition then gosub label».

ЕСЛИ условие THEN EXIT

Если условие верно, то текущий цикл (do…loop или for…next) преждевременно завершается, выполнение программы продолжится после ‘loop’ или ‘next команда.


ЕСЛИ условие ТО
  {код}
ELSE
  {код}
КОНЕЦ ЕСЛИ

Многострочная или блочная команда if распределена по нескольким строкам. Когда условие оценивается как истинное, выполняется код между командами «if condition then» и «else», в противном случае выполняется код между командами «else» и «end if». После выполнения любого из наборов кода выполнение программы продолжится в строке после «end if».

 

IF condit ion THEN
  {code}
END IF

Многострочная или блочная команда if может не иметь условия else. Если условие истинно, то выполняется код между командами if condition then и end if, после чего выполнение программы продолжается после команды end if. Если условие ложно, то выполнение программы сразу же продолжается после команды end if.  

ЕСЛИ условие ТО
  {код}
ИНАЧЕ ЕСЛИ условие ТО
  {code}
END IF

Вместо команды else можно использовать команду elseif и указать другое условие. Если первое условие истинно, будет выполнен код между командами «если условие, то» и «иначе, если условие, то»; в противном случае будет выполнено условие «иначе, если»; ‘end if’ будет выполнено.


ЕСЛИ условие ТО
  {код}
ELSEIF условие THEN
  {код}
ELSEIF условие THEN
  {code}
END IF

Дополнительные команды ‘elseif’ могут быть добавлены, и каждая из них будет оцениваться по очереди, если нет предшествующего ‘условия if then’ или ‘elseif conditon then’ не оцениваются как истинные.

Команда select case может использоваться вместо вложенных команд ‘if’ или последовательностей команд ‘if’ и ‘elseif’, чтобы сделать выполнение кода более понятным или исходный код более читабельным, особенно с ‘select case’, если одно и то же переменная проверяется повторно, ее нужно указать только один раз. Там, где есть выбор, что использовать, это в основном вопрос личных предпочтений и предпочитаемого стиля программирования.


IF condition THEN
  {code}
ELSEIF condition THEN
  {code}
ELSE
  {code}
END IF

An ‘else’ command can be added to an ‘if’ and Последовательность команд ‘elseif’, которая будет выполнена, если ни одно из предыдущих условий ‘if condition then’ или ‘elseif conditon then’ не было оценено как истинное.

Применимо к:
Все
См. также:
  • если контакт
  • иначе
  • endif
Связанные Создать:
    Доля:
    Печать:

    Мигает светодиодом при нажатии кнопки

    Постоянно проверяйте C. 0, чтобы убедиться, что он высокий — если да, включите B.1 на 5 секунд

    Пример кода:
     основной: если pinC.0 = 1, то
    перейти на флэш ; перейти на flash, если pin0 высокий
    конец, если
    перейти на главную; иначе вернуться к началу
    флеш: высокий B.1 ; включить выход B.1
    пауза 5000 ; подождите 5 секунд
    низкий В.1 ; отключить выход B.1
    перейти на главную; вернуться к началу 
    Скопировать код Отправить пример

    Отправьте свой собственный код!

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

    gosub — ОСНОВНЫЕ команды — PICAXE

    Имя:
    госуб
    Синтаксис:

    Адрес GOSUB

    ЗВОНИТЕ по адресу

    Адрес — это метка, которая указывает, куда идти.

    Описание:

    Перейти к подпроцедуре по «адресу», затем «вернуться» позже. Компилятор также принимает call как псевдоним для gosub. Команда gosub («goto subprocedure») — это «временный» переход к отдельному участку кода, из которого вы позже вернетесь (через команду return). Каждая команда gosub ДОЛЖНА сопровождаться соответствующей командой возврата. Не путайте с командой goto, которая является необратимым переходом к новому местоположению программы.

    В таблице показано максимальное количество gosub, доступных в каждом микроконтроллере. Обычно Gosub могут быть вложены до 8 уровней (т. е. в микроконтроллере имеется 8-уровневый стек).

      госубы прерывание глубина стопки
    Все детали M2 * 255 1 8
    Все детали X2 255 1 8
    Все детали X1 255 1 8
    Все части X (устаревшие) 255 1 4
    Все детали M (устаревшие) 15 1 4
    Все части «А» (устаревшие) 16 0 4

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

    Применимо к:
    Все
    См. также:
    • возврат
    • на gosub
    • #gosubs
    Связанные Создать:
      Доля:
      Печать:

      Вызов подпрограммы gosub

      Мигание светодиода несколько раз с помощью подпрограммы gosub

      Пример кода:
       main: пусть b2 = 15 ; установить значение b2
      госуб флеш ; вызов подпроцедуры
      пусть b2 = 5 ; установить значение b2
      госуб флеш ; вызов подпроцедуры
      конец			; перестань случайно падать в саб
      флеш: для b0 = 1 до b2 ; определить цикл для b2 раз
      высокая Б.

      Добавить комментарий

      Ваш адрес email не будет опубликован. Обязательные поля помечены *