"성숙한"소프트웨어 란 무엇입니까? [닫은
-
05-09-2019 - |
문제
Jeffery Palermo는 'Classic Webforms More'라고 말합니다 성숙한 ASP.NET MVC보다 : "클래식 웹 폼은 ASP.NET MVC보다 더 성숙합니까?".
그것은 주관적인 것처럼 보이지만 내가 알고 싶은 것은 정확히 "성숙한"소프트웨어는 무엇입니까?
해결책
대답은 매우 주관적입니다. 그러나 기본적으로 소프트웨어가 이러한 기준의 대부분에 답할 수있는 경우 (중요하지 않은 순서로) :
- 안전한
- 믿을 수 있는
- 적극적으로 유지되었습니다
- 활발한 커뮤니티가 있습니다
- 현장 입증
그런 다음 "성숙한"것으로 간주 될 수 있습니다.
다른 클라이언트는 다른 수준의 "성숙도"를 기대할 것입니다. 대기업은 사용하는 소프트웨어가 민감한 데이터를 보호하기에 충분히 안전하며 소프트웨어는 24/7을 사용하는 지원 담당자가 지원할 것을 요구합니다. 보안에 대해 훨씬 덜 신경 쓸 수있는 소규모 개인 프로젝트와 달리 24/7 고객 지원이 포함 된 서비스 패키지가 필요하지 않거나 감당할 수 없습니다.
따라서 성숙도는 클라이언트에 따라 차별화되지만 기본 기준은 동일하게 유지됩니다.
다른 팁
성숙은 사람들이 그것을 다루는 방법을 알아 냈을 때입니다. (그리고 우리는 최종 사용자 앱이 아닌 개발 플랫폼에 대해 이야기하고 있습니까?)
예를 들어, JavaScript는 프로토 타입, jQuery 등의 도입으로 만 성숙해졌습니다.
그 전에는 사람들이 후회하는 이상한 것들을 코딩하는 경향이 있습니다.
그래서 당신은 주관적인 주제에 대한 주관적인 의견을 요구합니다. :)
나는 성숙한 기술에 다음 특성을 추가 할 것이라고 말합니다.
사람들은 그것을 사용하는 방법을 알고, 가능성과 한계를 알고 있습니다.
사람들은 일반적인 사용 시나리오가 무엇인지, 패턴,이 기술에 대한 좋은 사용 시나리오가 무엇인지 알고 있습니다.
사람들은 한계/버그를 다루는 방법을 알게되었고, 커뮤니티 지식이 있으며 거기에 도움이됩니다.
이 기술은 개인뿐만 아니라 생산적인 상업 환경에서도 사용할 수있을만큼 신뢰됩니다.
스스로 측정 도구를 개발하여 주관성을 줄입니다.
내 기준은 비즈니스 소프트웨어입니다.
- 리치 리치 - 많은 비즈니스 규칙을 처리합니다
- 유연성 - 매개 변수 및 구성을 통한 선택 가능한 기능
- 안정성 - 충돌과 같은 오작동을 일으키는 버그가있는 경우
- 잘 문서화 - 사용자 및 기술 문서
- 사용자 친화적 - 사용자가 증명하고 추천합니다
- 강력한 - 전원 고장 및 잘못된 사용자 입력과 같은 이벤트에 의해 크게 화를 내지 않습니다.
- "상자에서"설치 및 실행됩니다.
모든 기준을 가져 와서 0-5의 열 등급의 스프레드 시트에 배치하고 각 기준의 등급에 해당하는 열을 선택하여 등급을 작성하십시오.
- 전체 점수가 25 이상이면 소프트웨어가 성숙합니다.
- 점수가 15 ~ 24 인 경우 소프트웨어는 평균입니다.
- 15 미만의 경우 소프트웨어가 미숙합니다.
성숙한 소프트웨어는 당신이 의미하는 것이어야합니다. 나는 당신이 성숙도를 측정하기위한 쉬운 메커니즘을 찾을 것이라고 생각하지 않으며, 모든 사람의 정의는 어쨌든 다를 것입니다. 그것은 항상 주관적인 견해가 될 것입니다. 저는 두려워서 많은 논쟁을받습니다.
나는 성숙한 소프트웨어가 안정적이고, 문서화되어 있으며, 널리 사용되며 잘 테스트되었다고 말합니다.