이것도 약간 그런 내용입니다.
이책에서 회사의 성공(Success) 를 아래와 같이 규정합니다.
- 레벨#1회사:
- 프로젝트 끝났다.
- 레벨#2회사:
- 프로젝트 끝났다
- 다양한 코드도 많이 만들었다.
- 레벨#3회사:
- 프로젝트도 끝났다.
- 다양한 코드도 많이 만들었다.
- 코드도 잘 동작하는 수준이다.
- 레벨#4회사:
- 프로젝트도끝났다.,
- 코드도 잘 동작한다.
- 코드가 프로젝트에 재활용(reuse) 가능한 수준이야.
- 레벨#5회사:
- 프로젝트가 끝났다.
- 비슷한 비지니스를 하기위해 한 환경을 구축했다. (다음에 비용을 절감가능)
- 다음 프로젝트에서 유연하게 변화하기위해 수동과, 자동화 모두 지원
- 이런종류의 비지니스를 다른 어떤회사보다도 저렴하게 구현할수 있다.
- 이러한 비용 절감으로 인해 다른회사는 가격으로는 경쟁이 안된다.
우리회사는 지금까지 #4 였던것 같습니다. ARM 과 같은 회사는 레벨 #5 인것 같습니다.
Code Complete 를 읽으면 아래와 같은 구문이 나옵니다.
- 초보 개발자는는 coding 을 고민한다.
- 조금 경험이 있는 개발자는 architecture 를 고민한다.
- 그 다음 단계는 engineering 을 고민한다.
2000 초에 에 위 책을 읽고 저는 '엔지니어링이란 무엇인가?" 라는 질문에 고민했었습니다. 도대체 뭐지...? 남들한테 설명할수도 없었습니다.
Return On software 는 그 답이 아래와 같다고 말합니다.
Engineering 이란 Science 와 Economy 를 모두 고려하는것이다.(long term 까지 고려하여)
빨리 출시하고, 시작의 feedback 을 받는편이 좋다고 느껴집니다.
과연 SoC 에서서도 그럴까요? 저는 SoC 도 이런 흐름을 막지는 못할것 같습니다.
가까운 미래에 파괴적인 기술이 나와서 SoC 를 변화시킬것 같습니다.
댓글 없음:
댓글 쓰기