Java, NoSQL, SQL, REST API and other scary words, QA (eng)

Free on-line course “Practices for Systems Analysts to Write Implementation Tasks”

Free on-line course «Practices for Systems Analysts to Write Implementation Tasks»
https://www.udemy.com/sa-implementation-tasks/

This course will tell you how to write proper tasks for your developers, if you got any UI with set of fields.

What you will leard from it?
• How to write tasks for developers (UI with fields, grids, buttons)
• What is the high level difference between SQl and NoSQL
• How REST API works

Advertisements
Standard
Requirement management (rus)

Теоретический онлайн-курс «Анализ и Документирование Требований»

Тем временем – у меня и Александра Байкина второй (и последний на ближайшую перспективу) курс на Udemy:

Теоретический онлайн-курс «Анализ и Документирование Требований»
https://www.udemy.com/requirements

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

Чему Вы научитесь?
• Начальным практикам сбора требований
• 3 самым распространенным практикам анализа требований
• Документированию требований (с рассмотрением практик)
• Управлять требованиями

Я и Александр будем очень благодарны вам за личную обратную связь и положительные оценки на юдеми 

Standard
Переезд в США

Теоретический онлайн-курс «Варианты использования (use cases) в действии»

Тем временем – у меня и Александра Байкина дебют на Udemy:

Теоретический онлайн-курс «Варианты использования (use cases) в действии»
https://www.udemy.com/use-cases/

Цель данного курса – научить слушателей описывать требования к информационным системам в виде вариантов использования.
Чему Вы научитесь?
• Применять паттерны Вариантов Использования
• Избегать ошибок, часто встречающихся при использовании Вариантов Использования
• Строить диаграммы Вариантов Использования

Я и Александр будем очень благодарны вам за личную обратную связь и положительные оценки на юдеми 

Standard
Java, NoSQL, SQL, REST API and other scary words, QA (eng)

Cucumber – bridge or another one abyss between BA and QA

Cucumber Introduction:

Cucumber is a tool based on Behavior Driven Development (BDD) framework which is used to write acceptance tests for web application. It allows automation of functional validation in easily readable and understandable format (like plain English) to Business Analysts, Developers, Testers, etc.

Cucumber feature files can serve as a good document for all. There are many other tools like JBehave which also support BDD framework. Initially Cucumber was implemented in Ruby and then extended to Java framework. Both the tools support native JUnit.

Behavior Driven Development is extension of Test Driven Development and it is used to test the system rather than testing the particular piece of code. We will discuss more about the BDD and style of writing BDD tests.

Cucumber could be used along with Selenium and Java and this is more than enough to make me happy.

Cucumber Basics:

In order to understand cucumber we need to know all the features of cucumber and its usage.

#1) Feature Files:

Feature files are essential part of cucumber which is used to write test automation steps or acceptance tests. This can be used as live document. The steps are the application specification. All the feature files ends with .feature extension.

Sample feature file:

Feature: Login Functionality Feature
In order to ensure Login Functionality works,
I want to run the cucumber test to verify it is working
Scenario: Login Functionality
Given user navigates to SOFTWARETETINGHELP.COM
When user logs in using Username as “USER” and Password “PASSWORD”
Then login should be successful
Scenario: Login Functionality
Given user navigates to SOFTWARETETINGHELP.COM
When user logs in using Username as “USER1” and Password “PASSWORD1”
Then error message should be thrown

Continue reading

Standard
Requirement management (rus)

Бесплатный онлайн-практикум для аналитиков

31 июля я и Александр Байкин будем вести новый онлайн-практикум для аналитиков

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

🔹Цель практикума
Этот практикум разработан для Бизнес- и Системных аналитиков.
За время практикума, в котором участники проведут анализ бизнес-ценностей продуктов на рынке и проведут описание требований, будет создана доменная модель, и в завершении – будут поставлены задачи на разработку.

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

🔹Аудитория
Любой специалист, который так или иначе сталкивается с проблемой сбора, анализа, описания и согласования требований.
Уровень аудитории: начинающий и средний.

🔹Длительность практикума 1,5 мес. План проекта.

🔹Кто мы
Александр Байкин и я имеем:
▪Более 25 лет опыта работы с требованиями.
▪Около 10 круглых столов под патронажем Luxoft и других организаций.
▪Курс Разработка и управление требованиями к ПО (https://www.webursitet.ru/product/kratkiy-kurs-sistem..) под эгидой Вебурситет и др.
▪Множество выступлений на конференциях (ЛАФ, Analyst Days, SECR и пр.) и семинарах.
▪Десятки статей в различных интернет-изданиях.
А также Александр является со-организатором Летнего Аналитического Фестиваля и Сообщества Аналитиков uml2.ru

🔹Записаться на практикум
Приготовьтесь к ОЧЕНЬ интенсивной работе и подайте заявку на практикум: Анкета регистрации

Standard
Java, NoSQL, SQL, REST API and other scary words

Load Balancing for Dummies

The long story short – sometimes your application on a server got too many requests and you make a decision to add a brand new server. The question is – how to balance the load between these 2 servers?

Cause we are talking about about theoretical and simple things only – there are 3 basic methods:

  1. Round Robin
  2. Least Connect
  3. Weighted Least Connections

Round Robin is one of the simplest methods for distributing client requests across a group of servers. Going down the list of servers in the group, the round-robin load balancer forwards a client request to each server in turn. When it reaches the end of the list, the load balancer loops back and goes down the list again (sends the next request to the first listed server, the one after that to the second server, and so on). Continue reading

Standard
Java, NoSQL, SQL, REST API and other scary words

Best Practice to display image on a page

Let’s start with something simple – there are three universally supported image formats: GIF, PNG, and JPEG. In addition to these formats, some browsers also support newer formats such as WebP and JPEG XR, which offer better overall compression and more features. So, which format should you use?

1

At first – we should do a good work with images itself (this part is so boring, so, I’ll just provide a short list of recommendations):

  • Sizing. Developers / designers – make sure the images you deliver perfectly fit their required website dimensions. Even if the same image should be made into different sized thumbnails to fit different pages, it’s well worth creating all these different thumbnails rather than deliver a large image and rely on the browser to resize it.
  • Quality. don’t be afraid to experiment with lower JPEG quality levels. For certain websites we found that using a 50% JPEG quality yielded a very reasonable result.
  • Correct Format.Once again, PNG should be used for computer generated images (charts, logos, etc.), JPEG when you are showing a captured photograph.Notice that despite the common belief, PNG will outperform GIF in almost every other aspect.
  • Use compression tools
  • Useless data. Make sure you strip the meta-data off your images and user uploaded photos
  • Using images when CSS3 can be used. This one point is more interesting, but still, we are far away from algorithms. Just make sure you use CSS3 whenever possible. If your graphics designer is responsible for the markup, make sure you ask for CSS3 based elements where it makes sense. This thing should go as a non-functional requirement.
  • Incorrect image cache settings. we highly recommend using aggressive caching for all your website images by setting your images HTTP ‘Expires’ header to as far in the future as possible.
  • Using a single image size across all delivery mediums. The solution is pretty simple – identify your visitors mobile devices and resolution using their user agent and optionally additional client-side Javascript code. With the correct resolution in hand, retrieve the best fitting image from your servers.

Delivering static icons one by one

Other than photos and thumbnails, your website most likely includes many icons (arrows, stars, signs, marks) and auxiliary images. Google’s search results page is comprised of over 80 (!) tiny icons.

A simple solution for this problem is to utilize a CSS Sprite, a single image that contains all your smaller icons. Your web page is modified to download this single image from your server and the page’s HTML uses alternative CSS class names to point to the smaller images within the larger one.

Now, instead of 80 images, Google’s visitors download just a single image. Their browser will quickly download and cache this single image from Google’s servers and all images will be immediately visible.

To be honest, would also highly recommend Font Awesome to be implemented at your page.

Continue reading

Standard