소프트웨어 개발자, 디자이너, IT 관련 업무 종사자라면 누구나 사용하기 어렵거나, 오류가 잦거나, 결함이 있는 소프트웨어 때문에 골머리를 앓은 경험이 있을 것이다. MIT 컴퓨터과학과 교수 다니엘 잭슨은 이러한 문제의 근본 원인을 해결하기 위해 소프트웨어 디자인에 대한 혁신적인 '콘셉트' 기반 접근법을 제시한다. 이 책은 소프트웨어를 상호작용하는 '콘셉트'들의 집합으로 보고, 이를 통해 복잡성을 줄이고 사용자 경험을 향상시키며 오류를 줄이는 방법을 제시한다. 구글, 애플, 마이크로소프트 등 유명 기업의 소프트웨어 사례를 통해 '콘셉트'를 식별하고 정의하고 보존하고 재사용하는 방법을 배운다. 현직 디자이너뿐만 아니라 소프트웨어 디자인에 첫발을 내딛는 초보자에게도 유용한 이 책은, 소프트웨어 디자인에 대한 새로운 접근 방식을 제시하며 더 나은 소프트웨어를 만들 수 있도록 안내한다.
Contents
01. 집필 동기
소프트웨어 디자인에 대한 관심
컴퓨터 과학 및 타 분야에서의 디자인
디자인의 명확성과 단순성
프로젝트를 시작하게 된 동기
이 책의 목표: 대화의 물꼬 트기
02. 콘셉트의 발견
첫 번째 사례: 당황스러운 백업 동작
드롭박스의 착각
드롭박스의 설명
이것은 어떤 종류의 결함일까?
디자인 계층
멘탈 모델과 콘셉트 디자인
핵심 정리 및 실천사항
03. 콘셉트가 도움을 주는 방법
앱을 특징 짓는 콘셉트
제품군을 특징 짓는 콘셉트
제품을 차별화하는 콘셉트
복잡함을 드러내는 콘셉트
비즈니스를 정의하는 콘셉트
비용과 이익을 결정하는 콘셉트
콘셉트는 관심사를 분리한다
콘셉트는 재사용할 수 있다
콘셉트는 사용성 장애를 식별하는 데 도움이 된다
콘셉트는 안전과 보안을 보장한다
콘셉트는 디자인 비평의 근거가 된다
핵심 정리 및 실천사항
2부. 본질
04. 콘셉트의 구조
애플의 킬러 콘셉트: 휴지통
‘휴지통’ 콘셉트: 마침내 수정된 디자인 결함
데스크톱 출판의 기본 콘셉트: 스타일
유사 스타일
19세기 콘셉트: 예약
디자이너의 예약
핵심 정리 및 실천사항
05. 콘셉트의 목적
목적: 명확성을 위한 첫 단계
목적의 기준
목적은 디자인 난제를 해결한다
목적 없는 콘셉트: 수전 및 에디터 버퍼
목적이 불분명한 콘셉트: 트위터의 ‘마음에 들어요’ 기능
혼란스러운 콘셉트 악용: 베이비시터 사기
이 콘셉트가 정말 그렇게 어려울까? 이미지의 크기에 관한 이야기
누구의 목적인가? 내 것 또는 당신 것?
기만적인 목적
부적합: 목적이 달성되지 않을 때
잘못된 디자인에 따른 치명적인 부적합
상황 변화에 따른 부적합
과거의 부적합으로 회귀
핵심 정리 및 실천사항
06. 콘셉트의 구성
왜 기존 구성은 동작하지 않을까?
새로운 종류의 구성
자유 구성
협업 구성
시너지 구성
휴지통과 폴더의 아름다운 시너지 효과
시너지는 완벽하지 않다
과대-동기화 및 과소-동기화
과대-동기화 및 취소된 세미나의 이상한 사례
과소-동기화 및 가입할 수 없는 그룹
핵심 정리 및 실천사항
07. 콘셉트의 의존성
콘셉트를 점진적으로 확장하기
콘셉트 인벤토리 구축
일반 콘셉트의 목록
콘셉트 의존성 다이어그램
앱 구조 분석 사례
핵심 정리 및 실천사항
08. 콘셉트의 매핑
간단한 개념을 어렵게 만드는 방법
인터페이스에 사용자 매뉴얼 포함
다크 패턴: 의도적 난독화
복잡한 매핑 구성: 지메일 레이블의 미스터리
이해할 수는 있지만, 쓸모 없는: 백블레이즈 복원
실시간 필터링의 수수께끼
모호한 액션 해결
표준 위젯으로 충분하지 않을 때: ‘값 없음’으로 설정
핵심 정리 및 실천사항
3부. 원칙
09. 콘셉트의 구체성
목적 없는 콘셉트
콘셉트 없는 목적
중복 콘셉트
콘셉트 과부화
잘못된 통합에 따른 과부하
거부된 목적에 따른 과부하
새로운 목적에 의한 과부하
피기백에 따른 과부하
목적의 세분성 및 일관성
일관성 기준 적용: 페이스북의 ‘좋아요’ 콘셉트
콘셉트 분할: 페이스북의 ‘좋아요’ 콘셉트
핵심 정리 및 실천사항
10. 콘셉트의 친숙성
성공적인 콘셉트 재사용
슬라이드 그룹화: 발명하지 않기
프리셋 내보내기: 확장이 익숙함을 깨뜨릴 때
콘셉트 구현의 적합성
핵심 정리 및 실천사항
11. 콘셉트의 무결성
노골적인 위반: 복수심에 불타는 식당 주인
글꼴 서식: 오랜 디자인 문제
구글 드라이브에서 평생의 작업물 잃어버리기
핵심 정리 및 실천사항
12. 기억해야 할 질문
전략가, 분석가, 컨설턴트를 대상으로 한 질문
인터랙션 디자이너 및 제품 관리자를 대상으로 한 질문
기술 문서 작성자, 트레이너 및 마케터를 대상으로 한 질문
프로그래머와 아키텍트 대상 질문
연구자 및 소프트웨어 철학자를 대상으로 한 질문
맺음말
감사의 말
리소스
둘러보기
Author
다니엘 잭슨,이정표
MIT의 컴퓨터과학 교수이자 MIT 컴퓨터과학 및 인공지능 연구소의 부소장으로, 『Software Abstractions』(MIT Press, 2016)와 『Portraits of Resilience』(MIT Press, 2017)의 저자이다.
MIT의 컴퓨터과학 교수이자 MIT 컴퓨터과학 및 인공지능 연구소의 부소장으로, 『Software Abstractions』(MIT Press, 2016)와 『Portraits of Resilience』(MIT Press, 2017)의 저자이다.