План на курса
Софтуерно инженерство - 5 дни
Ден 1: Управление на проекти
- Сравнение между управление на проекти и управление на линейни дейности, поддръжка и обслужване
- Дефиниране на проект и форми за проекти
- Управление – общи правила и управление на проекти
- Стилове на управление
- Какво е специално за ИТ проекти?
- Основен процес на проекти
- Итеративен, инкрементален, водопаден, агилен и лийнен процес на проекти
- Фази на проекти
- Роли в проекти
- Документация на проекти и други артефакти
- Мек фактори и „людска стойност“
- PRINCE 2, PMBOK, PMI, IPMA и други стандарти за проекти
Ден 2: Основни принципи на бизнес анализ и инженерия на изисквания
- Дефиниране на бизнес цели
- Бизнес анализ, управление на бизнес процеси и подобряване на бизнес процеси
- Границата между бизнес и системен анализ
- Стейкхолдери на системата, потребители на системата, контекст на системата и граници на системата
- Защо са необходими изискванията?
- Какво е инженерия на изисквания?
- Границата между инженерия на изисквания и архитектурно проектиране
- Къде често е скрита инженерията на изисквания?
- Инженерия на изисквания в итеративен, лийн и агилен разработка и в непрекъснато интегриране – FDD, DDD, BDD, TDD
- Основен процес на инженерия на изисквания, роли и артефакти
- Стандарти и сертификати: BABOK, ISO/IEEE 29148, IREB, BCS, IIBA
Ден 3: Основни принципи на архитектура и разработка
- Езици за програмиране – структурни и обекто-ориентирани парадигми
- Обекто-ориентиран разработка – колко е история, колко е бъдеще
- Модуларност, портируемост, поддръжка и мащабируемост на архитектури
- Дефиниране и типове на софтуерни архитектури
- Архитектура на предприятия и системна архитектура
- Стилове на програмиране
- Програмиращи среди
- Грешки при програмиране и как да ги предотвратим
- Моделиране на архитектури и компоненти
- SOA, Web Services и микросъобщителни услуги
- Автоматично изграждане и непрекъснато интегриране
- Колко архитектурно проектиране има в един проект?
- Екстремно програмиране, TDD и рефакторинг
Ден 4: Основни принципи на осигуряване на качество и тестване
- Качество на продукта: какво е? ISO 25010, FURPS и т.н.
- Качество на продукта, потребителски опит, Кано Модел, управление на клиентския опит и интегрално качество
- Дизайн, ориентиран към потребителя, персонажи и други начини за индивидуализиране на качеството
- Достатъчно качество
- Осигуряване на качество и контрол на качеството
- Стратегии за управление на риск в контрол на качеството
- Компоненти на осигуряване на качеството: изисквания, контрол на процеса, управление на конфигурацията и промените, верификация, валидация, тестване, статично тестване и статичен анализ
- Осигуряване на качество, ориентирано към риск
- Тестване, ориентирано към риск
- Разработка, ориентирана към риск
- Кривата на Бом в осигуряване на качество и в тестване
- Четирите училища по тестване – кое подхожда на нуждите ви?
Ден 5: Типове процеси, зрелост и подобряване на процеса
- Еволюцията на ИТ процеса: от Алън Тюринг през Биг Блу до лийн стартап
- Процес и организация, ориентирана към процеса
- Историята на процесите в занаятчийството и индустрията
- Моделиране на процеса: UML, BPMN и повече
- Управление на процеса, оптимизация на процеса, реенжиниринг на процеса и системи за управление на процеса
- Иновативни процесни подходи: Деминг, Джуран, TPS, Кайзен
- Да ли (процесно) качеството е безплатно? (Филип Кросби)
- Нуждата и историята на подобряване на зрелостта: CMMI, SPICE и други скали за зрелост
- Специални типове зрелост: TMM, TPI (за тестване), Зрелост на инженерия на изисквания (Горшек)
- Процесна зрелост срещу зрелост на продукта: няма ли корелация? Няма ли причинно-следствена връзка?
- Процесна зрелост срещу бизнес успех: няма ли корелация? Няма ли причинно-следствена връзка?
- Забравен урок: Автоматизирано предотвратяване на дефекти и следващият скок в продуктивността
- Опити: TQM, SixSigma, агилни ретрспективи, процесни рамки
Инженерия на изисквания - 2 дни
Ден 1: Елициране, преговаряне, консолидация и управление на изисквания
- Намиране на изисквания: какво, кога и от кого
- Класификация на стейкхолдери
- Забравени стейкхолдери
- Дефиниране на системен контекст – дефиниране на източници на изисквания
- Методи и техники за елициране
- Прототипиране, персонажи и елициране на изисквания чрез тестване (разследващо и друго)
- Маркетинг и елициране на изисквания – MDRA („Market-Driven Requirements Engineering“)
- Приоритизиране на изисквания: MoSCoW, Карл Вигерс и други техники (включително агилни MMF)
- Уточняване на изисквания – агилен „спецификация чрез пример“
- Преговаряне на изисквания: типове конфликти, методи за разрешаване на конфликти
- Решаване на вътрешна несъвместимост между някои типове изисквания (например сигурност срещу удобство за ползване)
- Следливост на изискванията – защо и как
- Промени в статуса на изискванията
- CCM на изискванията, версиониране и бази
- Продуктов и проектен поглед върху изискванията
- Управление на продукта и управление на изискванията в проекти
Ден 2: Анализ, моделиране, спецификация, верификация и валидация на изисквания
- Анализът е мисленето и преразмислянето, което правите между елицирането и спецификацията
- Процесът на изискванията е винаги итеративен, дори в последователни проекти
- Описване на изискванията на естествен език: рискове и ползи
- Моделиране на изискванията: ползи и разходи
- Правилата за използване на естествен език за спецификация на изисквания
- Дефиниране и управление на глосарий на изисквания
- UML, BPMN и други формални и полуформални нотации за моделиране на изисквания
- Използване на шаблони за документи и изречения за описване на изисквания
- Верификация на изискванията – цели, ниво и методи
- Валидация – с прототипиране, прегледи и инспекции, и тестване
- Валидация на изискванията и валидация на системата
Тестване - 2 дни
Ден 1: Дизайн на тестове, изпълнение на тестове и разследващо тестване
- Дизайн на тестове: след тестване, ориентирано към риск, избор на оптималния начин за използване на наличния време и ресурси
- Дизайн на тестове „от безкрайността до тук“ – изчерпателно тестване не е възможно
- Тест кейсове и тест сценарии
- Дизайн на тестове на различни тестови нива (от ниво на единица до ниво на системно тестване)
- Дизайн на тестове за статично и за динамично тестване
- Дизайн на тестове, ориентиран към бизнес и техника („черен кутийка“ и „бяла кутийка“)
- Опит за разбиване на системата („негативно тестване“) и поддръжка на разработчиците (тестване за приемане)
- Дизайн на тестове за постигане на покриване на тестовете – различни мерки за покриване на тестовете
- Дизайн на тестове, базиран на опит
- Дизайн на тест кейсове от изисквания и системи модели
- Евристики за дизайн на тестове и разследващо тестване
- Кога да проектираме тест кейсове? – традиционен и разследващ подход
- Описване на тест кейсове – колко детайли?
- Изпълнение на тестове – психологически аспекти
- Изпълнение на тестове – логиране и отчетност
- Дизайн на тестове за „нефункционално“ тестване
- Автоматично дизайн на тестове и MBT (Model-Based Testing)
Ден 2: Организация, управление и автоматизация на тестовете
- Нива на тестване (или фази)
- Кой тества и кога? – различни решения
- Тестови среди: разходи, администрация, достъп, отговорност
- Симулатори, емулатори и виртуална тестова среда
- Тестване в агилен скрам
- Организация на тестовата екипа и роли
- Процес на тестване
- Автоматизация на тестване – какво може да бъде автоматизирано?
- Автоматизация на изпълнението на тестове – подходи и инструменти
Отзиви от потребители (5)
The One on One session is amazing!! And thankful that the trainer's skills are Excellent and his willingness to share them to the fullness. I am very satisfied. . with the training and I wouldn't have wish to have done it anywhere else. I would only wish that I had One day longer for the training.
Isaac Nyembo - Bechtle Clouds GmbH
Курс - Advanced Selenium
Машинен превод
Треньорът е приятен. Обяснението му е ясно и интересно. Той се старае да направи уроците възможно най-интересни. Насладих се на урока и придобих много знания. Благодаря много. Най-полезната техника, която научих, е намирането на елементи за различни уеб компоненти, като текстови полета, радиокнопки и бутони. Понякога идентификаторът на елемента не се захваща правилно. Научихме различен начин за намиране на елементи чрез използването на CSS селектори, XPath, Име и ID. Харесва ми обяснението. Благодаря.
Bee Chin Chuah - I-Access Solutions Pte Ltd
Курс - Advanced Selenium with C#
Машинен превод
Количество практически упражнения.
Jakub Wasikowski - riskmethods sp. z o.o
Курс - API Testing with Postman
Машинен превод
Добро разбирателство, Łukasz имаше време за въпросите на всички и успя да помогне на всеки, който имаше някакъв проблем
Kelly Morris - Titian Software Poland Sp. z o.o.
Курс - Selenium WebDriver in C#
Машинен превод
Luke was very knowledgeable, patient, and very open to satisfy my curiosity, for example I asked him to generate errors to see how system will response, etc. He would go above and beyond to answer questions or demonstrate the functionalities, even some of my questions were out of the class scope. He gave me a real experience with the system. I definitely will take another class with him and recommend him as a teacher for others. Thank you Luke!.
Tina Henderson
Курс - Test Automation with Selenium and Jenkins
Машинен превод