Главная страница
Навигация по странице:

  • 14. Основные группы стандартов, используемые при проектировании программного продукта.

  • 15. Этап жизненного цикла Конструирование программного продукта.

  • 16. Основной критерий разработки нового программного обеспечения. Наличие объективных и субъективных признаков.

  • 17. Этап Обучение персонала жизненного цикла разработки программного продукта.

  • 18. Основные языки программирования, используемые при создании информационных ресурсов PHP

  • Вопросы к экзамену. 13. Пути построения современного цифрового производства


    Скачать 25.59 Kb.
    Название13. Пути построения современного цифрового производства
    АнкорВопросы к экзамену
    Дата01.02.2021
    Размер25.59 Kb.
    Формат файлаdocx
    Имя файла13-18.docx
    ТипДокументы
    #173081

    13. Пути построения современного цифрового производства

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

    Шаги к цифровизации производства:

    1. Формирование целей и задач цифровизации. 2. Оценка текущего уровня цифровизации предприятия по 15 ключевым компонентам (ERP, CPM, APS, ETO и др.). 3. Разработка целевого ИТ ландшафта предприятия. 4. Разработка «дорожной карты» цифровизации на 1-5 лет. 5. Реализация программы проектов, проведение пилотных проектов.

    Основой для цифровой трансформации являются компьютерные технологии и цифровые средства измерения. Цифровые средства измерения и АСУТП внедряются в промышленности на протяжении десятилетий, цифровые шины и промышленный Ethernet — более 20 лет, а беспроводные сети — более 10 лет. Компьютерные технологии в промышленности прошли путь от изолированных «островов» сетей АСУТП и офисных компьютеров до многоуровневых географически распределенных корпоративных сетей со средствами контроля доступа и информационной безопасности. За счет развития «облачных» технологий и дата-центров снимается проблема ограниченного количества сохраняемых данных и вычислительных мощностей.

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

    • интеллектуальные устройства и промышленный интернет вещей — возможность получения всеобъемлющих данных об объекте или оборудовании с передачей их в любую другую систему, как правило, по беспроводным сетям; вычислительные мощности интеллектуальных устройств позволяют реализовывать на них не только измерения, но и аналитические вычисления, т.н. edge computing;

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

    • большие данные — технологии работы с большими объемами разнородных данных (временные ряды, события и др.) с целью анализа и получения существенной информации для принятия решений;

    • машинное обучение и искусственный интеллект — спектр технологий обучения компьютерных систем с целью находить зависимости и применять их для принятия решений;

    • облачные технологии и сервисы, позволяющие хранить и обрабатывать данные, выполнять программные сервисы на инфраструктуре «облака», расположенного в интернете или в корпоративном дата-центре;

    • технологии беспроводной и мобильной связи, мобильные устройства и приложения;

    • роботизацию;

    • виртуальную и дополненную реальность;

    • аддитивное производство и 3D-печать и т.д.

    14. Основные группы стандартов, используемые при проектировании программного продукта.

    Стандарты ISO серии 9000

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

    Но основным преимуществом модели ISO является известность, распространенность, признание на мировом уровне. Сейчас стандарты ISO являются обязательным минимумом который должна иметь любая организация существующая на рынке. Но конечно же, вследствие своей универсальности, модель на основе стандартов ISO серии 9000 получилась достаточно “высокоуровневой”

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

    Стандарт TickIT

    Достаточно широкую известность получил британский стандарт TickIT. Этот отраслевой стандарт регламентирует требования к системе качества для организаций разработчиков программного обеспечения и базируется на модели ISO 9001:94. В отличие от модели ISO 9001, которая регламентирует “что необходимо сделать”, разработчики данного стандарта попытались ответить на вопрос “как” можно выполнить требования, определенные в ISO 9001. TickIT объединяет в себе модель ISO 9001 с набором рекомендательных стандартов ISO 12207 и ISO 9000-3.

    Стандарты SEI SW-CMM

    Очень интересный подход к улучшению внутренних процессов разработки программного обеспечения определен в модели SEI SW-CMM. В основу данной модели (также как и в основу стандартов ISO серии 9000) положена теория TQM. Теория TQM основывается на постепенном улучшении внутренних производственных процессов за счет множества небольших внедряемых в компании улучшений. Однако, модели ISO и CMM несколько различаются в своих подходах к построению самосовершенствующихся систем управления качеством и улучшению производственных процессов.

    В отличие от модели ISO, где для того, чтобы соответствовать требованиям, необходимо продемонстрировать 100%-ное соответствие модели (и только оно позволяет компании самосовершенствоваться), в модели SEI SW-CMM предусмотрен поэтапный подход к построению системы совершенствования процессов. Для достижения этой цели разработчики стандарта СММ определили пять уровней, которые должна пройти организация для того, чтобы достичь основной цели – повышения эффективности функционирования процессов компании и, как следствие, улучшения качества результатов производственных процессов и разрабатываемого программного обеспечения.

    Стандарты по Project Management

    Одним из важных моментов, который необходимо иметь в виду при внедрении каких-либо стандартов (ISO 9000, SEI SW-CMM, TickIT, Spice ISO 15504 и т.п.), связан с тем, что структура производства компаний, разрабатывающих программное обеспечение, связана со спецификой продукта. Каждый продукт, разрабатываемый IT-компанией, уникален. И для его разработки, как правило, используется проектный тип организации производства, который тесно связан с матричной структурой управления проектами.

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

    176 комитет ISO разработал рекомендательный стандарт ISO 10006 “Менеджмент качества. Руководство качеством при управлении проектами”, который определяет основные подходы к управлению проектами и определяет его место в модели обеспечения качеством. Авторы стандартов ISO серии 9000 определяют процесс управления проектами как часть системы менеджмента качества. С другой стороны, возможен и противоположный взгляд (которого придерживаются оппоненты стандартов ISO серии 9000), согласно которому менеджмент качества является одной из составной частей системы управления проектами.

    Управление проектами является скелетом производства в организациях разработчиков программного обеспечения. Поэтому неудивительно, что для приведения в соответствие системы управления качеством производства к требованиям модели ISO 9001 и к требованиям модели улучшения процессов производства SEI SW-CMM использование стандартов и признанных в мире технологий по управлению проектами является краеугольным камнем развития внутренних технологий в IT-компаниях.

    15. Этап жизненного цикла Конструирование программного продукта.

    Термином конструирование программного обеспечения (software construction) охватываются этапы жизненного цикла создания ПО: разработки архитектуры, детального проектирования ПО, кодирования, верификации (проверки), модульного тестирования – автономной отладки, интеграционного тестирования и отладки(кроме независимого тестирования). Термин конструирование ПО не трактуется стандартами разработки ПО, как этап разработки ПО, и имеет различное толкование у различных авторов. Этот термин появился в документе SWЕBOK(Software Engineering Body of Knolidge), подготовленном международным комитетом SWESS. Назначение этого документа – определение необходимого набора знаний и учебных программ для образовательных стандартов, в объединении знаний по разработке ПО ( инженерии ПО).

    Польза от его появления и употребления связана с тем, что с ним связаны некоторые процессы и операции разработки и внутренние характеристики качества ПО (характеристики качества не пользователя, а разработчика), отсутствующие в стандарте ИСО/МЭК 9126.

    Действительно, основы конструирования программного обеспечения включают требования к следующим внутренним характеристикам качества программного проекта:

    • Минимизации сложности.

    • Сокрытию информации между частями ПО по принципу «нет необходимости знать».

    • Ожиданию изменений и готовность к беспроблемному их проведению.

    • Конструированию с возможностью удобной проверки(тестированию)–контроле пригодность.

    • Использованию стандартных приемов в конструировании, которые позволяют снизить сложность и избежать ряд характерных ошибок ПО.

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

    Конструирование ПО - группа процессов, которая выполняется во всех случаях и во всех технологиях разработки.

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

    В зависимости от размера программного проекта на конструирование уходит 30-80% от общей трудоемкости. Главной целью конструирования ПО должна быть минимизация его сложности.

    16. Основной критерий разработки нового программного обеспечения. Наличие объективных и субъективных признаков.

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

    Критерии качества программного обеспечения. В разных источниках могут приводиться различные наборы критериев. Но, несмотря на это, как правило, эти наборы сводимы один к другому. 1. Работоспособность (при выполнении определенных программных и аппаратных требований). 2. Правильность (программа должна решать именно поставленную, а не более широкую, более узкую или измененную задачу). 3. Надежность (программа должна работать при любых значениях исходных данных анализировать их правильность и выдавать результаты или как можно более подробные сообщения об обнаруженных ошибках). 4. Легкость отладки и тестирования (определяется по большей части следующими тремя критериями). 5. Читабельность (текст программы итоговый носитель всей информации о решении, поэтому он должен иметь четкую и ясную организацию, отображающую решение: используйте отступы при вложении управляющих структур языка, «говорящие» имена констант, переменных, типов и процедур, комментарии). 6. Модифицируемость (возможность внесения изменений в программу без глобальной ее переделки. Не совмещайте алгоритмы в один запутанный «клубок змей»: вы потратите свое время сначала создание и отладку более сложного алгоритма вместе нескольких простых, а затем, возможно, на переделку). 7. Документированность (наличие документации по всему процессу разработки, начиная от постановки задачи до отзывов пользователей при сопровождении); документированность обеспечивает возможность передачи программы другим лицам для продолжения ее разработки и доработки. 8. Простота пользования, наличие сервиса (дружелюбный интерфейс, справочный файл, инструкции для установки и использования, телефон/адрес службы сопровождения). 9. Эффективность применительно к компьютеру (использование минимума машинных ресурсов памяти и времени выполнения).

    17. Этап Обучение персонала жизненного цикла разработки программного продукта.

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

    Обучение персонала: разработка программ для обучения трудовым навыкам, необходимым для эффективного выполнения работы.

    18. Основные языки программирования, используемые при создании информационных ресурсов

    PHP. В основе лежит язык разметки HTML. PHP - это язык сценариев общего назначения, исходный код - открытый. Синтаксис достаточно легко поддается освоению, имеет немало общих черт с C, Java и Perl. Главное преимущество PHP заключается в том, что с его помощью разработчики могут оперативно создавать динамически генерируемые веб-страницы. При профессиональном владении языком, его можно использовать и для выполнения других задач.

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

    Ruby. В русском языке распространено как "руби".  Динамический, рефлективный, интерпретируемый высокоуровневый язык программирования для быстрого и удобного объектно-ориентированного программирования. Язык обладает независимой от операционной системы реализацией многопоточности, строгой динамической типизацией, сборщиком мусора и многими другими возможностями. По особенностям синтаксиса он близок к языкам Perl и Eiffel, по объектно-ориентированному подходу — к Smalltalk. Также некоторые черты языка взяты из Python.

    ASP. Разработчиком данного языка является Microsoft. Технология позволяет разрабатывать приложения для WWW. ASP легко и быстро. Платформы для работы ASP: Windows NT и IIS (Internet Information Server). Не совсем корректно называть ASP языком, скорее, это именно технология для подключения программы к Web-страницам. Простой скриптовый язык и возможность использования внешних COM-компонентов - вот и весь секрет успеха ASP.

    JavaScript. Принцип работы JavaScript несколько отличается от других языков программирование. Главное отличие состоит в том, что он подключается напрямую в HTML-файл. Сценарий, написанный на JavaScript, проходит обработку интерпретатором, встроенным в браузер.

    Области использования языка весьма обширны:

    • Создание веб-страниц, которые могут изменяться после загрузки документа

    • Решение локальных задач

    • Проверка грамотности заполнения форм пользователем до их пересылки на сервер

    Многообразие возможностей javascript обуславливает популярность языка. С его помощью можно:

    • Вносить изменения на страницу: работать с тегами, менять стили, писать текст

    • Реагировать на события (например, клик мыши) и выполнять определенную функцию

    • Выводить сообщения, проверять корректность данных, устанавливать и считывать cookie

    • Загружать данные без перезагрузки страницы и т.д.

    Perl. Изначально этот язык был средством для соединения программок, выполняющих различные функции, в единый сценарий, позволяющий решить комплекс задач: обработка текста, администрирование и т.д. Сегодня Perl - это основное средство для создания приложений CGI. С его помощью выполняется администрирование веб-серверов и других систем. Простота и оперативность написания сценариев на данном языке привели к его адаптации на такие платформы, как Windows, Mac и т.д. Perl - открыт и доступен, исходные


    написать администратору сайта