완벽한 프로젝트는 어떻게 만들어지는가 또는 소프트웨어 빌드 시스템 원리와 활용
로즈
2025-04-28 10:48
5
0
-
- 관련링크 : https://www.kdgmall.kr5회 연결
본문
완벽한 프로젝트는 어떻게 만들어지는가

도서명 : 완벽한 프로젝트는 어떻게 만들어지는가
저자/출판사 : 이성대 , 박창우, 이콘
쪽수 : 240쪽
출판일 : 2014-03-10
ISBN : 9788997453207
정가 : 14000
추천사 ㆍ 008
들어가며 ㆍ 010
1장 살아있는 생명체, 프로젝트
1. 프로젝트? 프로젝트! ㆍ 016
2. 퍼펙트 프로젝트, 성과가 우선이다 ㆍ 021
3. 프로젝트 요람에서 무덤까지, 프로젝트 생애 주기 ㆍ 025
4. 어디까지 고민해봤니, 프로젝트 관리 지식영역 ㆍ 029
5. 전투보다 전쟁에서 이겨야, 프로그램 관리 ㆍ 034
6. 선택과 집중, 포트폴리오관리 ㆍ 040
7. 조직의 성숙도를 높여라, 전사적 프로젝트 경영 ㆍ 047
사설1 프로젝트 주치의가 되자 ㆍ 050
2장 퍼펙트 프로젝트 핵심 조건
1. 내부 정책을 세워라 ㆍ 056
2. 프로세스를 만들어라 ㆍ 059
3. 프로젝트 관리, 단계별 전략을 수립하라 ㆍ 065
4. 정책과 프로세스의 가이드 ㆍ 070
사설2 글로벌 PM스탠다드와 역량 ㆍ 075
3장 준비
1. 완벽한 관리 ‘Back to Back’ ㆍ 082
2. 이해관계자와 소통하라 ㆍ 088
3. 주계약자 vs 부계약자 ㆍ 098
4. RFP 검토와 제안 준비 ㆍ 103
5. 계약 개요서의 활용 ㆍ 111
6. 리스크 배분이 아닌 리스크의 최소화 ㆍ 115
7. 리스크와 프로젝트 관리자 ㆍ 119
사설3 계약 협상 단계에도 뛰어들자 ㆍ 125
4장 착수
1. 성공과 실패의 순간, 계약 체결 ㆍ 132
2. 성공을 예견하는 프로젝트 ㆍ 139
3. 실패의 전조, 트러블 프로젝트의 불길한 징후들 ㆍ 144
4. 계약서 수령 후의 프로젝트 관리자 ㆍ 151
5. 리스크 관리를 위한 체크리스트 ㆍ 157
사설4 파이를 키우는 성공 협상 ㆍ 161
5장 실행
1. 완벽한 구성원을 찾아라 ㆍ 168
2. 많은 것이 결정되는 킥오프 미팅 ㆍ 171
3. 성공을 결정하는 계약 수정과 분쟁 ㆍ 175
4. 프로젝트는 상대방과 서면으로 합의한 대로 ㆍ 181
5. 수익을 만드는 프로젝트 관리자 ㆍ 186
사설5 프로젝트 단계와 협상력 ㆍ 190
6장 완료
1. 프로젝트의 완성, 검수 ㆍ 194
2. 트러블 프로젝트 살리기 ㆍ 198
3. 성공의 반복, 또 다른 프로젝트 계약 ㆍ 203
4. 지속적 성공을 위한 프로젝트 경험의 관리 ㆍ 208
사설5 프로젝트의 성공은 관리자의 역량에 달려있다 ㆍ 213
마치며 ㆍ 217
부록 - 프로젝트 관리자를 위한 케이스 연구와 질문
Case 1. 해외 화공 플랜트 신축 프로젝트 ㆍ 224
Case 2. 인도네시아 데이터 센터 구축 프로젝트 ㆍ 230
Case 3. 특수선의 수주 ㆍ 235
* 프로젝트 관리자들이 많이 받는 질문들 ㆍ 238
관련 문헌 ㆍ 239
소프트웨어 빌드 시스템 원리와 활용

도서명 : 소프트웨어 빌드 시스템 원리와 활용
저자/출판사 : 피터 스미스, 에이콘출판
쪽수 : 700쪽
출판일 : 2014-07-31
ISBN : 9788960775671
정가 : 45000
1부 _ 빌드 시스템의 기초
1장 빌드시스템 개요
빌드 시스템이란?
___컴파일형 언어
___인터프리트형 언어
웹 기반 애플리케이션
___단위 테스트
___정적 분석
___문서 생성
빌드 시스템의 구성 요소
___버전 관리 도구
___소스와 오브젝트 트리
___컴파일 도구와 빌드 도구
___빌드 머신
___릴리스 패키징과 타겟 머신
빌드 프로세스와 빌드 기술
빌드 시스템을 어떻게 사용하는가?
___빌드 관리 도구
빌드 시스템 품질
정리
2장 Make 기반 빌드 시스템
계산기 프로그램 예제
간단한 Makefile 작성
Makefile의 간결화
빌드 타겟 추가
프레임워크 사용
정리
3장 프로그램의 런타임 뷰
실행 프로그램
___네이티브 기계어 코드
___모놀리식 시스템 이미지
___전체가 인터프리트되는 프로그램
___인터프리트된 바이트 코드
라이브러리
___정적 링크
___동적 링크
설정 파일과 데이터 파일
분산형 프로그램
정리
4장 파일 타입과 컴파일 도구
C/C++
___컴파일 도구
___소스 파일
___어셈블리 언어 파일
___오브젝트 파일
___실행 프로그램
___정적 라이브러리
___동적 라이브러리
___C++ 컴파일
자바
___ 컴파일 도구
___소스 파일
___오브젝트 파일
___실행 프로그램
___ 라이브러리
C#
___컴파일 도구
___소스 파일
___실행 프로그램
___라이브러리
기타 파일 타입
___ UML 기반 코드 생성
___그래픽 이미지
___XML 구성 파일
___국제화와 리소스 번들
정리
5장 하위 타겟과 빌드 변형
하위 타겟 빌드
소프트웨어의 여러 에디션 빌드
___빌드 변형 구체화
___코드의 다양화
서로 다른 타겟 아키텍처 빌드
___다중 컴파일러
___플랫폼에 특성화된 파일이나 함수
___다중 오브젝트 트리
정리
2부 _ 빌드 도구
6장 Make
GNU Make 프로그래밍 언어
___종속성 그래프를 만드는 Makefile 규칙
___Makefile 규칙 유형
___Makefile 변수
___기본 제공 변수와 규칙
___데이터 구조체와 함수
___프로그램 흐름 이해
___추가 참고 도서
빌드 시스템 적용 사례
___시나리오 1: 단일 디렉터리의 소스코드
___시나리오 2(a): 여러 디렉터리의 소스코드
___시나리오 2(b): 여러 디렉터리를 지원하는 재귀 Make
___시나리오 2(c): 여러 디렉터리를 지원하는 포함 Make
___시나리오 3: 새로운 컴파일 도구 정의
___시나리오 4: 여러 변형으로 빌드
___시나리오 5: 빌드 트리 클리닝
___시나리오 6: 잘못된 빌드 디버깅
찬사와 비판
___찬사
___비판
___평가
유사 도구
___버클리 Make
___NMake
___ElectricAccelerator와 SparkBuild
정리
7장 Ant
Ant 프로그래밍 언어
___ ‘Hello World’에서 한 걸음 더 나아가기
___타겟의 정의와 사용
___Ant의 제어 흐름
___속성 정의
___기본 제공 태스크와 옵션 태스크
___여러 파일과 디렉터리 선택
___조건
___Ant 언어의 확장
___추가 참고 문헌
빌드 시스템 적용 사례
___시나리오 1: 단일 디렉터리의 소스코드
___시나리오 2(a): 여러 디렉터리의 소스코드
___시나리오 2(b): 여러 디렉터리의 여러 build.xml 파일
___시나리오 3: 새로운 컴파일 도구 정의
___시나리오 4: 여러 변형으로 빌드
___시나리오 5: 빌드 트리 클리닝
___시나리오 6: 잘못된 빌드 디버깅
찬사와 비판
___찬사
___비판
___평가
유사 도구
___NAnt
___MS 빌드
정리
8장 SCons
SCons 프로그래밍 언어
___파이썬 프로그래밍 언어
___간단 컴파일
___빌드 환경 관리
___프로그램 흐름과 종속성 분석
___리빌드할 시기 결정
___언어 확장
___기타 흥미로운 기능
___추가 참고 문헌
빌드 시스템 적용 사례
___시나리오 1: 단일 디렉터리의 소스코드
___시나리오 2(a): 여러 디렉터리의 소스코드
___시나리오 2(b): 여러 SConstruct 파일
___시나리오 3: 새로운 컴파일 도구 정의
___시나리오 4: 여러 변형으로 빌드
___시나리오 5: 빌드 트리 클리닝
___시나리오 6: 잘못된 빌드 디버깅
찬사와 비판
___찬사
___비판
___평가
유사 도구
___Cons
___Rake
정리
9장 CMake
CMake 프로그래밍 언어
___CMake 언어 기초
___실행 프로그램과 라이브러리 빌드
___흐름 제어
___크로스플랫폼 지원
___네이티브 빌드 시스템 생성
___기타 흥미로운 기능과 추가 참고 문헌
빌드 시스템 적용 사례
___시나리오 1: 단일 디렉터리의 소스코드
___시나리오 2: 여러 디렉터리의 소스코드
___시나리오 3: 새로운 컴파일 도구 정의
___시나리오 4: 여러 변형으로 빌드
___시나리오 5: 빌드 트리 클리닝
___시나리오 6: 잘못된 빌드 디버깅
찬사와 비판
___찬사
___비판
___평가
유사 도구
___Automake
___Qmake
정리
10장 이클립스
이클립스의 개념과 GUI
___프로젝트 생성
___프로젝트 빌드
___프로젝트 실행
___내부 프로젝트 모델 사용
___기타 빌드 기능
___추가 참고 문헌
빌드 시스템 적용 사례
___시나리오 1: 단일 디렉터리의 소스코드
___시나리오 2: 여러 디렉터리의 소스코드
___시나리오 3: 새로운 컴파일 도구 정의
___시나리오 4: 여러 변형으로 빌드
___시나리오 5: 빌드 트리 클리닝
___시나리오 6: 잘못된 빌드 디버깅
찬사와 비판
___찬사
___비판
___평가
유사 도구
___C/C++ 개발 도구인 이클립스 CDT
정리
3부 _ 고급 주제
11장 종속성
종속성 그래프
___증분 컴파일
___전체, 증분, 하위 타겟 빌드
잘못된 종속성 문제
___누락된 종속성이 런타임 에러를 유발시키는 문제
___누락된 종속성이 컴파일 에러를 유발시키는 문제
___원치 않는 종속성이 과도한 재빌드를 유발시키는 문제
___원치 않는 종속성이 종속성 분석을 실패하게 하는 문제
___순환 종속성 문제
___종속성 대용으로 암묵적 시퀀싱에 관한 문제
___Clean 타겟이 제대로 클리닝하지 못하는 문제
1단계: 종속성 그래프 계산
___정확한 종속성 정보 수집
___종속성 그래프 캐싱
___캐싱된 종속성 그래프 갱신
2단계: 만료된 파일 알아내기
___타임스탬프 기반 메소드
___체크섬 기반 메소드
___플래그 비교
___기타 고급 메소드
3단계: 컴파일 단계 시퀀싱
정리
12장 메타데이터로 빌드
디버깅 지원
프로파일링 지원
커버리지 지원
소스코드 문서화
단위 테스트
정적 분석
빌드 시스템에 메타데이터 추가
정리
13장 소프트웨어 패키징과 설치
아카이브 파일
___패키징 스크립트
___기타 아카이브 포맷
___개선 방법
패키지 관리 도구
___RPM 패키지 관리 포맷
___rpmbuild 프로세스
___RPM 명세 파일의 예
___명세 파일로부터 RPM 파일 작성
___RPM 예제 설치
커스터마이즈된 GUI 설치 도구
___널소프트 스크립터블 인스톨 시스템(NSIS)
___설치 스크립트
___페이지 정의
___라이선스 페이지
___디렉터리 선택
___주 컴포넌트
___옵션 컴포넌트
___사용자 정의 페이지 정의
___설치 페이지와 설치 제거 프로그램
정리
14장 버전 관리
버전 관리로 할 수 있는 일
___빌드 기술 파일
___도구 참조
___큰 바이너리 파일
___소스 트리 구성
소스 트리에서 하지 말아야 할 것
___소스 트리에 생성된 파일
___버전 관리하에서 생성된 파일
___빌드 관리 스크립트
버전 번호 붙이기
___버전 번호 붙이기 시스템
___버전 번호 편성과 업데이트
___버전 번호 저장과 검색
정리
15장 빌드 머신
네이티브 컴파일과 크로스컴파일
___네이티브 컴파일
___크로스컴파일
___혼합 환경
중앙 집중식 개발 환경
___빌드 머신이 다른 이유
___여러 다른 빌드 머신 관리
오픈소스 개발 환경
GNU Autoconf
___상위 레벨 작업 흐름
___Autoconf 예제
___authheader와 autoconf 실행
___빌드 머신상의 configure 스크립트 실행
___구성 정보 사용
정리
16장 도구 관리
도구 관리 규칙
___도구 규칙 #1: 노트를 작성하라
___도구 규칙 #2: 소스코드는 반드시 버전 관리하에 두라
___도구 규칙 #3: 주기적으로 도구를 업데이트하라
___도구 규칙 #4: 도구 바이너리의 버전 관리
___규칙 깨기
자신만의 컴파일 도구 작성
렉스와 야크로 사용자가 작성한 도구
정리
4부 _ 확장
17장 최종 사용자를 위한 복잡성 감소
빌드 프레임워크
___빌드 기술에서 개발자 해당 부분
___빌드 기술에서 프레임워크 부분
___구성상의 규약
___Maven: 예제 빌드 도구
여러 다른 변형 지원을 피해야 하는 이유
___테스트해야 할 다른 변형들을 갖게 됨
___소스코드가 난해해짐
___빌드 시간이 증가할 수 있음
___더 많은 디스크 공간이 요구됨
복잡성을 줄이기 위한 다양한 방법
___최신 빌드 도구를 사용
___자동으로 종속성을 검출
___생성된 파일을 소스 트리 외부에 보관
___빌드 트리 클리닝이 올바르게 동작하는지 확인
___첫 번째 에러 후 빌드를 중단
___의미 있는 에러 메시지를 제공
___입력 매개변수의 유효성을 확인
___빌드 스크립트를 필요 이상으로 복잡하게 만들지 마라
___애매한 언어 기능 사용을 피하라
___빌드 프로세스를 제어하기 위해 환경 변수 사용을 자제하라
___릴리스와 디버그 빌드가 유사한지 확인하라
___실행될 정확한 명령을 표시하라
___도구에 대한 버전 관리 참조
___빌드 명령의 버전 관리
___컴파일 플래그 변경 자동 검출
___빌드 시스템에서 버전 관리 도구 호출을 자제하라
___가능한 한 자주 지속적인 통합을 하라
___단일 형식의 빌드 머신에 대한 표준화를 하라
___단일 컴파일러에 대한 표준화를 하라
___#ifdef로 코드가 난잡해지는 것을 피하라
___의미 있는 심볼 이름을 사용하라
___오래된 코드를 제거하라
___소스 파일을 이중화하지 말라
___일관성 있는 빌드 시스템을 사용하라
빌드 시스템 변경에 대한 일정과 인력 관리
정리
18장 빌드 크기 관리
모놀리식 빌드의 문제점
컴포넌트 기반 소프트웨어
___컴포넌트 사용의 장점
___컴포넌트란?
___컴포넌트를 단일 프로젝트로 통합
사람과 프로세스 관리
___개발 팀 구조
___컴포넌트 라인업 관리
___컴포넌트 캐시 관리
___새로운 소프트웨어 기능 조정
아파치 아이비
정리
19장 더 빠른 빌드
빌드 시스템 성능 측정
___시동 단계에서 성능 측정
___컴파일 단계에서의 성능 측정
___성능 측정 도구
___문제 해결: 성능 개선
빌드 회피: 불필요한 재빌드 제거
___오브젝트 파일 캐싱
___스마트 종속성
___기타 빌드 회피 기술
병렬 처리
___빌드 클러스터/클라우드
___병렬 빌드 도구
___확장성의 한계
디스크 사용 줄이기
정리
댓글목록0