fbpx
Have something to share about engineering practices, architecture or DevOps?
Become a speaker now

Program

Расписание тренингов и мастер-классов 14-15 ноября

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

14 ноября 15 ноября
9:30-18:30
Тренинг “TDD в Java”

9:30-18:30
Тренинг “TDD в PHP”

Иван Мосев (Украина)
9:30-18:30
sold out
9:30-18:30
sold out
9:30-18:30
9:30-18:30
sold out
9:30-18:30
sold out
Тренинг “Agile Testing”

Андрей Дзыня (Украина)
9:30-18:30
19:00-22:00
Соревнования в формате “Coding Dojo”

Pre-party в формате PechaKucha

Программа конференции 16 ноября

Программа конференции находится на завершающей стадии подготовки, поэтому возможны перестановки и изменения. Окончательно программа конференции будет сформирована и опубликована 10 октября. Все вопросы по поводу программы и регистрации докладов присылайте по адресу review@xpdays.com.ua.

Сцена A (300 человек)

Foreign speakers
Сцена B (150 человек)

Отечественные профессионалы
9:00-9:45 Регистрация участников
9:45-10:00 Открытие конференции
10:00-10:50 The frustrated architect

Путь XP практика: как стать и оставаться профессионалом

10:50-11:00 Перерыв
11:00-11:50 TDD in the real world: Test driving Java web applications

Agile Testing by Example

11:50-12:00 Перерыв
12:00-12:50 Testability for developers: Fighting a mess by making it testable

(Un)experience report

13:00-14:30 Обеденный перерыв
14:30-15:20 Reversed Tests Pyramid – dealing with legacy code

Наш путь от 90 до 6500 тестов

15:20-15:30 Перерыв
15:30-16:20 Crazy Talk: When 10 second builds start to make you nervous

Ускоряем разработку .NET приложений с помощью Resharper

16:20-17:00 Кофе пауза
17:00-17:50 The code doesn’t tell the whole story

Приемочное тестирование Web UI компонентов с использованием WebDriver, Thucydides и Groovy

17:50-18:00 Перерыв
18:00-18:50 Time off for good Behaviour

Эволюция Agile или погоня за идеальным процессом

18:50-19:00 Закрытие первого дня конференции

Программа конференции 17 ноября

Сцена A (300 человек)

Foreign speakers
Сцена B (150 человек)

Отечественные профессионалы
9:00-9:45 Утренний кофе
9:45-10:00 Открытие второго дня конференции
10:00-10:50 Psychology of testing

Компилируемые спецификации

10:50-11:00 Перерыв
11:00-11:50 Behavior-Driven Development on the JVM: A State of the Union

John Smart (Australia)
Test Driven JavaScript

11:50-12:00 Перерыв
12:00-12:50 How Testacular makes AngularJS super-heroic at testing

Continuous Delivery with TeamCity

13:00-14:30 Обеденный перерыв
14:30-15:20 import continuous.delivery.*;

Антон Архипов (Эстония)
Enabling TDD in BigData world

15:20-15:30 Перерыв
15:30-16:20 Introducing Thucydides: Better Automated Acceptance Testing on the JVM

John Smart (Australia)
Тестируем код с Visual Studio 2012

16:20-17:00 Кофе пауза
17:00-17:50 Continuous Inspection with Sonar

Olivier Gaudin (Switzerland)
Осознанность рефакторинга

17:50-18:00 Перерыв
18:00-18:50 Agile Anti-Patterns. Yes your agile projects can and will fail too.

Sander Hoogendoorn (Netherlands)
Социология Code Review или что делать, если ваши тестировщики взялись писать код

18:50-19:10 Закрытие конференции

The code doesn’t tell the whole story

Описание: We all know that writing good code is important and refactoring forces us to think about making methods smaller, more reusable and self-documenting. Some people say that comments are bad and that self-commenting code is what we should strive for. Despite what you’ll hear though, the code isn’t the documentation. The code tells *a* story, but it doesn’t tell the whole story. Join us to find out what’s missing and how to create lightweight documentation for your software projects.
Тип выступления: Доклад (50 минут)
Докладчик: Simon Brown

The frustrated architect

Описание: The IT industry is either taking giant leaps ahead or it’s in deep turmoil. On the one hand we’re pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we’re continually forgetting the good of the past and software teams are still screwing up on an alarmingly regular basis.

Software architecture plays a pivotal role in the delivery of successful software yet it’s frustratingly neglected by many teams. Whether performed by one person or shared amongst the team, the architecture role exists on even the most agile of teams yet the balance of up front and evolutionary thinking often reflects aspiration rather than reality.

If we really do want to succeed, we need to get over our fascination with shiny new things and starting asking some questions. Does agile need architecture or does architecture actually need agile? Have we forgotten more about good software design than we’ve learnt in recent years? Is emergent design really just about foolishly hoping for the best? Does any of this matter if we’re not fostering the software architects of tomorrow? How do we move from frustration to serenity?

Тип выступления: Доклад (50 минут)
Докладчик: Simon Brown

Introducing Thucydides: Better Automated Acceptance Testing on the JVM

Описание: Thucydides is an open source library that lets you use Selenium 2/WebDriver with the BDD framework of your choice to write more flexible and more reusable automated acceptance tests for the JVM. Thucydides helps you structure your acceptance tests and generate powerful documentation, with narrative feature descriptions, screen shots, test coverage, and project progress reports. Learn how to write better and more maintainable automated acceptance tests using JVM-based tools, and see how a well-designed set of automated acceptance tests can also be a powerful documentation and reporting tool. And learn how product owners use ATDD and Thucydides to drive, coordinate and document releases, and see a live demo of Thucydides in action!
Тип выступления: Доклад (50 минут)
Докладчик: John Smart

Behavior-Driven Development on the JVM: A State of the Union

Описание: Behavior-driven development (BDD) is an increasingly popular variation on test-driven development, which helps developers think more in terms of “executable specifications” than in terms of conventional tests. There are dozens of BDD tools for the JVM out there—how do you know what to use and when? This presentation covers the various BDD tools available for Java developers, in both Java and other JVM languages. It looks at the pros and cons of each tool, so you can learn which might be best suited for your team. Finally, you will discover the relationship between behavior-driven development and automated acceptance testing and why you probably need both.
Тип выступления: Доклад (50 минут)
Докладчик: John Smart

Time off for good Behaviour

Описание: To get the most out of Behaviour Driven Development (BDD), you need much more than a tool. You need high value specifications. How do we get the most out of our specification and test writing effort? How do we turn vague business-speak into testable scenarios? These and other questions will be addressed in this talk in which we take a practical approach using real-world examples.
Тип выступления: Доклад (50 минут)
Докладчик: David Evans

Agile Testing by Example

Описание: Многие знают, что в Agile подходах поменялось отношение к тестированию. Роль тестировщика сильно изменилась и часть обязанностей распределились по другим членам команды. Теперь за тестирование и качество продукта отвечает вся команда. Но мало кто представляет как эти подходы работают на практике, как осуществляется взаимодействие тестировщиков с разработчиками, какие стадии проходит задача на пути от требований до приема заказчиком, кто чем занимается на разных этапах.

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

Тип выступления: Доклад (50 минут)

TDD in the real world: Test driving Java web applications

Описание: “Okay,” you say, “I see how TDD can work for your toy example. But it can’t possibly work for a real application where we have to deal with web pages, databases, http and dynamic html.” Actually, TDD works really well in real world situations like those on just your project. In this practical talk, I will demonstrate how to write tests for a full stack web application. I will show you what types of tests are useful, how to write them, and what libraries are available to help you.

If you have tried TDD or thought about trying TDD, but been unable to apply it to real world applications, this talk is for you.

Тип выступления: Доклад (50 минут)
Докладчик: Johannes Brodwall

Continuous Inspection with Sonar

Описание: The Job of a developer has evolved strongly in the last 10 years, pushed by new requirements and new tools. Software Development Industry has now reached a sufficient level of maturity to engage into a new practice to manage source code quality while running projects : Continuous Inspection. This practice is supported by Sonar as Continuous Integration is supported by Hudson. Continuous Inspection enables developer to fight back the temptation of the seven deadly sins of the developer. Sonar enables to declare war to those sins.
Тип выступления: Доклад (50 минут)
Докладчик: Olivier Gaudin

Agile Anti-Patterns. Yes your agile projects can and will fail too.

Описание: Almost all organizations, large and small, are turning towards agile to escape failing traditional software development projects. Due to this strong increase in popularity of agile approaches and techniques, many newcomers will enter the field of agile coaching. Many of them without the very necessary real-life experience but proudly waving their agile certificates proving they at least had two days of training.

During this challenging talk appreciated international speaker Sander Hoogendoorn, global agile thought leader at Capgemini, shows what happens with organizations and projects which are coached by well-willing consultants with little experience. Often this leads to very dogmatic applications of the more popular agile approaches, mostly Scrum and Kanban. This dogmatic thinking currently blocks the use of more elaborate techniques, tools and technology in agile projects, even when these would really improve projects. “No, you cannot do modeling in Scrum” and “Burn-down charts are mandatory” are two such simple real-life example statements. Due to this lack of experience and the growing dogmatism in the agile beliefs, more and more agile projects will fail.

But maybe even more important during this talk Sander will also show that there is no such thing as one-size-fits-all agile. Different organizations and different projects require different agile approaches. Sometimes lightweight agile, user stories, simple planning and estimation is just fine. But in many projects the way of working used should rather be built up from slightly more enterprise ready approaches, for example using Smart or FDD, smart use cases, standardized estimation, multiple distributed teams and on-line dashboards. During this talk Sander demonstrates how to assemble an agile approach that is specifically suitable for YOUR project, of course with many examples from real-life agile implementations.

Тип выступления: Доклад (50 минут)
Докладчик: Sander Hoogendoorn

How Testacular makes AngularJS super-heroic at testing

Описание: Testacular is test runner that makes makes testing JavaScript applications in real browsers frictionless and enjoyable. AngularJS is a framework which makes building web-applications frictionless and enjoyable. The resulting environment is extraordinarily expressive, readable, and quick to develop. Come learn how such as super-heroic framework gets built with the continues focus on testing form the framework itself to the developers that will be using it.
Тип выступления: Доклад (50 минут)
Докладчик: Miško Hevery

Psychology of testing

Описание: Imagine you are a evil developer and you want to write hard to test code. What do you do? Would you declare everything private? Put everything in one big method? Give nondescript names? Turns out none of that is hard to test, but some things which we do every day are. Will writing tests cost you double the development time? How can writing more code be faster? Is testing really just for QA? Find these answers and more at psychology of testing talk.
Тип выступления: Доклад (50 минут)
Докладчик: Miško Hevery

Эволюция Agile или погоня за идеальным процессом

Описание: Agile подходы уже достаточно плотно вошли в жизнь многих компаний в качестве основного направления в управлении проектами. Большинство взяло за основу Scrum по причине простоты и широкого распространения этой методологии. И действительно, из хаоса, в котором пребывали многие проекты, легче всего переходить к адекватному процессу через Scrum. Scrum внешне прост и понятен, о нем много говорят и пишут, хватает тренингов и специалистов в этой области.

Но вот проходит полгода, год, два и ваша команда начинает замечать, что в уже устоявшемся процессе некоторые практики из Scrum перестают приносить свою пользу. Команда уже достаточно долго работает вместе и от хаоса не осталось и следа. Вы начинаете замечать, что команда переросла Scrum. Не переживайте, это совершенно нормально!

Но куда двигаться дальше? Agile подходы тоже не стоят на месте и эволюционируют. Появляются новые методологии и практики. Может быть отказаться от итераций? Kanban? Может быть изменить процесс разработки и поставки новых фичей? Continous Delivery? Может быть больше внимания уделить инженерной части? XP?

В докладе мы поговорим о том, как и почему стоит развивать свой Agile процесс, когда стоит начинать эволюционировать и как не потеряться на этом пути. Ну и конечно же, мы затронем тему идеального Agile процесса и каким он может быть. Приходите, будет интересно!

Тип выступления: Доклад (50 минут)

Reversed Tests Pyramid – dealing with legacy code

Описание: Almost every experienced test engineer and programmer heard about tests pyramid which tells us that our automated tests should be about 80-90% – unit tests, 5-15% – some functional, integration or acceptance tests and 1-5% – end to end, GUI tests. It sounds great and of course is possible. That structure of tests has some implications like modularand separated architecture, good abstractions model, data model separation from functionality and logic, etc. Everything works and is quite easy to implement when we starting new, “greenfield” project, or dealing with code written in a good, simple way with “is it testable?” question always behind every line of code.

Some Clean Code and TDD practitioners says that you shouldn’t write end-to-end or even functional tests at all and database or user interface are (un)necessary evil. Can you imagine application like this? I can! Writing applications that way would be great, and likelihood ofbugs is pretty low. Maintainability would be wonderful – new changes in modular, almost independent architecture are extremely easy to implement. We can enumerate the advantages of such approach without endlessly… But…

Unfortunately, the reality is completely different. Most of us – developers, are dealing with already written code (written few years or even decades ago), which is not understandable by no-one, and no-one knows which particular lines or functions are really doing. Code which is unpredictable – every change could introduce bugs in other parts of the system which we would never expect that is somehow connected with the changed one. This code is sometimes measured in KLOC’s – Kilo Lines Of Code and this numbers maybe really high. Code like this was implemented sometimes by few hundreds or even thousands programmers, or even by few generations of programmers. Sometimes people who could know something about it are far away in another job, or they even died.

But don’t worry – there are some practices which would help you (us) with “Legacy Code” (because this is the proper name for code described above). One of this practice which I would like to share with you is reversed tests pyramid.

Тип выступления: Доклад (50 минут)
Докладчик: Wiktor Żołnowski

Crazy Talk: When 10 second builds start to make you nervous

Описание: As projects mature, build times seem to grow at an unstoppable rate. Most literature suggests that one should ‘pipeline’ your build into slow and fast parts but really this just brushes over the real issue and slowly but surely increases your primary feedback loop and decreases your ability to respond to change in a timely fashion. Dan presents an experience report of some alternative options that have helped him reduce build times by over a factor of 10. This talk may offend your favourite library, framework, container, build tool, language, OS or even process…
Тип выступления: Доклад (50 минут)
Докладчик: Daniel Worthington-Bodart

Приемочное тестирование Web UI компонентов с использованием WebDriver, Thucydides и Groovy

Описание: При разработке повторно используемых компонентов и библиотек особенно важно поддерживать высокий уровень качества. Клиентские разработчики вправе ожидают, чтобы базовые кирпичики их приложения отличались стабильностью и надежностью. Как же обеспечить уверенность в том, что компонент работает и исправно выполняет свои функции? Один из ответов на этот вопрос – автоматическое приемочное тестирование, которое будет рассмотрено в этом докладе в применении к современному Web UI.

Мы рассмотрим опыт успешного применения приемочного тестирования динамических компонентов при разработке современной Web платформы, задействованной в нескольких живых продуктах. После краткого ознакомления с процессом внедрения, мы сконцентрируемся на “технике” и рассмотрим конкретные реализации и примеры на основе Selenium 2 / WebDriver и Groovy:

  • Структура и организация приемочных тестов на Thucydides.
  • Особенности стратегии ожиданий и поиска элементов при тестировании динамических Web UI компонентов.
  • Использование JavaScript вызовов из Java / Groovy кода без явного использования JavaScript.
  • Создание повторно используемых page objects для собственного и внешнего применения.
  • Адаптация кода компонентов под UI тесты.
  • Также будет затронут вопрос взаимодействия разработчиков и тестировщиков во время написания автоматических приемочных тестов.

Все вышеупомянутое основано на реальном опыте действующей команды.

Тип выступления: Доклад (50 минут)
Докладчик: Владимир Цукур

Путь XP практика: как стать и оставаться профессионалом

Описание: Кто такой профессионал? Многие считают, что человек может так себя назвать, если он получает за свою работу деньги. Уверен, многие из вас сходу смогут назвать коллегу, которого язык не повернется назвать профи. А что думают о вас другие?

На докладе Сергей представит свое понимание того, каким должен быть профессиональный разработчик, а также что нужно делать, чтобы стать, и, самое главное, оставаться профи в своей сфере деятельности. Будут рассмотрены практики, инструменты и навыки, которые здорово помогают разработчикам. На докладе вы узнаете:

  • Почему нужно постоянно развиваться
  • Как XP практики повышают эффективность
  • Зачем нужно знать алгоритмы и паттерны
  • Что можно и нужно делать для саморазвития
  • Где можно научиться новому и полезному
  • Как можно закрепить и где применить полученные знания
  • Что такое kata, dojo и еще пара незнакомых слов
Тип выступления: Доклад (50 минут)
Докладчик: Сергей Калинец

Ускоряем разработку .NET приложений с помощью Resharper

Описание: Код – основной продукт разработчика. Чем быстрее у нас получается работающий чистый код, тем выше наша эффективность. Но не всегда сразу понятно, как должен выглядеть код в итоге. И, вместо того, чтобы начинать его писать, мы пытаемся представить окончательный вариант и теряемся в еще нереализованных деталях. В результате вместо кода – запутанные мысли.

Многолетняя практика показывает, что лучше начинать с неидеального кода и постепенно приводить его в порядок с помощью рефакторинга. Но рефакторинг может показаться на первый взгляд довольно трудоемким и поэтому отпугивающим процессом. А на самом деле, доступны инструменты, которые делают его очень простым делом. На примере одного такого инструмента – Resharper – Сергей покажет вживую, как легко можно писать новый и изменять существующий код. Будут использованы следующие рефакторинги:

  • выделение/инлайн методов, свойств, полей, переменных
  • переименование переменных, полей, свойств, классов, пространств имен
  • перемещение кусков кода, методов, классов вверх/вниз
  • быстрые исправления/изменения кода
  • автоподстановка существующих переменных в аргументы
  • перенос классов и файлов по пространствам имен/папкам
  • изменение сигнатур методов
Тип выступления: Мастер-класс (50 минут)
Докладчик: Сергей Калинец

Компилируемые спецификации

Описание: В современной разработке программного обеспечения очень важен контакт между теми, кто знает что делать и теми, кто знает как делать. Первые – это представители бизнеса, вторые – программисты. Представители бизнеса, зачастую, не любят иметь дело с программным кодом. Программисты же могут ошибиться, перенося требования из документов в код. Более того, требования могут меняться, и некоторые изменения могут быть обнаружены слишком поздно. В качестве возможного решения описанной проблемы, можно использовать практики BDD и ATDD. Эти практики, подкрепленные соответствующими инструментами, позволяют наладить контакт между участниками процесса разработки, а также зафиксировать спецификации в едином месте и на понятном всем языке. Эти спецификации в дальнейшем используются для того, чтобы генерировать приемочные тесты. Результатом применения BDD и ATDD являются две очень важные вещи: взаимопонимание и автоматизация. Докладчик рассмотрит проведение воркшопа по формированию и уточнению требований, а также приведет примеры использования практик в .NET и JavaScript. Будут рассмотрены такие инструменты, как SpecFlow, Jasmine, Vovs.js.
Тип выступления: Доклад (50 минут)
Докладчик: Дмитрий Миндра

Тестируем код с Visual Studio 2012

Описание: Все программисты хотят работать в проектах с красивым, чистым, современным и тестируемым кодом. При этом, бизнес беспокоится о сроках выполнения, о денежных затратах, о том, выполняет ли разработанное ПО бизнес задачи. Возникает определенное давление, горят сроки, меняются требования. В таких условиях даже самый хороший и чистый код может “испортиться”. В докладе будет рассмотрено, как программист может использовать Visual Studio 2012 для написания тестируемого кода и тестирования нетестируемого кода. Вас ждет живое программирование с демонстрацией фреймворка Microsoft Fakes, а также обсуждение применения Fakes, Mocks, Stubs и Dummies. Если вы хотите узнать больше о модульном тестировании и пользуетесь Visual Studio, этот доклад для вас.
Тип выступления: Доклад (50 минут)
Докладчик: Дмитрий Миндра

Социология Code Review или что делать, если ваши тестировщики взялись писать код

Описание: Работа консультантом по автоматизации тестирования принесла мне массу нового и неожиданного опыта связанного с инспекцией кода. Быстрая доставка продукта к конечному пользователю все больше интересует наших заказчиков. Внедрение Continuous Delivery для многих из них становится просто необходимым. А, как известно, без высокой степени автоматизации тестирования тут просто не обойтись. Как результат, большое количество тестов, которые часто дописываются и сопровождаются вовсе не разработчиками.

С одной стороны, это мечта любого разработчика – написал тестовый фреймворк, создал application driver (например Page Objects для web-приложения) и пусть тестировщики себе работают на покрытием, используя все вышеперечисленное. С другой стороны, код есть код и его надо грамотно сопровождать, пока красивый и аккуратный фреймворк не превратился в колосса на глиняных ногах. В своем докладе я бы хотел рассказать, как совместно работать с вашими тестировщиками/разработчиками над постоянным улучшением кода ваших тестовых фреймворков и самих тестов.

Тип выступления: Доклад (50 минут)

Test Driven JavaScript

Описание: JavaScript является одним из наиболее развивающихся современных динамических языков. Браузер – уже далеко не единственная среда исполнения JavaScript кода. Такие технологии как Node.js позволяют реализовывать полномасштабные веб-приложения, в которых как серверная так и клиентская стороны пишутся на JavaScript.

Современное веб-приложение немыслимо без богатого пользовательского интерфейса. Большие клиентские приложения обладают аналогичными проблемами кода как и серверная часть. Рано или поздно, в нем начнет появляться большое количество регрессии, кодом станет трудно управлять, а архитектура будет вязкая к изменениям. TDD является одним из самых мощных инструментов, которые как раз акцентируют свое внимание на этих аспектах.

Проблемой многих разработчиков, даже тех, кто давно знаком с TDD, является правильное понимание методов и средств в тестировании JavaScript. Мой мастер-класс призван продемонстрировать базовые концепции сделает обзор подходов и фреймворков. Будут рассмотрены TDD и BDD подходы с Jasmine, Mocha и Chai.

Тип выступления: Мастер-класс (50 минут)

Enabling TDD in BigData world

Описание: Есть один хороший способ быстро проникнуть в сердце новых технологий, не отдавая целый день на установку окружения и на борьбу с кривыми настройками. Написать тест. Написать сначала тест, а затем посмотреть, справится ли новая технология с поставленной бизнес задачей, а потом уже со спокойной душей настраивать и устанавливать окружение. На этом мастер-классе будем рассматривать, как применять TDD на этапе проверки и изучения основных возможностей BigData технологий, таких как Hadoop, MongoDB, Cassandra и Redis. Экономить время, сосредотачиваясь на бизнес задачах и возможностях определенной технологии, решать поставленные задачи. Понять, дружит ли данная технология с легковесным тестированием. И, наконец, просто использовать изученные инструменты в повседневной разработке, используя практику TDD.

P.S. Возможно, многие знают одну историю про Yahoo. 15000 паралельных задач в одном облаке обрабатывают и индексируют 15PB данных. И эти цифры будут только расти. Вопрос масштабирования больших данных был решен с помощью Hadoop (open source map-reduce технология). На данный момент 15000 Hadoop задач выполняются на 4000 серверах (30000 ядрах), демонстрируя отменную масштабируемость и производительность.

Тип выступления: Мастер-класс (50 минут)

Continuous Delivery with TeamCity

Описание: В наше время будет трудно удивить разработчика, QA инженера или даже менеджера проектов такими понятиями, как Continuous Integration, Automated testing и eXtreme Programming. Разработчики коммитят код, написанные QA автотесты запускаются, все довольны и казалось бы – что еще можно улучшить? Вот тут-то можно пойти еще дальше и рассмотреть то, что происходит после того, как протестированный, “стабильный” код осел в системе контроля версий.

Обычно на переходы между этапами коммита в систему контроля версий, запуском тестов, проверкой качества кода и, собственно, деплойментом, тратится много человеческих ресурсов и времени, которое можно сэкономить, применив методику Continuous Delivery. В данный момент на рынке существуют несколько различных популярных CI серверов, в том числе JetBrains TeamCity, Jenkins, Atlassian Bamboo и некоторые другие.

Я хочу продемонстрировать на примере TeamCity, как можно автоматизировать Continuous Delivery в проекте, используя распределенные и/или зависимые билды. В ходе доклада будут представлены дополнительные средства автоматизации, которые может предоставить TeamCity для запуска нагрузочных и интеграционных тестов, интеграции с Sonar, подготовки билдов для разных deployment environments, будь-то dev, UAT, production. Также будет расcмотрена аггрегация отчётов на примере набирающего популярность Thucydides и метрик по билдам.

Тип выступления: Доклад (50 минут)

Testability for developers: Fighting a mess by making it testable

Описание: The average system in the wild may exhibit properties that don’t play well with good development and testing practices. For such systems, just running them becomes a challenge, not to mention making them testable.

Working with such systems is demoralizing, because there’s no way to prevent regressions from happening and changes that should take hours take weeks. This is a tale of such a system, and how it got cleaned up by letting the test automation process drive the change. When setting up a test that would verify that a user can log in, we realized that the system couldn’t even be deployed. The game was on!

This session covers an actual case of attacking a legacy system by steering it towards a state in which it could be tested automatically. The challenges encountered were solved using techniques that are normally applied when implementing continuous delivery and test automation.

Тип выступления: Доклад (50 минут)
Докладчик: Alexander Tarnowski

import continuous.delivery.*;

Описание: Знаете ли вы, какая версия приложения сейчас развёрнута в проекте, над которым вы трудитесь? А как эта версия туда попала? А какие этапы контроля качества она прошла? Готовы ли вы запустить новую версию приложения сегодня-завтра? Такие вопросы нередко возникают в самый неподходящий момент, когда ответ нужен незамедлительно.

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

Мы рассмотрим, как Jenkins может быть использован для организации такого конвейера в комбинации с Nexus для публикации артефактов сборки и LiveRebel для автоматизации деплоймента только что собранной версии прямо с конвейера.

Тип выступления: Доклад (50 минут)
Докладчик: Антон Архипов

(Un)experience report

Описание: As the title says, this will be more of a report / storytelling about our implementation of Agile/XP than anything else. During the last 3,5 years we’ve been through a few interesting projects, have built a fine team of people and a culture of mutual learning / teaching and supporting each other, tried many different techniques and processes of agile software development, but also made a few major mistakes, lost some money because of them and even a client. I’ll try to analyze what worked and why and will give you hints as to how to grow your teams and keep them motivated and engaged. If you’re (feeling) responsible for your team, want to learn how other teams perform, or are just curious how did I’ve screwed a few things up, this talk will be for you.
Тип выступления: Доклад (50 минут)
Докладчик: Paweł Lipiński

Осознанность рефакторинга

Описание: Представьте на секунду, что сейчас Вы работаете над сложной высоконагруженной системой, которая делает людей счастливыми. И этот проект настолько важен для человечества, что команда QA и техлиды с архитекторами требует детального обоснования каждого Вашего решения. Как нетрудно догадаться, речь идет о Вашем текущем проекте, к которому вернетесь после конференции.

Как Вы обеспечите качество? Как сделаете дизайн поддерживаемым и приятным, а решения примете осознанно и обоснованно? В докладе мне хотелось бы предложить Вам технику проектирования, которая позволит Вам делать выборы осознанно и вывести мастерство проектирования архитектуры и дизайна на новый уровень.

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

Тип выступления: Доклад (50 минут)

Наш путь от 90 до 6500 тестов

Описание: В начале работы над проектом 90 функциональных тестов проходили за 2 минуты. Теперь 6500 тестов проходят за 40 минут. Поговорим о том, как эволюционировала наша инфраструктура Continius Intergration, чтобы тесты не выполнялись бесконечное время.

В докладе я расскажу о том, какие виды автоматизированного тестирования мы используем, о проблемах модульного тестирования, с которыми мы сталкиваемся. Участники узнают почему мы предпочитаем писать именно функциональные тесты, а также об организации функционального тестирования, в частности, тестирования интерфейса с помощью Selenium. Расскажу почему у нас “не взлетело” BDD.

Побробно расскажу о том, как мы используем TeamCity, параллелим наши тесты и какие дополнительные шаги мы предпринимаем для уменьшения времени отклика. Еще будет затронута тема специально отведенной переходящей роли в команде (дежурный инженер) и системы внутреннего мониторинга.

Тип выступления: Доклад (50 минут)
Докладчик: Иван Медведев
John Smart

John Smart

Sydney, Australia

John Ferguson Smart is the CEO of Wakaleo Consulting, a company that provides consulting, training, mentoring and testing services in Enterprise Java and Agile Development and Testing practices. A longtime advocate of open source tools that support and automate the software development lifecycle, John is the author of “Java Power Tools” and “Jenkins: The Definitive Guide”, as well as an active contributor to several open source projects. John is also the founder and lead developer of the Thucydides project, a new open source library that helps teams writing web-based automated acceptance tests (ATDD) using WebDriver/Selenium 2 in conjunction with BDD tools like easyb and JBehave.

Simon Brown

Simon Brown

Jersey, UK

Simon lives in Jersey and is an independent consultant, the founder of Coding the Architecture and either a software architect who codes or a software developer who understands architecture. Having successfully delivered a variety of projects on the Microsoft .NET and Java platforms, Simon now also regularly speaks to and teaches audiences across Europe about software architecture and its role in modern software development teams. He is also the author of a “Software Architecture for Developers” book, which is being published incrementally through Leanpub. He still writes code too.

David Evans

David Evans

London, UK

David Evans is an experienced agile consultant, coach and trainer with over 24 years of IT experience. A thought-leader in the field of agile testing, he has provided training and consultancy for clients in the UK, Ireland, Sweden, Germany, Australia, Israel, South Africa and Singapore. A regular speaker at events and conferences across Europe, David has also had several papers published in international IT journals. He currently lives and works in the UK, where he is a partner along with Gojko Adzic in Neuri Consulting LLP. He can be reached at @DavidEvans66 on Twitter.

Johannes Brodwall

Johannes Brodwall

Oslo Area, Norway

Johannes Brodwall is a solution architect by day and a test-infected Java programmer by night. He discovered extreme programming more than ten years ago and has been trying to practice test-driven development, continuous integration and pair programming ever since. In his architecture work, he aims for the least amount of architecture, so that the architecture is both easy to communicate, to learn, and to change. Johannes works as lead architect and architect mentor on projects both small and large in the Norwegian public sector.

Olivier Gaudin

Olivier Gaudin

Geneva Area, Switzerland

Olivier Gaudin is co-founder and CEO of SonarSource, the company that develops and promotes the open source platform Sonar to manage source code quality. Olivier started his carea in London, working on trading systems in the banking industry. He then managed IT for a startup, ran big projects such as off-shoring, CMMi and ran support and development departments. Olivier has developed a strong sensibility to robustness of processes and quality of delivery. In 2007, Olivier starts contributing to Sonar and decides with Simon Brandhof and Freddy Mallet to setup SonarSource, the company that develops and promotes Sonar while growing some business around the platform.

Sander Hoogendoorn

Sander Hoogendoorn

Utrecht, Netherlands

In his role of principal technology officer and global agile thought leader at Capgemini, Sander Hoogendoorn is continuously involved in the innovation of software development processes, techniques, architectures, patterns, frameworks and technologies, both at Capgemini and its many international clients.

Sander has coached many organizations and projects, has written books on UML and agile and published over 200 articles in international magazines. He is an appreciated and inspiring speaker at many international conferences and he hosts seminars and workshops on agile, software architecture, UML and software estimation.

Sander is a member of Microsoft’s Partner Advisory Council for .NET and several other editorial and advisory boards, and he is the chief architect of Capgemini’s agile software development platform Accelerated Delivery Platform (ADP). See also sanderhoogendoorn.com and smartusecase.com.

Miško Hevery

Miško Hevery

CA, USA

Miško works as an Agile Coach at Google where he is responsible for coaching Googlers to maintain the high level of automated testing culture. This allows Google to do frequent releases of its web applications with consistent high quality. Previously he worked at Adobe, Sun Microsystems, Intel, and Xerox (to name a few), where he became an expert in building web applications in web related technologies such as Java, JavaScript, Flex and ActionScript. He is very involved in Open Source community and an author of several open source projects such as Angular and JsTestDriver.

Николай Алименков

Николай Алименков

Киев, Украина

Практикующий Java технический лидер и Scrum Master. Эксперт в разработке на Java, Agile инженерных практиках и управлении проектами. Разрабатывает на Java более 8 лет, специализируется на разработке сложных распределенных масштабируемых систем. Активный участник и докладчик многих международных конференций. Основатель и тренер тренинг-центра XP Injection. Организатор и идеолог конференций Selenium Camp, JEEConf, XP Days Ukraine и IT Brunch. Основатель действующего “Клуба анонимных разработчиков” (uadevclub).

Daniel Worthington-Bodart

Daniel Worthington-Bodart

London, UK

Dan is an independent consultant and contractor. He is currently helping Sky Network Services build their next generation systems and was previously a consultant for ThoughtWorks, helping its clients across a wide range of industries and sectors. He is a creator and contributor to a large number of open-source libraries no-one has ever heard of but still enjoys finding the simple in complex.

Андрей Дзыня

Андрей Дзыня

Киев, Украина

Эксперт в области тестирования и автоматизации тестирования ПО. Докладчик многих отраслевых конференций. На протяжении своей профессиональной карьеры освоил широкий набор инструментов по автоматизации тестирования разнообразного ПО. Сумел разработать и воплотить в жизнь успешные стратегии по тестированию и автоматизации тестирования коммерческих продуктов, которые продолжают развиваться. Занимается улучшением личной эффективности и развитием тестирования на просторах СНГ. Один из организаторов и идеолог обучающих соревнований тестировщиков Testing Dojo и конференции Ukrainian Testing Days. тренер тренинг-центра XP Injection.

Александр Ильин

Александр Ильин

Санкт-Петербург, Россия

Александр является архитектором качества Java и JavaFX в компании Oracle и ряда продуктов на базе Java SE и JavaFX, а также архитектором инструментов тестирования. Он уже 12 лет работает в области технического обеспечения качества. Ранее являлся руководителем/архитектором продуктов Java Studio Creator и Netbeans. До этого Александр работал в качестве руководителя команды инструментов NetBeans QE.

Также Александр является автором Jemmy — инструмента с открытым исходным кодом, предназначенного для тестирования пользовательского интерфейса. Инструмент широко используется для тестирования приложений на базе Swing/AWT и самого Swing. Инструмент также с успехом используется для тестирования JavaFX SDK и JavaFX продуктов, разработанных в компании.

Александр имеет богатый опыт выступлений на крупнейших конференциях, таких как RIT, SECR, YAC, SQA Days, JavaONE, Sun TechDays, JavaOne, JavaDay.

Paweł Lipiński

Paweł Lipiński

Warsaw Area, Poland

A programmer with over 14 years of professional experience, solution architect, team coach and trainer in agile processes and practices. Frequent speaker on Java and Agile conferences. Co-creator of Agile Warsaw group. Author of tumbler-glass, a BDD framework for Java. For over 3 years leads a software house in Warsaw called Pragmatists, this way he’s realising and verifying what he talks about.

Alexander Tarnowski

Alexander Tarnowski

Stockholm, Sweden

Alexander Tarnowski is a developer, who’s passionate about craftsmanship, quality, and testing. He has more than a decade of experience in software development, while having worked in related fields such as architecture, project management, and testing. Over the past few years, he has been working with various aspects of test automation and activities that nowadays are grouped under the umbrella of continuous delivery. He runs a book review site and has appeared on a couple of Swedish and international conferences.

Иван Мосев

Иван Мосев

Харьков, Украина

Более 7 лет занимается разработкой web-приложений на PHP. За это время прошел путь от простого разработчика до технического директора. В директорах не нашел себя и вернулся обратно в инженерию. Иван всегда интересуется новинками в PHP, не забывая смотреть по сторонам, а также экспериментирует с Python (Django и GAE). Успешно применяет различные практики XP и Scrum в своих проектах. С 2006 года применяет разработку через тестирование. Является приверженцем инженерных практик и стремится донести свою точку зрения до заказчиков и других разработчиков. Автор тренинга «TDD в PHP».

Александр Белецкий

Александр Белецкий

Киев, Украина

Разработчик програмного обеспечения с 9-им летним стажем. Использует .NET, как основной технологический стек – создает Web ориентированные решения в облаках. Посвящен в тайны TDD кунг-фу, Refactoring карате, Continiuos Delivery дзен. Практикует Coding Kata с целью познания истины програмного бытия.

Wiktor Żołnowski

Wiktor Żołnowski

Cracow, Poland

Wiktor is an Agile Coach, Consultant and Trainer focused on process improvements and basic technical practices like TDD, BDD, Emergent Architecture and Pair Programming. He is passionate in pragmatic approach to everything what he is doing and he hates wastes. He has few years of experience in IT business – from Software Tester, through Programmer, QA Engineer to Scrum Master, Manager and QA Lead. Working on various projects in different methodologies like Waterfall, RUP and finally Scrum and Kanban with some XP practices. Some time ago he has learned that every change in organisation starts from the people and their knowledge. Now he is working at Code Sprinters – consulting and training company with development background where he is leading couple agile transitions in various organisations.

Сергей Калинец

Сергей Калинец

Киев, Украина

Сергей более 11 лет занимается разработкой ПО, из которых 7 на .NET. Он активно применяет TDD уже около 5 лет. Автор ресурса tdd4.net и тренер по инженерным практикам. Член сообщества kyiv.alt.net и «Клуба анонимных разработчиков». В настоящее время совмещает роли лидера команды, Scrum Master и проектного менеджера в компании CompatibL.

Алексей Солнцев

Алексей Солнцев

Киев, Украина

Практикующий менеджер проектов, в прошлом Flex и Java разработчик, Certified Scrum Master и Certified Scrum Practitioner. Активный волонтёр по развитию и становлению Agile сообщества, инициатор и куратор перевода на русский язык известных изданий. Алексей является тренером тренинг-центра XP Injection и главой Agile Competence Center в компании Infopulse.

Дмитрий Миндра

Дмитрий Миндра

Одесса, Украина

За 10 лет разработки программного обеспечения побывал в разных проектах и разных ролях. Прошел путь от начинающего программиста до лидера команды и менеджера проектов. Остановился на роли программиста и исследователя. На сегодняшний день занимает должность Microsoft Technologies Lab Leader в компании Lohika. До этого 4 года проработал в украинской продуктовой компании, специализирующейся на Web проектах.

Последние 7 лет Дмитрий работает с Web ориентированными технологиями Microsoft, включая ASP.NET, ASP.NET MVC и Silverlight. Выступает с докладами на встречах Одесской .Net User Group, а также на многих международных конференциях в Украине и за ее пределами.

Владимир Цукур

Владимир Цукур

Киев, Украина

Проактивный инженер, технический лидер и руководитель команды, сфокусированный на качественной и прагматичной разработке web проектов, платформ и API. Любимым делом занимается более 10 лет. На данный момент работает в компании GlobalLogic. Certified Scrum Master и практик XP-методологий. Outsourcing-партнер шведских компаний Frost Digital и Hunter’s Web в Украине. Соавтор и совладелец проекта Ganttzilla. Соавтор патента в классе электронного согласования. Успешен в постоянном повышении индивидуальной эффективности и саморазвитии, построении и поддержке здравой командной работы, достижения высокого качества результатов работы.

Алексей Резчиков

Алексей Резчиков

Киев, Украина

Опытный Java разработчик и тимлид. В разное время работал project, resource, development и competency manager. Последователь Agile/Lean, а также сторонник XP инженерных практик. В данный момент занимается консалтингом по Testing Automation, Continuous Integration & Continuous Delivery. Активно пропагандирует использование Spring Framework в рамках проекта SpringByExample.com.ua.

Вячеслав Москаленко

Вячеслав Москаленко

Киев, Украина

Agile Coach, старший архитектор, разработчик ПО, консультант в компании Luxoft. Занимается трансформацией подразделений и команд в гибкие эффективные методологии, такие как Scrum и XP. Имеет более 5 лет практического опыта в Agile разработке. Значительную часть времени проводит с командами, внедряя такие инженерные практики как TDD, ATDD, Code Review, Continuous Integration, Testing Automation, Pair Programming и др. В роли коуча уделяет внимание внутренней командной культуре разработки (например, искусству написания чистого кода), техническому превосходству и культуре инноваций. Автор многочисленных воркшопов по инженерным практикам, огибающих большой спектр технологий, протоколов и архитектур.

Антон Архипов

Антон Архипов

Таллин, Эстония

Порядка 10 лет опыта разработки Java приложений. Работал ведущим разработчиком и лидером команды разработчиков в Swedbank. С 2010 работает в ZeroTurnaround и отвечает за разработку продукта JRebel. Антон также является лидером Estonian JUG и соорганизатором большого сообщества разработчиков в Таллине – Devclub.eu.

Сергей Зеленин

Сергей Зеленин

Киев, Украина

Архитектор, технический лидер, консультант в компании GlobalLogic. Приверженец Agile методологий с 2003 года, имеет незабываемый опыт работы в XP команде на протяжении 2 лет в роли XP-coach. Соавтор тренингов по TDD и автоматизированному тестированию. В роли technical lead и архитектора уже более 7 лет. Неоднократно участвовал в преобразовании «безнадежных» и «скучных» проектов в интересные и увлекательные для себя, команды и заказчиков приключения, о которых, уверен, будет приятно вспомнить в будущем.

Александр Баглай

Александр Баглай

Киев, Украина

Молодой и энергичный тренер. За более чем 7 лет в IT зарекомендовал себя как практик XP. В прошлом разработчик, сейчас активно занимается подготовкой новых Java специалистов для нужд проектов. При этом большое внимание уделяет вопросам качества и поддержки кода, повышения эффективности разработки, инфицированию Test Driven Development подходом, рефакторингом Фаулера и философией ООП. Неоднократно проявлял себя в роли XP наставника и Scrum Master в командах, в которых трудился сам. Открыт новым течениям и помогает коллегам обучаться лучшим практикам. В данный момент в компании выполняет роль Java тренера, ведет Java тренинг в КПИ. Будучи тренером, не оставил разработку и ежедневно уделяет время внутренним проектам как разработчик.

Владимир Мелимука

Владимир Мелимука

Киев, Украина

Практикующий тимлид и разработчик с десятилетним опытом, из которых восемь на языке Java, Certified Scrum Master. Участвовал и вёл проекты с использованием Scrum и различных Agile практик, таких как TDD, BDD, Continuous Integration, Code Review/Pair Programming и других. Активный пользователь и администратор различных серверов непрерывной интеграции, включая TeamCity, Jenkins, Bamboo. Автор книги “TeamCity 7 Continuous Integration”, которая планируется к выходу в октябре-ноябре 2012.

Евгений Кривошеев

Евгений Кривошеев

Москва, Россия

Помогает компаниям TOP-50 из российского IT стать гибче и эффективнее. Поддерживает внедрение гибких процессов “снизу”, внедряя инженерные практики и осознанный подход к проектированию. В настоящий момент ведет проект SkillTrek, где обучает инженеров через практику на боевых проектах.

Иван Медведев

Иван Медведев

Екатеринбург, Россия

Разработчик с 7-летним стажем. Начинал программировать на VBA и Delphi, и уже в то время активно практиковал TDD. Последние 4 года занимается разработкой облачных сервисов в сфере взаимодействия бизнеса с государством и бизнеса с бизнесом. В качестве основного инструмента использует .NET. Обладает практическими навыками eXtreme Programming. Также имеет опыт развертывания систем Continuous Integration быстрого отклика в условиях большого количества тестов.