단위 모듈 : 기능을 모듈로 구현
● 구성 요소 : 처리문, 명령문, 데이터 구조 ● 독립적인 컴파일 가능
< 구현 단계 >
1. 단위 기능 명세서 작성 : 단위 기능을 명세화한 문서
● 추상화 작업 필요 ● 대형 시스템을 분해하여 단위 기능별로 구분
2. 입/출력 기능 구현 : 명세서에 정의한 데이터 형식에 따라 입/출력 기능을 위한 알고리즘 및 데이터 구현
● CLI, GUI의 연동 고려
● Open Source API를 이용하여 간편하게 구현
-> CLI : 키보드를 통해 명령어를 입력받는 UI
-> GUI : 키보드 뿐만 아니라 마우스 등의 도구를 통해 그래픽적 요소로 명령을 입력받는 UI
-> IPC : 모듈 간 통신 방식 구현하기 위해 사용, 복수의 프로세스 수행
( ● 공유 메모리 ● 소켓 ● 세마포 ● 파이프 ● 메시지 )
3. 알고리즘 구현 단계 : 단위 기능별 요구 사항들을 구현 가능한 언어를 이용하여 모듈로 구현
● 단위 기능들이 사용자의 요구와 일치하는지 확인하는 과정 필요
단위 모듈 테스트 : 모듈이 정해진 기능을 정확히 수행하는지 검증
● 환경과 데이터 준비 ● 시스템 수준의 오류는 잡아낼 수 없음
테스트 케이스 : 구현된 SW가 사용자의 요구사항을 정확하게 준수했는지 확인
● 식별자 ● 출력 명세 : 예상되는 출력 결과 ● 입력 명세 : 입력 데이터, 조건 ● 환경 설정
테스트 프로세스 : 작업들이 테스트의 목적과 조건을 달성할 수 있도록 도와주는 과정
< 단계 >
1. 계획 및 제어 단계 : 계획 수립, 계획대로 진행되도록 제어
2. 분석 및 설계 단계 : 목표 구체화, 테스트 시나리오와 테스트 케이스 작성
3. 구현 및 실현 단계 : 테스트 프로시저에 명세
4. 평가 단계 5. 완료 단계
통합 개발 환경( IDE ) : 개발에 필요한 여러 툴 통합
● 통합 개발 환경 도구 : 통합 개발 환경을 제공하는 SW
● 테스트할 때 오류가 발생한 부분을 시각화 하므로 수정 용이
● 외부의 다양한 서비스와 연동, 개발에 편의를 제공
빌드 : 소스 코드 파일들을 컴퓨터에서 실행할 수 있는 제품 SW 변환하는 과정
-> Ant
● 아파치 SW 재단에서 개발한 SW ● XML 기반의 빌드 스크립트
● 자유도와 유연성이 높아 복잡한 빌드 환경에도 대처 가능 ● 재사용이 어려움
-> Maven
● 규칙이나 표준이 존재, 예외 사항만 기록 ● 컴파일과 빌드 동시 수행
● 의존성을 설정하여 라이브러리 관리
( 의존성 : 빌드 스크립트 안에 사용하고자 하는 라이브러리를 등록하면, 빌드 수행 시 인터넷상의 라이브러리 저장소에서 해당 라이브러리를 찾아 코드에 추가 )
-> Gradle
● 안드로이드 스튜디오의 공식 빌드 도구
● 의존성을 활용, 그루비 기반의 빌드 스크립트를 사용
( 그루비 : 자바를 기반, 여러 프로그래밍 언어들의 장점을 모아 만들어진 동적 객체지향 프로그래밍 언어 )
'자격증 > 정보처리기사 - 필기' 카테고리의 다른 글
소프트웨어 개발 - 애플리케이션 테스트 관리 (0) | 2020.02.06 |
---|---|
소프트웨어 개발 - 제품 SW 패키징 (0) | 2020.02.05 |
소프트웨어 개발 - 데이터 입/출력 구현 (0) | 2020.02.02 |
소프트웨어 설계 - 인터페이스 설계 (0) | 2020.01.30 |
소프트웨어 설계 - 애플리케이션 설계 (0) | 2020.01.24 |