Программист и тестолог: как создаются сложные программы презентация

Содержание

Слайд 2

Цель, структура и особенности курса Цель – ознакомиться с профессиями,

Цель, структура и особенности курса

Цель – ознакомиться с профессиями, необходимыми для

разработки и тестирования сложных информационных систем.
Особенность: практическая направленность – ознакомиться с реальной работой программистов и тестологов.
Слайд 3

Информационные технологии и системы ИТ – приемы, способы и методы

Информационные технологии и системы

ИТ – приемы, способы и методы применения средств

вычислительной техники при выполнении функций сбора, хранения, обработки, передачи и использования данных (ГОСТ 34.003-90)
Реализуются информационные технологии через информационные системы
Слайд 4

Информационные технологии и системы Информационная система (в широком смысле) –

Информационные технологии и системы

Информационная система (в широком смысле) – совокупность технического, программного и

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

Информационные технологии и системы Информационная система (в узком смысле) –

Информационные технологии и системы

Информационная система (в узком смысле) – программно-аппаратная система,

предназначенная для автоматизации деятельности конечных пользователей
Слайд 6

Слайд 7

IT-профессии руководитель департамента информационных систем, руководитель группы разработчиков, руководитель проекта,

IT-профессии

руководитель департамента информационных систем,
руководитель группы разработчиков,
руководитель проекта,
бизнес-аналитик,
постановщик

задач,
архитектор приложения/системный архитектор,
прикладной математик,
проектировщик приложения/баз данных,
программный аналитик,
Слайд 8

IT-профессии программист, системный программист, WEB-дизайнер/программист, (ведущий) специалист по внедрению и

IT-профессии

программист,
системный программист,
WEB-дизайнер/программист,
(ведущий) специалист по внедрению и тестированию программного

обеспечения,
тестолог,
системный интегратор,
администратор сайта/сервера/сети/базы данных,
инженер по техподдержке,
инженер по поддержке пользователей,
специалист по защите информации
Слайд 9

Востребованность IT специалистов (самые популярные технические специалисты ) разработчики (Java-разработчики,

Востребованность IT специалистов (самые популярные технические специалисты )

разработчики (Java-разработчики, затем идут Oracle, C++ и

.NET разработчики).
разработчики мобильных приложений (Android, Apple iOS developers).
IT-sales.
IT Help-desk
консультанты по внедрению и сопровождению ERP-систем.
руководителей (CIO, ИТ-директора, начальники ИТ-отделов и тд.)
ИТ-аналитики и тестировщики (увеличение спроса в ежегодно примерно на 10-12%).
Слайд 10

Система подготовки IT-специалистов в вузах России

Система подготовки IT-специалистов в вузах России

Слайд 11

Тольяттинский государственный университет

Тольяттинский государственный университет

Слайд 12

ТГУ – это: https://www.tltsu.ru 10 институтов, 50 кафедр 14000+ студентов

ТГУ – это:

https://www.tltsu.ru
10 институтов, 50 кафедр
14000+ студентов
80000+ выпускников
российский лидер качества (2008,

2011)
обладатель премии Правительства РФ в области качества (2009)
победитель конкурса «100 лучших вузов России» (2004, 2011)
эффективный вуз (даже по столичным критериям)
Слайд 13

Высшее IT-образование в ТГУ

Высшее IT-образование в ТГУ

Слайд 14

Система подготовки по направлению кафедры «Прикладная математика и информатика» опыт

Система подготовки по направлению кафедры «Прикладная математика и информатика»

опыт обучения более 15

лет;
уникальный набор дисциплин;
связь с крупными производителями ПО;
реальные проекты на всем периоде обучения;
100% выпускников трудоустроены.
Слайд 15

Сферы бизнеса

Сферы бизнеса

Слайд 16

Создание своего бизнеса возможность полностью управлять своей деятельностью и быть

Создание своего бизнеса

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

много свободного времени;
возможность зарабатывать действительно много денег.
Слайд 17

Сферы бизнеса

Сферы бизнеса

Слайд 18

Сферы бизнеса кофейня; клуб; магазин по продаже мобильных телефонов или других мелких товаров из Китая; автомойка.

Сферы бизнеса

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

Китая;
автомойка.
Слайд 19

Сферы бизнеса

Сферы бизнеса

Слайд 20

Недостатки Нужен большой стартовый капитал для аренды помещения, покупки оборудования,

Недостатки

Нужен большой стартовый капитал для аренды помещения, покупки оборудования, закупки партии

товара.
Нужно арендовать складское помещение.
Некоторые товары имеют срок годности.
Производство различных гаджетов и устройств требует денег.
Слайд 21

IT-компании из гаража

IT-компании из гаража

Слайд 22

Сферы бизнеса

Сферы бизнеса

Слайд 23

Что нужно? Идея Компьютер или ноутбук с доступом в интернет

Что нужно?

Идея
Компьютер или ноутбук с доступом в интернет
Стул и стол, чтобы

поставить компьютер
Комната, где всё это будет стоять
Слайд 24

Сферы бизнеса

Сферы бизнеса

Слайд 25

Сферы бизнеса

Сферы бизнеса

Слайд 26

Сферы бизнеса

Сферы бизнеса

Слайд 27

Сферы бизнеса

Сферы бизнеса

Слайд 28

Сферы бизнеса

Сферы бизнеса

Слайд 29

Сферы бизнеса

Сферы бизнеса

Слайд 30

Сферы бизнеса

Сферы бизнеса

Слайд 31

Сферы бизнеса

Сферы бизнеса

Слайд 32

Сферы бизнеса

Сферы бизнеса

Слайд 33

Сферы бизнеса

Сферы бизнеса

Слайд 34

Сферы бизнеса

Сферы бизнеса

Слайд 35

Сферы бизнеса

Сферы бизнеса

Слайд 36

Жизненный цикл ПО Жизненный цикл программного обеспечения - период времени,

Жизненный цикл ПО

Жизненный цикл программного обеспечения - период времени, который начинается

с момента принятия решения о необходимости создания ПО и заканчивается в момент полного изъятия из эксплуатации
Слайд 37

Классические стадии жизненного цикла ПО формирование требований к системе; проектирование

Классические стадии жизненного цикла ПО

формирование требований к системе;
проектирование (моделирование);
реализация (кодирование);
тестирование;
ввод в

действие;
эксплуатация и сопровождение.
Слайд 38

Виды программирования web-программирование разработка desktop-приложений разработка мобильных приложений системное программирование разработка игр

Виды программирования

web-программирование
разработка desktop-приложений
разработка мобильных приложений
системное программирование
разработка игр

Слайд 39

Сферы бизнеса

Сферы бизнеса

Слайд 40

Сферы бизнеса

Сферы бизнеса

Слайд 41

Алгоритм Свойства алгоритма дискретность: состоит из отдельных шагов (команд) понятность:

Алгоритм

Свойства алгоритма
дискретность: состоит из отдельных шагов (команд)
понятность: должен включать только команды,

известные исполнителю (входящие в СКИ)
определённость: при одинаковых исходных данных всегда выдает один и тот же результат
конечность: заканчивается за конечное число шагов
массовость: может применяться многократно при различных исходных данных
корректность: даёт верное решение при любых допустимых исходных данных

Алгоритм – это чётко определённый план действий для исполнителя.

Слайд 42

Основные типы алгоритмов линейный; ветвящийся (простые и сложные ветвления); циклический

Основные типы алгоритмов

линейный;
ветвящийся (простые и сложные ветвления);
циклический (циклы с верхней и

нижней проверкой условия продолжения/завершения цикла).
Слайд 43

Способы записи алгоритмов словесно-формульный; псевдокод; структурный или блок-схемный; с помощью

Способы записи алгоритмов

словесно-формульный;
псевдокод;
структурный или блок-схемный;
с помощью граф-схем;
карты Констайна;
с помощью сетей Петри

и т.д.
Слайд 44

Словесно-формульная запись Найти значение следующего выражения у=2а-(х+6): Ввести значения а

Словесно-формульная запись

Найти значение следующего выражения у=2а-(х+6):
Ввести значения а и х.
Сложить х

и 6.
Умножить а на 2.
Вычесть из 2а сумму х+6
Присвоить y значение шага 4.
Вывести у как результат вычисления выражения
Слайд 45

Блок-схемы

Блок-схемы

Слайд 46

Унифицированный язык моделирования UML Диаграммы деятельности Расчет выражения a/b + c*d

Унифицированный язык моделирования UML Диаграммы деятельности Расчет выражения a/b + c*d

Слайд 47

Языки программирования Машинно-ориентированные (низкого уровня) - каждая команда соответствует одной

Языки программирования

Машинно-ориентированные (низкого уровня) - каждая команда соответствует одной команде процессора

(ассемблер)
Языки высокого уровня – приближены к естественному (английскому) языку, легче воспринимаются человеком, не зависят от конкретного компьютера
для обучения: Бейсик, ЛОГО, Паскаль
профессиональные: Си, Фортран, Паскаль
для задач искусственного интеллекта: Пролог, ЛИСП
для Интернета: JavaScript, Java, Perl, PHP, ASP
Слайд 48

Структура программы (структурное программирование) program ; begin end.

Структура программы (структурное программирование)

program <ИмяПрограммы>;
<РазделОписаний>
begin
<ТелоПрограммы>
end.

Слайд 49

Структура программы (объектно-ориентированное программирование)

Структура программы (объектно-ориентированное программирование)

Слайд 50

Понятие класса и объекта Класс (это тип) представляет собой структуру,

Понятие класса и объекта

Класс (это тип) представляет собой структуру, состоящую из

атрибутов и методов
Объект – экземпляр класса

ИмяКласса
Атрибуты
Методы

Объект: ИмяКласса
Атрибуты
Методы

Слайд 51

Пример класса TMyClass x, y: integer getSum: integer Код

Пример класса

TMyClass
x, y: integer
getSum: integer

Код

Слайд 52

Программирование без ошибок (если не знать принципы тестирования) выключи компьютер,

Программирование без ошибок (если не знать принципы тестирования)

выключи компьютер, или хотя бы

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

Программирование без ошибок (если не знать принципы тестирования) написал логически

Программирование без ошибок (если не знать принципы тестирования)

написал логически завершенный участок программы

– сделай прогон, если обнаружились ошибки – исправь их и только потом кодируй дальше;
используй пошаговую трассировку с просмотром значений;
думай как можно «завалить» твою программу (для реальных проектов!) – защита «от дурака».
Слайд 54

Азбука программирования «в двух словах» Есть волшебная клавиша F1! «Не

Азбука программирования «в двух словах»

Есть волшебная клавиша F1!
«Не Боги горшки

обжигают» - не бойся, пиши код. Чем больше напишешь исправного кода, тем выше твое мастерство.
Запомни основные типы данных.
Люди теряются в трех соснах, а плохие программисты в пяти (всего-то!) операторах.
Слайд 55

«Пять сосен» программистов Два оператора ветвлений: if – простое ветвление

«Пять сосен» программистов

Два оператора ветвлений:
if – простое ветвление (на всех языках

программирования);
Case – сложное ветвление (Switch на С, Java и Select Case на Basic).
Слайд 56

«Пять сосен» программистов (продолжение) 2. Три оператора для циклов: for

«Пять сосен» программистов (продолжение)

2. Три оператора для циклов:
for – оператор цикла «счетчик»,

на всех языках программирования;
while … do – оператор с верхней проверкой условия;
repeat … until – оператор с нижней проверкой условия.
Слайд 57

Тестирование Тестирование — процесс выполнения программы с целью обнаружения ошибок Шаги процесса задаются тестами

Тестирование

Тестирование — процесс выполнения программы с целью обнаружения ошибок
Шаги процесса

задаются тестами
Слайд 58

Можно ли обнаружить все ошибки? Или: как долго проводить тестирование?

Можно ли обнаружить все ошибки? Или: как долго проводить тестирование?

все ошибки

в сложных программах обнаружить за приемлемое время нельзя;
процесс тестирования прекращается, когда обнаружена «основная часть» ошибок (очень упрощенный критерий ☺).
Слайд 59

Зависимость количества обнаруженных ошибок во времени

Зависимость количества обнаруженных ошибок во времени

Слайд 60

Два классических принципа тестирования программы функциональное тестирование (тестирование «черного ящика»); структурное тестирование (тестирование «белого ящика»).

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

функциональное тестирование (тестирование «черного ящика»);
структурное тестирование

(тестирование «белого ящика»).
Слайд 61

Тестирование «черного ящика» Известны: функции программы. Исследуется: работа каждой функции

Тестирование «черного ящика»

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

области определения.

Структура программы «закрыта» от тестолога. Если количество переборов входных данных очень велико, то исчерпывающее тестирование невозможно.

Слайд 62

Тестирование «белого ящика» Известна: внутренняя структура программы. Исследуются: внутренние элементы

Тестирование «белого ящика»

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

между ними

X

Y

Слайд 63

Слайд 64

Слайд 65

Слайд 66

Слайд 67

Слайд 68

Слайд 69

Слайд 70

Слайд 71

Слайд 72

Слайд 73

Слайд 74

Слайд 75

Слайд 76

Слайд 77

Слайд 78

Слайд 79

Слайд 80

Слайд 81

Слайд 82

Слайд 83

Слайд 84

Слайд 85

Слайд 86

Слайд 87

Слайд 88

Слайд 89

Слайд 90

Слайд 91

Слайд 92

Слайд 93

Слайд 94

Слайд 95

Слайд 96

Слайд 97

Слайд 98

Слайд 99

Слайд 100

Слайд 101

Слайд 102

Слайд 103

Слайд 104

Слайд 105

Слайд 106

Слайд 107

Слайд 108

Слайд 109

Слайд 110

Слайд 111

Слайд 112

Слайд 113

Слайд 114

Слайд 115

Слайд 116

Слайд 117

Слайд 118

Слайд 119

Слайд 120

Слайд 121

Слайд 122

Слайд 123

Слайд 124

Слайд 125

Слайд 126

Слайд 127

Слайд 128

Слайд 129

Слайд 130

Слайд 131

Слайд 132

Слайд 133

Слайд 134

Слайд 135

Слайд 136

Слайд 137

Слайд 138

Слайд 139

Слайд 140

Слайд 141

Слайд 142

Слайд 143

Слайд 144

Слайд 145

Слайд 146

Слайд 147

Слайд 148

Слайд 149

Слайд 150

Слайд 151

Слайд 152

Слайд 153

Слайд 154

Слайд 155

Слайд 156

Слайд 157

Слайд 158

Слайд 159

Слайд 160

Слайд 161

Слайд 162

Слайд 163

Слайд 164

Слайд 165

Слайд 166

Слайд 167

Слайд 168

Слайд 169

Слайд 170

Слайд 171

Слайд 172

Слайд 173

Слайд 174

Слайд 175

Слайд 176

Слайд 177

Слайд 178

Слайд 179

Слайд 180

Слайд 181

Слайд 182

Слайд 183

Слайд 184

Слайд 185

Слайд 186

Слайд 187

Слайд 188

Слайд 189

Слайд 190

Слайд 191

Слайд 192

Слайд 193

Слайд 194

Слайд 195

Слайд 196

Слайд 197

Слайд 198

Слайд 199

Слайд 200

Слайд 201

Слайд 202

Слайд 203

Слайд 204

Слайд 205

Слайд 206

Слайд 207

Слайд 208

Слайд 209

Слайд 210

Слайд 211

Слайд 212

Слайд 213

Слайд 214

Слайд 215

Слайд 216

Слайд 217

Слайд 218

Слайд 219

Имя файла: Программист-и-тестолог:-как-создаются-сложные-программы.pptx
Количество просмотров: 23
Количество скачиваний: 0