Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!!!!!госы_newest.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
5 Мб
Скачать
☆

Основні дії для експлуатації пз:

1)Підготовка процесу

Оператор повинен розробити план експлуатації і визначити набір стандартів по експлуатації для виконання робіт та задач даного процесу. Оператор повинен встановити процедури для отримання і документування фактів про виниклі проблеми. Оператор повинен встановити процедури для тестування пз в експлуатаційному середовищі .

2)Експлуатаційні вимоги

Для кожного введеного в експлуатацію пз оператор повинен провести експлуатаційне випробування і якщо тестування вдале то перевести продукт в промислову експлуатацію. Оператор повинен забезпечити чтоб пз и бд установлювались в вихідне положення, виконувались і завершались так як це прописано в плані по експлуатації.

3)Експлуатація системи

Система повинна експлуатуватися в установленому для неї експлуатаційному середовищі відносно з документацією.

4)Підтримка користувача

Оператор повинен забезпечити допомогу та консультацію користувачам. Оператор повинен направляти запити користувачів(при необходності) для аналізу і відповіді в процесі супроводження. Якщо поставлена проблема має тимчасове вирішення то оператор повинен представити користувачеві-ініціатору це вирішення проблеми

Внедрение программного продукта

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

Развертывание программного продукта, т. е. инсталлирование (установка) на «железо». Для более сложных, распределенных систем полезны UML-схемы развертывания, которые описывают локализацию программного обеспечения на различные аппаратные узлы, в том числе:

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

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

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

Перенос данных из старой системы - в используемой ранее системе имеются, как правило, данные, которые следует использовать и в дальнейшем. Желательно создание инструмента автоматического переноса данных, который запускают однократно при переносе данных из старой системы к новую. Механизм переноса может быть довольно сложным, особенно если структуры данных старой системы и новой системы существенно различаются. Если совокупность данных - небольшая и / или выработка алгоритма автоматического преобразования чрезмерно сложна, можно данные переносить вручную. В этом случае может понадобиться создать рапорты для извлечения данных из старой системы и формы (средства) для ввода данных вручную во внедряемую систему;

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

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

  • обычные пользователи

  • администраторы

  • поставщики услуг сопровождения

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

Создание состояния готовности при управлении кризисной ситуацией и для поведения в кризисных ситуациях. Возможные кризисы при внедрении программного продукта:

  • отказ программы в рабочей среде

  • обнаружение в программе ошибок

  • потери данных.

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

Разработчик системы должен давать вместе с системой и руководство пользователя. Хорошо, если руководство пишет технический специалист (technical writer), у которого есть опыт в написании таких материалов, но не программист. Руководство соддержит например, учебные материалы, тематический материал , информацию, представленная в алфавитном порядке и т.п.

+6.3. LL-граматика та ії властивості.

Название «LL(k)» несет определенный смысл. Первая литера «L» происходит от слова «left» и означает, что входная цепочка символов читается в направлении слева направо. Вторая литера «L» также происходит от слова «left» и означает, что при работе распознавателя используется левосторонний вывод.

Вместо «k» в названии класса грамматики стоит некоторое число, которое показывает, сколь­ко символов надо рассмотреть, чтобы однозначно выбрать одну из множества аль­тернатив. Так, существуют LL(1)-грамматики, LL(2)-грамматики и другие классы. Очевидно, что LL(0)-грамматика бессмысленна, т.к. этом случае разбор вообще не зависит от входной цепочки.

В совокупности все LL(k)-грамматики для всех k>0 образуют класс LL-грамматик.

То есть, грамматика называется LL(k)-грамматикой, если она обладает свойством LL(k) для некоторого k > 0 ,

Для LL(k)-грамматик известны следующие полезные свойства:

  • всякая LL(k)-грамматика для любого k>0 является однозначной;

  • существует алгоритм, позволяющий проверить, является ли заданная грамматика LL(k)-грамматикой для строго определенного числа k.

Есть, однако, неразрешимые проблемы для произвольных (довільних) КС-грамматик:

  • не существует алгоритма, который бы мог проверить, является ли заданная КС-грамматика LL(k)-грамматикой для некоторого произвольного числа k;

  • не существует алгоритма, который бы мог преобразовать произвольную КС-грамматику к виду LL(k)-грамматики для некоторого k (или доказать, что преобразование невозможно).

+6.4. Описати послідовність дій для структурування додатку Windows Forms у TFS

Порядок операций

  • Шаг 1 — создание локальных папок веб-проекта.

  • Шаг 2 — создание пустого решения.

  • Шаг 3 — добавление веб-сайта в решение.

  • Шаг 4 — добавление библиотеки классов (при необходимости).

  • Шаг 5 — проверка структуры решения.

  • Шаг 6 — проверка локальной структуры каталогов.

  • Шаг 7 — добавление решения в систему управления исходным кодом.

Шаг 1 — создание локальных папок веб-проекта.

На этом этапе вы создадите на своем компьютере локальную структуру каталогов для веб-проекта. Чтобы обеспечить единый подход к командной разработке и эффективную организацию проектов на своем компьютере, сгруппируйте разрабатываемый исходный код всех командных проектов, над которыми вы работаете, в одной корневой папке, например, C:\DevProjects. Если такой папки еще нет на компьютере, создайте ее.

Шаг 2 — создание пустого решения

Начните создание веб-приложения ASP.NET с явного создания файла реше-ния Visual Studio (.sln). Затем добавьте в него свой веб-сайт и все необходи-мые дополнительные проекты, например, библиотеки классов. Вот как создается решение в папке верхнего уровня C:\DevProjects.

1. В меню File выберите команду New и щелкните Project.

2. Разверните Other Project Types и выберите Visual Studio Solutions.

3. Выберите Blank Solution.

4. Назовите свое решение MyWebAppSln.

5. Присвойте свойству Locationзначение C:\DevProjectsи щелкните OK.

Будет создана папка C:\DevProjects\MyWebAppSln. Visual Studio добавляет в эту папку файл решения (.sln) и файл пользовательских параметров решения (.suo). Обратите внимание, что на шаге 7 в систему управления исходным кодом добавляется только файл .sln.

Шаг 3 — добавление веб-сайта в решение

Теперь добавьте в свое решение веб-сайт ASP.NET. Эта процедура немного варьируется в зависимости от типа веб-сайта, т.е., от того, создается веб-сайт в локальной файловой системе с использованием функций веб-разработки Visual Studio или на веб-сервере с использованием Internet Information Services (IIS).

Сайт в файловой системе

Чтобы добавить в решение веб-проект, располагающийся в локальной файловой системе, выполните следующие действия:

1. В Solution Explorerщелкните правой кнопкой решениеMyWebAppSln, выберите команду Addи щелкните New Web Site.

2. В диалоговом окне Add New Web Siteне меняйте значения Location(по умолчанию задан вариант File System) и Language(по умолчанию Visual C#).

3. Присвойте параметру Locationзначение C:\DevProjects\MyWebAppSln\Source\MyWebAppWeb.

4. Щелкните OK, чтобы закрыть диалоговое окно Add New Web Site.

Обратите внимание, что мы использовали суффикс «Web» в этом приме-ре для четкого обозначения корневой папки веб-сайта.

Шаг 4 — добавление библиотеки классов (при необходимости)

Если в веб-приложении используются дополнительные библиотеки клас-сов, добавьте их следующим образом:

1. В Solution Explorerщелкните правой кнопкой решение MyWebAppSln, выберите Addи щелкните New Project.

2. Выберите тип проекта Visual C# и шаблон Class Library.

3. Введите имя ClassLibrary, в качестве Locationзадайте C:\DevProjects\

MyWebAppSln\Source и щелкните OK.

Шаг 5 — проверка структуры решения.

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

Шаг 6 — проверка локальной структуры каталогов.

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

Шаг 7 — добавление решения в систему управления исходным кодом

На данном этапе вы добавите решение в систему управления исходным кодом TFS.

1. Щелкните правой кнопкой мыши свое решение и выберите Add Solution to Source Control.

2. В диалоговом окне Add Solution MyWebAppSln to Source Control выберите свой командный проект.

Щелкните Make New Folderи назовите новую папку Main.

4. Выделите вновь созданную папку Main и щелкните Make New Folder. Назовите новую папку Source.

5. Выберите вновь созданную папку Source и щелкните OK.

6. Проверьте структуру папок в системе управления исходным кодом, дваж-ды щелкнув Source Controlв Team Explorer.

7. Теперь вы можете просматривать изменения, ожидающие возвращения на сервер, и возвращать файлы исходного кода. Для этого в меню View выберите Other Windowsи щелкните Pending Changes. Выберите свой проект и исходные файлы, которые необходимо возвратить, введите ком-ментарий к возвращаемым изменениям и щелкните Check In.

+*6.5.Розгляньте наступні рядки 64-бітного програмного коду, знайдіть та поясніть помилку, перепишіть код для виправлення помилки:

size_t Count = BigValue;

for (unsigned Index = 0; Index != Count; Index++)

{ ... }

Поскольку значения переменной  Index  лежат в диапазоне [0..UINT_MAX], то условие «Index < Count» всегда выполняется, что и приводит к бесконечному циклу.

size_t Count = BigValue; for (size_t Index = 0; Index != Count; Index++) { ... }

ВАРІАНТ № 7

  1. Поняття мови. Формальне визначення мови.

  1. Безвідходні та ресурсозберігаючі технології.

  2. Система підготовки звітівTFS, типи звітів шаблону процесу MSF Agile.

  3. Підготовте приклад в якому розкривається місце впровадження програмного забезпечення в управлінні конфігураціями програмного забезпечення.

  4. Розгляньте наступні рядки паралельного програмного коду, знайдіть та поясніть помилку, перепишіть код для виправлення помилки:

int a = 0;

#pragma omp parallel for num_threads(4)

for (int i = 0; i < 100000; i++) {

a++;

}

+7.1.Поняття мови. Формальне визначення мови.

Формальный язык — множество конечных слов (строк, цепочек) над конечным алфавитом.

Формальный язык может быть определён по-разному, например:

  • Простым перечислением слов, входящих в данный язык. Этот способ, в основном, применим для определения конечных языков и языков простой структуры.

  • Словами, порождёнными некоторой формальной грамматикой.

  • Словами, порождёнными регулярным выражением.

  • Словами, распознаваемыми некоторым конечным автоматом.

  • Словами, порождёнными БНФ-конструкцией.

Например, если алфавит задан как {a, b}, а язык L включает в себя все слова над ним, то слово ababba принадлежит L.

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

  • Конкатенация (сцепление) 

  • Пересечение 

  • Объединение 

  • Дополнение языка

  • Правое отношение

  • Замыкание Клини 

  • Обращение 

  • Смешение 

Формальная грамматика - система правил, описывающая множество конечных последовательностей символов формального алфавита.

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

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

Формальная грамматика задается упорядоченной четверкой {T, N, S, Р}, где Т и N - непересекающиеся конечные множества, образующие алфавит или словарь порождаемого формального языка; Т называется множеством (словарем) терминальных символов; N - множеством (словарем) нетерминальных (вспомогательных)символов. S - начальный (выделенный) вспомогательный символ из множества N. Р - набор правил вывода конструкций языка (подстановок) из выделенного вспомогательного символа, имеющие вид g→ h, где g и h - цепочки, состоящие как из терминальных, так и нетерминальных символов.

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

+7.2.Безвідходні та ресурсозберігаючі технології.

Ресурсозберігаюче виробництво – це виробництво і реалізація продуктів з мінімальною витратою речовин і енергії на всіх етапах виробничого циклу і з найменшим впливом на людину та природні системи. Таке виробництво — запорука сталого розвитку. Основою ресурсозберігаючого виробництва є ресурсозберігаючі технології.

Розглянемо існуючі ресурси інженерії програмного забезпечення (принципи, процеси, конструкції), які відіграють важливу роль і можуть використовуватися як основа для побудови ресурсозберігаючих і безвідходних технологій розробки і супроводження програмного забезпечення (табл. 1).

Методи, принципи, конструкції екологічного програмного забезпечення

№ з/п

Методи/

ресурси

Програмне (процедурне) програмування

Об’єктно-орієнтоване програмування

Модульне програму-вання

1

Конструкції

Підпрограма (закрита, відкрита), шаблон

Клас (С, С++)

Модуль (Модула 2,3),

пакет (Ada)

2

Принципи реалізації конструкцій

Параметризація

Поліморфізм, наслідування, класифікація

Роздільна компіляція

3

Принципи використання конструкцій

Процедурна абстракція, абстракція виконання, шаблонування

Класифікація

Композиція

4

Фундаменталь-на абстракція

Абстрактний тип даних

Першою такою конструкцією була підпрограма, яку розглядали як засіб скорочення тексту програми. Гнучкість конструкції забезпечувала параметризація. Незабаром погляд на підпрограму почав змінюватися, і її стали розглядати, як засіб структурної організації програм.

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

Тому, підпрограми застосовувалися як процедурні абстракції, абстракції виконання (закриті підпрограми) або шаблони (відкриті підпрограми). В якості застосування методу підпрограми використовувалося підпрограмне (процедурне) програмування. Пізніше, слідуючи прагненню поліпшити конструкцію для реалізації абстрактних типів даних були створені модуль і клас.

У 1984 році при розгортанні досліджень, пов'язаних з повторним використанням програмного забезпечення зверталася увага на те, що з часом кількість принципово нових застосувань обчислювальних машин зменшується. Це свідчило про те, що супроводжуване програмне забезпечення, яке згодом стали називати успадкованим (або наслідуваним), містило досвід, і його слід було повторно використовувати при створенні нового програмного забезпечення. Завдяки цьому життєвий цикл програмного забезпечення був розширений додатковими процесами (рис. 1).

Рис. 1. Розширення життєвого циклу ПЗ

З одного боку, він був доповнений доменним аналізом, мета якого — шляхом аналізу досвіду, накопиченого в домені будувати повторно використовувані для вирішення застосування у розробці нового програмного забезпечення. З іншого боку в життєвий цикл ПЗ в контексті фази ліквідації були введені процеси, які пов'язані з утилізацією програмного забезпечення (рис. 2)

Рис. 2. Склад фази ліквідації

Реалізація процесів утилізації призвела до появи зворотного (реверсивної) інженерії програмного забезпечення, з'єднання якої з прямою інженерією дало реінженерію і дозволило в екологічному аспекті розглядати розробку і супровід програмного забезпечення як його кругообіг.

Рис. 3. Кругообіг ПЗ

Таким чином, в інженерії програмного забезпечення є принципи, процеси і конструкції, які можуть використовуватися при побудові безвідходних, ресурсозберігаючих технологій і продуктів. Слід розробляти показники ресурсозбереження, встановлюючи норми виконання завдань ресурсозбереження.

+7.3.Система підготовки звітів TFS, типи звітів шаблону процесу MSF Agile.