시스템 설계의 흐름이나 순서에 대해 해설할 것이다.
手順(てじゅん)순서
외부설계와 내부설계의 차이점.
순서라던가 설계서 작성 방법 등.
워터폴의 흐름 가운데, 요건정의를 먼저 한다.
요건정의를 기반으로, 기본설계와, 상세설계 페이즈에 간다.
기본설계와 상세설계의 흐름과 순서에 대해 설명.
기본설계와 상세설계의 차이점에 대해.
요건정의가 끝나면, 기본설계를 한다. 기본설계가 끝나면, 상세설계를 하게 된다.
기본설계는 외부설계라고도 한다.
상세설계도 내부설계라고도 불린다.
기본설계는 고객이 대상이다. 고객은 시스템 개발의 의뢰자이다. 이 단계에서 무엇을 하냐면, 고객이 이해할 수 있는 범위에서 가능한 한도에서 사양을 결정하는 단계이다.
화면의 디자인 어떻게 할까요?
인프라구성이라던가(AWS 또는 렌탈서비스)의 상세한 설정 등.
배치의 거동도 결정한다.
상세설계는 프로그래머가 대상이다. 어떻게 실장할 것인가를 설계한다. 기본설계에서 정한 사양을 어떻게 프로그래밍할 것인가가 상세설계 단계이다. 클래스도 라던가 시퀀스도를 작성해서 프로그래머에게 넘겨줘서 프로그램을 만들게 한다.
상세설계는 프로그래머에게 어떻게 실장을 할 것인가를 전달하는 단계이다. 상세설계는 반드시 해야 할 단계는 아니다. 어떻게 만들건지 PG에게 맡기는 경우도 있다. SE는 내부설계하지않는다는 케이스도 많이 있다.
기본설계의 진행방법에 대해 해설한다.
요건정의가 끝나고 그 다음 페이즈이다.
요건정의서가 작성이 된다. 요건정의서를 기반으로 고객과 상세한 사양을 결정한다. 고객과 사양을 결정할 최후의 찬스이다. 왜냐하면 요건정의에서 대략적으로 어떻게 만들지 이야기해서, 기본설계에서 고객과 사양을 결정한다.
ざっくり 대략적인 모양, 대략적으로, 대충
다음 상세설계에서 프로그래머에게 어떻게 코딩할지에 대해 이야기하게 된다. 고객과 결정하는 사양은 기본설계에서 정하는 것이다. 요건정의에서는 요건정의서라는 성과물을 내지만, 기본설계의 페이즈에서는 결정사항을 기본설계서에 기재한다. 상세설계의 성과물은 상세설계서이다. 기본설계서가 어떤 서류인지 어떤 작성을 했는지 확인해보자.
실제의 기본설계서를 보면서 해설하도록 하겠다.
기본설계서의 작성방법
위는 표지이다.
개정이력.
목차가 있다.
기능일람.
시스템구성
화면설계
장표설계(帳票)
배치설계
데이터이동설계
기능일람의 설명
넷플릭스 같은 동화배신시스템에 대한 설정.
동영상을 업로드 한다던가, 프론트화면에서는 동영상을 본다던가 카드 결제라던가 그러한 기능이 있습니다라는 정의가 되어 있다.
시스템 구성이다.
시스템 구성이라는 것은 인프라 쪽, 서버 쪽을 어떻게 준비해야하는가 등이다.
draw.io라는 사이트가 있는데, 해당 툴을 사용해서 시스템 구성도를 간단히 그릴 수 있다.
화면 설계의 디자인을 어떻게 하는가이다.
화면에 대한 정의이다.
화면의 겉보기, 눈에 비치는 모양과 화면의 일람에는 어떤 것들이 있는지, 화면 전이도라던지.
見た目(みため)
예를 들어 로그인 버튼을 클릭하면, 로그인 화면으로 전이한다라던가. 겉모양은 이런 모습으로 간다던가. 화면에 관한 모든 것들을 정의하는 것이 화면설계의 단계이다.
세오마루 어드바이스 :도큐먼트로 정의하는 것 보다 목업툴을 사용하는 것이 좋다.
옛날의 헤이세이의 방식은 엑셀 도큐먼트에 이런 느낌으로 정의를 해서, 어떻게 할까요 하면서 결정을 했지만, 지금 레이와 시대에서는 좀더 좋은 틀이 있다. 목업 툴이라는게 있다.
목업툴이라고 해도, 여러 종류가 있지만서도, 오늘은 prott를 예로 소개해보겠다. 어떤 툴이라고 하면,
스마트폰의 화면이라던가
단순히 디자인 샘플 등을 볼 수 있다.
목업을 만들어볼 수 있다.
실제로 버튼을 클릭해보면 동작해볼 수 있다.
화면1, 2를 만들어서 연결한다던가.
코멘트를 넣는 것도 가능하다.
엑셀로 정의하는 것보다는, 프로토를 사용해서 실제로 움직이는 목업을 보여주면서 고객과 이야기하는 편이 인식의 합의가 잘 될 것이라고 생각한다.
すり合わせ(すりあわせ) 협의, 합의
옛날 방식으로 엑셀로 화면 정의를 샘플의 예로 적었지만, 실제로는 목업툴을 사용해서 설계서 쪽에는 목업사이트로 정의한다 등으로 적는다. 목업툴을 이용해서 고객과 합의를 함 등이 유행하고 있다.
今風(いまふう)
장표설계에 대해 해설하겠다.
장표가 뭐냐면, 파일이다. PDF 다운로드라던가, CSV 다운로드던가, 인쇄를 하는 시스템이라던가 인쇄물이라는 것도, 장표라고 이야기한다. 그러한 것들을 정의하는 페이즈이다.
이번에는 예로써, 영수증의 PDF를 다운로드하는 형태로써 해설하겠다. 이런 식으로 영수증의 PDF를 만들겠다는 화면이다. 이것이 장표설계이다. 어렵게 생각하지 않아도 되므로, 화면 이외의 무언가의 외견을 정의하는 것이 있다면, 여기서 정의한다라는 것이 된다. 아무 것도 없다면 장표 설계를 하지 않아도 된다.
배치라는 것은 자동으로 움직이는 프로그램을 이야기한다. 이번에는 넷플릭스의 월결제 과금에 대해서 배치. 신용카드의 과금 배치. 어떤 배치인지 배치의 행위를 여기에 정의한다.여기는 예로써 정의되어있다. 목적으로써는 월에 1번 결제금액을 자동으로 배치하도록 한다.
振る舞い(ふるまい) 행동, 행위
트리거(토리가)는 어떤 움직임인지 어느 타이밍에 움직이는지의 이야기이다. 매월 1일의 아침10시에 cron을 사용해서 기동한다라고 정의되어 있다.
처리의 플로어인데, 플로어의 흐름이다.
1. 배치의 처리가 개시
2. 등록완료된 신용카드에 과금처리를 행한다.
3. 과금이 성공하면, xxxxxx
4. 과금이 실패하면, xxxxxx
5. 처리종료메일을 관리자에게 송신한다.
이런 정의를 한다.
세오마루 어드바이스
기본설계서는 어디까지 고객과 어느 사양을 하고자 한다는 페이즈이다. 프로그래머에게 필요한 상세한 설명은 적혀있지 않다. 예를 들어 클래스도라던가 시퀀스도이다. 기본설계에서는 하지 않는다. 상세 설계에서 다루게 된다. 고객이 이해할 수 있는 레벨로 상세하게 적는다.
데이터 이행 설정
구 시스템, 기존 시스템이 있는 경우, 새 시스템에 Replace, 바꾸어 만드는 페이즈가 된다.
作り変える(つくりかえる) (기존의 것을 이용해서) 고쳐 만들다, 바꾸(어 만들)다.
구 시스템에서 새 시스템으로 어떤 느낌으로 이행할 것인가? 가져갈 것인가의 정의이다. 샘플로 유저 테이블이 있다. 어떻게 이동할 것인가 이다.
새 시스템은 테이블 구조가 틀림. 맵핑을 하는데 어떤 컬럼을 어떤 컬럼으로 가져가는지 이다. 데이터이동설계이다. 이 경우는 구 시스템이 있는 경우이다. 신규개발인 경우는 필요없다.
비디오렌탈시스템의 기본설계서.
이런 느낌으로 기본설계서를 작성했다.
학생이 어떤 수업을 들었는지 아닌지를 확인하는 것인것 같다.
상세설계의 진행 방법
기본설계서를 기반으로, 프로그래머에게 실장 방법을 전달한다.
성과물은 클래스도 같은 UML을 써서 상세설계서에 기재하는 것이 일반적이다. 그러나 전달되면 무슨 형식이더라도 OK.
상세설계는 PG에게 맞겨서 상세서를 작성하지 않는 경우도 있다. 일부의 딱딱한 현장은 고객에게 상세설계서를 제출해달라고 이야기하는 경우도 있다. 제출해도 고객은 모를 수도 있겠지만, 그러한 경우가 있다.
UML unified modeling language 개발자간의 의사소통을 원활하게 하기 위해 표준화한 모델링 언어
UML이란 프로그래머향 도이다. 클래스도라던가 시퀀스도 같은 여러 종류가 있다. 지시서이다. 상세사양서를 적게 된다면 UML을 써서 클래스도, 시퀀스도.
시스템의 설계에 대해 해설을 했다. 중요한 어드바이스.
설계라는 것은 설계서가 있지만, 어떤 식으로 설계서를 적어야 하는지 설계서의 포멧에 얽메이지 마라. 설계서의 작성법은 전혀 중요하지 않다. 가장 중요한 것은 그 페이즈에서 외부 설계시 무엇을 하는가 내부 설계시 무엇을 하는가 페이즈의 역할을 생각하자.
외부설계라는 것은 고객과 사양을 정하는 최후의 찬스. 외부 설계에서 결정되는 사양은 전부 정리한다는 역할이다. 외부설계서를 어떻게 적는가라는 포멧보다는 사양의 인식을 맞추는 역할이다. 어떻게하면 상대방에게 전달하는가 쉽게 전달하는 방법으로 설계를 진행해라.
계약서 같은 이용계약서 같은 어려운 서류는 읽기 싫은 것 처럼, 고객도 이해하기 어려워한다. 읽으려고 하지도 않을 것이다. 되도록 알기 쉽게 상대의 인식을 맞춘다는 것으로. 목업툴을 사용하면서. 그것을 염두에 두면서 진행하자.
설계서를 적어두지 않으면 분쟁이 될 가능성이 있다. 결정한 것은 제대로 남겨두자라는 의미로 설계서를 작성한다.
상세설계서는 프로그래머에게 실장방법을 전달하는 페이즈이다. 무엇을 적어야 좋은가, 플로우 차트 등을 무조건 쓰는것이 아닌, 프로그래머에게 전달하는 것이다. 상세설계라는 건은 나중에 맡기는 경우도 있다. 전달하기 위해서는 어떻게 할지 생각하라. 정답은 없다. 외부설계 , 내부설계 역할을 이해하라. 무겁게 생각하지 마라.
ぶっちゃけ ホンネの話をする際の前置きに使う。
[Engoo] 旅行 1 - 1일째 (0) | 2022.04.05 |
---|---|
03/29 일본어 면접 스터디 (0) | 2022.03.30 |
댓글 영역