본문 바로가기

설계4

현장에서 문제 해결을 찾는다. 아주 근사한 가전제품을 만드는 회사가 있다고 하자. 이 회사에는 가전제품을 구성하는 요소들을 설계하는 설계팀과 이를 기반으로 조립 라인을 통해서 하나의 가전제품을 만드는 제조팀으로 구성되어 있다. 설계팀은 제품의 컨셉을 이해하여 명세(specification)를 정하고, 그에 맞게 각 구성 요소들을 설계 도면에 표시한다. 제품의 크기를 휴대성이 편하게 최소한으로 명세했기 때문에 가능한 한 각 구성요소가 최소한의 공간 안에 밀집하게 구성되어야 하며, 때로는 하나의 요소가 여러가지 역할을 수행하게끔 구성품을 만들어야 하는 경우도 있다. 설계팀은 촉박한 일정에서도 제조팀에서 해당 제품을 만들 수 있는 상태의 모든 요소가 설계되었음을 확인했고, 최종적으로 제조팀에게 제품 설계를 넘긴다. 제조팀에서는 설계를 토대.. 2012. 8. 18.
설계, 누구를 위한 활동인가 작업을 수행하는 사람들은 늘 흔적을 남기기 마련이며, 이를 SW에서는 산출물이라고 말한다. 즉, 어떠한 활동을 하든지 간에 그 흔적이 어떠한 형태로든 존재하기 마련인 것이다. SW 개발하는 입장에서 설계와 구현의 정확한 구분을 한다는 것은 사실 거의 불가능한 영역이기도 하다. 설계를 개발 단계 중에 정해진 기간으로 놓고 그 단계 내에서 산출물을 강요하는 식의 방식은 설계의 본연의 목적을 잃을 가능성이 너무나도 높다. Anonymity; and the Internet. by Stian Eikeland 우리는 어떤 일을 하게 될때 머리속으로 먼저 무엇을 어떻게 수행할지를 가늠해본다. 좀더 깊이 생각하는 사람은 다양한 대안들을 생각해보고 각각의 장단점을 비교하여 사전 시뮬레이션까지도 고려하여 최적의 해결책이라.. 2011. 12. 22.
Responsive Design - Kent Beck 올해 많은 세미나 중에 Software 공학의 대가라고 불리는 사람들의 방한은 큰 사건이 아닐 수 없다. 특히, 이러한 대가들이 모두 Agile, TDD, Refactoring을 공통적으로 이야기하고 있으며, 국내에서 그러한 주제에 대해서 관심의 시각이 늘어나고 있다는 것이 가장 주목할 만한 사건들인 것 같다. 다음은 Kent Beck 세미나의 주요 내용들이다. - Responsive Design은 테스트하기 쉬워야 한다. - 설정이나, 배포하기 어려운 구조 역시 설계 문제로 보아야 한다. - 개발의 목표(goal)은 기능의 안정된 흐름(steady flow of feature)을 추구해야 한다. 이는 responsive design을 통해 달성될 수 있다. - 기능을 추가하는 것(adding featu.. 2009. 9. 6.
유스케이스 드리븐 방식의 한계 - 유스케이스 드리븐 방식은 식별된 유스케이스로부터 공통된 객체를 식별하는 방법으로 가장 널리 사용되는 방법 중의 하나이다. - 그렇지만, Don Firesmith 는 다음과 같이 유스케이스 드리븐 방식에 대해서 반대입장을 표명했다. [Firesmith1996] “유스케이스는 객체지향 방법이 아니다. 각각의 유스케이스는 객체 기술에서 지양해야 하는 기능 분해 관점에서 수많은 문제점을 야기시킬 수 있는 주요한 기능적인 추상화를 담고 있다... 객체와 클래스가 식별되기 이전에 유스케이스가 먼저 식별되었기 때문에 유스케이스는 객체에 대한 속성과 오퍼레이션을 무시하게 된다.” 계속해서 그는 유스케이스 드리븐 방식이 “전형적인 서브시스템 아키텍처 형태를 띠며... 개개의 유스케이스의 로직을 표현하는 단일 기능 컨.. 2008. 3. 10.
반응형