PMS9 (과제 관리 시스템 - Project Management System)은

Spring 4 + MyBatis 3 + MariaDB (Maven)를 기반으로,

웹 사이트 개발을 쉽게 할 수 있다는 것을 보여주는 예제로 제작하였으며,

이중에서 몇 가지 주요 기능에 대한 개발 과정

따라하면서 개발할 수 있도록 간단하게(?) 정리하였다.




기존에 공개한 과제 관리 시스템 (PMS9)에 대한 간단한 설명소스

간단한 설명을 읽고 다음 내용을 읽으면 도움이 될 것이다.


이중에서 간단한 예제 몇가지를 중심으로 개발 방법을 정리한

과제 관리 시스템 (PMS9_making)에 대한 소스는

Github에서 확인할 수 있다.

쉽게 개발하는 방법은 다음과 같다.

  1. Project9과 같은 웹사이트 제작에 필요한 주요 기능은 미리 구현
  2. 특별한 기능은 가급적 라이브러리 사용
  3. 타이핑은 가급적 하지 않고 CPR (Copy, Paste, Replace)만 사용

이 내용을 다시 풀어서 작성하면


1 번은 솔루션 SI를 의미한다.

솔루션을 활용하는 업체들은 보유한 제품에

거의 모든 기능이 구현되어 있기 때문에

현재 개발하려는 웹사이트에서 필요로 하는 기능(프로세스)만 추가하는 식으로 개발한다.

여기에서는 Spring 4 + MyBatis 3 + MariaDB (Maven) 기반으로

필요한 기능을 미리 구현해 놓은 것이 Project9이다.

Project9을 토대로 필요한 기능을 구현하는 식으로 개발한다.


두번째로 웹 사이트마다

고유의 특수한 기능(treegrid/calendar)들이 필요할 경우가 많다.

특히, 자바스크립트나 CSS를 이용하여 보기 좋게 구성하는 경우가 많은데

웬만한 것은 모두 인터넷에서 상용이나 무료로 구할 수 있다.

거의 없는 경우는 없으니 만들려 하지 말고

다른 사람에 의해 검증된 라이브러리,

특히 오픈 소스를 활용하는 것이 좋다.

(제작한 경우 웹 브라우저 호환성 등 고려해야 할 것도 많고 시간이 지난 후 문제가 된 경우가 많다.)


3 번은 1 번의 의미와 통하는 것으로

자가 복제를 의미한다.

현재 작성하는 페이지가 기존에 없는 것 같아도

CRUD (Create, Read, Update, Delete)에서 벗어나지 않는다.

따라서, 비슷한 기능이나 코드를 복사(Copy)해서

활용하는(Paste)하는 것이 좋다.

이 경우에도 전체적인 룰을 유지해 주면

타이핑 없이 문자열 바꾸기(Replace)로 작성 가능하다.


이상의 내용은 개인적인 경험과 견해를 바탕으로 하는 것이다.

그리고, 이러한 3가지 룰을 지켜서 개발하면

웬만한 웹 사이트는 소수의 인원과 시간으로 개발할 수 있었고

가장 중요한 사항인 유지 보수에 큰 문제가 생기지 않았다.

또, 초보자와 같이 해도 기본 틀을 보면서 따라가기 때문에

문제 발생이 적어지는 장점도 있다.


샘플로 제작한 PMS9의 경우

화면설계서와 ERD 작성에 약 5시간,

기본적인 개발을 진행하는 데

약 10시간 정도가(정확하지 않음) 소요되었다.

이러한 쉬운 개발이 되기 위해서는

앞서 정리한 3가지 조건이 성립되고

개발하는 업무에 대한 분석/설계가

잘 되어 있어야 한다는 전제 조건이 있다.

이것은 개발할 것에 대하여 잘 알고 있어야 한다는 의미로,

준비가 잘 되어 있다면

쉽고 즐거운 개발이 될 수 있다.


PMS9을 개발하는 순서는

먼저, 프로젝트에 대한 CRUD를 만드는 것이다.

다음으로, 하나의 프로젝트에 대하여

개별 작업을 할당하고 (treegrid)

이 개별 작업을 손쉽게 확인할 수 있도록

일자별로 보거나 (calendar)

작업자별등으로 볼 수 있게 구현한다.


기존에 공개한 과제 관리 시스템은 간단한 시스템으로

이외에 사이트 개발에 필요한

로그인, 회원관리, 공지사항(게시판), 조직도 등의 기능은

미리 구현한 Project9을 그대로 사용한다.

즉, 앞서 언급한 기능만 개발하기 때문에

(너무나 당연한 결과이겠지만 )

쉽고 빠르게 개발을 완료하게 된다.



+ Recent posts