SlideShare a Scribd company logo
1 of 13
Download to read offline
Appery, LLC
Join our team!
March 29, 2016
Appery, LLC 2
Платформа на основе облака, которая позволяет
создавать гибридные мобильные приложения для iOS,
Android, Windows Phone
Время разработки: 2010 год – настоящее время
Коротко о проекте
Некоторые компании - пользователи продукта:
Appery, LLC 3
Коротко о проекте
JavaScript
jQuery
Cordova
HTML5
CSS3
LESS
Appery.io Services Appery.io Support Appery.io DevOps
Backbone.js
Jersey client
TypeScript
RequireJS
AngularJS
Ionic
Bootstrap
Rhino
Java Core
JavaScript Core
J2EE (JMS,EJB)
JMeter
Gatling
Selenium/WebDriver
JUnit
Maven
Apache Camel
MongoDB
PostgreSQL
Server clusters
WildFly 8.1
PicketLink
Hibernate
Spring
XStream
FreeMarke
Appery.io Core
Hybrid Mob Apps
UI/UX
JavaScript
HTML5
CSS3
Ionic
Cordova
Gulp
Grunt
AngularJS
Appery.io
Support
Hybrid mobile apps
UI/UX
JavaScript
HTML5
CSS3
AngularJS
Ionic
Cordova
Gulp
Grunt
Puppet
Git
pgpool
PostgreSQL
MongoDB clusters
Nginx
Apache
HA + failover load balancers
Amazon AWS
CDN
OpenVPN
Munin
Nagios
SmokePing
Tomcat
Jenkins
Appery, LLC 4
Appery.io Platform Overview
Appery, LLC 5
США:
Walnut Creek, CA
(головной офис компании)
Литва:
Вильнюс
Беларусь:
Минск
Украина:
Харьков, Винница
Команда Appery.io
Appery, LLC 6
Более 20 человек:
• 11 разработчиков,
• 5 тестировщиков,
• 1 бизнес-аналитик,
• 2 DevOps,
• 3 инженера технической
поддержки.
Команда Appery.io
Appery, LLC 7
Разработчик ПО более 10 лет.
Основная технология: Java.
На проекте Appery.io с 2013 года.
Текущая роль на проекте: Team lead
Как менялась роль на проекте: Senior
Java developer Team lead & Scrum
Master
Текущие задачи:
• создание функциональности продукта,
отвечающей за полный цикл
разработки мобильных приложений.
До Appery.io работал на различных
проектах, начиная от банковских
приложений, заканчивая
корпоративными веб-сайтами компаний-
гигантов Силиконовой долины.
Команда Appery.io
“Appery.io - это продукт компании.
Работа над продуктом требует
более глубокого вовлечения команды в
предметную область. В нашем случае
несколько проще - мы делаем продукт
для таких же разработчиков, как и
мы. Часто мы имеем дело с задачами,
которые находятся за пределами
области знаний нашей команды, и
приходится изучать что-то новое. Не
всегда это интересно, но полезно -
это бесспорно. Поверьте мне на
слово: Appery.io - это проект, на
котором скучать не приходится. К
счастью, у меня сейчас лучшая
команда, с которой я когда-либо
работал”.
Андрей Яковенко
Appery, LLC 8
Работает в IT сфере более 6 лет.
На проекте Appery.io с 2012 года.
Текущая роль на проекте:
Senior QA engineer
Как менялась роль на проекте:
Junior QA Middle QA Senior QA
Текущие задачи:
• тестирование редактора по созданию
Custom REST Services;
• тестирование соединений с базами
данных и работа с моделями данных.
Поочерёдно работал на всех частях
проекта .
До работы тестировщиком был
системным администратором,
бухгалтером.
Команда Appery.io
“Appery.io отличается от других
проектов своей сложностью,
потому что, по сути, это
конструктор для создания
приложений, в котором может
быть неограниченное число
исходов для юзеров, и их
невозможно полностью покрыть
тестами. В связи с этим, нужно
искать правильные подходы,
которые могут дать нам
максимальное качество за
имеющееся время и с теми
ресурсами, какие у нас есть”.
Михаил Курганский
Appery, LLC 9
Работает в IT сфере более 3 лет.
На проекте Appery.io с 2012 года.
Текущая роль на проекте:
Senior QA engineer.
Как менялась роль на проекте:
Junior QA Middle QA Senior QA
Текущие задачи:
• тестирование мобильных гибридных
приложений;
• тестирование front-end части
платформы.
Благодаря работе на проекте
Appery.io ознакомился с такими
современными фреймворками, как
Ionic, Bootstrap, AngularJS, и основами
автоматизации тестирования.
Команда Appery.io
“Важно, что проект инновационный,
очень мало аналогов, интересно о нем
рассказывать людям. Часто мы сами
проектируем фичи, пытаемся
улучшить юзабилити, предложить
свои идеи. Это дает хороший опыт.
Есть ощущение, что вкладываешь
часть себя в продукт, поэтому
большинство людей в команде
переживают за успешность проекта.
В команде есть старый
сработавшийся “ скелет” людей,
которые несут бесценные знания. Все
знают, что к ним можно обратиться
за решением какой-либо проблемы,
они имеют огромное уважение, у них
можно многому научиться”.
Эдуард Андроник
Appery, LLC 10
Разработчик ПО более 4 лет.
На проекте Appery.io с 2012 года.
Текущая роль на проекте:
JavaScript developer (support
команда).
Как менялась роль на проекте:
Junior Java developer Middle Java
developer Middle JavaScript
developer
Текущие задачи: работа в команде
поддержки продукта.
Работал в back end, front end,
support командах Appery.io.
Команда Appery.io
“Appery.io позволяет
разрабатывать гибридные
приложения различной сложности
проще и значительно быстрее,
чем это можно сделать в
простой IDE. Любой желающий
может работать с нашей
платформой, а, если возникают
вопросы, команда поддержки 24/7
придет на помощь. Каждый день
мы сталкиваемся с десятками
различных уникальных задач,
которые необходимо решить в
кратчайшие сроки”.
Сергей Кулибаба
Appery, LLC
Некоторые текущие задачи
Возникшие в процессе реализации сложности
Подавляющее большинство компонентов - это структурно-сложные элементы, часто с глубокими зависимостями от настроек
внешних элементов; т. е. компонент может перестроить всю свою структуру под влиянием одной из его настроек. По этой
причине самым сложным являлся слой абстракции, когда компонент должен формировать свою внутреннюю структуру на
лету, сообщая её редактору, и это не должно было нарушить работу самого редактора относительно компонента, и при этом
нужно было сохранять архитектурную совместимость с форматом хранения проекта на сервере и его генерацией в конечное
приложение.
Задача (front end часть проекта)
В визуальном редакторе Appery.io упростить и минимизировать время разработки и добавления новых визуальных
компонентов.
В старом варианте все компоненты были непосредственной частью самого редактора, соответственно, время разработки
было очень продолжительным.
Что было реализовано
В новом редакторе для AngularJS-проектов был продуман подход компонентного SDK (Component SDK), когда компоненты
полностью отделены от редактора. При этом компоненты описываются в декларативном стиле как полу-самостоятельные
сущности, а "мир редактора" для них скрыт за слоем абстракции. Это позволило существенно упростить разработку и
добавление новых визуальных компонентов для пользовательских приложений.
12
Задача (front end часть проекта)
В данный момент задачей является сам по себе факт разработки процесса создания AngularJS-приложения в визуальном
редакторе. Как автоматизировать, упростить, сделать наглядным, визуализировать то, что обычно разработчики делают в коде
в любимой IDE, и при этом остаться в рамках проекта, который поддается автоматической кодогенерации? На этот вопрос мы
и пытаемся ответить при разработке нового функционала для визуального редактора Appery.io.
Appery, LLC
Как решается задача
В данный момент происходит замена Code-Mirror на Ace editor, что, возможно, приведёт к решению проблемы.
Как решается задача
Решить перечисленные сложности (а также ряд других) призваны наши текущие активности: Unified project и Server API,
которые позволят объединить компоненты Appery.io в единое целое. В конечном итоге пользователь получит инструменты,
которые позволят ему:
• поддерживать свои приложения в актуальном состоянии менее затратным путём;
• обеспечить должный уровень распределения ролей при разработке приложения (например, разработчик мобильного
приложения, сервиса, базы данных, тестировщик, ... ).
Некоторые текущие задачи
Задача (тестирование)
На данный момент командой автоматизации написано ~5000 Selenium-тестов, настроены еженощные build с помощью
TeamCity на трёх виртуальных машинах; также настроен запуск smoke-набора после каждой сборки тестового окружения.
Сейчас требуют решения следующие задачи: зависание ChromeDriver при наличии на странице Code-Mirror, а также
"съедание" специальных символов при вводе в тот же Code-Mirror в новых версиях FirefoxDriver, из-за чего пока невозможно
обновление до последней версии драйвера.
12
Задача (back end часть проекта)
Элементы проекта Appery.io (мобильное приложение, база данных, серверный код, API Express) могут взаимодействовать друг
с другом. Сложная схема их взаимодействия приводит к таким проблемам обычного пользователя, как:
• невозможность корректного и простого расширения (или изменения) структуры базы данных;
• после того, как пользователь опубликует приложение для продуктивного использования, создание дополнительного
окружения для тестирования и разработки приложения (иными словами, поддержка ALM - Application lifecycle management)
требует существенных усилий;
• адаптация приложения в случае изменения API поставщиком сервиса – достаточно труднозатратный процесс.
Appery, LLC
Марина Кузнецова
job-vinnitsa@exadel.com
Skype: mk.attlantida
www.exadel.com www.facebook.com/exadelinc vk.com/exadel.Ukraine
61072, г. Харьков, пр-т Ленина, 27Б, 5 эт., оф. 50921036, г. Винница, ул. Максимовича, 4, оф. 208
Наши офисы в Украине
Надежда Волощук
job-kharkiv@exadel.com
Skype: nadezhda.voloshchuk
13

More Related Content

Similar to Appery.io Ukraine_2016

Google appengine for_starupweekend2010
Google appengine for_starupweekend2010Google appengine for_starupweekend2010
Google appengine for_starupweekend2010Startup Weekend
 
Qualium Systems – Introduction
Qualium Systems – IntroductionQualium Systems – Introduction
Qualium Systems – IntroductionKostiantyn Levin
 
Meet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis BosakMeet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis BosakAmasty
 
Архитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.NetАрхитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.NetGoSharp
 
DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...
DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...
DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...it-people
 
Новые возможности IBM WebSphere Portal v8 и IBM WCM v8
Новые возможности IBM WebSphere Portal v8 и IBM WCM v8Новые возможности IBM WebSphere Portal v8 и IBM WCM v8
Новые возможности IBM WebSphere Portal v8 и IBM WCM v8Anatoly Kireev
 
Tech talk Angular 2
Tech talk Angular 2Tech talk Angular 2
Tech talk Angular 2DA-14
 
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rusMaxim Shaptala
 
Проект "Нихол"
Проект "Нихол"Проект "Нихол"
Проект "Нихол"E-Journal ICT4D
 
Netbeans Desktop Applications
Netbeans Desktop ApplicationsNetbeans Desktop Applications
Netbeans Desktop Applicationsscassau
 
введение в SharePoint
введение в SharePointвведение в SharePoint
введение в SharePointIvan Padabed
 
Protrarctor and Angular
Protrarctor and AngularProtrarctor and Angular
Protrarctor and AngularSQALab
 
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...Badoo Development
 
Victor Kuzmin - How to organize service development for several mobile platforms
Victor Kuzmin - How to organize service development for several mobile platformsVictor Kuzmin - How to organize service development for several mobile platforms
Victor Kuzmin - How to organize service development for several mobile platformsAndrew Mayorov
 
Микросервисы в .NET Core
Микросервисы в .NET CoreМикросервисы в .NET Core
Микросервисы в .NET CoreAndrew Gubskiy
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NETMedia Gorod
 
Создаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад ПлотникСоздаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад ПлотникSigma Software
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработкиIT-Доминанта
 
Высокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows AzureВысокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows AzureAlexander Feschenko
 
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...UNETA
 

Similar to Appery.io Ukraine_2016 (20)

Google appengine for_starupweekend2010
Google appengine for_starupweekend2010Google appengine for_starupweekend2010
Google appengine for_starupweekend2010
 
Qualium Systems – Introduction
Qualium Systems – IntroductionQualium Systems – Introduction
Qualium Systems – Introduction
 
Meet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis BosakMeet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis Bosak
 
Архитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.NetАрхитектурные решения при создании облачного сервиса на Asp.Net
Архитектурные решения при создании облачного сервиса на Asp.Net
 
DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...
DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...
DUMP-2012 - Мобильные технологии - "Как мы выстраиваем разработку сервиса под...
 
Новые возможности IBM WebSphere Portal v8 и IBM WCM v8
Новые возможности IBM WebSphere Portal v8 и IBM WCM v8Новые возможности IBM WebSphere Portal v8 и IBM WCM v8
Новые возможности IBM WebSphere Portal v8 и IBM WCM v8
 
Tech talk Angular 2
Tech talk Angular 2Tech talk Angular 2
Tech talk Angular 2
 
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rus
 
Проект "Нихол"
Проект "Нихол"Проект "Нихол"
Проект "Нихол"
 
Netbeans Desktop Applications
Netbeans Desktop ApplicationsNetbeans Desktop Applications
Netbeans Desktop Applications
 
введение в SharePoint
введение в SharePointвведение в SharePoint
введение в SharePoint
 
Protrarctor and Angular
Protrarctor and AngularProtrarctor and Angular
Protrarctor and Angular
 
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
 
Victor Kuzmin - How to organize service development for several mobile platforms
Victor Kuzmin - How to organize service development for several mobile platformsVictor Kuzmin - How to organize service development for several mobile platforms
Victor Kuzmin - How to organize service development for several mobile platforms
 
Микросервисы в .NET Core
Микросервисы в .NET CoreМикросервисы в .NET Core
Микросервисы в .NET Core
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET
 
Создаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад ПлотникСоздаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
Создаем масштабируемое корпоративное JavaScript-приложение, Влад Плотник
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
 
Высокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows AzureВысокопроизводительные приложения на базе Windows Azure
Высокопроизводительные приложения на базе Windows Azure
 
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
Высокопроизводительные приложения на базе Windows Azure. Пример реального про...
 

Appery.io Ukraine_2016

  • 1. Appery, LLC Join our team! March 29, 2016
  • 2. Appery, LLC 2 Платформа на основе облака, которая позволяет создавать гибридные мобильные приложения для iOS, Android, Windows Phone Время разработки: 2010 год – настоящее время Коротко о проекте Некоторые компании - пользователи продукта:
  • 3. Appery, LLC 3 Коротко о проекте JavaScript jQuery Cordova HTML5 CSS3 LESS Appery.io Services Appery.io Support Appery.io DevOps Backbone.js Jersey client TypeScript RequireJS AngularJS Ionic Bootstrap Rhino Java Core JavaScript Core J2EE (JMS,EJB) JMeter Gatling Selenium/WebDriver JUnit Maven Apache Camel MongoDB PostgreSQL Server clusters WildFly 8.1 PicketLink Hibernate Spring XStream FreeMarke Appery.io Core Hybrid Mob Apps UI/UX JavaScript HTML5 CSS3 Ionic Cordova Gulp Grunt AngularJS Appery.io Support Hybrid mobile apps UI/UX JavaScript HTML5 CSS3 AngularJS Ionic Cordova Gulp Grunt Puppet Git pgpool PostgreSQL MongoDB clusters Nginx Apache HA + failover load balancers Amazon AWS CDN OpenVPN Munin Nagios SmokePing Tomcat Jenkins
  • 4. Appery, LLC 4 Appery.io Platform Overview
  • 5. Appery, LLC 5 США: Walnut Creek, CA (головной офис компании) Литва: Вильнюс Беларусь: Минск Украина: Харьков, Винница Команда Appery.io
  • 6. Appery, LLC 6 Более 20 человек: • 11 разработчиков, • 5 тестировщиков, • 1 бизнес-аналитик, • 2 DevOps, • 3 инженера технической поддержки. Команда Appery.io
  • 7. Appery, LLC 7 Разработчик ПО более 10 лет. Основная технология: Java. На проекте Appery.io с 2013 года. Текущая роль на проекте: Team lead Как менялась роль на проекте: Senior Java developer Team lead & Scrum Master Текущие задачи: • создание функциональности продукта, отвечающей за полный цикл разработки мобильных приложений. До Appery.io работал на различных проектах, начиная от банковских приложений, заканчивая корпоративными веб-сайтами компаний- гигантов Силиконовой долины. Команда Appery.io “Appery.io - это продукт компании. Работа над продуктом требует более глубокого вовлечения команды в предметную область. В нашем случае несколько проще - мы делаем продукт для таких же разработчиков, как и мы. Часто мы имеем дело с задачами, которые находятся за пределами области знаний нашей команды, и приходится изучать что-то новое. Не всегда это интересно, но полезно - это бесспорно. Поверьте мне на слово: Appery.io - это проект, на котором скучать не приходится. К счастью, у меня сейчас лучшая команда, с которой я когда-либо работал”. Андрей Яковенко
  • 8. Appery, LLC 8 Работает в IT сфере более 6 лет. На проекте Appery.io с 2012 года. Текущая роль на проекте: Senior QA engineer Как менялась роль на проекте: Junior QA Middle QA Senior QA Текущие задачи: • тестирование редактора по созданию Custom REST Services; • тестирование соединений с базами данных и работа с моделями данных. Поочерёдно работал на всех частях проекта . До работы тестировщиком был системным администратором, бухгалтером. Команда Appery.io “Appery.io отличается от других проектов своей сложностью, потому что, по сути, это конструктор для создания приложений, в котором может быть неограниченное число исходов для юзеров, и их невозможно полностью покрыть тестами. В связи с этим, нужно искать правильные подходы, которые могут дать нам максимальное качество за имеющееся время и с теми ресурсами, какие у нас есть”. Михаил Курганский
  • 9. Appery, LLC 9 Работает в IT сфере более 3 лет. На проекте Appery.io с 2012 года. Текущая роль на проекте: Senior QA engineer. Как менялась роль на проекте: Junior QA Middle QA Senior QA Текущие задачи: • тестирование мобильных гибридных приложений; • тестирование front-end части платформы. Благодаря работе на проекте Appery.io ознакомился с такими современными фреймворками, как Ionic, Bootstrap, AngularJS, и основами автоматизации тестирования. Команда Appery.io “Важно, что проект инновационный, очень мало аналогов, интересно о нем рассказывать людям. Часто мы сами проектируем фичи, пытаемся улучшить юзабилити, предложить свои идеи. Это дает хороший опыт. Есть ощущение, что вкладываешь часть себя в продукт, поэтому большинство людей в команде переживают за успешность проекта. В команде есть старый сработавшийся “ скелет” людей, которые несут бесценные знания. Все знают, что к ним можно обратиться за решением какой-либо проблемы, они имеют огромное уважение, у них можно многому научиться”. Эдуард Андроник
  • 10. Appery, LLC 10 Разработчик ПО более 4 лет. На проекте Appery.io с 2012 года. Текущая роль на проекте: JavaScript developer (support команда). Как менялась роль на проекте: Junior Java developer Middle Java developer Middle JavaScript developer Текущие задачи: работа в команде поддержки продукта. Работал в back end, front end, support командах Appery.io. Команда Appery.io “Appery.io позволяет разрабатывать гибридные приложения различной сложности проще и значительно быстрее, чем это можно сделать в простой IDE. Любой желающий может работать с нашей платформой, а, если возникают вопросы, команда поддержки 24/7 придет на помощь. Каждый день мы сталкиваемся с десятками различных уникальных задач, которые необходимо решить в кратчайшие сроки”. Сергей Кулибаба
  • 11. Appery, LLC Некоторые текущие задачи Возникшие в процессе реализации сложности Подавляющее большинство компонентов - это структурно-сложные элементы, часто с глубокими зависимостями от настроек внешних элементов; т. е. компонент может перестроить всю свою структуру под влиянием одной из его настроек. По этой причине самым сложным являлся слой абстракции, когда компонент должен формировать свою внутреннюю структуру на лету, сообщая её редактору, и это не должно было нарушить работу самого редактора относительно компонента, и при этом нужно было сохранять архитектурную совместимость с форматом хранения проекта на сервере и его генерацией в конечное приложение. Задача (front end часть проекта) В визуальном редакторе Appery.io упростить и минимизировать время разработки и добавления новых визуальных компонентов. В старом варианте все компоненты были непосредственной частью самого редактора, соответственно, время разработки было очень продолжительным. Что было реализовано В новом редакторе для AngularJS-проектов был продуман подход компонентного SDK (Component SDK), когда компоненты полностью отделены от редактора. При этом компоненты описываются в декларативном стиле как полу-самостоятельные сущности, а "мир редактора" для них скрыт за слоем абстракции. Это позволило существенно упростить разработку и добавление новых визуальных компонентов для пользовательских приложений. 12 Задача (front end часть проекта) В данный момент задачей является сам по себе факт разработки процесса создания AngularJS-приложения в визуальном редакторе. Как автоматизировать, упростить, сделать наглядным, визуализировать то, что обычно разработчики делают в коде в любимой IDE, и при этом остаться в рамках проекта, который поддается автоматической кодогенерации? На этот вопрос мы и пытаемся ответить при разработке нового функционала для визуального редактора Appery.io.
  • 12. Appery, LLC Как решается задача В данный момент происходит замена Code-Mirror на Ace editor, что, возможно, приведёт к решению проблемы. Как решается задача Решить перечисленные сложности (а также ряд других) призваны наши текущие активности: Unified project и Server API, которые позволят объединить компоненты Appery.io в единое целое. В конечном итоге пользователь получит инструменты, которые позволят ему: • поддерживать свои приложения в актуальном состоянии менее затратным путём; • обеспечить должный уровень распределения ролей при разработке приложения (например, разработчик мобильного приложения, сервиса, базы данных, тестировщик, ... ). Некоторые текущие задачи Задача (тестирование) На данный момент командой автоматизации написано ~5000 Selenium-тестов, настроены еженощные build с помощью TeamCity на трёх виртуальных машинах; также настроен запуск smoke-набора после каждой сборки тестового окружения. Сейчас требуют решения следующие задачи: зависание ChromeDriver при наличии на странице Code-Mirror, а также "съедание" специальных символов при вводе в тот же Code-Mirror в новых версиях FirefoxDriver, из-за чего пока невозможно обновление до последней версии драйвера. 12 Задача (back end часть проекта) Элементы проекта Appery.io (мобильное приложение, база данных, серверный код, API Express) могут взаимодействовать друг с другом. Сложная схема их взаимодействия приводит к таким проблемам обычного пользователя, как: • невозможность корректного и простого расширения (или изменения) структуры базы данных; • после того, как пользователь опубликует приложение для продуктивного использования, создание дополнительного окружения для тестирования и разработки приложения (иными словами, поддержка ALM - Application lifecycle management) требует существенных усилий; • адаптация приложения в случае изменения API поставщиком сервиса – достаточно труднозатратный процесс.
  • 13. Appery, LLC Марина Кузнецова job-vinnitsa@exadel.com Skype: mk.attlantida www.exadel.com www.facebook.com/exadelinc vk.com/exadel.Ukraine 61072, г. Харьков, пр-т Ленина, 27Б, 5 эт., оф. 50921036, г. Винница, ул. Максимовича, 4, оф. 208 Наши офисы в Украине Надежда Волощук job-kharkiv@exadel.com Skype: nadezhda.voloshchuk 13