OpenQuality.ru

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

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

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


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

Добрый день.

 

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

В блоге опубликована статья “Sikuli: обертки и свернутые сессии”.

 

Баги и дыры

 

• Мистическая история с Dropbox, или почему не стоит класть все яйца в одну корзину.

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

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

• Из серии “нарочно не придумаешь”: функция нахождения четных чисел, реализованная умопомрачительным способом, дала сбой во Франции.

• Очередная иллюстрация того как много бед может принести лишний пробел в команде rm (Unix).

• Современные информационные технологии помогают прослыть Нострадамусом, мухлевать с прогнозами и влиять на экономику и политику.

• Скрытая мощь в обработке исключений: история одного ретро-бага, приводившего к краху операционной системы.

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

• История одного бага в IE: вот что бывает с теми кто меняет расположение Favorites.

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

• Самые нелепые баги: повод посмеяться и задуматься.

 

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

 

• Symfony2 + HAProxy + Apache2 + Redis + MySQL + PHP = обработка миллиарда запросов в неделю.

• Впечатляющие подробности о проекте StackOveflow: технологии; статистика; процессы разработки, тестирования и развертывания; команда; извлеченные уроки.

• Новый 8-ядерный микропроцессор Эльбрус-8С: перечень уникальных особенностей и сферы возможного применения.

• Кэширование данных: десять капканов, в которые не стоит наступать.

• Сервис Bitly: сокращать ссылки легко, но трудно сделать этот процесс надежным и масштабируемым.

• Todd Hoff считает невозможным обеспечить неприкосновенность персональных данных пользователей и призывает предоставить к ним коммерческий доступ в целях дальнейшего развития экономики и общества.

 

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

 

• Состоялся релиз SObjectizer 5.3.0 – реализации модели акторов для C++, позволяющей использовать работающих на разных нитях агентов, общающихся между собой посредством сообщений.

• Just – самое опасное слово при разработке программного обеспечения.

• Язык PHP, широкими шагами идущий вперед, заслужил право на спецификацию.

• Абстракции в коде: как вы яхту назовете, так она и поплывет.

• Разрыв шаблона, или история о том как рекурсия прижилась в программировании.

• Краткая памятка о двух ошибках в работе приложения на базе nginx и haproxy, а также способы их ликвидации.

• Помощь пользователю должна приходить ненавязчиво, в нужном месте и в нужное время.

• Устаревший код: удалить нельзя использовать.

• Как стать Властелином Windows 7: несколько полезных советов.

• Баг в Java-коде вносит смятение и хаос? NetBeans Debugger спешит на помощь.

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

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

• Шесть уважительных причин не спешить с переходом на Java 8.

• Антипаттерны в Python с позиций производительности, стиля и других критериев.

• 10 подходов к обеспечению безопасности приложений.

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

• Попытка провести оценку: какие рефакторинги наиболее эффективны.

• Функциональное программирование: не так страшен черт как его малюют.

• Подборка советов по работе с bash, ssh, xargs и другими компонентами в среде Unix.

 

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

 

• Steve Rowe (Microsoft) продолжает рассказ о новых веяниях в разработке и оценке качества ПО: data driven quality encourages shipping with minimum viable quality and then fixing issues as they arise.

• Великий бета-тестировщик, или роскошная история о том почему комбинация клавиш Ctrl-F в Outlook вызывает операцию редиректа, а не поиска.

• Как измеряется покрытие кода тестами в Google: инструмент и статистика.

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

• Кто сторожит сторожей, или как оценивать свои тесты.

• Steve Rowe освещает четвертую волну тестирования ПО: понятие “data driven quality” подразумевает менее жесткие требования к продукту с возможностью оперативного внесения изменений.

• Dmitry Vyukov (Google) рассказывает об инструменте ThreadSanitizer, который позволяет находить баги, связанные с гонками данных (data race).

 

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

 

• Шеф Дилберта убедился на собственном опыте, что толковых инженеров не стоит подталкивать к бестолковой активности.

• Дилберт пожаловался на перегрузки, получил помощника, которому не рад, но питает надежду договориться о гибком графике.

• Чем хороший программист отличается от плохого, и насколько Линус Торвальдс был прав в своей оценке.

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

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

• Тяжело в учении, легко в бою: практика прохождения интервью.

• Консультант сделал свое дело и может уходить. Наша песня хороша, начинай сначала.

 

Эпизоды

 

Т1. Нашел важный баг, но его сочли технически сложным и отложили “на потом”.
Т2. Придется найти еще более важный и сложный баг, тогда первый баг сочтут легкой прогулкой!

 

Р. Вижу по коду, что этот модуль не должен работать.
Т. Вижу по тестам, что модуль работает.
Р. Сейчас кое-что подправлю, и баг сразу будет стабильно воспроизводиться!

 

До встречи.

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

Комментарии


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

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



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

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


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

Список всех статей с краткой аннотацией и разбивкой по рубрикам. Открыть карту.

ПОДПИСКА

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

ИЩЕЙКА