Разделы презентаций


Разработка программного кода и тестирование сложных программ

Содержание

СодержаниеАрхитектура программных систем. Методики и подходы к программированию.Правила структурного программирования.Средства разработки.Тестирование и отладка программ.Финишные этапы разработки программных систем.

Слайды и текст этой презентации

Слайд 1 Разработка программного кода и тестирование сложных программ
Руководитель:
Тестова И.В., доцент кафедры

ПМиВВ
Выполнили:
Поташев Никита и Садыкова Анастасия
Группа 371512, направление подготовки 01.03.02 «Прикладная

математика и информатика»

Архангельск, 2018 г.

Северный (Арктический) федеральный университет
имени М. В. Ломоносова

Разработка программного кода и тестирование сложных программ Руководитель:Тестова И.В., доцент кафедры ПМиВВВыполнили:Поташев Никита и Садыкова АнастасияГруппа

Слайд 2Содержание
Архитектура программных систем.
Методики и подходы к программированию.
Правила структурного программирования.
Средства

разработки.
Тестирование и отладка программ.
Финишные этапы разработки программных систем.


СодержаниеАрхитектура программных систем. Методики и подходы к программированию.Правила структурного программирования.Средства разработки.Тестирование и отладка программ.Финишные этапы разработки программных

Слайд 3Цель и задачи работы
Цель работы – определить этапы процесса разработки

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

необходимо выполнить следующие задачи:
определить архитектуры программных систем;
провести анализ основных методик и подходов к программированию;
выделить этапы развития языков программирования и средств разработки;
провести обзор видов и способов тестирования и отладки программ;
определить финишные этапы разработки программной системы.


Цель и задачи работы	Цель работы – определить этапы процесса разработки программного кода и принцип тестирования сложных программ.

Слайд 4Архитектура программных систем
Архитектура программной системы – это первичная организация системы,

сформированная её компонентами, отношениями между компонентами и внешней средой системы,

а также принципами, определяющими структуру и эволюцию системы.
Модуль – это один объект или функция, где хранятся наборы необходимых объектов, функций и процедур.
Уровни – это совокупности модулей, отвечающие за интерфейс с пользователем (уровень представления данных), содержащие основные алгоритмы обработки информации (уровень прикладной логики), предоставляющие доступ к хранимым данным (уровень данных).
Архитектура программных системАрхитектура программной системы – это первичная организация системы, сформированная её компонентами, отношениями между компонентами и

Слайд 5Архитектура программных систем
Принцип клиент-сервер – принцип, в котором модуль, выступающий

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

роли сервера.
Сервисы – это серверные модули, выполняющие повторяющиеся, типовые задачи и имеющие стандартный, унифицированный интерфейс.
Стандарты межмодульного взаимодействия для концепции «сервис ориентированной архитектуры»:
Протокол Simple Object Access Protocol (SOAP),
Язык eXtensible Markup Language (XML),
Текстовый формат обмена данными JSON
Архитектура программных системПринцип клиент-сервер – принцип, в котором модуль, выступающий в роли клиента, может отправить запрос другому

Слайд 6Методики программирования
Методика восходящего программирования:
Путь от простого к сложному – сначала

разрабатываются относительно простые функции и процедуры, а затем – более

сложные конструкции.

Методика нисходящего программирования:
Разработка одним программистом общей структуры программы исходя из декомпозиции решаемой задачи, а затем – разработка отдельных модулей программы группами программистов.

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

Слайд 7Различные подходы к программированию
Процедурный подход:
Основан на применении правил структурного программирования,

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

алгоритмами-процедурами.

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

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

Слайд 8Правила структурного программирования
Главное правило структурного программирования:
При создании программного кода можно

использовать только три основные алгоритмические конструкции — линейную, ветвление и

цикл.

Дополнительные правила:
требование открыто объявлять используемые в программе переменные и максимально возможное ограничение области видимости переменных, функций и подпрограмм.
включение в код программы явных обработчиков ошибок, которые защищают программы от неожиданных ситуаций.
Правила структурного программированияГлавное правило структурного программирования:При создании программного кода можно использовать только три основные алгоритмические конструкции —

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

Важно:
Использовать при

разработке программного кода единые правила именования переменных и модулей и

единые стандарты в одной команде разработчиков.
Документирование кодаПравило:Всякий создаваемый программный код необходимо снабжать содержательными комментариями.Важно:Использовать при разработке программного кода единые правила именования переменных

Слайд 10Средства разработки. История
Первый этап (1950-е — начало 1960-х гг.).

Появились первые языки программирования высокого уровня (Fortran, Algol).

Была сформулирована фундаментальная для технологии разработки программ концепция модульного программирования.

Второй этап (конец 1960-х — 1970-е гг.). Разработана целая группа языков программирования высокого уровня, таких как Pascal, C, Ada, Basic и др. Начало исследований в области методологий программирования и программной инженерии. Сформулированы законы и правила структурного программирования.
Средства разработки. ИсторияПервый этап (1950-е — начало 1960-х гг.). 		 	  Появились первые языки программирования высокого

Слайд 11Средства разработки. История
Третий этап (1980-е гг.).
Появились персональные компьютеры и интегри-рованные

среды разработки. Разработаны объектно-ориентированные языки программирования.

Четвёртый этап (1990-е гг.).
Повсеместное распространение

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

Пятый этап (2000-е гг.).
Быстрое развитие средств создания Web-приложений.
Средства разработки. ИсторияТретий этап (1980-е гг.).Появились персональные компьютеры и интегри-рованные среды разработки. Разработаны объектно-ориентированные языки программирования.Четвёртый этап

Слайд 12Рейтинг языков программирования
Таблица 1 – Рейтинг языков программирования.

Рейтинг языков программированияТаблица 1 – Рейтинг языков программирования.

Слайд 13Тестирование и отладка программ
Тестирование – это процесс анализа или эксплуатации

программного обеспечения в целях выявления дефектов (ошибок).
Под дефектом или

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

Слайд 14Тестирование и отладка программ
Методы тестирования:
Статическое тестирование – это тестирование, проводимое

без запуска на выполнение программного кода.

Динамическое тестирование – это тестирование,

проводимое посредством запуска на выполнение программного кода, с подачей на вход тестовых наборов входных данных.
Тестирование и отладка программМетоды тестирования:Статическое тестирование – это тестирование, проводимое без запуска на выполнение программного кода.Динамическое тестирование

Слайд 15Тестирование и отладка программ
Методы тестирования:
Метод «белого ящика» – динамическое тестирование,

проводимое с учетом внутренней структуры программы.

Метод «черного ящика» – динамическое

тестирование, при котором программа представляется в виде объекта, внутренняя структура которого неизвестна, а формирование тестовых наборов и анализ полученных результатов строятся только на основании имеющихся спецификаций и наборов требований к программе.
Тестирование и отладка программМетоды тестирования:Метод «белого ящика» – динамическое тестирование, проводимое с учетом внутренней структуры программы.Метод «черного

Слайд 16Тестирование и отладка программ
Методы тестирования:
Модульное тестирование – тестирование отдельных программных

модулей.

Тестирование интерфейсов – тестирование межмодуль-ных связей.

Системное тестирование – тестирование

всей или части системы, собранной из модулей.
Тестирование и отладка программМетоды тестирования:Модульное тестирование – тестирование отдельных программных модулей.Тестирование интерфейсов – тестирование межмодуль-ных связей. Системное

Слайд 17Тестирование и отладка программ
Методы тестирования:
Восходящее тестирование – сначала тестируются отдельные

компоненты системы, стоящие на нижнем уровне иерархии, затем их взаимодействие,

и на следующем этапе – подсистема из этих связанных компонентов.

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

Слайд 18Тестирование и отладка программ
Виды тестирования:
Приемочное.
Функциональное.
Регрессионное.
Тестирование граничных условий.
Тестирование на ошибочных данных.
Нагрузочное.
Стрессовое.
Бета-тестирование.
На

соответствие стандартам, стабильности и т.д.

Тестирование и отладка программВиды тестирования:Приемочное.Функциональное.Регрессионное.Тестирование граничных условий.Тестирование на ошибочных данных.Нагрузочное.Стрессовое.Бета-тестирование.На соответствие стандартам, стабильности и т.д.

Слайд 19Тестирование и отладка программ
Тестирование надежности
Теория надежности – наука, которая занимается

проблемой надежности технических средств и изделий.

Рисунок 1 – Иерархическая классификация

моделей надежности.
Тестирование и отладка программТестирование надежностиТеория надежности – наука, которая занимается проблемой надежности технических средств и изделий.Рисунок 1

Слайд 20Тестирование и отладка программ
Модели надежности
Непрерывные модели:
модель Литтлвуда-Верралла;
модель Джелинского—Моранды;
модель особых

ситуаций;
модель переходных вероятностей.
Дискретные модели:
модель Муса;
модель Шумана.
Статические модели:
модель

Миллса;
простая интуитивная модель;
модель Нельсона.

Тестирование и отладка программМодели надежностиНепрерывные модели:модель Литтлвуда-Верралла;модель Джелинского—Моранды; модель особых ситуаций;модель переходных вероятностей.	   Дискретные модели:модель

Слайд 21Тестирование и отладка программ
Организация процесса тестирования
Тестирование на начальном этапе.
Внутреннее

тестирование – тестирование, в котором тесты основаны на внутренних показателях

качества.
Внешнее тестирование – тестирование, для которого тесты основаны на внешних показателях качества.
Пользовательское тестирование – тестирование, в котором тесты основаны на показателях пользовательского качества.


Тестирование и отладка программОрганизация процесса тестированияТестирование на начальном этапе. Внутреннее тестирование – тестирование, в котором тесты основаны

Слайд 22Тестирование и отладка программ


Рисунок 2 – Схема

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

Тестирование и отладка программ   Рисунок 2 – Схема взаимодействия внутреннего, внешнего и пользовательского тестирования

Слайд 23Финишные этапы разработки программ
Сопровождение – процесс внесения изменений в эксплуатируемую

программную систему.
Документация программы — неотъемлемая составная часть программной системы.
Интеллектуальная

собственность — собирательное понятие, означающее совокупность исключительных прав на результаты творческой деятельности и средства индивидуализации.
Это понятие впервые введено в 1967 г. Конвенцией, учредившей Всемирную организацию интеллектуальной собственности, участником которой является Россия.


Финишные этапы разработки программСопровождение – процесс внесения изменений в эксплуатируемую программную систему.Документация программы — неотъемлемая составная часть

Слайд 24Финишные этапы разработки программ
Авторские права – это интеллектуальные (неиму-щественные) права

на произведение (например, программу или базу данных).
Исключительное право —

это право использования результата интеллектуальной деятельности по своему усмотрению, т.е. право распоряжаться произведением как собственностью.

Рисунок 3 – Схема разделения интеллектуальных прав.

Финишные этапы разработки программАвторские права – это интеллектуальные (неиму-щественные) права на произведение (например, программу или базу данных).

Слайд 25Финишные этапы разработки программ

Рисунок 4 – Регистрация программ для

ЭВМ и баз данных.

Финишные этапы разработки программ Рисунок 4 – Регистрация программ для ЭВМ и баз данных.

Слайд 26Финишные этапы разработки программ
Защита интеллектуальной собственности при использовании программ
Право на

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

право на программу
Неисключительное право







Рисунок 5 – Процедура заключения лицензионного договора.

Финишные этапы разработки программЗащита интеллектуальной собственности при использовании программПраво на использование чужой программы обычно оформляется в виде

Слайд 27Выводы
В результате выполнения работы были сделаны следующие выводы:
представлены основные понятия

архитектуры программных систем;
проанализированы методики и подходы к программированию;
выделены этапы развития

средств разработки;
проведен обзор видов и методов тестирования программных систем;
определены финишные этапы разработки программных систем.


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

Слайд 28Список используемых источников
[1] Технология программирования: учебник / Г.С. Иванова. –

М.: КНОРУС, 2011. – 336 с.
[2] Стандартизация и разработка

программных систем: учебник / В.Н. Гусятников, А.И. Безруков. – М.: Финансы и статистика; ИНФРА-М 2010. – 288 с.
[3] Росстандарт [Электронный ресурс]. – Режим доступа: https://www.gost.ru/portal/gost/ (дата обращения: 10.11.18).

Список используемых источников[1] Технология программирования: учебник / Г.С. Иванова. – М.: КНОРУС, 2011. – 336 с. [2]

Слайд 29Спасибо за внимание!

Спасибо за внимание!

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика