N° 01 — 목록

'quality-attributes' (2)

  1. Architecture & Design/Software Architecture

    Foundations - 02. 품질 속성

    "비기능적 요구사항"이라는 이름이 아키텍처를 망치는 이유차를 산다고 하자. 두 차 모두 "달린다, 멈춘다, 돈다"라는 같은 기능을 한다. 그런데 한 대는 리터당 15km를 가고 충돌 테스트 별 다섯 개를 받았으며 정비가 쉽고, 다른 대는 리터당 5km에 충돌 테스트 별 하나에 부품이 비싸다. 같은 기능을 해도 이 두 차는 전혀 다른 차다. 그 차이를 만드는 것 — 연비, 안전, 정비 편의성, 가속력 — 이 차의 품질 속성이다.소프트웨어도 같다. 주문을 받고 결제하고 재고를 깎는 같은 기능을 해도, 하루 1만 건을 버티는 시스템과 1억 건을 버티는 시스템은 같은 기능의 다른 "차"다. 그런데 전통적으로 이런 차이를 "비기능적 요구사항"이라 불렀다. 이 이름이 문제다."비기능적"이라는 말의 함정요구사항 문서..

    · 댓글 1
  2. Architecture & Design/Software Architecture

    Foundations - 01. 아키텍처란 무엇인가

    코드를 짜는 순간, 아키텍처는 이미 정해져 있다집을 지을 때 거실에서 영화를 보고 주방에서 요리하고 침실에서 잔다는 방의 용도가 같아도, 골조를 목조로 세울지 철골 콘크리트로 세울지는 다른 문제다. 지진이 오거나 3층을 증축하려 할 때 결과를 갈라놓는 건 방의 용도가 아니라 이 골조다. 소프트웨어도 비슷하다. 코드가 "무엇을 하는가"를 정하면, 아키텍처는 그 코드가 "어떤 구조로 세워졌는가"를 결정한다. 그리고 벽돌을 쌓는 순간 골조는 이미 정해진다 — "우린 스타트업이라 아키텍처 같은 건 안 한다"는 말이 성립하지 않는다.아키텍처는 부정할 수 없다소프트웨어 아키텍처 분야의 고전 에서 Bass·Clements·Kazman은 아키텍처를 "시스템에 대해 추론할 때 필요한 구조들의 집합"이라 정의한다. 요소,..

    · 댓글