2010-05-14 6 views

답변

1

좋은 질문 ...하지만 처음에는 ... SOA? 이는 훌륭한 전문 용어이지만 종종 "실제"정의가 하나도 없기 때문에 오해가됩니다. 지옥! 마틴 파울러 (Martin Fowler)조차도 이제이를 "ServiceOrientedAmbiguity"라고 부르며 사람들로 하여금 그것을 전혀 제기하지 않도록 장려합니다.

실제적으로 "하나" """"대답이 없습니다. 기업의 IT 요구 사항은 다음과 같습니다. 일반적으로; 아주 다양합니다. 이러한 요구는 고객, 파트너, 시장 동향, 법규, 규제 기관 등과 같은 외부 드라이버의 영향을받는 경우가 많습니다. 대부분의 경우 이러한 드라이버는 아키텍처에 영향을 주거나 "성능 향상"을 달성 할 수있는 능력을 절충하거나 제한합니다 " 건축물. 그것은 또한 glib 소리가 날 수도 있지만 그건 내 의도가 아닙니다. "최고의"아키텍처와 같은 것이 있다는 개념은 많은 사람들로 하여금 엄청난 양의 에너지 (그리고 돈)를 계속해서 낭비하게 만듭니다. 의도적 인 것은 아니지만 이러한 견해는 단일 공급 업체/커뮤니티의 대리인이되거나 제품을 프로세스로 판매하는 사람들이 뒷받침하는 경우가 많습니다.

소프트웨어 공학 관점에서 볼 때 오래된 구상은 비즈니스 요구 사항을 충족시킬 수있는 가장 신뢰할 수있는 수단으로 계속 남아 있습니다. 예를 들어,

  • 별도에게 우려
  • 레이어 아키텍처 유연성을 염두에 격리에서
  • 테스트 레이어
  • 디자인하고 함께
  • 을 테스트 회귀 볼 수 있도록 지속적인 통합 관행을 채택 더 빨리
  • 요구 사항 및 사양을 기본 드라이버로 지정하십시오.
  • 공구에 투자하고 투자하십시오. UR 개발자
  • 기타 ...

하나 개 아키텍처 패턴, 기술, 또는 언어에 대한 언급이없는 사항 ...이 정말 드라이버하지 않기 때문에 즉,이다 그들이 블러 수 있지만 및 다양한 요인을 고려하여 변경 될 것입니다. 한 번 더 더 자세히 설명해 드리겠습니다. "비즈니스 프로세스"와 소프트웨어 엔지니어링 프로세스에는 매우 다른 관심사, 관점 등이 있습니다. 어느 한 그룹이 다른 그룹과 동일한 기능을하도록 강요하면 완전히 실패하게됩니다. 그것은 날짜, 기능적 산출물 등과 같은 약속을 공유하지 말아야한다는 말은 아닙니다. 이러한 그룹은 효과적으로 일하기 위해서는 다르게해야하지만 분명히 공유 된 비전이 필요한 것들을 전달할 방법을 찾아야합니다. 여기에는 수많은 디자인 및 라이프 사이클 관리 프로세스가 도움이 될 수있는 곳이 있습니다. (예 : DDD, MSF, SCRUM, CMMI 등).

나는 이것이 건설적인 것이 었음을 의미했다 ... 도움이 되길 바랍니다.

+0

아주 좋은 답변을 주셔서 감사합니다. 나는 특히 요구 사항과 사양이 주요 드라이버가되어야한다는 데 동의합니다. 너무 자주 비즈니스에 연결되지 않은 다른 요소가 우리의 솔루션에 영향을 미칩니다. – jimmystormig

0

Glib 대답 : 엔터프라이즈 아키텍처.

어떤 종류의 대답을 찾고 계십니까? 내 경험상 각 비즈니스는 고유 한 요구 사항을 가지고 있습니다. 특히 진화하고자하는 방향과 관련하여 필요할 때가 있습니다. 수정 가능성은 비용 통제, 시장 진입 시간, 효율성, 보안, 유용성 및 비용면에서 자원과 경쟁하는 바람직한 특성 중 하나 일뿐입니다. 경비원의 나머지.

+0

네 말이 맞아. 더 많은 자질이 있습니다. 비즈니스가 더욱 민첩 해지고 시장 출시시기를 반영해야하기 때문에 modfiability를 선택했습니다. SOA를 비즈니스 중심적인 방식으로 소프트웨어를 구성하는 방법으로 생각했습니다. – jimmystormig

관련 문제