시스템분석/소프트웨어 공학

> 전체도서 > 시스템분석/소프트웨어 공학

>>  전체도서

>>  전산학개론

>>  프로그래밍 언어

>>  C 언어

>>  자료 구조

>>  데이터베이스/화일처리

>>  운영체제/UNIX시스템

>>  컴퓨터 구조/논리 회로

>>  데이터 통신/인터넷

>>  프로그래밍/전자상거래

>>  시스템분석/소프트웨어 공학

>>  컴퓨터 게임/멀티미디어/컴퓨터 그래픽스

>>  OA/오피스

>>  전산수학/통계학

book list

전체 도서 보기

전산학개론

프로그래밍 언어

C 언어

자료 구조

데이터베이스/화일처리

운영체제/UNIX시스템

컴퓨터 구조/논리 회로

데이터 통신/인터넷

웹 프로그래밍/전자상거래

시스템분석/
소프트웨어 공학

컴퓨터 게임/멀티미디어
컴퓨터 그래픽스

OA/오피스

이산수학/통계학

새로 쓴 소프트웨어 공학

정익사
2017-02-02
조회수 4857

새로 쓴 소프트웨어 공학

 지은이 : 최은만

 ISBN : 978-89-353-0522-3

 금액 : 40,000원


● 발행날짜 : 2016년 2월 15일

● 페이지 : 736페이지

● 판매처 : 온라인 서점

● 강의자료 제공

   책 소개
 책 소개
 저자소개
 목차
Chapter 01 소 개

1.1 소프트웨어
1.1.1 소프트웨어의 유형
1.1.2 소프트웨어와 시스템
1.2 소프트웨어 공학의 필요성
1.2.1 고비용
1.2.2 개발 지연과 낮은 신뢰도
1.2.3 유지보수와 재작업
1.3 소프트웨어 공학이란?
1.3.1 규모
1.3.2 품질과 생산성
1.3.3 일관성과 재현성
1.3.4 변경
1.4 소프트웨어 공학의 접근 방법
1.4.1 단계적 개발 프로세스
1.4.2 품질 보증
1.4.3 프로젝트 관리
1.5 소프트웨어 공학 지식 체계
1.5.1 다른 분야와의 관계
연습문제

Chapter 02 프로세스와 방법론

2.1 소프트웨어 공학의 접근 방법
2.1.1 프로세스와 프로세스 모델
2.1.2 프로세스의 종류
2.2 바람직한 프로세스의 특성
2.2.1 예측 가능성
2.2.2 테스팅과 유지보수 편이성
2.2.3 변경 용이성
2.2.4 결함제거 용이성
2.3 소프트웨어 개발 프로세스
2.3.1 폭포수 모델
2.3.2 프로토타이핑 모델
2.3.3 진화적 모델
2.3.4 나선형 모델
2.3.5 V 모델
2.3.6 Unified 프로세스
2.3.7 애자일 프로세스
2.4 지원 프로세스
2.4.1 관리 프로세스
2.4.2 품질 보증 프로세스
2.4.3 형상 관리 프로세스
2.5 방법론
2.5.1 구조적 방법론
2.5.2 객체지향 방법론
2.5.3 애자일 방법론
연습문제

Chapter 03 프로젝트 관리와 계획

3.1 프로젝트 범위
3.2 노력 추정
3.2.1 노력 추정의 불확실
3.2.2 규모 기반 모델
3.2.3 COCOMO II 모델
3.2.4 기능 점수
3.3 일정 계획
3.3.1 작업 분해
3.3.2 CPM 네트워크
3.3.3 간트 차트
3.3.4 애자일 계획
3.4 조직 계획
3.4.1 책임 프로그래머 팀 구성
3.4.2 에고레스 팀
3.4.3 계층적 팀 구성
3.5 위험 관리
3.5.1 위험 파악
3.5.2 위험 분석과 우선순위 정하기
3.5.3 위험 해결과 모니터링
3.6 계획서 작성과 도구
3.6.1 계획서 작성
3.6.2 도구
연습문제

Chapter 04 요구 분석

4.1 요구
4.1.1 요구의 종류
4.1.2 요구 추출의 어려움
4.2 요구 추출
4.2.1 요구 정보 출처
4.2.2 요구 추출 방법
4.2.3 요구와 제한의 정의
4.3 도메인 분석
4.3.1 도메인 정의
4.3.2 도메인 분석
4.4 사용 사례
4.4.1 사용 사례의 소개
4.4.2 사용 사례 다이어그램
4.4.3 액터 찾기
4.4.4 사용 사례 찾기
4.4.5 사용 사례 관계 찾기
4.5 요구 분석 명세서
4.5.1 명세서 작성
4.5.2 명세서 검토
4.6 요구 관리 도구
연습문제

Chapter 05 모델링

5.1 객체 지향 개념
5.1.1 객체지향의 장점
5.1.2 객체지향과 절차적 방법의 비교
5.1.3 클래스와 객체
5.1.4 객체와 속성
5.1.5 캡슐화
5.1.6 연관
5.1.7 집합
5.1.8 상속
5.1.9 다형성
5.2 UML
5.2.1 배경과 역사
5.2.2 UML 다이어그램
5.2.3 UML 모델링 과정
5.3 정적 모델링
5.3.1 클래스의 표현
5.3.2 관계의 표현
5.3.3 클래스 다이어그램 작성 과정
5.3.4 클래스 찾기
5.3.5 연관 찾기
5.3.6 속성 추가
5.4 동적 모델링
5.4.1 시퀀스 다이어그램의 요소
5.4.2 시퀀스 다이어그램 작성
5.4.3 상태 다이어그램
5.4.4 액티비티 다이어그램
5.5 모델링 도구
연습문제

Chapter 06 아키텍처 설계

6.1 아키텍처 설계란?
6.1.1 아키텍처 설계의 정의
6.1.2 아키텍처 설계의 중요성
6.1.3 아키텍처와 비기능적 요구
6.1.4 아키텍처의 표현
6.2 설계 원리
6.2.1 단계적 분할
6.2.2 추상화
6.2.3 모듈화
6.3 아키텍처 설계 과정
6.3.1 설계 목표 설정
6.3.2 시스템의 타입
6.3.3 아키텍처 표현
6.4 아키텍처 스타일
6.4.1 계층 구조 스타일
6.4.2 클라이언트 서버 스타일
6.4.3 트랜잭션 처리 스타일
6.4.4 MVC 스타일
6.4.5 이벤트 중심 스타일
6.4.6 객체 영속 스타일
6.5 미들웨어 아키텍처
6.5.1 미들웨어 기술의 분류
6.5.2 분산 객체
6.5.3 메시지 중심 미들웨어
6.5.4 애플리케이션 서버
6.6 설계 문서화
연습문제

Chapter 07 상세 설계

7.1 디자인 패턴
7.1.1 팩토리 메소드 패턴
7.1.2 추상 팩토리 패턴
7.1.3 어뎁터 패턴
7.1.4 싱글톤 패턴
7.1.5 컴포지트 패턴
7.1.6 반복자 패턴
7.1.7 옵서버 패턴
7.1.8 상태 패턴
7.1.9 퍼싸드 패턴
7.2 클래스 설계
7.2.1 클래스 인터페이스의 정의
7.2.2 클래스 상태 모델링
7.2.3 클래스 재사용
7.3 사용자 인터페이스 설계
7.3.1 사용자 인터페이스 유형
7.3.2 사용자 인터페이스 설계 원리
7.3.3 화면 설계
7.3.4 출력물 설계
7.4 데이터 설계
7.4.1 데이터베이스 설계 단계
7.4.2 객체와 테이블
연습문제

Chapter 08 코딩

8.1 코딩 원리
8.1.1 코딩 과정
8.1.2 코딩 오류
8.1.3 구조적 프로그래밍
8.1.4 정보 은닉
8.1.5 중복 회피
8.1.6 디메테르의 법칙
8.2 코딩 스타일
8.2.1 명명 규칙
8.2.2 포인터와 레퍼런스
8.2.3 자료형
8.2.4 문장과 수식
8.2.5 오류 처리
8.2.6 코드 문서화
8.3 UML과 코딩
8.3.1 클래스와 인터페이스의 구현
8.3.2 연관의 구현
8.3.3 시퀀스 다이어그램의 구현
8.3.4 상태 다이어그램의 구현
8.4 리팩토링
8.4.1 기본 개념
8.4.2 리팩토링의 사례
8.4.3 리팩토링 과정
8.4.4 코드 스멜
8.5 코드 품질 향상 기법
8.5.1 코드 인스펙션
8.5.2 정적 분석
8.5.3 페어 프로그래밍
8.5 코드 품질 향상 기법
연습문제

Chapter 09 테스팅

9.1 테스팅 기초
9.1.1 오류, 결함, 고장
9.1.2 테스팅 원리
9.1.3 테스트 작업 과정
9.1.4 테스트 케이스
9.2 블랙박스 테스팅
9.2.1 동치 클래스 분해
9.2.2 경계값 분석
9.2.3 원인과 결과 그래프
9.3 화이트박스 테스팅
9.3.1 논리 흐름의 표현
9.3.2 기본 경로 테스팅
9.3.3 싸이클로매틱 복잡도
9.3.4 테스트 커버리지
9.3.5 반복문의 테스팅
9.4 객체지향 테스팅
9.4.1 사용 사례 기반 테스팅
9.4.2 상태 기반 테스팅
9.5 통합 테스팅
9.5.1 빅뱅 통합
9.5.2 하향식 통합
9.5.3 상향식 통합
9.5.4 연쇄식 통합
9.6 시스템 및 인수 테스트
9.6.1 기능 테스트
9.6.2 성능 테스트
9.6.3 보안 테스트
9.6.4 사용자 인터페이스 테스트
9.6.5 인수 테스트
9.7 테스트 도구
9.7.1 코드 분석 도구
9.7.2 테스트 케이스 생성 도구
9.7.3 테스트 케이스 실행 도구
9.7.4 단위 테스트 도구
연습문제

Chapter 10 유지보수

10.1 유지보수의 소개
10.1.1 변경해야 하는 이유
10.1.2 Lehman의 법칙
10.1.3 유지보수의 종류
10.2 유지보수 작업 과정
10.2.1 유지보수 프로세스 모델
10.2.2 프로그램의 이해
10.2.3 변경 파악과 분석
10.2.4 형상 변경 관리
10.2.5 변경 구현, 테스팅, 배포
10.3 형상 관리
10.3.1 베이스라인
10.3.2 형상 관리의 필요성
10.3.3 형상 관리 절차
10.4 역공학
10.4.1 역공학 작업순서
10.4.2 역공학의 용도
10.4.3 재문서화
10.4.4 설계 복구
10.5 리엔지니어링
10.5.1 리엔지니어링 목적
10.5.2 리엔지니어링 과정
10.6 유지보수 도구
연습문제

Chapter 11 품질 보증

11.1 소프트웨어 품질
11.1.1 품질의 의미
11.1.2 품질 속성
11.1.3 소프트웨어 유형과 품질
11.2 품질 측정 방법
11.2.1 품질 측정과 메트릭의 유용성
11.2.2 전통적인 품질 메트릭
11.2.3 객체지향 소프트웨어의 품질 메트릭
11.3 품질 보증 활동
11.3.1 품질 보증 조직
11.3.2 프로세스와 표준 정의
11.3.3 품질 관리
11.4 확인 및 검증 기법
11.4.1 인스펙션
11.4.2 워크스루
11.4.3 동료 검토
11.5 프로세스 개선
11.5.1 CMM
11.5.2 ISO 9001
11.6 품질 보증 도구
연습문제

Chapter 12 부록

Appendix A 도구
A.1 StarUML
A.2 JUnit
A.3 Clover
A.4 Subversion
A.5 Bugzilla

Appendix B 용어 사전

참고문헌
INDEX
0 0