웹 개발 준비 및 전체 프로젝트 워크 플로우


9

나는 웹 개발 프로젝트 (프론트 및 백엔드)에서 고독한 프로그래머로 일하고 있습니다. 저는 두 가지 프로젝트를 완료했습니다. 그래서 상당히 새로운 것이어서 몇 가지 접근법을 읽고 시도해 보았습니다. 그들에 대해. 질문과 설명이 상당히 길기 때문에 기다려주십시오.

내가 찾고있는 것은 :
1. 준비 / 계획은 무엇을 빌드 해야하는지 정확히 알고 나면 개발을 시작하기 전에 일반적으로 수행됩니다.
2. 귀하의 경험을 바탕으로 현재 진행중인 프로세스에 대한 피드백 / 제안을 제공해주십시오.

내가 일하는 고객은 일반적으로 신생 기업이며 예산이 한정되어 있으므로 시간당 기준으로 청구 할 수 없습니다 (대개 회사가 일반적으로 개발 프로젝트에 대해 고객에게 청구하는 방식이라고 생각합니다) 고정 예산으로 작업하십시오.

이것은 현재 내가 따르는 과정입니다.
1. 프로젝트의 범위를 측정하고 두 번의 회의에서 그들이 무엇을 성취하려고하는지 이해하려고 노력하십시오.
2. 프로젝트에서 얻을 것으로 예상되는 것을 일반적으로 설명하는 인용구와 함께 거친 구장 그림을 제공하십시오. 나는 기능에 대해 구체적으로 노력하려고 노력하지만, 나는 그것을 알고 있기 때문에 이것에 너무 많은 시간을 투자하지 않습니다. 고객은 따옴표를 요구하고 실제로 변환하지 않을 수 있습니다.
3. 지불 및 업무에 대한 Jeff Atwood의 제안을 따릅니다.

15 % 지불-작업을 시작하기 전에 선결제이
단계 동안 최종 웹 사이트의 HTML 모형이 만들어지며 웹 사이트를 가능한 한 상세하게 설명 하는 플로우 차트 ( yEd 포함 ) 및 플로우 차트에없는 다른 기능을 언급하는 문서 . 이것은 프로젝트의 모든 세부 사항으로 들어가서 합의 된 가격으로 구현하기에는 너무 많은 작업과 비트를 마무리함으로써 이루어집니다. 세부 사항은 앞에서 설명하지 않았으므로 이들 중 일부는 실제로 얻을 수있는 것에 대한 협상입니다. 이것은 고정 예산 프로젝트이기 때문에 고정 요구 사항이 필요합니다. 그렇지 않으면 더 많은 기능이 추가됨에 따라 가격이 계속 내려갑니다.
색 구성표, 디자인 와이어 프레임 및 디자인 PSD도 마무리됩니다.

35 % 지불 -개발 시작
프로젝트가 수정되었습니다. 개발을 시작하십시오. 클라이언트가 프런트 엔드에 액세스 할 수 있지만 서버에 액세스 할 수없는 서버를 사이트에서 호스팅합니다.

30 % 지불 -클라이언트 서버 / 코드 클라이언트로 코드 이동 서버 액세스 세부 정보
사이트를 활성화합니다.

20 % 지불 -모든 버그가 수정되면 사이트가 게시 된 후 몇 주가 소요됩니다.


질문 :
1. 무엇을 만들 것인지 정확히 알고 나면 코딩을 시작하기 전에 어떤 계획을 세우겠습니까?

2. 경험상 전체 프로세스의 어떤 부분을 다르게 할 것입니까?


불행히도 많은 클라이언트 자신이 원하는 것을 정확히 아는 시점에 도달하지 않습니다 . 내가 찾은 가장 좋은 방법은 중요한 페이지 중 일부를 모아서 앉아서 이야기를 나누는 것입니다. 클라이언트가 "아니, 이런 식으로 작동하기를 원합니다"라고 강요하기 위해 일부 이야기를 의도적으로 잘못한 것입니다. 결국 프로젝트 사양에 접근하는 데 도움이되지만 결국에는 변경됩니다. 한숨.
피터 로웰

@Peter, 의도적으로 가짜 사용자 스토리를 소개하면 때로는 역효과를 겪고 고객이 자신감을 잃을 수 있습니다. 이 기술은주의해서 사용해야합니다.
maple_shaft

@ maple_shaft : 나는 그것을 알고 있습니다. '분명히 틀렸다'고 말할 때, 저는 보통 Blagusly Bogus®를 의미합니다. 성공적인 프로젝트를 위해서는 고객이 웹 사이트 (비전 / 시간 / 돈)에 완전히 투자하도록하는 것이 중요합니다. 얼마나 많은 사람들이 새로운 사이트가 핸드 웨이브 할 수 있고 마술처럼 보일 것이라고 생각하는 것은 충격적입니다.
피터 로웰

나는 모형에 대해서도 동의하며, 서면으로 작성된 텍스트의 양은 고객이 무엇을 얻을지 이해하게 할 것입니다 (대부분 이해하지 못하거나 이해할 수 없음)-모형은 고객에게 명확하게 해 줄 것입니다. (사양) + 계약서 또는 다음과 같은 내용 : "이 모든 것을 얻을 수 있으며, 더 이상 아무것도 얻을 수 없습니다." 개발하는 동안 주변 환경을 바꿀 수있는 유연성이있을 수 있다고 생각하지만 설명했던 것보다 더 많은 작업으로 표시되는 무언가가 나오면 모의 및 사양 문서를 꺼내야하며 추가 작업으로 인해 추가 비용도 발생한다고 생각합니다.
DMin

답변:


10

토론의 요점!

자격을 갖추기 위해-저는 방위 산업의 BIG 웹 개발 프로젝트에서 일합니다. 우리는 일반적으로 단일 고객, 지난 몇 년 동안 프로젝트를 지원하는 10-40 명의 팀으로 구성되어 있으며 고객에게는 돈과 높은 수요가 있습니다. 따라서 마일리지가 다를 수 있습니다-계획을 세우고 싶지 않습니다!

1 정확히 무엇을 만들지 알고 나면 코딩을 시작하기 전에 어떤 종류의 계획을 세우겠습니까?

이것은 35 %의 시작에서 15 % 섹션 이후입니다. 맞습니까?

  • 대상 웹 서버 및 언어 결정
  • 데이터 스토리지 결정-XML, 데이터베이스, 어떤 데이터베이스?
  • 데이터 지속성, GUI, 로깅, 종속성 주입 등 주요 API를 결정하십시오.
  • 로그인 메커니즘 결정-위험과 보호하려는 정보를 염두에두고 결정하십시오. 지불 메커니즘을 포함 할 수 있습니다.
  • 높은 수준의 아키텍처 및 명명 규칙 계획
  • 기능 롤아웃 순서를 선택하면 시작하기에 좋은 장소를 알 수 있습니다.
  • 테스트 전략을 결정하고 적용 가능한 경우 자동 테스트 프레임 워크를 준비하십시오
  • CM 시스템 설정

2 경험상 전체 프로세스의 어떤 부분을 다르게 하시겠습니까?

나는 계획을 세우지 않을 것이다. 빌드 환경, 서버, 테스트 베드, CM과 같은 작업을 수행하는 데 계획 작업에 집중하고 아키텍처 계획, 도구 선택 및 시작 위치 결정에 적은 시간을 소비했습니다. 어쨌든 무정형 계획 단계는 항상 실마리보다 무자비한 사막에서 방황하는 데 더 많은 시간이 소요됩니다.

고정 요금 및 기술 요구 사항을 사용하지 않는 고객 (예 : 사용하는 언어 또는 API)을 다루는 경우 기술적으로 항상 귀하를위한 1 가지 항목을 계획합니다. 단지 1이고 나머지는 동일하게 유지하십시오. 저는 모든 프로젝트에서 기술을 넓히고 싶지만, 잘 알고 있거나 이해하고있는 일을하고 있지 않을 정도로 열중하지는 않습니다.


2

당신에게 나의 가장 큰 조언은 고정 가격 개발 작업에 매우주의를 기울이는 것입니다. 작업을 시작하기 전에 요구 사항을 제대로 처리하지 못하면 두 가지 중 하나가 발생할 수 있습니다.

  1. 범위 추정치가 미달로 밝혀졌고 셔츠를 잃었습니다.
  2. 고객은 시작하기 전에 모든 범위를 알지 못하거나 알 수 없으므로 최종 결과에 만족하지 않습니다.

그들이 당신을 위해 범위에 사인 오프하고 나중에 마음을 변경하면 더 많은 돈을 위해 다시 협상 할 수 있기 때문에 당신에게 번호 2는 더 나은 상황입니다. 추정하기 전에 범위를 이해하고 범위와 제공 할 내용을 이해해야합니다.

스코프에서 사인 오프해야합니다! 고정 가격을 요구하고 범위 내 사인 오프를 거부하는 회사는 나쁜 고객이며 그로 인해 시간을 낭비하고 싶지 않습니다. 당신은 항상 잃을 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.