DevOps/소프트웨어공학 728x90 반응형 You aren't going to Need it(YAGNI). 그 기능이 필요할 때 만들어라! 2024. 1. 4. https://en.wikipedia.org/wiki/You_aren%27t_gonna_need_it [번역]마틴파울러의 테스트 피라미드 2021. 8. 6. 원문 : https://martinfowler.com/bliki/TestPyramid.html bliki: TestPyramid Write most of your tests at a low level (unit tests) with a few broad-stack tests, eg via UI. UI tests tend to be fragile and slow. martinfowler.com 테스트 피라미드는 자동화된 테스트를 어떻게 효율적으로 만들지 고민하기 위해 만들어진 형태입니다. 여기서 중요한 점은 고수준 테스트를 만들기 보다는 최대한 저수준의 유닛테스트를 많이 만들어야 한다는 점입니다. 자동화된 테스트는 대부분 유저 인터페이스를 통한 테스트를 뜻해 왔습니다. 만들어진 애플리케이션이 있다면 특정한.. 마틴파울러의 마이크로서비스의 정의(Micro Service Architecture by Martin folwer) 2019. 7. 2. 2014년 마틴파울러는 마이크로서비스에 대한 정의를 자신의 블로그(바로가기)에 올렸다. 이를 바탕으로 나의 생각과 함께 정리해보았다. 개요 "마이크로 서비스 (Microservices)"- 소프트웨어 아키텍처에 대한 또 다른 새로운 용어다. 지난 몇 년 동안 많은 프로젝트에서이 스타일을 사용 해왔고 지금까지의 결과는 긍정적이었다. 많은 동료가 엔터프라이즈 application 구축의 기본 스타일이되었지만 슬프게도 마이크로 서비스 스타일이 무엇이며 어떻게 수행하는지 설명하는 정보는 많지 않다. 이를 설명하고자 한다. 마이크로서비스(Microservices) 간단히 말해 Micro service Archiectrure(이하 MSA)는 작은 단위의 경량 application의 모음 군으로 개발하는 접근 방식이.. 예제로 풀어보는 구독형 아키텍쳐(Subscribe architecture) for Micoro Service Architecture(MSA) 2018. 5. 27. 마이크로 서비스 환경에서는 서비스의 경계를 넘나드는 비즈니스 프로세스를 관리하는 문제를 적절히 느슨한 연결로 풀어나가야한다. 예제 - 쇼핑몰 회원가입 프로세스고객 회원가입welcome sms 발송welcome email 발송신규회원 쿠폰 생성완료쇼핑몰에 회원 가입을 하게 되면 3개의 비즈니스로직을 수행한다고 가정해보자. 레거시(Legacy) 아키텍쳐 방식 - 오케스트레이션(orchestration)기존 방식(not MSA)으로는 오케스트라 지휘자 처럼 한개의 프로세스가 뇌가 된듯 세부 작업을 아래와 같이 직접 method를 요청할 것이다. 123456789101112131415void registerMember(String memberName, ...){ @Autowired DispatchManager .. 개발자에게 은총알(silver bullet)은 없다. 2018. 5. 22. 슈퍼맨에 나오는 악당들은 성가신슈퍼맨을 물리치기 위해 크립토나이트(은탄환)를 사용한다. There is no silver bullet - 은탄환은 없다. 울버린, 늑대인간, 드라큘라와 같은 괴물들에게 은탄환(one seeks bullets of silver)은 한번에 무력화 시킬 수 있는 최고의 도구이다. - Fred Brooks, 『Silver Bullet-Essence and Accidents of Software Engineering』1986년 프레드 브룩스가 쓴 소프트웨어 공학 논문에서 은탄환의 존재에 대해 최초로 언급하였다. 이와 동시에 소프트웨어 개발의 복잡성을 한번에 해소할 마법같은 솔루션(은탄환)은 없다고 선언한다. 소프트웨어는 복잡성을 내포하고 있으며 여러가지 문제(essential co.. 이전 1 다음 728x90