- •Основні дії для експлуатації пз:
- •Внедрение программного продукта
- •1)Процесс заказа
- •2)Процесс поставки
- •3)Процесс разработки
- •3.1.Разработка дизайна
- •3.2.Написание контента, текста для сайта
- •4)Процесс эксплуатации
- •5)Процесс сопровождения
- •3.2Кодирование процессов, разработка сайта
- •3.3.Тестирование
- •Основні дії для експлуатації пз:
- •Внедрение программного продукта
- •1) Компоненты системы подготовки отчетов
- •2)Типы отчетов
- •1)Бэкуса-Наура формы (бнф)
- •2)Расширенные Бэкуса-Наура формы (рбнф)
- •1)Клиентский уровень включает следующие компоненты:
- •3)Уровень данных:
- •Шляхом побудови дерева виводу.
- •Шляхом побудови дерева виводу.
- •Шляхом побудови дерева виводу.
- •1) Процесс заказа
- •2) Процесс поставки
- •3 Процесс разработки
- •4 Процесс эксплуатации
- •5 Процесс сопровождения
- •Шляхом побудови дерева виводу.
- •Шляхом побудови дерева виводу.
- •Шляхом побудови дерева виводу.
- •1)Процесс заказа
- •2)Процесс поставки
- •3)Процесс разработки
- •3.1.Разработка дизайна
- •3.2.Написание контента, текста для сайта
- •3.2Кодирование процессов, разработка сайта
- •3.3.Тестирование
- •4)Процесс эксплуатации
- •5)Процесс сопровождения
- •Шляхом побудови дерева виводу.
- •1. I* моделі (sd & sr)
- •2. Нормативні I* моделі
- •2) Нормативні і*-моделі
- •Шляхом побудови дерева виводу.
- •Сценарії створення збірок
- •Основні дії для експлуатації пз:
- •Внедрение программного продукта
- •Шляхом побудови дерева виводу.
- •21.4. Підготовте приклад в якому визначаються основні ролі у впровадженні програмного забезпечення та дайте характеристику основних функцій.
- •Шляхом побудови дерева виводу.
- •22.4. Підрахуйте кількість спожитої електроенергії та шкідливих викидів на конкретному прикладі, створивши віртуальний персональний комп’ютер.
- •Основні дії для експлуатації пз:
- •Шляхом побудови дерева виводу.
- •Шляхом побудови дерева виводу.
- •1. I* моделі (sd & sr)
- •2. Нормативні I* моделі
- •2) Нормативні і*-моделі
- •28.4.Побудувати графи арифметичних виразів. Перетворити арифметичні вирази в зворотний польський запис
Основні дії для експлуатації пз:
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
Поняття мови. Формальне визначення мови.
Безвідходні та ресурсозберігаючі технології.
Система підготовки звітівTFS, типи звітів шаблону процесу MSF Agile.
Підготовте приклад в якому розкривається місце впровадження програмного забезпечення в управлінні конфігураціями програмного забезпечення.
Розгляньте наступні рядки паралельного програмного коду, знайдіть та поясніть помилку, перепишіть код для виправлення помилки:
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.
