OpenQuality.ru

Качество программного обеспечения

Качество программного обеспечения: в главных ролях

Лента  Радар  Блог  Опыт  
Разум  Видео  Заметки  Эпизоды


Июльская лента: лучшее за месяц (2013)

Добрый день.

 

В выпуске: баги и дыры; архитектура систем; разработка приложений; модульные тесты; тестирование ПО и тестировщики; инструменты автоматизации; человеческий фактор; эпизоды.

 

Баги и дыры

 

• Баг из прошлого: симпатичный алгоритм постраничного отображения записей на странице.

• Отсутствие кнопки Start в Windows 8 обыгрывается на новый лад.

• Финансовая эффективность программ Bug Bounty: кто оказывается в выигрыше?

• Если простого обывателя так легко превратить в квадриллионера, не будет ли так же легко списать кровно заработанные средства со счета невнимательного труженика?

• Сотрудника Google премировали за найденные в Internet Explorer баги.

• Marco Arment cделал расправу с багами в iOS более комфортной с помощью Bugshot.

• История одного низкоуровневого бага: нашел, изучил, победил.

• Разбор бага в системе безопасности Android, который прогремел на весь мир.

• Из-за бага в финансовом программном обеспечении можно угодить в тюрьму.

• Программа поощрения за найденные баги порой может оказываться эффективнее найма собственных тестировщиков.

• Visual Studio и не только: забавные сообщения в интерфейсах.

• Привет из девяностых: одним из критериев качества программы может служить срок ее службы.

 

Архитектура систем

 

• Нормализация базы данных: что такое хорошо и что такое плохо.

• Универсальная Модель Данных, которая гарантированно подойдет для любой системы.

• Риски в функционировании информационных систем: перечень параметров и формул для их вычисления.

• Paul Graham призывает создателей информационных систем больше внимания уделять пользователям и не класть все яйца в корзину масштабирования.

• Горизонтальное и вертикальное масштабирование: несколько вопросов, которые стоит задать при анализе системы.

• Архитектура продукта порой сформирована в череде сменяющих друг друга архитекторов, каждый из которых успел наследить.

• Анализ архитектуры Twitter, позволяющей обслуживать миллионы активных пользователей и обеспечивать быструю передачу твитов.

• Масштабирование информационной системы: где постелить соломку и как избежать потенциальных трудностей.

• Облака – белогривые лошадки, или комикс о необходимости бэкапа облака в другом облаке.

• Пять советов по созданию масштабируемой системы на PHP в облаке EC2.

 

Разработка приложений

 

• Пушкой по воробьям: всегда ли методики ООП эффективны, или задачу можно решить с помощью простой функции?

• Гибкие методы разработки ПО привносят не только плюсы, но и минусы.

• Ничто не вечно под луной, или сказание о неизбежности изменений в процессах разработки ПО.

• Правило трех: при каком условии программный компонент выходит на орбиту многократного использования?

• Jes Schultz Borland рассказывает о хорошем навыке решения задач в IT.

• Wally справедливо полагает, что для незавершения проекта в срок всегда найдется уважительная причина.

• Самое важное в создании программного продукта – хорошо понимать предметную область, в рамках которой он будет работать.

• OAuth 2.0 – The Good, The Bad & The Ugly: обзор популярного фреймворка.

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

• Мнение разработчика: почему так ненадежно программное обеспечение для бизнеса и как сделать его надежным?

• Uncle Bob и Uncle Ben призывают решать поставленные задачи максимально простым способом.

• Greg Brockman, ведущий инженер в Stripe, рассказывает о том, как в компании организован процесс разработки программного обеспечения.

• Краткое пособие по созданию альтернативы для почтовой системы GMail с сохранением ее достоинств и избавлением от недостатков.

• Что такое хороший коммит и почему он хороший?

• Raymond Chen приоткрывает завесу над наследованием окружения родительского процесса дочерним процессом.

• At its heart, web design should be about words. Words don’t come after the design is done. Words are the beginning, the core, the focus.

• Введение в язык Go: сильные стороны и первые шаги.

• Шпаргалка по основым операциям и правилам хорошего тона в Git.

• Что такое декларативное программирование и в чем его преимущества.

• Разработка игр: как выйти сухим из воды.

• Don Knuth делится своим мнением о компьютерной инженерии и программно обеспечении, а также дает несколько практических советов.

• Война ботов за место в ресторане: высокие технологии на службе гастрономических изысков.

• Забавный конвейер конверторов из одного языка программирования в другой.

 

Модульные тесты

 

• TDD: тест должен быть зеленым. А если не зеленый, то мы ему подсобим.

• 12 уроков, извлеченных в процессе внедрения модульных тестов в рамках и вне рамок TDD.

• Google Testing Blog: что такое test doubles и с чем их едят. Три года назад на эту тему.

• Модульные тесты: несколько полезных советов и замечаний.

• Что такое Vertical Slice Testing, и почему ноги у него растут из TDD?

 

Тестирование ПО и тестировщики

 

• Evil Tester выражает негодование по поводу дыр в безопасности неназванного сайта и рассказывает об атаках, которые он провел.

• Как проснуться и взглянуть на продукт и баги под новым углом, когда глаз замылен?

• Data-driven test cases: несколько полезных идей и рекомендаций.

• A/B testing: подводные камни на пути к достоверным результатам.

• Web-приложения для мобильных устройств: какие факторы оказывают влияние на их производительность?

• Elisabeth Hendrickson рассказывает о прошлом и делится своим видением будущего.

• James Bach разбил тестировщиков на 7 типов и описал каждый из них.

• Опечатка: от перемены мест букв (from -> form) кардинальным образом меняется смысл фразы.

 

Инструменты автоматизации

 

• Adam Goucher c очередной подборкой публикаций о тестировании web-приложений и смежных областях (0, 1, 2, 3).

• Scott Hanselman публикует обзор инструментов, позволяющих совершать чудеса в командной строке Windows.

• Хорошая статья по тестированию Spring-приложений, которая может оказаться полезной при тестировании продуктов любой направленности.

• Тестирование производительности и нагрузочное тестирование: обзор инструментов и сервисов.

• О чем говорят нестабильные автотесты: “That ‘randomly failing test’ was really ‘a genuine bug in the code‘”.

 

Человеческий фактор

 

• Что можно узнать о кандидате на позицию разработчика по его тестовому заданию.

• Подъем от инженера до менеджера может оказаться достаточно простым при несоблюдении корпоративных этических стандартов.

• Великолепный марафон от новичка до гуру в web-программировании: 180 сайтов за 180 дней.

• Частное мнение: 7 причин поработать в большой компании.

• Надежность хранения личной информации в Facebook зависит от человеческого фактора.

• Потенциальный пользователь (клиент или потребитель) в значительной мере определяет требования к продукту и его жизненный цикл.

• Качество ПО? Дилберт потрясен размером прибавки к зарплате и обещает возместить это сторицей.

• Чемпионам мира по программированию подготовлены комфортные условия для воинской службы.

• Дилберт цинично насмехается над возможностью прочитать одну волшебную книжку и стать лидером. И вдогонку получает под дых от своего коллеги.

 

Эпизоды

 

М1 (waterfall). Уже два года не было релиза. Печальный конец.
М2 (waterfall). Ну мы же зарелизимся в конце концов. Раз не зарелизились, то это еще не конец…
М3 (agile). Обо’Scrum’ились по полной. Все acceptance-тесты зеленые, а билд дырявый.
М4 (agile). А потому что гибче надо, гибче!

 

Р1. Не могу справиться с этим багом.
Р2. Либо это не твой баг, либо не баг вовсе.
Р1. Не могу объяснить тестировщику, что это не баг, а если и баг, то не мой.
Р2. Либо это не тестировщик, либо тестировщик, но не твой.

 
Всего доброго в августе.

Отправить в Twitter, Facebook, ВКонтакте | Опубликовано 01.08.2013 в рубрике "С миру по нитке"

Комментарии


Добавить комментарий

Пожалуйста, исправьте результат: дважды два равно



КРАТКОЕ СОДЕРЖАНИЕ

Что такое качество программного обеспечения и как его улучшить: теория и практика, задачи и решения, подводные камни и обходные пути.


ПУТЕВОДИТЕЛЬ

Проект был основан в 2008 году. За это время часть статей устарела, а некоторые из них вызывают улыбку, но пусть они останутся в том виде, в котором были написаны. Cписок всех статей с краткой аннотацией и разбивкой по рубрикам: открыть.

ПОДПИСКА

Доступ к самым интересным материалам по электропочте и RSS. Подробности.

ИЩЕЙКА