7. SOFTWARE
QUALITY
VISUALIZATION
Bjarne Stroustrup
Inventor of C++ and author of The C++ Programming Language
I like my code to be elegant and efficient. The logic should be
straightforward to make it hard for bugs to hide, the
dependencies minimal to ease maintenance, error handling
complete according to an articulated strategy, and performance
close to optimal so as not to tempt people to make the code messy
with unprincipled optimizations. Clean code does one thing well.
Ward Cunningham
Inventor of Wiki/ Fit. Co-inventor of eXtreme Programming.
Motive force behind Design Patterns. Smalltalk and OO thought leader.
The godfatehr of all those who care about code
You know you are working on clean code when each routine
you read turns out to be pretty much what you expected.
You can call it beautiful code when the code also makes it
look like the language was made for the problem.
SOFTWARE
QUALITY
VISUALIZATION
클린 코드
그런데 뭘 확인해야 할까요?
10. SOFTWARE
QUALITY
VISUALIZATION
소나큐브 | 워크플로우 - ADAM
분석
Analysis
표시
Display
조치
Action
관리
Management
SOFTWARE
QUALITY
VISUALIZATION
• 일곱가지 코드 품질 축7 Axes of Code Quality
• 하나의 플랫폼Single platform
• 개발 환경과의 통합Integration to legacy environment
분석Analysis
11. SOFTWARE
QUALITY
VISUALIZATION
분석 | 일곱가지 코드 품질 기준
SOFTWARE
QUALITY
VISUALIZATION
분석 | 하나의 플랫폼
• 20+ 프로그래밍 언어 분석 가능
• 기존 정적 분석 규칙Coding rules의 통합 및 개선
• 단일화 된 웹서비스 형태의 분석 결과 제공
19. SOFTWARE
QUALITY
VISUALIZATION
소나큐브 X 캐시슬라이드
• 신규 기능에 의한 기술 부채 증가 여부
• 메인라인Mainline의 품질 변화 추적
• 기존 시스템Legacy System 기술 부채 해결
SOFTWARE
QUALITY
VISUALIZATION
Q&A
creatinov.kim@gmail.com
www.creatinov.org
20. SOFTWARE
QUALITY
VISUALIZATION
깨끗한 코드=습관=문화
내가 하기 싫어하면 남도 하기 싫어한다
전문가=장인정신
SOFTWARE
QUALITY
VISUALIZATION
• Clean Code
A Handbook of Agile Software Craftmanship | Robert C. Martin
• The Goal
A Process Ongoing Improvement | Eliyahu M. Goldratt & Jeff Cox
• SonarQube User Guide
http://www.sonarqube.org/documentations
참고자료