소프트웨어“우수한 센터”(CoE)의 특징은 무엇입니까?


13

최근에 우리 부서의 새로운 이사가 와서 우리가 "우수한 센터"가 되겠다는 소망을 표명했습니다. 나는 그가 실제로 프로그래밍 배경을 가진 나의 첫 보스이기 때문에 이것에 대한 설명이 필요하다고 기대했다. 그러나 그것은 남아있었습니다.

지난 며칠 동안이 내용을 검토 한 결과, 제품을 제공하는 데있어 "효과적"이라는 것 이상의 CoE가 실제로 무엇을 의미하는지에 대해서는 비난하게되었습니다. 내가 고투하고있는 주요 항목은 다음과 같습니다.

  1. 이것은 관리 유형에 의해 발생되는 용어입니까?

  2. 소프트웨어 개발자 및 테스터 그룹은 어떤 특성으로 인해 우수합니까?

  3. 이 맥락에서 우수성을 어떻게 측정합니까?


7
"Center of Excellence"는 바삭 바삭한 관리 캔디 한가운데있는 맛있고 맛있는 코더 센터입니다. ;)
FrustratedWithFormsDesigner 2018

8
물어 봤어? 내 말은 ... 설명은 아직 나오지 않았지만 개발자와 테스터들 에게 그가 무엇을보고 싶은지 분명히 물어 보았습니다. 그렇지 않으면 당신은 단지 성공의 가능성과 좌절의 큰 기회와 함께 어둠 속에서 찌르고 있습니다.
Marjan Venema 2016

@Marjan, 나는 그가 몇 레벨 위로 올라가서 물어 보지 않았고 나는 얼굴 시간이 많지 않았습니다 (그리고 그 이후로는 없었습니다). 다음에 다시하겠습니다. 난 그냥 신뢰할 수있는 타사 소스에서 먼저 자신을 알리고 싶습니다 :)
Randy

엄지 손가락. 우수성의 중심이 무엇을 의미한다고 생각하는지 항상 준비하는 것이 좋습니다.
Marjan Venema

1
아마도이 블로그 게시물은 agileelements.wordpress.com/2008/10/29 / ...에 대한 통찰력을 가질 수 있습니다 (그의 조직에서 하나를 설립 한 사람이 아니기 때문에).
yasouser

답변:


7

예, 이것은 관리 유형에 의해 발생되는 용어이지만 관리 언어를 제거하면 다른 사람들이 열망하고 수행하는 방식으로 업계 모범 사례를 사용하고 구현하는 부서를 원합니다. 사람들이 좋아하는 훌륭한 솔루션을 제공합니다.

(이 마지막 비트는 중요합니다. 실제로 제공하지 않으면 다른 모든 것이 얼마나 큰지 중요하지 않으며 관리자가 오래 가지 않을 것입니다).

복잡성은 두 가지 주요 방법으로 나타납니다.

1) 소프트웨어를 개발하는 것이 올바른 방법이고 이것이 훌륭한 제품을 생산하는 방법이라는 것을 이해하고 있기 때문에 이것을 원합니까? 아니면 자랑 할 수 있기를 원하기 때문에 원합니까?

2) 베스트 프랙티스 구현에 따른 선불 비용 (시간, 돈, 신용 및 위험)을 수용 할 것인가? "민첩하게 가자"라고 말하는 것이 좋지만, 일을 개선하고 조직에 판매하는 데 많은 시간을 할애해야한다는 명성을 얻고 있습니다. 거의 항상 혜택은 장기적이며 비용은 단기적이며 어려운 부분입니다. 궁극적으로 그는 정말로 진지합니까?

그것이 어떻게 생겼는지에 따라, 그것은 당신이하는 일에 달려 있지만 개발 및 프로젝트 관리 프로세스가 무엇인지, 어떤 도구를 사용하는지, 사람들이 가지고있는 키트 등을 생각해야합니다. . Joel 테스트 는 항상 시작하기에 좋은 곳이며 특히 버전 관리 프로세스, 버그 추적 및 빌드 프로세스가 매우 우수합니다.

또한 민첩한 방법론이 귀하에게 적합한 지 (특히 SCRUM), 자동화 된 테스트가 어느 정도 도움이 될 수 있는지에 대해 살펴 봅니다 (종교 전쟁을 시작하지 않고서도 테스트의 복잡성이 이점의 이점을 능가한다는 점에 대한 믿음이 다릅니다. 제공) 작업을 수행하는 데 필요한 도구와 키트가 있는지 여부 일반적으로 도구가 최첨단이지만 최첨단에 있지 않길 바랍니다. 이것은 장난감을 가지고있는 것이 아니라 팀의 모든 사람이 가능한 한 많은 작업 일 동안 최대한 생산성을 발휘할 수 있도록 도구를 제공하는 것임을 강조 할 가치가 있습니다. 가장 명백한 예는 나쁜 PC입니다. 개발자가 커서를 보도록 비용을 지불하는 것이 정말 탁월합니까? 프로젝트는 하루에 수십 번 빌드 할 때 5 분이 소요됩니다.

아마도 우수성 센터에서 볼 수있는 몇 가지 다른 것들 : 우수성 소프트웨어 센터는 꽤 좋은 교육 프로그램을 받았을 것입니다. 공식적인 과정은 아니지만 예산, 학습 시간, 멘토링 및 처럼.

그리고 아마도 소량 (적어도)의 R & D를하고 있다고 제안합니다. 그것은 완전히 푸른 하늘을 의미하는 것은 아니지만 개발자에게 클라이언트에게 지속적으로 전달해야하는 압박없이 새로운 것을 시도하고 새로운 도구와 언어를 평가할 공간을 제공한다는 의미입니다. 그것이 내년, 그 다음 해에 계속 발전하고 좋은 상태를 유지하는 방법입니다.

어떻게 측정 할 수 있습니까? 아, 오래된 질문입니다. 불가능하지는 않지만 궁극적으로 소프트웨어 개발을 측정하는 것은 어렵고 소프트웨어 개발의 우수성을 측정하는 것도 비슷합니다.

제가 많은 회사에서 널리 채택한 것이 유용 할 것이라고 생각할 수있는 유일한 것은 고객과 직원의 만족입니다. 간접적 인 측정이지만, 내가 훌륭하지 않다면 실제로는 고객 만족도가 높아지고 직원 만족도가 크게 높아지지 않을 것입니다.


유행어에 대한 나의 문제는 그것들이 너무 자주 그것들이 나타내는 것에 대한 실제 생각을 효과적으로 대체하는 것으로 보인다는 것입니다. 나는 종종 유행어에 빠질 때 너무 가혹하게 판단하려고하지 않습니다. 때로는 그들은 프로그래머 괴짜와 동등한 관리자 일뿐입니다. 비록 그들이 실제로 지적 정직성을 가지고 있고 효과적이고 접근하기
쉬운

6

이것은 족제비 단어 의 문제입니다 . 그들은 무언가를 의미하는 것처럼 들리지만 ... 실제로는 그렇지 않습니다.

맥락에서 볼 때 회사에서 제품을 생산하는 것처럼 들리고 담당 이사는 부서가 최대한 효율적이고 효과적이기를 원합니다. IME는 다음 중 하나 또는 모두를 수행하려고 함을 의미합니다.

  • 고용에 대해 "엄격한 요구 사항"을 가진 새로운 사람들을 고용하십시오 (보통 높은 학위 또는 인증 또는 업계 인정)
  • "지방을 다듬 으십시오"-그들이 생산하지 않는다고 생각하는 사람들을 제거하십시오
  • 도구 / 프로세스 / 사람 / 훈련을 위해 부서에 돈을 투입하십시오

따라서 질문에 직접 대답하려면 다음을 수행하십시오.

  • 나는 이것에 대한 확실한 대답이 없습니다. 최고를 정량화하는 데 사용할 수있는 많은 메트릭이 있습니다.
  • 이와 관련하여 일반적으로 릴리스 날짜를 만들지 여부에 따라 결정됩니다.

3

30 년 이상의 경험을 통해, 일반적으로 적은 수의 사람들로 더 많은 것을 생산하길 원합니다.


간단한 훌륭한 답변.
학생

2

포인트 번호 1에
대한 답 : 대답은 확실히 그렇습니다 . 경험 많은 Bullshit Bingo 플레이어 와 같은 용어입니다 . 그렇다고해서 그 용어가 무의미하다는 의미는 아닙니다.

2 번으로 넘어 갑시다 : Wikipedia
에서 발췌 : 우수 센터 : 주제 영역에 대한 공식적으로 정식으로 비공식적으로 수용된 지식과 경험. 공식적으로 임명되고 비공식적으로 수용되는 것을 잊어 버리고 지식과 경험의 몸에 초점을 맞 춥니 다. 나는 지식을 이론적 배경으로보고 경험을 실제 적용에서 오는 것으로 본다. 우수성을 달성하려면 둘 다 필요합니다. 그 (명백한 명백한) 자질 외에도, 세 번째는 우수성을 달성하는 데 필수적이라고 생각합니다. 스스로 질문하고, 자신이하고있는 일을 반영하고, 개선 할 방법을 찾는 능력 당신은 학생으로서 배우는 지식이지만, 계속해서 연구하고, 최신 개발 사항을 따라야합니다. 당신이 경험 한 경험은 거의 피할 수없는 경험입니다. 관리 관점에서 가장 까다로운 부분은 반성과 자기 개선의 문화를 만드는 것입니다 (그와 함께 상사에게 행운을 빕니다 ;-)

질문 번호 3에 관해서
는 할 수 없다고 생각합니다. 나는 여기서 프로젝트를 성공으로 이끄는 것 이상에 대해 이야기하고 있습니다 (이것은 PowerPoint 프레젠테이션에서 더 멋지게 보이기 때문에 가장 많은 프로젝트를 성공으로 선언 한 경향으로 인해 이미 측정하기가 어렵습니다). 진정한 우수성은 팀 구성원 모두가 최선을 다하고 자신과 도구, 프로세스 등을 개선하려는 태도에서 비롯됩니다. 최상의 샷은 사전 정의 된 지속적인 개선 프로세스의 효과를 측정하는 방법을 찾는 것입니다.


1

"Software Center of Excellence"에 대해 생각할 때 가장 먼저 떠오르는 사람은 Bob Martin 아저씨입니다

Martin 아저씨는 오랫동안 Software Craftsmanship 형식으로 소프트웨어 개발의 우수성을 옹호하고 있습니다. Wikipedia가 설명했듯이

소프트웨어 기술은 소프트웨어 개발자 자신의 코딩 기술을 강조하는 소프트웨어 개발 방식입니다. 소프트웨어 개발자는 개발자 책임에 대한 재정적 문제의 우선 순위 지정을 포함하여 주류 소프트웨어 산업의 인식 된 질병에 대한 대응책입니다.

다음 팟 캐스트에서 Software Craftsmanship이 무엇인지 설명합니다.

또한 잘 만들어진 소프트웨어의 중요성, 부가가치, 전문가 커뮤니티 및 생산적인 파트너십을 강조하는 Software Craftsmanship Manifesto를 확인하십시오.

편집 : 우수한 소프트웨어 센터에는 숙련 된 프로그래머가 필요하므로 다음 자료를 참조하십시오.


0

그가 양보다 질 높은 문화를 원한다고 말한 것처럼 들리면 다시 @ss를 말할 수 있습니다. 프로그래머로서 저는 사람들이 말하는 것을 지나치게 생각하는 경향이 있다고 생각합니다. 최소한 나는 알고 있습니다. 그가 말한 한, 그 단지 회사는 말하지만 과도하게 생각하지 않습니다. 다른 사람들이 말했듯이 물어보십시오.

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