본문 바로가기

분류 전체보기

(90)
정보시스템 운영하기 □ 정보시스템 운영하기 프로젝트가 완료되면 시스템은 운영 단계로 들어가게 된다. 시스템 구축 만 전문으로 하는 프로그래머에게는 운영이라는 단어가 조금 생소하게 느껴질 지 모르지만 운영에 대한 전반적인 업무와 기술을 이해하고 있어야지만 좀 더 유지보수가 쉽고 생산성이 높은 프로그램을 만들 수 있다. 운영 업무를 담당하는 프로그래머 또한 운영에 필요한 전반적인 기술을 잘 알지 못하는 경우가 많다. 기업에서는 개발, 운영, 시스템관리, 보안 등 업무가 분리되어 있기 때문에 자신의 분야가 아닌 분야에서 어떤 일을 하고 어떤 기술이 필요한지 잘 알지 못한다. 하지만 시스템 장애가 발생할 경우 원인 파악을 위해서는 내가 운영하는 시스템과 연관된 시스템 사이에 어떤 장비가 있고 어떤 경로를 통해 정보를 주고 받는지 ..
프로젝트 검수 □ 프로젝트 검수 ○ 검수 프로세스 검수 프로세스 검수 프로세스는 수주사와 발주사 사이에 공문을 주고 받으면서 진행된다. 수주사 측에서 먼저 완료보고서와 최종 산출물이 포함된 준공완료 공문을 통해 검수 요청을 한다. 일반적으로 검수 요청 문서를 접수한 후 2주 내에 검수를 완료해야 하기 때문에 공문을 보내기 전 충분한 사전 교감을 발주사와 가져야 한다. 발주사 측에서는 준공완료 공문을 접수하고 가장 먼저 최종 산출물을 검수한다. 실무적으로는 준공완료 공문을 보내기 전에 비공식적으로 최종 산출물을 발주사에게 먼저 보내고 사전 검토를 받은 후 공문을 발송한다. 산출물 검수가 완료됐다면 검수조서를 작성하게 되는데 여기에는 업무 담당자와 전산 담당자가 검수를 완료했고 이에 대한 책임을 진다는 서명이 담겨있다. ..
서비스 시작 □ 서비스 시작 ○ 운영 환경 전환 작업 테스트가 완료됐으면 이제 시스템을 운영환경으로 옮겨야 한다. 얼핏 보기에 테스트 서버에 있는 데이터를 그대로 옮기면 될 것 같지만, 개발 환경과 운영 환경은 시스템 소프트의 버전과 제품이 다를 수 있고 서버 사양이 다르기 때문에 생각보다 어려운 작업이 될 수 있다. 운영 환경 전환 절차 일반적인 운영환경 전환 절차는 5단계로 나뉜다. 먼저 데이터베이스를 이전해야 한다. 개발 환경에서 생성한 테이블, 인덱스, 함수, 프로시저, 스케쥴러 등 데이터베이스와 관련된 프로그램을 운영 환경에 생성한다. 그리고 시스템에서 필요한 코드를 개발서버에서 이관하거나 추가로 생성해야 한다. 이제 좀 더 시간과 노력이 필요한 데이터를 이관 작업을 준비해야 한다. 데이터는 데이터베이스에 ..
시스템 테스트 – JMeter 활용 □ 시스템 테스트 – JMeter 활용 시스템테스트는 정보시스템이 완전히 통합되어 구축된 상태에서 정보시스템의 기능을 총체적으로 검사하는 것이다. 통합된 각 모듈들이 원래 계획했던 대로 작동하는지, 시스템의 실제 동작과 원래 의도했던 요구사항과는 차이가 없는지 판단하게 된다. 수행 시간, 파일 저장 및 처리 능력, 최대 부하, 복구 및 재시동 능력, 수작업 절차 등을 점검한다. 시스템 검사는 시스템의 내부적인 구현 방식이나 설계에 대한 지식에 관계 없이 테스트를 수행하는 블랙박스 테스트의 일종으로 분류된다. 일반적으로 제안요청서에 많이 나와 있는 “100명이 동시에 사용할 경우 1초이내 결과 표시”와 같은 요구사항은 시스템 테스트를 통해 검증할 수 있다. 대표적인 시스템 테스트 툴인 JMeter를 활용해..
프로젝트는 어떻게 완료하는가 □ 프로젝트는 어떻게 완료하는가 이제 6개월에 걸쳐 스마트영업지원시스템 구축을 완료했다. 제안서, 제안요청서, 업무 문서를 분석하고 고객과의 인터뷰를 거쳐 요구사항을 정의했다. 요구사항명세서를 기반으로 프로세스, 인터페이스, 데이터를 설계했으며 프로그래머는 설계서를 바탕으로 프로그램을 개발했으며 프로그래머는 단위테스트를 통해 자신이 만든 프로그램이 정상적으로 동작하는지 살펴봤다. 이제 고객의 순서이다. 개발된 프로그램이 정상적으로 동작하는지 고객 관점에서 살펴보고 이상 없이 완료됐으면 프로젝트를 마무리하고 비용을 지불해야 한다. 프로젝트 완료 단계는 고객의 입장에서 요구사항에 알맞게 시스템이 구축됐는지 검증하고 문서를 통해 고객사와 개발사 간에 프로젝트의 공식적인 종료를 선언하는 절차이다. 프로젝트 완료..
웹 테스트 자동화 도구 셀레니움 □ 웹 테스트 자동화 도구 셀레니움 셀레니움은 프로그램을 통해 사람과 같이 브라우저를 제어할 수 있는 프로그램이다. 셀레니움은 웹 드라이버와 IDE 형식으로 제공되는데 웹 드라이버(Web Driver)는 C, 파이썬, 루비와 같은 프로그램 언어와 API 수준의 인터페이스를 제공하는 모듈이다. 웹 드라이버를 사용하면 프로그래밍을 통해 웹 스크롤러와 테스트 자동화 도구를 개발할 수 있다. 셀레니움 구성 셀레니움 IDE는 브라우저 플러그인 형태로 제공되는 실행 프로그램이다. 사용자의 브라우저 사용을 기록하고 재현할 수 있다. 간단한 클릭뿐만이 아니라 마우스를 이동하는 것과 로그인 까지 사람이 하는 모든 동작을 기록해서 저장하고 나중에 똑 같이 재현할 수 있다. 셀레니움 IDE를 통해 Record & Play ..
대표적인 단위테스트 도구 JUnit □ 대표적인 단위테스트 도구 JUnit JUnit은 이클립스로 개발하는 자바 환경에서 가장 많이 사용되는 단위 테스트 도구이다. 테스트 함수를 단일 패키지로 묶을 수 있으며 다양한 검증 함수를 지원해 프로그램이 반복적으로 수정되는 프로그램 개발 과정에서 테스트 케이스를 반복적으로 적용할 수 있다. 단위 테스트 시간을 획기적으로 줄일 수 있을 뿐만 아니라 테스트 품질도 향상시킬 수 있다. JUnit, 설정 JUnit을 이클립스에 기본적으로 내장되어 있지만 사용을 위해서는 라이브러리를 추가해 줘야 한다. 이클립스 프로젝트 환경설정에서 Java Build Path > Library > Add Library에서 JUnit을 추가해주면 된다. 사칙연산 프로그램 개발 본격적으로 JUnit을 사용하기 전에 테스트를 ..
프로그램 단위 테스트 □ 프로그램 단위 테스트 ○ 단위테스트란 단위테스트 절차 단위 테스트는 실행 가능한 최소 단위의 프로그램을 테스트하는 것을 말한다. 단위테스트는 중소 규모의 프로젝트에서는 개발자와 설계자가 진행하고 큰 규모의 프로젝트에서는 전문 테스터가 참여하기도 한다. 단위 테스트는 모두 5단계로 구성된다. 테스트 일정과 방법 그리고 담당자를 정의하는 단위 테스트 계획 단계가 있고 어떤 입력 값을 어떤 절차로 넣어 어떤 결과를 얻어야 하는지를 정하는 테스트 케이스 작성 단계가 있다. 단위 테스트는 테스트 케이스를 기반으로 수행하며 테스트가 완료되면 어떤 오류가 발생했는지 결함 보고서에 상세히 기록한다. 개발자는 이를 기반으로 프로그램을 다시 수정하게 된다. 프로젝트 일정이 짧고 투입 인력이 적은 국내 프로젝트의 특성 ..