В современном мире все чаще встает вопрос модернизации старого программного обеспечения, написанного с применением несовременных парадигм программирования, старого стандарта языка, который не поддерживается современными компиляторами. В случае применения для «переписывания» другого, современного, более выразительного языка программирования, требуется не просто модернизировать, а скорее, написать заново программу, которая будет использовать функциональность старого программного обеспечения. Сложность такой задачи заключается в отсутствии тестирующих методов в унаследованном коде, что потенциально приводит к возникновению ошибки в новом программном обеспечении. Автор на примере работы над новой системой, использующей функциональные возможности старой проверенной системы, показывает преимущества применения технологии разработки через тестирование.
Идентификаторы и классификаторы
Модульное тестирование (unit testing) является необходимой частью любого программного приложения. Каждый элемент открытого API (Application program interface) необходимо покрыть тестами, которые должны проверять как позитивные, так и негативные сценарии исполнения программного кода. В итоге количество строк кода в тестовых классах нередко превосходит количество строк бизнес-логики приложения. Из-за этого разработчики не пишут тесты, аргументируя свое решение «высоким профессионализмом». Разработка через тестирование позволяет сразу описать все варианты, требуемые для решения задач бизнес-логики. Преимущество такого подхода заключается в том, что в конце работы над функциональной частью приложения, у разработчика уже имеются написанные тесты. Психологически труднее заставить себя писать тесты после того, как бизнес-логика уже написана.
Список литературы
1. Васильева М.А. Интеллектуальные транспортные системы. материалы Международной научно-практической конференции. Москва, 25 мая 2023 // Технический долг или пять причин провести рефакторинг. Москва. 2023. С. 61-68. EDN: KLMWSP
2. Кент Б. Экстремальное программирование. Разработка через тестирование TDD. Спб.: Питер, 2020. 224 с.
3. Модульное тестирование: что это? [Электронный ресурс] // Logrocon: [сайт]. [2022]. URL: https://logrocon.ru/news/unit_testing (дата обращения: 10.09.2023).
4. Фаулер М. Рефакторинг: Улучшение существующего кода. Спб: Символ Плюс, 2010. 432 с.
5. Баранов Л.А., Ерофеев Е.В., Максимов В.М., Головичер Я.М. Микропроцессорные системы автоведения электроподвижного состава. Москва: Транспорт, 1991. 271 с.
6. Сидоренко В.Г. Алгоритмы бортовых подсистем автоматического управления движением поезда метрополитена: специальность 05.13.07: автореферат диссертации на соискание ученой степени кандидата технических наук. Москва. 1997. 24 с. EDN: ZIGJNN
7. Баранов Л.А., Васильева М.А., Ершов А.В., Максимов В.М., Мелёшин И.С. Автоматизированная система выбора энергооптимальных режимов управления движением поезда метрополитена // Вестник МИИТа, № 19, 2008. С. 3-10.
8. Васильева М.А. Энергооптимальные режимы управления движением поезда метрополитена: специальность 05.13.06 “Автоматизация и управление технологическими процессами и производствами (по отраслям)”: диссертация на соискание ученой степени кандидата технических наук. Москва: МИИТ, 2003. 182 с. EDN: NMLGNT
9. Баранов Л.А., Васильева М.А., Ерофеев Е.В., Ершов А.В., Максимов В.М., Мелешин И.С., Сидоренко В.Г., Щукин Ю.Г. Автоматизированная система выбора энергооптимальных режимов управления электроподвижным составом метрополитена, Свидетельство о государственной регистрации программ для ЭВМ 2011610612, Nov 01, 2011.
10. Мелешин И.С. Алгоритмы автоматизированного управления временем хода поезда “Русич” на перегонах метрополитена: диссертация на соискание ученой степени кандидат технических наук. Москва. 2011. 214 с. EDN: QFQMAP
11. Баранов Л.А., Чинь Л.Н., Мелешин И.С. ОПТИМАЛЬНОЕ УПРАВЛЕНИЕ ПОЕЗДОМ МЕТРОПОЛИТЕНА ПО КРИТЕРИЮ МИНИМУМА ЭНЕРГОЗАТРАТ // Электротехника, Т. 8, 2011. С. 9-14. EDN: NXBPIT
12. Шереметова В.К., Дудов С.А. Научно-практическая конференция “Неделя науки -2016” // Информационное обеспечение модели движения поездов по линии метрополитена. Москва. 2016. С. III-114.
13. Вернон В. Реализация предметно-ориентированного проектирования. Москва: Диалектика, 2019. 688 с.
14. Васильева М.А. Интеллектуальные транспортные системы. материалы Международной научно-практической конференции // Автоматизированная система энергооптимальных тяговых расчетов. Москва. 2022. С. 108-115. EDN: MEKCTF
15. Васильева М.А., Николаев А.Ю. Цифровая трансформация транспорта: проблемы и перспективы: материалы Международной научно-практической конференции “Цифровые технологии транспорта и логистики”, (28 сентября 2022 г.). // Повышение эффективности построения энергооптимальных траекторий движения поезда по перегону на базе параллельных вычислений. Москва. 2022. С. 324-328. EDN: BOMGPE
16. Васильева М.А., Николаев А.Ю. Цифровые инфокоммуникационные технологии: сборник научных трудов ФГБОУ ВО РГУПС. // К вопросу об оценке эффективности реализации алгоритма. Ростов-на-Дону. 2022. С. 251-255. EDN: TVEJIC
17. Васильева М.А., Быкова Е.А., Викторов К.А. Информационное обеспечение автоматизированной системы выбора энергооптимальных режимов управления поездом метрополитена. // Цифровые инфокоммуникационные технологии: сборник научных трудов ФГБОУ ВО РГУПС., 2022. С. 35 - 40. EDN: BUXQUN
18. Физерс М.К. Эффективная работа с унаследованным кодом. Москва: ООО Издательский дом “Вильямс”, 2017. 400 с.
19. MaxRokatansky. Руководство по сквозному тестированию: что такое E2E-тестирование с примерами // habr.com. 2022. URL: https://habr.com/ru/companies/otus/articles/681066/(дата обращения: 18.10.2023).
20. Васильева М.А. Цифровая трансформация транспорта: проблемы и перспективы: материалы Международной научно-практической конференции “Цифровые технологии транспорта и логистики”, (28 сентября 2022 г.). // Автоматизированная система выбора энергооптимальных режимов управления. Москва. 2022. С. 218-221.
21. Васильева М.А., Филипченко К.М. Система контроля версия. Основы командной разработки: учебное пособие для ВУЗов. Санкт-Петербург: Лань, 2022. 144 с. EDN: VCNUQQ
22. Ошероув Р. Искусство автономного тестирования с примерами на C#. 2-е изд. М.: ДМК Пресс, 2014. 360 с.
Выпуск
Другие статьи выпуска
В статье излагаются результаты разработки моделей и методов решения задач, нацеленных на научно обоснованные предложения, направленные на формирование комплексных мер по повышению эффективности использования инфраструктуры и росту провозной способности полигонов Российских железных дорог. Рассмотрены основные положения разработанного Паспорта инвестиционного проекта модернизации железнодорожной инфраструктуры Восточного полигона (второй этап). Приведены основные положения программы поэтапного вывода к 2030 году путевого комплекса ОАО «РЖД» на нормативный уровень. Проанализированы изменения в порядке расчетов пропускной и провозной способностей в свете выхода новой Инструкции. Сформулированы ожидаемые эффекты от применения новой Инструкции. Приведена технология расчёта рисков неосвоения перевозок по вариантам организации проведения ремонтно-путевой кампании (на долгосрочный и среднесрочный периоды), а также обобщены меры по снижению этих рисков.
В статье рассмотрены существующие принципы и порядок планирования потребности локомотивного парка грузового движения, применяемые на сети железных дорог ОАО «РЖД» в настоящее время и предложен вариант развития системы планирования.
Статья исследует темпоральный подход, применимый для решения задач логистики. Рассмотрены темпоральные модели, темпоральные отношения, темпоральные метки. Статья вводит понятие «темпоральный анализ». Дана систематика темпоральных моделей. Темпоральный анализ объединяет темпоральную логику и темпоральное моделирование. Описан темпоральный причинно-следственный анализ как развитие темпорального анализа. Раскрывается содержание понятия временная неопределенность. Показана связь темпоральных моделей с ситуационными моделями. Описаны особенности применения темпоральных методов в управлении транспортом.. Описаны особенности применения темпоральных моделей в сфере транспорта. Статья дает анализ временных интервалом. Вводится понятие локальный временной интервал и границы интервала. Описаны особенности получения и применения временных меток. Дано формализовано описание темпоральных моделей. Показана связь темпоральных интервалов с ситуациями и состояниями объекта. Статья дает формальное описание близких и отдаленных интервалов. Даны три темпоральные модели движения. Статья раскрывает содержание темпорального причинно- следственного анализа. Показаны причины появления. Описаны методы уменьшения временной неопределенности.
Цель работы исследование применение информационного каскадирования в управлении перевозочными процессами. Исследуется модель «сложные перевозки». Она включает мультимодальные перевозки, интермодальные перевозки, перевозки внутри мегаполиса и в пригородах мегаполиса. Для сложных перевозок характерно большое количество разнородной информации. такой информационный комплекс часто исключает применение алгоритмических методов для управления. информационное каскадирование относится к методам поддержки принятия решений. Это множественный эвристический метод, уменьшающий индивидуальные ошибки и не рациональные альтернативы. Показано различие проектной каскадной моделью и информационным каскадом. Описаны два направления применения информационного каскада. Информационное каскадирование позволяет вырабатывать более надежный план перевозок и накапливать опыт реализации перевозок в сложных условиях.
Получение оптимального маршрута грузоперевозки по заданным критериям является трудоемким процессом как для грузоотправителей, так и для экспедиторов, так как предполагает построение маршрутов, анализ маршрута в соответствии с заданными критериями, расчет итоговой стоимости в соответствии с тарифами перевозчиков и транспортных зон, таможенными сборами, дополнительными услугами. Сегодня отсутствует программное решение, которое позволяет построить оптимальный логистический маршрут с применением различных видов транспорта, а также получить все возможные варианты маршрутов согласно заданным критериям. В статье предложено создание логистического навигатора грузовой перевозки, определена его модель в виде «черного ящика», описаны входные и выходные параметры навигатора, определены данные, составляющие нормативно-справочную информацию навигатора, необходимую для анализа и принятия решения, определен алгоритм работы навигатора. В завершение сформулированы преимущества, полученные от внедрения логистического навигатора в контексте текущих проблем и таких перспективных решений, как реализация интеллектуального анализа потоков транспортных коридоров по видам транспорта и грузов, прогноза загрузки объектов инфраструктуры, расширение функционала логистического навигатора для сбора аналитики по состоянию объектов транспортной инфраструктуры органами власти. Исследованы нормативные акты и справочники, регламентирующие процесс грузоперевозки для авиационного, морского, железнодорожного и автомобильного видов транспорта, классификаторы в различных автоматизированных системах работы с перевозочными документами, произведена классификация объектов нормативно-справочной информации логистического навигатора, описан контекст применения различных объектов нормативно-справочной информации. В результате исследования была построена структура нормативно-справочной информации логистического навигатора, определена логика решения задачи по поиску оптимального маршрута и расчету стоимости перевозки.
Издательство
- Издательство
- РУТ (МИИТ)
- Регион
- Россия, Москва
- Почтовый адрес
- 127055, г Москва, р-н Марьина роща, ул Образцова, д 9 стр 9
- Юр. адрес
- 127055, г Москва, р-н Марьина роща, ул Образцова, д 9 стр 9
- ФИО
- Климов Александр Алексеевич (РЕКТОР)
- Контактный телефон
- +7 (___) _______
- Сайт
- https://www.miit.ru/