방구석 상상코딩

21. 개발환경 구축 본문

정보처리기사 실기

21. 개발환경 구축

구석탱 2022. 1. 24. 19:51

개발 도구 분류

1. 빌드 도구

  • 작성한 코드의 빌드 및 배포를 수행하는 도구
  • 각각의 구성요소와 모듈에 대한 의존성 관리를 지원
  • 예 ) Ant, Maven, Gradle

2. 구현 도구

  • 개발자의 코드 작성과 디버깅, 수정 등과 같은 작업을 지원하는 도구
  • 프로그램을 개발할 때 가장 많이 사용되는 도구
  • 예 ) Eclipse, IntelliJ, Spring Tool Suite, NetBeans, Visual Studio

3. 테스트 도구

  • 코드의 기능 검증과 전체의 품질을 높이기 위해 사용하는 도구
  • 코드의 테스트, 테스트에 대한 계획, 수행 및 분석 등의 작업 가능
  • 예 ) xUnit, PMD, Findbugs, Cppcheck, Sonar

4. 형상 관리 도구

  • 개발자들이 작성한 코드와 리소스 등 산출물에 대한 버전 관리를 위한 도구
  • 프로젝트 진행 시 필수로 포함되는 도구
  • 예 ) CVS, Subversion, Git

서버 하드웨어 개발환경

1. 웹 서버

  • HTTP를 이용한 요청/응답을 처리
  • 웹 상의 정적 콘텐츠(CSS, Javascript, Image)를 처리
  • WEB-WAS-DB의 3 계층 구조를 실무에서 활용
  • 예 ) Apache 웹 서버, ISS 웹 서버, Google Web Server, Nginx

2. 웹 애플리케이션 서버

  • 동적 콘텐츠(Servlet, JSP)를 처리하기 위해 사용
  • 예 ) Tomcat, Weblogic, Jeus, Resin

3. 데이터베이스 서버

  • 데이터의 수집, 저장을 위한 용도로 사용
  • 예 ) Mysql, Oracle, MS-SQL, DB2

4. 파일 서버

  • 파일 저장 하드웨어로 물리 저장장치를 활용한 서버
  • 예 ) HDD, SSD

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

1. 클라이언트 프로그램

  • 설치를 통해 사용자와 커뮤니케이션하는 프로그램
  • Visual Basic, C#, Delphi 등으로 개발되어 사용

2. 웹 브라우저

  • 웹 서비스의 형태로 서버에서 웹 애플리케이션을 응답 시 브라우저를 통해 사용자와 커뮤니케이션
  • 일반적인 형태의 웹 사이트가 해당

3. 모바일 앱

  • 모바일 디바이스에 설치되어 활용되는 애플리케이션
  • 앱 스토어, 안드로이드 마켓 등을 통해 다운로드 가능
    * 안드로이드 : 리눅스 커널을 기반으로 스마트폰을 위한 미들웨어와 사용자 인터페이스, 중요 애플리케이션이 포함된 구글이 개발한 운영체제

4. 모바일 웹

  • 웹 브라우저와 동일한 형태로 모바일상 웹 브라우저를 통해 서비스를 제공
  • 모바일에 최적화되어 제공되는 웹사이트가 해당

소프트웨어 개발환경

1. 운영체제

  • 서버의 하드웨어를 사용자 관점에서 편리하고 유용하게 사용하기 위한 소프트웨어
  • 프로젝트의 성격에 따른 운영체제 사용

2. 미들웨어

  • 컴퓨터와 컴퓨터 간의 연결을 쉽고 안전하게 할 수 있도록 해주고 이에 대한 관리를 도와주는 소프트웨어
  • 자바 기반 환경에서 JVM을 설치하여 컨테이너로의 기능을 주로 이용

3. DBMS

  • 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어
  • 데이터의 저장 및 활용을 위해 DBMS를 설치

형상관리

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

형상관리 절차

절차 설명
형상 식별 형상관리 대상을 정의 및 식별하는 활동
추적성 부여를 위해 ID와 관리번호를 부여
변경 관련 이슈 발생 시 ID와 관리번호를 이용하여 추적
형상 통제 형상 항목의 버전 관리를 위한 형상통제위원회 운영
변경요구 관리, 변경제어, 형상 관리 등 통제 지원
베이스라인에 대한 관리 및 형상 통제 수행 가능
형상 감사 소프트웨어 베이스라인의 무결성 평가
베이스라인 변경 시 요구사항과 일치 여부 검토
형상 기록 소프트웨어 형상 및 변경관리에 대한 각종 수행결과를 기록
형상결과 보고서 작성

* 베이스라인 : 개발 과정의 각 단계의 산출물을 검토, 평가, 조정, 처리 등 변화를 통제하는 시점의 기준