기록공간

4장. 서버 프로그램 구현 본문

자격증공부/정보처리기사_실기

4장. 서버 프로그램 구현

입코딩 2020. 11. 21. 23:03
반응형

#1 개발환경 구축

개발환경 구축

1. 개발환경 구축의 개념

 

■ 개발환경 구성 시 구현될 시스템 요구사항의 명확한 이해가 필요하다.

 

 

2. 개발 도구의 분류 (빌구테형)

 

- 드 도구 : 작성한 코드의 빌드 및 배포를 수행하는 도구

- 현 도구 : 개발자의 코드 작성과 디버깅, 수정 등의 작업을 지원하는 도구

- 스트 도구 : 코드의 기능 검증과 전체의 품질을 높이기 위해 사용하는 도구

- 상 관리 도구 : 개발자들이 작성한 코드와 리소스 등에 대한 버전 관리를 위한 도구

 

 

3. 개발환경 구성요소

 

■ 서버 하드웨어 개발환경

- 웹 서버 :  HTTP를 이용한 요청/응답 처리, 정적 콘텐츠(Java Script, CSS, Image) 처리

- 웹 애플리케이션 서버 : 동적 콘텐츠(JSP, Servlet) 처리

- 데이터베이스 서버 : 데이터의 수집, 저장을 위한 용도로 사용

- 파일 서버 : 파일 저장 하드웨어로 물리 저장장치를 활용한 서버

 

■ 클라이언트 하드웨어 개발환경

- 클라이언트 프로그램 : 설치를 통해 사용자와 커뮤니케이션

- 웹 브라우저 : 웹 서비스 형태로 브라우저를 통해 사용자와 커뮤니케이션

- 모바일 앱 : 모바일 디바이스에 설치되어 활용되는 애플리케이션

- 모바일 웹 : 모바일상 웹 브라우저를 통해 서비스 제공

 

■ 소프트웨어 개발환경

- 운영체제 

- 미들웨어

- DBMS 

 

■ 형상관리의 개념

소프트웨어 개발을 위한 전체 과정에서 발생하는 모든 항목의 변경 사항을 관리하기 위한 활동이다.

 

■ 형상관리의 절차 (식통감기)

- 형상  

- 형상  

- 형상

- 형상

 

#2 공통 모듈 구현

공통 모듈 구현

1. 공통 모듈 구현의 개념

 

■ 모듈(Module)의 개념

모듈은 크게 독립된 하나의 소프트웨어 또는 하드웨어 단위를 지칭하는 용어이다.

 

■ 모듈화의 개념 

소프트웨어의 성능 향상시키거나 복잡한 시스템의 수정, 재사용, 유지 관리 등이 용이하도록 기능 단위의 모듈로 분해하는 설계 및 구현 기법이다.

 

■ 모듈화 기법

- 루틴 : 소프트웨어 특정 동작을 수행하는 일련의 코드로 기능을 가진 명령들의 모임

- 메인 루틴 : 프로그램의 주요한 부분. 메인 루틴은 서브 루틴을 호출

- 서브 루틴 : 메인 루틴에 의해 필요할 때마다 호출되는 루틴

 

 

2. 소프트웨어 모듈 응집도

 

■ 응집도(Cohesion)의 개념

모듈의 독립성을 나타내는 개념으로, 모듈 내부 구성요소 간 연관 정도이다.

 

■ 응집도의 유형 (우논시절 통순기)

- 연적 응집도 : (응집도 제일 나쁨) 구성요소가 연관이 없을 경우

- 리적 응집도 : 유사한 성격을 가짐, 특정 형태로 분류

- 간적 응집도 : 특정 시간에 처리

- 차적 응집도 : 순차적으로 수행

- 신적 응집도 : 동일한 입출력 사용

- 차적 응집도 : 한 활동으로부터 나온 출력값을 사용

- 능적 응집도 : (응집도 제일 좋음) 모든 기능이 단일한 목적을 위해 수행

 

 

3. 소프트웨어 모듈 결합도

 

■ 결합도(Coupling)의 개념

모듈 외부의 모듈과의 연관도 또는 모듈 간의 상호의존성이다.

 

■ 결합도의 유형 (내공 외제 스자)

- 용 결합도 : (결합도 제일 높음) 다른 모듈 내부에 있는 변수, 기능을 다른 모듈에서 사용할 경우

- 통 결합도 : 모듈 밖 전역 변수를 참조하고 갱신하는 식으로 상호작용 할 경우

- 부 결합도 : 두 개의 모듈이 외부에서 도입된 기능을 공유할 경우

- 어 결합도 : 값 뿐만 아니라 어떻게 처리해야 한다는 제어 요소가 전달되는 경우

- 탬프 결합도 : 모듈간 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우

- 료 결합도 : (결합도 제일 낮음) 전달되는 파라미터를 통해서만 상호 작용이 일어나는 경우

 

 

4. 공통 모듈 구현 절차

 

■ MVC 디자인 패턴

 

- Model(모델) : 애플리케이션이 무엇을 할 것인지 정의

- View(뷰) : 화면에 무엇인가를 보여주기 위한 역할

- Controller(컨트롤러) : 모델이 어떻게 처리할지를 알려주는 역할

 

 

5. 팬인(Fan-In) 및 팬아웃(Fan-Out)

 

팬인 

어떤 모듈을 제어(호출)하는 모듈의 수, 모듈 자신을 기준으로 모듈에 들어오면 팬인

 

■ 팬아웃

어떤 모듈에 의해 제어(호출)되는 모듈의 수, 모듈 자신을 기준으로 모듈에서 나가면 팬아웃

 

공통 모듈 테스트

1. 공통 모듈 테스트의 종류 (화메 화드스)

 

- 이트박스 테스트

- 서드 기반 테스트

- 면 기반 테스트

- 테스트 라이버 / 테스트

 

#3 서버 프로그램 구현

서버 프로그램 구현

1. 서버 프로그램 세부 구현 프로세스 (디스 다써클)

 

- DTO/VO

- SQL문

- DAO

- Service

- Controller

 

#4 배치 프로그램 구현

배치 프로그램

1. 배치 프로그램 개념

 

■ 사용자와의 상호작용 없이 일련의 작업들을 작업 단위로 묶어 정기적으로 반복 수행하거나 정해진 규칙에 따라 일괄 처리하는 방법이다.

 

 

2. 배치 프로그램의 필수 요소 (이온정)

 

- 벤트 배치 : 사전에 정의해 둔 조건 충족 시 자동으로 실행 

- 디맨드 배치 :  사용자의 명시적 요구가 있을 때마다 실행

- 기 배치 : 정해진 시점에 정기적으로 실행

 

 

3. 배치 스케줄러

 

■ 배치 스케줄러 개념

일괄 처리를 위해 주기적으로 발생하거나 반복적으로 발생하는 작업 지원하는 도구이다.

반응형

'자격증공부 > 정보처리기사_실기' 카테고리의 다른 글

6장. 화면 설계  (0) 2020.11.22
5장. 인터페이스 구현  (0) 2020.11.22
3장. 통합 구현  (0) 2020.11.21
2장. 데이터 입출력 구현  (0) 2020.11.21
1장. 요구사항 확인  (0) 2020.11.09
Comments