메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

소프트웨어 설계의 정석

변화하는 기술 환경에서도 흔들리지 않는 설계의 기본 원칙

한빛미디어

번역서

판매중

  • 저자 : 요시하라 쇼자부로
  • 번역 : 이해영
  • 출간 : 2024-09-02
  • 페이지 : 320 쪽
  • ISBN : 9791169212625
  • 물류코드 :11262
  • 초급 초중급 중급 중고급 고급
5점 (3명)
좋아요 : 12

기능 구현을 넘어 전체 시스템을 조망하며 설계 역량을 강화하는 방법

 

설계는 구현을 위한 준비 작업입니다. 즉 기능을 구현하기 위해서는 올바른 설계가 필요합니다. 이 책은 유스케이스 분석, 개념 모델링, 시스템 아키텍처 등 소프트웨어 설계에 필요한 이론을 폭넓게 다룹니다. 부분적인 기능 개발에서 시스템 설계에 이르기까지의 과정을 구체적인 사례와 함께 설명합니다. 소프트웨어 설계 경험이 많은 고연차 개발자라면 설계에 대한 다양한 관점과 사례들을 정리하고 개발 방식을 되돌아보는 계기가 될 것입니다. 

 

경험이 적은 저연차 개발자라면 과거와 현재의 설계를 알아보고 설계 과정 전반을 경험하며 기본을 다질 수 있습니다. 이 책이 소프트웨어 설계 기본 원리를 익히는 데 주춧돌 역할을 할 것입니다.

요시하라 쇼자부로 저자

요시하라 쇼자부로

IT 아키텍트로서 수많은 중요 시스템을 재구축한 후 IT 컨설턴트로 독립했다. 대형 자동차 회사의 글로벌 기간 시스템 재구축에 참여하는 등 엔터프라이즈 영역 시스템을 개발한 경험이 풍부하다. 이후에는 대형 출판사와 대형 물류 회사에 애자일 개발을 도입하는 등 애자일 개발도 실천하고 있다. 최근에는 여러 회사의 CTO와 임원을 역임하면서 비즈니스 혁신을 위한 개발자 조직 설립을 중심으로 활동하고 있으며, 2020년 (주)어퍼레일(UPPERRAIL)을 설립했다. 정보경영혁신전문대학(iU대학) 객원교수이기도 하다.

이해영 역자

이해영

항상 자극과 도전을 찾는 10년 차 게임 기획자이다. 크래프톤, 앤더스 인터랙티브를 거치면서 다양한 장르의 게임을 개발했고 동시에 다양한 직군의 사람들과 협업해왔다. 현재는 인디 게임 개발에 몰두 중이다.

PART 1 입문 편

 

CHAPTER 1 첫 설계를 잘해내기 위해

_1.1 설계자로 가는 길 
_1.2 개발자로서 느끼는 보람 
_1.3 개발자의 커리어

 

PART 2 설계 편

 

CHAPTER 2 설계의 목적
_2.1 무엇을 설계할 것인가 
_2.2 개발 프로젝트를 진행하는 방법 
_2.3 개발 프로세스 선택과 진행 
_2.4 설계의 목적 
_2.5 나쁜 설계 
_2.6 설계 접근법

 

CHAPTER 3 외부 설계 방법
_3.1 외부 설계란?
_3.2 필요한 업무 지식 
_3.3 유스케이스 분석 
_3.4 개념 모델링 
_3.5 화면 설계 
_3.6 외부 시스템 I/F 설계 
_3.7 Batch 설계 
_3.8 장표 설계 
_3.9 데이터베이스 논리 설계 
_3.10 NoSQL 데이터베이스 설계 
_3.11 비기능 요구사항 정의 및 시스템 설계 
_3.12 시스템 인프라 설계 및 배치 설계

 

CHAPTER 4 내부 설계 방법
_4.1 내부 설계란? 
_4.2 화면 프로그램 설계 
_4.3 비즈니스 로직 프로그램 설계 
_4.4 데이터베이스 프로그램 설계 
_4.5 데이터베이스 물리 설계 
_4.6 테스트를 위한 설계 
_4.7 개발 환경 구축 
_4.8 개발 표준 수립

 

PART 3 아키텍처 편

 

CHAPTER 5 아키텍처의 목적
_5.1 아키텍처란?

 

CHAPTER 6 아키텍처 설계 접근법
_6.1 업무 애플리케이션에 대한 통찰력 
_6.2 객체지향 설계 
_6.3 서브시스템 분할 
_6.4 레이어 
_6.5 처리 공통화(DRY) 
_6.6 설계 및 프로그램 추적성 
_6.7 의존성 주입 
_6.8 마이크로서비스

 

CHAPTER 7 정말 설계가 필요한가
_7.1 다시 새기는 설계의 의미 
_7.2 설계가 필요 없는 이유 
_7.3 설계의 미래

“앞으로 개발자는 큰 시스템을 처음부터 개발할 수 있는 개발자와
큰 시스템의 일부 기능만 개발할 수 있는 개발자로 나뉠 것입니다.
그 차이는 ‘설계를 할 수 있느냐 없느냐’에 달려 있습니다.”

 

설계는 좋은 프로그램을 작성하기 위한 기술입니다. 시스템 개발 과정에서 업무 분석과 요구사항 정의 단계에서는 업무와 실제 세계를 표현하고, 구현 단계에서는 컴퓨터가 이해할 수 있는 프로그래밍 언어와 비트의 세계를 다룹니다. 이 두 세계를 연결해주는 것이 바로 설계입니다. 따라서 더 나은 시스템을 위해서는 올바른 소프트웨어 설계가 필요합니다.

 

그렇다면 설계를 잘하기 위해서는 무엇이 필요할까요? 이 책에서는 세 가지를 제시하고 있습니다. 

  1. 설계의 목적을 정확하게 파악하기
  2. 설계에 필요한 최소한의 기술 익히기
  3. 명확하게 의사소통하기

 

설계에 필요한 최소한의 지식으로는 유스케이스 모델, 개념 모델, 데이터베이스 설계, 아키텍처 설계를 다룹니다. 객체지향과 통합 모델링 언어(UML)가 기본 기술이라면 이러한 지식은 응용 기술에 해당합니다.

 

객체지향이나 UML 입문자를 위한 책을 읽어도 실제로 어떻게 활용해야 할지 모르는 분도 많을 것입니다. 이 책에서 다루는 응용 기술에 대한 설명은 객체지향이나 UML과 같은 기본 기술을 다지는 데에도 도움이 됩니다.

 

『소프트웨어 설계의 정석』은 소프트웨어 개발에 꼭 필요한 설계 원칙과 방법론을 체계적으로 정리한 책입니다. 저자의 실전 경험을 바탕으로 설계 이론과 실제 적용 방안을 알기 쉽게 설명하고 있습니다. 현재의 방식이 앞으로도 계속될 것이라고 단언할 수는 없지만 근간이 되는 기본 원리는 변하지 않습니다. 개발자로서 중요한 것은 기본 원리를 이해하고 다양한 응용 기술을 배우는 것입니다. 설계, 분석, 개발에 대한 흔들림 없는 지식을 쌓고 싶은 분들에게 꼭 필요한 책입니다.

 

이 책의 구성
-    입문 편: 커리어를 쌓기 위해 필요한 역량과 설계 역량의 관계를 설명합니다.
-    설계 편: 설계의 목적, 설계에 필요한 최소한의 기술, 설계 커뮤니케이션에 대해 알아봅니다.
-    아키텍처 편: 설계 편에서 기초를 익힌 사람이 난도가 높은 시스템도 설계할 수 있도록 아키텍처라는 개념을 설명합니다. 아키텍처를 배우는 것은 아키텍트로서 커리어를 쌓는 데 도움이 됩니다.

 

대상 독자
-    소프트웨어 설계가 무엇인지 전반적인 흐름을 알고 싶은 분 
-    소프트웨어 설계 경험은 있지만 기초부터 다시 공부하고 싶은 분
-    SI로 이직을 고민하고 있는 분 
-    아키텍트를 지향하는 분

이 책을 통해 여러가지를 알게 되었으며 그 중
다섯가지의 목적을 염두에 두고 설계를 한다면, 더 견고하고 유지보수 가능한 시스템을 만들고 운영이 편리할 것 같다는 생각이 들었습니다.
특히 3번의 "이해관계자 간 정보 공유" 부분을 보면서, 앞으로 프로젝트를 할 때 협업의 중요성을 더 많이 느끼고, 팀원들과 소통하는 경험을 많이 쌓아야겠다는 생각이 들었습니다.

또한 데이터베이스 논리 설계에서 정규화의 중요성에 대해 설명해주는데
정규화는 데이터베이스의 효율적인 설계와 데이터 중복 방지에 큰 역할을 하며, 데이터의 무결성을 유지하는 데 필수적인 것과  각 정규형(1차부터 5차까지)의 개념을 깊게 이해하게 되었고, 데이터베이스 논리 설계를 어떻게 만들어야 체계적이고 견고하게 만드는지 깨달은 것 같습니다.

이와 같은 내용들로 실무에 적용할 수 있는 많은 내용을 배우게 되어 매우 좋았으며 소프트웨어 설계에 대한 이해를 높이고 싶은 개발자 분들께 이 책을 추천드리며, 설계의 목적과 패턴을 명확히 이해하는 것이 얼마나 중요한지 깨달을 수 있을 것입니다. 감사합니다.

하지만 이제 생겼다 바로 소프트웨어 설계의 정석 ~ 소프트웨어 설계 시 참고할만한 책이 출간되어 너무 좋다

이 책은 소프트웨어 설계의 본질을 이해하고, 변화를 두려워하지 않는 설계 철학을 배울 수 있는 훌륭한 안내서입니다. 설계 패턴과 원칙을 학습하면서, 변화하는 기술 환경에서도 유지보수 가능한 소프트웨어를 만드는 데 필요한 통찰을 얻을 수 있었습니다. "소프트웨어 설계의 정석"은 초보자뿐만 아니라, 경험 많은 개발자와 아키텍트에게도 깊이 있는 지식을 제공하는 책입니다. 특히, 실용적인 예제와 사례를 통해 설계에 대한 자신감을 키울 수 있었습니다.

  "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
소프트웨어 설계의 정석
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
소프트웨어 설계의 정석
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
소프트웨어 설계의 정석
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실

최근 본 책0