개발/Architect

    MSA(마이크로) + MA(모놀리식) :: 소프트웨어 아키텍쳐 장단점과 적용

    배경 서비스의 규모가 확장되고, 데이터 저장 및 통신을 클라우드를 통해 하는 요즘, 기존의 방식인 모놀리식과 대비되는 MSA가 대두되고 있다. 하지만 소규모 프로젝트나 대부분의 상황에서는 모놀리식 아키텍쳐도 합리적인 선택이 될 수 있다. 요구사항에 맞지 않는 아키텍쳐 선택은 오버 엔지니어링을 발생시켜 불필요한 작업을 초래할 수 있고 개발자들의 생산성을 저해할 수 있으므로 장단점을 파악한 후 충분히 고려하여 결정해야 할 것이다. 모놀리식 아키텍처 (Monolithic Architecture) - 전통적인 방식의 아키텍처이다. - 소프트웨어의 모든 구성요소가 한 프로젝트에 통합 되어 있는 형태이다. - 모든 프로세스가 긴밀하게 결합되고 단일 서비스로 실행된다. 따라서 애플리케이션의 한 프로세스에 대한 수요가..

    현업 개발자가 생각하는 애자일의 의미

    출처 : OKKY 누가 칼럼에 글을 게재한 덕분에.. 이제 애자일이 뭔지를 내 경험에 입각해 이해하게 되었다. 그동안 애자일을 실시(?)한다는 여러 회사도 다녔고. 비트버킷등 써가면서, 아침에 스탠드업회의 1시간씩 하면서.. 그 난리부르스를 했지만 당췌 애자일이 뭔 소린지를 몰랐다. 이건 내가 쪼다라서 그런게 절대 아니라! ㅋㅋ 방어적인 수사로 애자일의 정의를 추상적으로 배배꼬아 이야기를 했기에. 주인없는 애자일이 그 이름만 통일한 채로 무수한 프로듀서들에게서 재창조되어 버렸기에. 그럼 애자일이 뭔지를 19년차 개발자인 내가 2가지로 정의해 보겠다. 1) SW개발이 HW개발과 다른 점은 완성이 없다는 사실. 물질로 만들어진 하드웨어는 내 손을 떠나는 완성이라는 단계가 있다. 물질은 시간의 지배를 받으니 ..