분류 전체보기(26)
-
프로그램 건축
음식점을 하나 만든다고 생각해보자. 어떤 음식점인지는 상관 없다. 떼돈을 벌 수 있다는 희망찬 생각으로 매장을 만들어보자. 작게 시작한 매장에는 굳이 홀 인원이 필요 없을 것 같다. 주방과 홀을 같이 병행해서 해도 큰 문제는 없다. 홍보도 전단지를 직접 나누어 줘도 큰 무리는 없다. 고객이 많아 지면 홀 인원을 따로 두어야 원활하게 돌아간다. 주문이 많은데 음식을 하고 홀서빙까지 병행하면 시간도 늦어지고, 주문도 꼬이게 된다. 많이 팔리는 음식은 미리 만들어두는 것도 좋은 방법이다. 만두 같은 경우, 주문이 들어오고 나서 반죽을 하고 피를 만들고 속을 만들기 시작하면 너무 많은 시간이 소요된다. 미리 만들어 놓고 주문시에 찌거나, 데워주면 된다. 홍보 또한 전단지를 직접 나누어 주기는 매장을 비울 수 없..
2020.08.26 -
프로젝트 개발 관리
프로젝트 관리는 대부분 오피스 제품을 많이 사용한다. 요구사항 정의와 일정 관리인 WBS는 엑셀파일로 관리하고, 기획 스토리보드는 파워포인트나 PDF로 관리되며, 테스트 시나리오는 엑셀파일, 정책서나 문서는 워드문서로 관리한다. 오피스 제품군만 있으면 대부분의 관리가 가능하다. 하지만, 개발소스는 오피스 제품으로 관리하기 힘들다. 혼자서 개발하면 소스는 혼자서 가지고 있어서 상관없지만, 여러명이서 같은 소스로 개발하기 위해서는 소스 관리가 필요하다. 각자의 컴퓨터에서 개발한 후에 통합하는 과정을 거치면 내 소스가 사라질 수도 있고, 상대방 소스가 사라질 수도 있다. 그리고 소스에서 어디가 어떻게 수정이나 추가됐는지도 모호해지고, 누구의 소스인지도 모른다. 이럴 경우 프로그램 자체가 제대로 돌아가길 바라는..
2020.08.05 -
품질을 높여주는 테스트
개발된 사이트의 품질을 높이기 위해서는 테스트가 중요하다. 테스트를 통해 많은 오류와 버그, 불필요성, 불편성 등을 찾아내고 수정에 수정을 하다보면 그만큼의 품질은 좋아진다. 다만, 테스트 중에 새로운 기능을 추가하는 것은 사이트를 망치는 지름길이다. 개발된 기능도 테스트가 진행중인데, 새로운 기능을 추가하게되면 다시 만들고, 똑같은 테스트를 해야하기 때문에 시간이 배 이상으로 늘어난다. 새로운 기능에 대해서만 테스트하는 걸로 생각해서는 안된다. 새로운 기능이 추가되면, 기존에 복잡하게 얽혀 있는 코드들에게도 영향을 미치기 때문이다. 테스트 시나리오에 있는 내용대로 반복해서 테스트하기에는 시간이 오래 걸린다. 테스트 시나리오는 전 화면에 대한 테스트 내용이 있기 때문에 문서의 내용도 길고, 테스트할 요소..
2020.07.28 -
쉽지만은 않은 사이트 기획
어느 기획이나 처음에는 만들려고 하는 사람의 생각이 필요하다. 아이디어만 공유한다고 해서 무엇을 만들고 싶은지 다 아는 것은 아니다. 개인마다 생각하는 방향이 틀리기에 얼마나 세세하게 생각을 공유하느냐에 따라 기획의 성패가 좌우된다. 지레짐작으로 생각해서는 안된다. 또한 생각을 공유하는 과정에서는 상식이라는 개념을 생각해서도 안된다. 생각을 공유하는 과정에서는 많은 대화가 필요하다. 이를 문서화 하는 것 또한 중요하다. 문서화 하지 않으면 나중에 오해의 요지가 생길 수도 있다. 기획자는 PPT로 단순히 기획서를 작성하는 사람이 아니다. 혼자서 컴퓨터에 앉아 모니터와 눈싸움을 한다고 기획이 나오는 것도 아니다. 또한 내 생각만으로 기획을 하는 것은 결코 아니다. 기획자는 회의를 진행하고 인터뷰를 통해서 상..
2020.07.22 -
프로젝트에 필요한 인력
웹 서비스 프로젝트를 진행하기 위해서 개발자만 필요한 것은 아니다. 프로젝트 전체를 관리하는 사람, 각 파트별로 개발 일정을 관리하는 사람, 개발의 흐름을 관리하는 사람, 개발된 소스를 확인하기 위한 서버를 관리하는 사람, 테스트하는 사람 등 개발자외에 관리영역에 해당하는 사람도 다수 있어야 한다. 프로젝트 전체를 관리하는 사람을 PM (Project Manager) 라고 부른다. 일정이나, 인력 수급, 개발자의 편의, 개발 방향이 산으로 가지 않게 조절하거나, 발주사와 커뮤니케이션 또는 회의를 진행하는 역할을 한다. 프로젝트 팀 관점에서 발주사는 고객이기 때문에 이후 발주사를 고객으로 통일하겠다. PM의 역할은 앞서 이야기 한것 처럼 중요한 위치이다. PM 성향이 고객 위주이면 개발자들이 힘든건 불을 ..
2020.07.22 -
프로젝트에 투입되는 인력 배정
인력을 배정하기 전에 프로젝트를 기능별로 세분화 하는 작업을 시작한다. 세분화는 일단 크게 나눈다. 서비스를 만들기 위해서는 처음 기획이 선행되어야 한다. 기획 다음에는 기획에서 나온 스토리보드에 따라 설계와 디자인이 진행된다. 디자인이 완료되면 퍼블리싱이 진행되고, 설계가 완료되면 개발 환경 설정이 들어간다. 개발 환경까지 완료 되면 각 설계에 따라 기능 구현이 진행되고, 단위 테스트와 통합테스트가 진행된다. 테스트까지 완료 되면 오픈하기 위한 준비를 하고 오픈을 진행한다. 기획, 디자인, 퍼블리싱, 개발 설계, 개발 환경 구축, 개발 구현, 단위 테스트, 통합 테스트, 이관, 오픈으로 크게 나누어서 일정을 작성한다. 대부분 시작 날짜와 오픈 날짜가 정해져 있기 때문에 그 사이의 일정을 구분해서 작성한..
2020.07.22