Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Александр Заозерзский "Сферическое качество код...
Search
DotNetRu
December 16, 2019
Education
0
65
Александр Заозерзский "Сферическое качество кода в вакууме"
DotNetRu
December 16, 2019
Tweet
Share
More Decks by DotNetRu
See All by DotNetRu
Кирилл Лихтарович «Версионирование и кодогенерация в REST API»
dotnetru
0
250
Дмитрий Бабушкин «Мержилка .sln: быстро и надёжно, без UI и юнит-тестов»
dotnetru
0
180
Артём Микулич «Как интегрироваться с (не-)надёжным third-party API при помощи Polly»
dotnetru
0
160
Иван Патудин «gRPC и его реализация в .NET Core»
dotnetru
0
560
Дмитрий Павлов «Greenplum: Быстро, параллельно, консистентно»
dotnetru
0
320
Филипп Бочаров «Распределенная трассировка Jaeger в .NET»
dotnetru
0
340
Андрей Сергеев "Вопросы nullabilily в платформе .NET, применение функционального подхода в разработке с использованием типов Unit, Tagged Union, Optional, Result, разделение исключительных ситуаций и ожидаемых результатов при обработке ошибок."
dotnetru
0
150
Павел Московой "Работа с HTTP в платформе .NET, собственный движок для работы с HTTP, использующий функциональный подход на основе типа Result для обработки HTTP-ответа вместо исключений."
dotnetru
0
140
Сергей Огородников "Практика построения сервисов на основе ViennaNET"
dotnetru
0
160
Other Decks in Education
See All in Education
Open Source Summit Japan 2025のボランティアをしませんか
kujiraitakahiro
0
800
ビジネスモデル理解
takenawa
0
14k
質のよいアウトプットをできるようになるために~「読む・聞く、まとめる、言葉にする」を読んで~
amarelo_n24
0
200
JOAI2025講評 / joai2025-review
upura
0
390
20250611_なんでもCopilot1年続いたぞ~
ponponmikankan
0
150
2025年度春学期 統計学 第6回 データの関係を知る(1)ー相関関係 (2025. 5. 15)
akiraasano
PRO
0
180
Online Privacy
takahitosakamoto
0
100
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
360
バックオフィス組織にも「チームトポロジー」の考えが使えるかもしれない!!
masakiokuda
0
120
中間活動報告会 人材育成WG・技術サブWG / 20250808-oidfj-eduWG-techSWG
oidfj
0
380
2025年度春学期 統計学 第7回 データの関係を知る(2)ー回帰と決定係数 (2025. 5. 22)
akiraasano
PRO
0
150
万博マニアックマップを支えるオープンデータとその裏側
barsaka2
0
740
Featured
See All Featured
A better future with KSS
kneath
239
17k
Being A Developer After 40
akosma
90
590k
Practical Orchestrator
shlominoach
190
11k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
GitHub's CSS Performance
jonrohan
1031
460k
Scaling GitHub
holman
462
140k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Language of Interfaces
destraynor
160
25k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Producing Creativity
orderedlist
PRO
347
40k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Transcript
Сферическое качество кода в вакууме или как балансировать качество ПО
и цели бизнеса Александр Заозерский Комтек 1
Для кого доклад? • Разработчики; • Тимлиды; • Бизнес. 2
Качество программного обеспечения • Wikipedia Способность программного продукта при заданных
условиях удовлетворять установленным или предполагаемым потребностям (ISO/IEC 25000:2014)[1]. 3
Качество программного обеспечения • Том Демарко в 1999 году предлагал
при оценке качества программного обеспечения учитывать, что «качество программного продукта является показателем того, насколько он меняет мир к лучшему». DeMarco, T., Management Can Make Quality (Im)possible, Cutter IT Summit, Boston, April 1999 4
Стандарт ISO/IEC 25010:2011 (ГОСТ Р ИСО/МЭК 25010-2015) Определяют модель качества
продукта, которая включает восемь характеристик верхнего уровня: • функциональная пригодность; • уровень производительности; • совместимость; • удобство использования (юзабилити); • надежность; • защищённость; • сопровождаемость; • переносимость (мобильность). 5
Сопровождаемость ПО 6
Чего хочет Бизнес? 1. Деньги 2. Продукт a. Быстро b.
Дешево c. Качественно 7
Баланс 8
Разработать быстро и качественно... Continuous Integration/Delivery 1. Сборка 2. Проверка
3. Инспекция кода 4. Деплой 9
Разработать быстро и качественно... Стандарты в среде разработки 1. Toolchain
2. Форматирование 3. Naming 4. Комментарии 5. ТЗ 6. Code review 10
Разработать быстро и качественно... Code Review 1. Что проверять? 2.
Менторинг 3. Скорость 11
Разработать быстро и качественно... Стандарты в голове разработчика 1. База
знаний (пишут разработчики) a. Стандарты и соглашения b. Что? Где? 2. Идеи a. Проектирование b. Документация c. Feedback d. Реализация 12
Разработать быстро и качественно... Fail FAST 1. Проектируйте риски 2.
Roslyn Analyzers 3. Git Hooks: pre-commit 4. CI + SonarQube/FxCop/nDepend 5. xUnit 13
Разработать быстро и качественно... Проверка на внимательность Что такое Качество
ПО? 14
Как бизнесу сказать про качество? 1. CI 2. Unit tests
3. Devops 15
Велосипед, быть или не быть? • Разработать с нуля •
Разработать используя сторонние библиотеки • Frameworks • Готовое решение хорошо, но разработать самому интереснее. • Ничего не делать 16
Автоматизация Форматирование .gitconfig Editorconfig Resharper Team Shared settings 17
Ссылки 18
Спасибо за внимание • Вопросы • Контакты ◦ Telegram: @alexandryz
◦ twitter.com/alexandryz 19