Презентация с доклада на SPDay 14.12.2013.
В докладе описываются приемы и инструменты контроля качества кода решений SharePoint, как для заказчика, так и для подрядчика.
2. Обзор
Проблемы с качеством решений SharePoint
• Контроль качества на стороне клиента
• Контроль качества на стороне разработчика
3. Довольны ли вы качеством решений?
• Кто из вас доволен качеством сторонних решений?
• Кто из вас считает качество своих решений достаточно хорошим?
4. Почему возникают проблемы?
• В SharePoint окружение изменчиво и непредсказуемо
• Решения в SharePoint не изолированы друг от друга
• Нигде не написано как делать правильно
• SharePoint чертовски сложен
5. Как это влияет на потребителей
• Нестабильность фермы и потеря функционала
• Падение производительности
• Сложности при апгрейде
6. Как это влияет на разработчиков?
• Высокие затраты на развертывание
• Больше переработок
• Больше затрат на тестирование с меньшим результатом
• Сложность поддержки
7. Как повышать качество?
• Тестирование
• Ручное – только функциональные сценарии
• Нагрузочное – только быстродействие
• Автоматическое – дорого
• Анализ решений (инспекции)
• Вручную – требуется квалификация
• Автоматически – выявляет не все проблемы
8. Что дальше?
Проблемы с качеством решений SharePoint
Контроль качества на стороне клиента
• Контроль качества на стороне разработчика
12. Внутри ящика
• .NET код
• XML файлы: Манифесты, Фичи,
Типы, Поля, Шаблоны…
• HTML/ASPX/ASCX/CSS/JS/XSLT
• Ресурсы: картинки, шаблоны документов
• … и еще 100500 других «мелких деталей»
15. Кто все эти люди?
Проверяет
решение с
помощью
~330 правил
Визуализирует
связи между
частями решения
Считает метрики
кода и артефактов
Делает отчет об
архитектуре
решения
17. Что дальше?
Проблемы с качеством решений SharePoint
Контроль качества на стороне клиента
Контроль качества на стороне разработчика
18. SPCAF в процессе разработки
• Работает прямо в Visual Studio
• Работает небыстро, надо запускать отдельно
• Интегрируется с системой сборки
• Готовый компонент для TFS
• Command-Line Utils для других систем
21. Проблемы
• SPCAF не ориентирован на разработчиков
• Правила часто ругаются на «хороший» код
• SPCAF стоит 2500EUR
• Но есть бесплатный SPCop
22. SPCAF Contrib
• Библиотека правил для SPCAF
• https://spcafcontrib.codeplex.com/
• 33 правила специально для разработчиков
• По состоянию на вчера
• Бесплатно работает в SPCOP