확장메뉴
주요메뉴


닫기
사이즈 비교
소득공제
오픈 소스 소프트웨어로 실습하는 소프트웨어 공학

오픈 소스 소프트웨어로 실습하는 소프트웨어 공학

리뷰 총점9.0 리뷰 2건
정가
32,000
판매가
32,000
구매 시 참고사항
eBook이 출간되면 알려드립니다. eBook 출간 알림 신청
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2017년 02월 28일
쪽수, 무게, 크기 544쪽 | 190*240mm
ISBN13 9788970508986
ISBN10 8970508988

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

저자 소개 관련자료 보이기/감추기

저자 : 정인상
1983~1987: 서울대학교 컴퓨터공학과(학사)
1987~1989: 한국과학기술원 전산학과(석사) 소프트웨어공학 전공
1989~1993: 한국과학기술원 전산학과(박사) 소프트웨어공학 전공
1994~1998: 한림대학교 부교수
1994: 한국전자통신연구원 초빙연구원
1996.7~8: 영국 Durham 대학 방문연구원
1997~1998: 미국 purdue 대학 방문교수
2005.3~2006.2: 미국 콜로라도 주립대 방문교수
1999~현재: 한성대학교 컴퓨터공학부 교수

관심분야: 프로그램 분석, 병렬 및 분산 프로그램 테스팅,
테스트 데이터 자동생성, 모형 검사(model checking)

관련자료 관련자료 보이기/감추기

이 책의 구성과 내용

이 책은 모두 10장으로 구성되어 있다.
1장에서는 소프트웨어 프로세스를 기술한다. 소프트웨어 개발 프로세스를 전통적 개발 모델, 애자일 프로세스, 위험기반 소프트웨어 개발 모델의 3가지로 분류하고 전통적 개발 모델로 폭포수 모델, 애자일 프로세스로 스크럼 그리고 위험기반 소프트웨어 개발 모델로 ISO26262에서 사용되는 자동차 전기전자 시스템의 개발 프로세스를 기술하였다. 이들 개발 모델들은 제각각 특징이 있는 모델들이며 한 눈에 서로 비교가 가능하도록 구성하였다.
2장에서는 객체지향 소프트웨어 개발 방법에 대해 기술하였다. 이를 위해 UML을 소개하고 대표적인 모델링 도구를 기술하였다. 또한 소프트웨어 아키텍처 개념을 소개하고 UML을 사용하여 실제 간단한 프로그램을 모델링하고 완전한 프로그램을 구현하는 실습을 진행한다.

3장에서는 여러 설계 기술을 설명한다. 대표적인 객체지향 설계 원칙인 SOLID에 대해서 이해하기 쉽도록 실제 프로그램을 통해 설명한다. 또한 의존성 주입 개념을 설명하기 위해「Juice」와「Spring 프레임워크」를 통한 실습을 진행한다. 이 책에 나오는 거의 모든 실습이나 예제가 Maven을 사용하기 때문에 간단하게 Maven에 대한 설명으로 시작하도록 구성하였다.
4장은 테스트에 대해 설명한다. 테스트의 중요성, 기본 용어 및 개념, 테스트 원리 및 한계에 대해 예제를 들어 설명한다. 또한 ISO29119에 제시한 소프트웨어 테스트 프로세스에 대해 설명한다. 이 장에서는 실제 소프트웨어 테스트 케이스를 작성하여 실습할 수 있도록 JUnit 테스트 프레임워크에 대해 설명한다. 기본적인 JUnit 프레임워크의 기능과 데이터 위주 테스트를 가능하게 하는「Parameterized 테스트」도 작성할 수 있는 기능도 설명한다.
5장에서는 테스트 케이스 설계 방법의 한 축인 블랙박스 테스트에 대해 설명한다. 동등 클래스 분할 방법, 경계값 분석 방법, 도메인 테스트 방법, 페어와이즈 테스트를 포함한 여러 조합 테스트 방법에 대해 설명한다. 이 방법들은 실제 프로그램 코드에 대해 JUnit으로 테스트 케이스를 작성하도록 예제 및 실습을 구성하였다. 특히 페어와이즈 조합을 생성하기 위한 많은 도구들을「www.pairwise.org」에서 찾아볼 수 있다.
이 중에서 마이크로소프트에서 개발한 PICT 라는 도구는 매우 다양한 기능을 제공하는 조합 테스트를 생성하는 도구이다. 이 장에서는 JUnit과 PICT를 사용하여 페어와이즈 조합을 생성해보자.

6장에서는 블랙박스 테스트 케이스 설계 방법과 함께 테스트 케이스 설계 방법의 대표적인 한 축을 이루는 화이트박스 테스트에 대해 설명한다. 블록 커버리지, 분기 커버리지, 조건 커버리지, MCDC 및 기본 경로 테스트 방법에 대해 설명한다.
7장은 TDD라 불리는 테스트 주도 개발 방식에 대해 설명한다. TDD 개념에 대해 설명하고 JUnit과 Mockito를 이용하여 실제 TDD를 이용하여 프로그램을 개발하는 방식에 대해 설명한다. 단위 테스트를 작성할 때에는 협업하는 클래스의 완성 여부에 상관없어야 되고 테스트 대상이 되는 클래스가 연관된 클래스와 올바르게 협업하는지 검증을 할 수 있어야 한다. 이를 위해서 모의 객체라고도 불리는 협업 클래스의 객체를 테스트 목적으로 만들 수 있어야 한다. 이러한 모의 객체를 수작업으로 만들 수도 있겠지만 많은 시간과 노력이 수반된다. 이러한 수고를 줄이기 위해 많은 종류의 모의 객체 프레임워크가 만들어졌다. 이 중에서도 Mockito는 많이 애용되는 모의 객체 생성 프레임워크 중의 하나이다. 이 장에서는 JUnit과 Mockito를 통한 실습으로 TDD 개념을 이해한다.

8장은 TDD와 더불어 요즘 많은 관심을 받고 있는 행위 주도 개발 방식에 대해 설명한다. 이 장에서는 TDD와 BDD간의 관계에 대해 설명하고 Cucumber 도구를 사용하여 BDD를 통한 프로그램 개발 방식에 대해 설명한다. 특히 이 장을 공부할 때에는 연습문제를 반드시 풀기 바란다. 연습문제 6번은 데이터베이스와 의존 관계에 있는 프로젝트를 수행할 때 BDD가 어떻게 수행되는지에 대한 힌트를 얻을 수 있다.
9장은 Git과 GitHub에 대해 설명한다. 요즘 소프트웨어 개발자라면 반드시 알아야 하는 버전관리 및 협업을 위한 도구이다. 이 주제에 대한 책도 시중에 매우 많이 나와 있으나 이 장에서는 Git과 GitHub에 깔린 여러 개념들을 매우 빠르게 볼 수 있고 이해할 수 있도록 구성하였다.
10장은 지속적 통합에 관해 설명한다. 소프트웨어 개발자라면 반드시 알아야 하는 주제이다. 지속적 통합 개념을 실습으로 체험하기 위해 TraviCI과 GitHub 서비스를 연동하는 방법에 대해 설명한다. 또한 저장소에 들어오는 코드가 얼마나 신뢰 가능한지를 확인하기 위해 Coveralls 서비스 연동을 통해 커버리지 측정을 수행하는 방법에 대해 설명한다.

회원리뷰 (1건) 회원리뷰 이동

한줄평 (1건) 한줄평 이동

총 평점 10.0점 10.0 / 10.0

배송/반품/교환 안내

배송 안내
반품/교환 안내에 대한 내용입니다.
배송 구분 예스24 배송
  •  배송비 : 무료배송
포장 안내

안전하고 정확한 포장을 위해 CCTV를 설치하여 운영하고 있습니다.

고객님께 배송되는 모든 상품을 CCTV로 녹화하고 있으며, 철저한 모니터링을 통해 작업 과정에 문제가 없도록 최선을 다 하겠습니다.

목적 : 안전한 포장 관리
촬영범위 : 박스 포장 작업

  • 포장안내1
  • 포장안내2
  • 포장안내3
  • 포장안내4
반품/교환 안내

상품 설명에 반품/교환과 관련한 안내가 있는경우 아래 내용보다 우선합니다. (업체 사정에 따라 달라질 수 있습니다)

반품/교환 안내에 대한 내용입니다.
반품/교환 방법
  •  고객만족센터(1544-3800), 중고샵(1566-4295)
  •  판매자 배송 상품은 판매자와 반품/교환이 협의된 상품에 한해 가능합니다.
반품/교환 가능기간
  •  출고 완료 후 10일 이내의 주문 상품
  •  디지털 콘텐츠인 eBook의 경우 구매 후 7일 이내의 상품
  •  중고상품의 경우 출고 완료일로부터 6일 이내의 상품 (구매확정 전 상태)
  •  모바일 쿠폰의 경우 유효기간(발행 후 1년) 내 등록하지 않은 상품
반품/교환 비용
  •  고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담임
  •  직수입양서/직수입일서중 일부는 변심 또는 착오로 취소시 해외주문취소수수료 20%를 부과할수 있음

    단, 아래의 주문/취소 조건인 경우, 취소 수수료 면제

    •  오늘 00시 ~ 06시 30분 주문을 오늘 오전 06시 30분 이전에 취소
    •  오늘 06시 30분 이후 주문을 익일 오전 06시 30분 이전에 취소
  •  직수입 음반/영상물/기프트 중 일부는 변심 또는 착오로 취소 시 해외주문취소수수료 30%를 부과할 수 있음

    단, 당일 00시~13시 사이의 주문은 취소 수수료 면제

  •  박스 포장은 택배 배송이 가능한 규격과 무게를 준수하며, 고객의 단순변심 및 착오구매일 경우 상품의 반송비용은 박스 당 부과됩니다.
반품/교환 불가사유
  •  소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  •  소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 : 예) 화장품, 식품, 가전제품, 전자책 단말기 등
  •  복제가 가능한 상품 등의 포장을 훼손한 경우 : 예) CD/LP, DVD/Blu-ray, 소프트웨어, 만화책, 잡지, 영상 화보집
  •  소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  •  디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  •  eBook 대여 상품은 대여 기간이 종료 되거나, 2회 이상 대여 했을 경우 취소 불가
  •  모바일 쿠폰 등록 후 취소/환불 불가
  •  중고상품이 구매확정(자동 구매확정은 출고완료일로부터 7일)된 경우
  •  LP상품의 재생 불량 원인이 기기의 사양 및 문제인 경우 (All-in-One 일체형 일부 보급형 오디오 모델 사용 등)
  •  시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  •  전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
소비자 피해보상
  •  상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리됨
환불 지연에
따른 배상
  •  대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리
  • 품절 상태입니다.
뒤로 앞으로 맨위로 공유하기