정보처리기사
(정보처리기사)서버 프로그램 구현
흥부와놀자
2020. 7. 12. 16:34
1. 개발 환경 구축
- 하드웨어 환경 : 웹서버, 웹어플리케이션 서버, 데이터베이스 서버, 파일 서버
- 소프트웨어 환경 : 요구사항 관리도구(JIRA, Trello), 설계/모델링 도구(PlantUML, ArgoUML), 구현도구(Eclipse, VS), 빌드도구(Ant, Gradle, jenkins), 테스터 도구(cppUnit, JUnit, HttpUnit), 형상 관리도구(git, cvs, Subversion)
2. 서버 개발
모듈 및 공통 모듈들을 만들고 모듈들을 통합하는 방식으로 제작됨.
모듈의 독립성은 결합도와 응집도에 의해 측정되며 결합도를 약하게, 응집도는 강하게 하고 모듈의 크기는 작게 만들어야 함.
프레임 워크의 특징 : 모듈화, 재사용성, 확장성, 제어의 역흐름
3. 보안
소프트웨어의 개발보안은 기밀성, 무결성, 가용성을 유지하는것을 목표로함.
- 개발 보안 점검 항목
세션통제, 입력데이터 검증(삽입공격), 인증, 에러처리, 코드오류, 캡슐화, API오용
4. 패키지 소프트웨어와 전용 소프트웨어 차이
패키지 소프트웨어 | 전용 개발 소프트웨어 | |
기능 요구사항 | 70%이상 충족시키는 패키지SW가 존재할때 이용가능 | 모든 기능 요구사항 반영가능 |
안정성 | 품질 검증, 업계 표준 | 개발자 역량에 따라 달라짐 |
라이선스 | 판매자 | 회사 |
생산성 | 개발 인력과 시간 절약 | 개발 인력과 시간 필요 |
호환성 | 보장이 안됨 | 설계 단위부터 고려하여 개발 |
유지보수 | 결함 발생 시 즉시대응 어려움 | 결함 발생 시 즉시대응 가능 |