저 자 : 홍장의 / 쪽 수: 528쪽 / 크 기 : 189 * 235 * 24 mm /1029g / ISBN : 9791156646020 / 출간일 : 2022년 06월 10일 출간








목 차


Chapter 01 소프트웨어 공학 개요


01 소프트웨어 고장 사례


02 소프트웨어 위기


03 소프트웨어 공학 기술의 적용


1 소프트웨어 공학적 기법의 종류


2 소프트웨어 공학의 정의와 원리


연습문제


[프로젝트 I] 프로젝트 정의서 작성하기



Chapter 02 소프트웨어 품질


01 소프트웨어 품질의 중요성


02 소프트웨어 품질 요소


1 외적 품질 요소


2 내적 품질 요소


3 프로세스 품질


03 인공지능 소프트웨어 품질


1 전통적인 소프트웨어와의 차이점


2 인공지능 소프트웨어의 품질 특성


3 시스템 관점별 품질 요소


04 소프트웨어 품질 모델 및 표준


1 McCall의 FCM 모델


2 HP의 FURPS 모델


3 ISO 9126 품질 모델


4 ISO 25010 품질 모델


05 소프트웨어 품질 관리


1 정량적 품질 개선


2 정보 저장소


3 예측적 품질 관리


연습문제


[실습 2-1] 스테이크홀더Stakeholder의 기대치 식별하기


[실습 2-2] 새로운 품질 요소 설계하기


[프로젝트 II] 대상 시스템 품질 요소 추정하기



Chapter 03 소프트웨어 개발 프로세스


01 실현 가능성 분석


02 전통적인 소프트웨어 프로세스


03 애자일 및 XP 프로세스


1 신속한 소프트웨어 개발


2 애자일: XP 프로세스


3 애자일: 스크럼 프로세스


4 Chaos와 DevOps


04 소프트웨어 프로세스 개선


1 CMM과 CMMI


2 SPICE & A-SPICE


3 식스 시그마


4 기타 프로세스 표준


연습문제


[실습 3-1] 스크럼 이해하기


[실습 3-2] A-SPICE 생각해보기


[프로젝트 III] 프로세스 모델 선정하기



Chapter 04 DevOps


01 DevOps 개요


02 DevOps 프로세스와 프랙티스


1 DevOps 성공 전략


2 DevOps 프로세스


3 DevOps Toolchain


4 DevOps와 클라우드


5 DevOps 측정 척도


03 DevOps 변형들


1 DevSecOps


2 DevDataOps


3 BizDevOps


4 DevOps와 기술 부채


연습문제


[실습 4-1] 린 원리 적용하기


[실습 4-2] DevOps 도구 설치해보기


[실습 4-3] 용어의 의미 이해하기: 마이크로서비스



Chapter 05 프로젝트 관리


01 프로젝트 관리 필요성


1 프로젝트 관리의 정의


2 프로젝트 관리 단계


3 프로젝트 관리의 실패 원인


02 프로젝트 관리 기법


1 일정 관리 기법


2 비용 관리 기법


3 위험 관리


03 프로젝트 조직


1 프로젝트 팀 구조


2 전사적 운영 조직


04 프로젝트 관리 계획서


05 프로젝트 지원 도구


1 프로젝트 관리 기능


2 PMO 도구


3 엔지니어링 도구


연습문제


[실습 5-1] 작업 분할도 작성해보기


[실습 5-2] 팀 구성 방법 생각해보기


[프로젝트 IV] 프로젝트 관리 계획서 작성하기



Chapter 06 소프트웨어 비용 산정


01 기능 점수 개요


1 소프트웨어 비용과 기능 점수


2 기능 점수 구성 요소


02 기능 점수 산정 절차


1 단계 1: 기능 점수 산정 유형Type 결정


2 단계 2: 범위 및 경계Boundary 선정


3 단계 3: 데이터 기능 산출 및 복잡도 식별


4 단계 4: 처리 기능 산출 및 복잡도 식별


5 단계 5: 예비 기능 점수 산정


6 단계 6: 조정 인자 값 산출


7 단계 7: 최종 기능 점수 산출


03 정규법과 간이법


1 간이법 산정 절차


2 간이법 단계별 산정


04 기능 점수 활용


1 기능 점수와 프로그래밍 언어


2 기능 점수와 품질 척도


연습문제


[실습 6-1] 데이터 기능 산정하기


[실습 6-2] 조정 인자 값 산출을 위한 시스템 특성 평가하기


[실습 6-3] 간이법에 의한 데이터 및 처리 기능 카운트하기


[프로젝트 V] 프로젝트의 기능 점수 산정해보기



Chapter 07 요구사항 도출


01 요구사항 개요


02 요구사항 수집 기법


1 대면 수집 방법


2 비대면 수집 방법


03 요구사항 정의서 작성


연습문제


[실습 7-1].문서 편집기의 요구사항 정의 품질 분석하기


[실습 7-2] 요구사항 수집을 위한 인터뷰 질문 작성하기


[실습 7-3] 요구사항 정리해보기


[프로젝트 VI] 요구사항 정의서 작성하기



Chapter 08 객체지향 분석


01 객체지향과 UML


02 기능 모델링


1 기능 모델링 개요


2 유스 케이스 다이어그램


3 유스 케이스 설명서


03 구조 모델링


1 객체 식별


2 클래스 명세


3 클래스 다이어그램 작성


04 행위 모델링


1 순차 다이어그램 구성 요소


2 순차 다이어그램 작성


3 상태기계 다이어그램 작성


05 분석 산출물 점검


연습문제


[실습 8-1] SysML 알아보기


[실습 8-2] 클래스 다이어그램 작성해보기


[실습 8-3] 산출물 간의 일관성 점검해보기


[프로젝트 VII] 대상 시스템의 요구사항 분석하기



Chapter 09 모듈화 설계


01 모듈화 설계 개요


02 결합력의 이해


1 메시지 결합력Message Coupling


2 데이터 결합력Data Coupling


3 스탬프 결합력Stamp Coupling


4 제어 결합력Control Coupling


5 외부 결합력External Coupling


6 공유 결합력Common Coupling


7 내용 결합력Content Coupling


03 응집력의 이해


1 기능 응집력Functional Cohesion


2 순차 응집력Sequential Cohesion


3 교환 응집력Communicational Cohesion


4 절차 응집력Procedural Cohesion


5 시간 응집력Temporal Cohesion


6 논리 응집력Logical Cohesion


7 우연 응집력Coincidental Cohesion


04 모듈화 응용 기술


1 모듈화와 소모 전력Software Energy Consumption


2 모듈화와 기술 부채Techn