TAISUN, the largest, strongest crane in the world and dual heavy lift world record holder is seen here installing the 12,000 metric ton deck box of Schahin's semi-submersible drilling unit "SS Amazonia". These pictures were taken during March 2010 in Yantai, China at Yantai Raffles Shipyard.
Established in the year 1905, Loksa Shipyard Ltd. is located on the northern coast of Estonia, in the township of Loksa, just about 65 kilometres from Tallinn.
The Company is specialized in fabrication and painting different large-sized non-standard steel structures.
삶을 살면서 우리는 수많은 선택의 기로에 섭니다. 그 갈림길에서, 또 인생의 고비에서 만난 인연은 나의 인생을 변화시키거나 때로는 전혀 예상못한 길로 인도하기도 합니다. 인생에 홀로 서 있다고 생각할 때, 그래서 고민하고 낙담하게 될 때, 손을 잡아주는 사람은 당신에게 누구입니까?
세바시 15분 서민 단국대학교 의과대학 기생충학교실 교수 - 과학연구의 허와 실 cbs15min
적포도주가 심장병에 좋다는 연구결과가 나온 건 프랑스 포도주가 하도 안팔려 재배 농민들이 시위를 했던 땝니다. 글로코사민이라는 관절염약은 사실 큰 효과가 없지만, 그게 좋다는 논문은 계속 나오고 있습니다. 알고보니 그 논문들은 글루코사민을 만드는 제약회사로부터 연구비를 받아 연구한 것들이었습니다. 물론 모든 연구가 다 그런 건 아니며, 세상엔 정직한 연구자도 많이 있습니다. 하지만 많은 과학연구가 정치적이고 경제적인 상황논리에 따라 좌지우지된다는 사실은 알고 있을 필요가 있습니다.
서버단에 비해 상대적으로 UI는 분석 및 테스트 수행 여부를 파악하기 쉽지 않습니다. 웹 UI의 HTML 또는 XML 형태의 엘리멘트와
다양한 이벤트들을 정적으로 분석하고 이를
1) 테스트 대상으로 활용
2) 개발완료 여부, 표준 준수 여부 등을 검사
3) 개발 완료 이후 변경 부분 히스토리 관리
등으로 활용한 사례를 공유합니다
TAISUN, the largest, strongest crane in the world and dual heavy lift world record holder is seen here installing the 12,000 metric ton deck box of Schahin's semi-submersible drilling unit "SS Amazonia". These pictures were taken during March 2010 in Yantai, China at Yantai Raffles Shipyard.
Established in the year 1905, Loksa Shipyard Ltd. is located on the northern coast of Estonia, in the township of Loksa, just about 65 kilometres from Tallinn.
The Company is specialized in fabrication and painting different large-sized non-standard steel structures.
삶을 살면서 우리는 수많은 선택의 기로에 섭니다. 그 갈림길에서, 또 인생의 고비에서 만난 인연은 나의 인생을 변화시키거나 때로는 전혀 예상못한 길로 인도하기도 합니다. 인생에 홀로 서 있다고 생각할 때, 그래서 고민하고 낙담하게 될 때, 손을 잡아주는 사람은 당신에게 누구입니까?
세바시 15분 서민 단국대학교 의과대학 기생충학교실 교수 - 과학연구의 허와 실 cbs15min
적포도주가 심장병에 좋다는 연구결과가 나온 건 프랑스 포도주가 하도 안팔려 재배 농민들이 시위를 했던 땝니다. 글로코사민이라는 관절염약은 사실 큰 효과가 없지만, 그게 좋다는 논문은 계속 나오고 있습니다. 알고보니 그 논문들은 글루코사민을 만드는 제약회사로부터 연구비를 받아 연구한 것들이었습니다. 물론 모든 연구가 다 그런 건 아니며, 세상엔 정직한 연구자도 많이 있습니다. 하지만 많은 과학연구가 정치적이고 경제적인 상황논리에 따라 좌지우지된다는 사실은 알고 있을 필요가 있습니다.
서버단에 비해 상대적으로 UI는 분석 및 테스트 수행 여부를 파악하기 쉽지 않습니다. 웹 UI의 HTML 또는 XML 형태의 엘리멘트와
다양한 이벤트들을 정적으로 분석하고 이를
1) 테스트 대상으로 활용
2) 개발완료 여부, 표준 준수 여부 등을 검사
3) 개발 완료 이후 변경 부분 히스토리 관리
등으로 활용한 사례를 공유합니다
예전에 인턴하면서 프로젝트해서 만든 자료인데 공유하고 싶어서 올립니다.
한국어로된 자료가 별로 없더라구요.
많은 레퍼런스 보고 만든 문서인데 혹시 필요하신분 있으면 참고하세요.
물론 이건 표준이고 현실에서는 표준을 따르지 않을 때도 많습니다.
프로젝트마다 테스트 강도를 조절하는 것이 좋다고 생각합니다.
급증하는 온라인 사용자 증가, 부하테스트가 필요하지 않으신가요?
요즘 인터넷 뉴스에는 홈페이지 접속자 폭증으로 인한 서버 다운, xx은행 모바일 앱 접속 에러, 인터넷 뱅킹 장애 등 온라인 시장과 모바일 시장이 급격하게 성장함에 따라 이에 따른 장애 소식이 끊이지 않고 전해지고 있습니다.
그렇다면, 우리는 이런 장애들을 어떻게 대비할 수 있을까요?
웹∙앱 부하테스트 (성능 진단) 및 컨설팅 안은 웹∙앱 부하테스트(성능 진단 테스트) 진행 과정과 이를 기반으로 어떻게 컨설팅을 진행하고 있는지 소개하고, 나아가 관련 장애들을 대비할 수 있는 방법에 대해 설명합니다.
(공유드리는 파일은 slideshare에 업로드되었던 웹∙앱 부하테스트 성능 진단 및 컨설팅 안을 업데이트한 최신 본입니다.)
웹∙앱 부하테스트 (성능 진단) 및 컨설팅 자료는 아래와 같이 구성되어있습니다.
• 웹∙앱 성능을 진단하고 문제에 대한 원인 분석 및 개선방향을 제시합니다.
• 컨설팅 안에는 여러 실 성능 진단을 예시로 들고 이에 대한 원인 분석 및 개선방향을 도
출한 내용이 포함되어 있습니다.
1. 앱 성능 진단
• 앱 진단 절차
• 앱 진단 상세 내용
2. 웹 서버 성능 진단
• 웹 진단 절차
• 웹 진단 방향
3. 부하 테스트
• 현 테스트 시나리오 분석
• 테스트 시나리오 보완 방법
• 부하 테스트 진행 방안
• 부하 테스트 전략
• 클라우드 기반 테스트 방안
모바일 성능 모니터링, 웹 서버 성능 진단 및 부하테스트 컨설팅에 관심이 있으신 분은 아래 연락처로 연락해주시면, 전문 컨설턴트가 안내해드리겠습니다.
hhjung@onycom.com l 02-6395-7722
2. ‒ 프로그램 소개
‒ 프로그램 기능
1. Shipyard One™ 소개
‒ 공정 레이어 추가하기
‒ 로직 모듈 가져오기
3. 심화 사용법
‒ 모델 수정에 따른 결과 확인
4. 최종 실습
2. 기본 사용법
‒ 화면 설명
‒ 저장소 설정
‒ 프로그램 설정
‒ 조선소 모델 설정
‒ 공장 모델링
‒ 제품 모델링
‒ 공정 모델링
‒ M/M/1 모델 실습
‒ 시뮬레이션 및 결과 확인
‒ 공간 요소 추가
‒ M/M/3 모델 실습
4. 4 | 59
Shipyard One™ 소개 – 프로그램 소개
조선소
생산 일정 정보
이산사건
시뮬레이션
생산 공정
시뮬레이션
5. 5 | 59
Shipyard One™ 소개 – 프로그램 기능
UI 캡처 화면 UI 캡처 화면
│ 저장소 파일 생성 및 관리
│ 시뮬레이션 시간 단위 설정
│ 가져오기 설정
│ 언어 설정
저장소 설정 프로그램 설정
UI 캡처 화면 UI 캡처 화면
│ 외부 조선소 데이터 가져오기
│ 외부 모듈에서 작성한 로직 적용
│ 조선소 데이터 변환
조선소 데이터 가져오기 데이터 변환
설정
가져오기
6. 6 | 59
Shipyard One™ 소개 – 프로그램 기능
│ 공장 구조 추가, 수정, 삭제
│ 공장 GIS 정보 입력
│ 설비 추가, 수정, 삭제
공장 관리 설비 관리
│ 제품, 분류, 인자, 속성 요소 관리
│ 제품 구조 설정
│ 공간 요소 반영
제품, 속성 관리 분류, 인자 관리
공장 모델링
속성 설정
UI 캡처 화면 UI 캡처 화면
UI 캡처 화면 UI 캡처 화면
7. 7 | 59
Shipyard One™ 소개 – 프로그램 기능
│ 공장 별 공정 추가, 수정, 삭제
│ 공정 별 제약 조건 설정
│ 공정, 설비의 우선 순위 설정
│ 공정 레이아웃 기능
공정 관리 세부 공정 관리
│ 이산 사건 시뮬레이션 바탕
생산 공정 시뮬레이션 진행
│ 일정, 설비 현황 실시간 확인
│ 공정 분배 상황 실시간 확인
│ 공간 요소 현황 실시간 확인
시뮬레이션 결과 분석
공정 모델링
시뮬레이션
UI 캡처 화면 UI 캡처 화면
UI 캡처 화면 UI 캡처 화면
9. 9 | 59
기본 사용법 – 화면 설명
1
3
2
4
파일 메뉴
저장
도움말 보기
프로그램 정보 확인
로그아웃
1
기능 화면
작업할 기능을 화면에 출력
관련 동작 실행
3 오류 표시 아이콘
오류 발생 여부 표시
오류 없음 :
오류 발생 :
아이콘 클릭 ▶ 오류 목록 창
4
기능 별 리본 탭, 버튼 구성
관련 동작 실행
2 리본 메뉴
1
3
2
4
10. 10 | 59
기본 사용법 – 저장소 설정
없음 버튼을 클릭하여 저장파일 생성
새로운 파일 생성 기존 파일 선택
11. 11 | 59
기본 사용법 – 프로그램 설정
프로그램 기본 정보 설정
시뮬레이션 설정
가져오기 설정
언어 설정
12. 12 | 59
기본 사용법 – 조선소 모델 설정
조선소 선택
선택 버튼 클릭 필수 입력 항목 : 이름, Id
화면 하단
조선소 이름 표시
Tutorial_Basic
13. 13 | 59
기본 사용법 – 조선소 모델 설정
가져오기 / 내보내기
가져오기 / 내보내기
조선소 정보 불러오기
SOML 파일 형식으로 저장
14. 14 | 59
기본 사용법 – 공장 모델링
항목 관리 방법
동일 계층 항목 추가
(빈 화면 우클릭)
선택 항목 관리
및 하위 항목 추가
하위 항목 관리
(항목 선택 후 우클릭)
Machine1
15. 15 | 59
기본 사용법 – 공장 모델링
항목 생성 방법
항목 추가
필수 입력 항목 : 이름, 종류, Id
종류(분류) 생성
새로 만들기 → Plant1 생성
종류(분류) 선택
항목 생성 완료
공장, 제품 모두 같은 방식으로 관리
16. 16 | 59
기본 사용법 – 제품 모델링
제품 추가
제품 추가 제품 정보 입력 제품 종류 선택 제품 추가 완료
17. 17 | 59
기본 사용법 – 공정 모델링
공정 추가
後 공정 추가先 공정실행 생성
18. 18 | 59
기본 사용법 – 공정 모델링
공정 속성 화면
공정 종류 선택 속성 관리필요 설비 종류필요 제품 종류 기타 속성 관리
19. 19 | 59
기본 사용법 – 공정 모델링
공정 속성 – 필요 제품/설비 설정
필요 설비 종류 선택
Machine1
20. 20 | 59
기본 사용법 – 공정 모델링
공정 속성 – 필요 제품/설비 설정
필요 제품 종류
필요 설비 종류
필요 제품 갯수
(∞ ∼ 50)
필요 설비 갯수
(∞ ∼ 50)
21. 21 | 59
기본 사용법 – 공정 모델링
공정 고급 설정
세부 로직 설정 여부 로직 선택
22. 22 | 59
기본 사용법 – 공정 모델링
로직 직접 작성 - 기본 내용 , 라이브러리 제공 내용
로직 직접 작성
로직 입력 창
사용자 설명서에 직접 입력 로직 Library 제공
23. 23 | 59
공정 연결
Server1 (Server)
Block
Machine1
Server2 (Server)
Block
Machine2
Source1 (Source) Sink1 (Sink)
Block
Sink1
기본 사용법 – 공정 모델링
공정 명칭
공정 종류 명칭
24. 24 | 59
Queue Model
기본 사용법 – M/M/1 모델 실습
Source SinkServer
25. 25 | 59
기본 사용법 – M/M/1 모델 실습
모델 상세 내용
Server1 (Server)
Block
Machine
Source1 (Source) Sink1 (Sink)
Block
26. 26 | 59
기본 사용법 – M/M/1 모델 실습
모델 상세 내용
구분 공장 종류 공장 이름
1 공장 Plant1 Plant1_1
구분 설비 종류 설비 이름
1 설비 Machine Machine1
구분 제품 종류 제품 이름
1 제품 Block 생성 안함
구분 공정 종류 공정 이름
1 공정 Source Source1
2 공정 Server Server1
3 공정 Sink Sink1
공정 실행 공정 이름 설명
1 Plant1_1 Source1 Block제품 1개를 생성하고 소요시간은 평균이 10인 푸아송 분포를 따른다.
2 Plant1_1 Server1 Block제품 1개와 Machine 설비를 1개 사용하며 소요시간은 평균이 5인 푸아송 분포를 따른다.
3 Plant1_1 Sink1 Block제품 1개를 사용하며 소요시간은 평균(μ) 10, 표준 편차(σ) 3인 정규 분포를 따른다.
27. 27 | 59
기본 사용법 – 시뮬레이션 및 결과 확인
날짜 선택
1
2
1 : 시작 날짜
2 : 종료 날짜
날짜 입력 : 년,월, 일 순으로 입력
예시
2015-01-01, 15-01-01 2015/01/01, 15/1/1
2015.01.01, 15.1.1 2015 01 01, 15 1 1
직접 입력
1
2
선택 입력
버튼 클릭
달력 창의 상단을 클릭하여 년, 월, 일 선택
30. 30 | 59
기본 사용법 – 공간 요소 추가
공간 요소 추가 - 개별 속성
인자 값 선택속성 창 - 속성 추가 인자 값 생성 공간 요소 설정
31. 31 | 59
기본 사용법 – 공간 요소 추가
공간 요소 추가 - 종류별 속성
인자 값 선택구분 창 - 인자 추가 인자 값 생성 공간 요소 설정
32. 32 | 59
공간 요소 설정
기본 사용법 – 공간 요소 추가
공간 요소 추가 - 종류별 속성
개별 속성 – 자동 입력 사양값 설정
33. 33 | 59
기본 사용법 – M/M/3 모델 실습
Queue Model
Source Sink
Server
34. 34 | 59
기본 사용법 – M/M/3 모델 실습
모델 상세 내용
Server1 (Server)
Block
Machine
Source1 (Source) Sink1 (Sink)
Block
35. 35 | 59
기본 사용법 – M/M/3 모델 실습
모델 상세 내용
구분 공장 종류 공장 이름
1 공장 Plant1 Plant1_1
구분 제품 종류 설비 이름
1 설비 Machine Machine1
2 설비 Machine Machine2
3 설비 Machine Machine3
구분 제품 종류 공정 이름
1 제품 Block BlockA
2 제품 Block BlockB
3 제품 Block BlockC
4 제품 Block BlockD
구분 공정 종류 공정 이름
1 공정 Source Source1
2 공정 Server Server1
3 공정 Sink Sink1
36. 36 | 59
기본 사용법 – M/M/3 모델 실습
모델 상세 내용
공정 실행 공정 이름 설명
1 Plant1_1 Source1 stock 함수를 사용하여 Block제품을 1개를 받아오고 소요시간은 평균이 10인 푸아송 분포를 따른다.
2 Plant1_1 Server1
Block제품 1개와 Machine설비 1개를 사용한다.
Machine1의 경우 소요시간은 평균이 5인 푸아송 분포를 따른다.
Machine2의 경우 소요시간은 평균이 10인 푸아송 분포를 따른다.
Machine3의 경우 소요시간은 평균이 15인 푸아송 분포를 따른다.
3 Plant1_1 Sink1 Block제품 1개를 사용하며 소요시간은 평균(μ) 10, 표준 편차(σ) 3인 정규 분포를 따른다.
37. 37 | 59
기본 사용법 – M/M/3 모델 실습
모델 상세 내용
공정 실행 공정 이름 설명
1 Plant1_1 Source1 stock 함수를 사용하여 Block제품을 1개를 받아오고 소요시간은 평균이 10인 푸아송 분포를 따른다.
2 Plant1_1 Server1
Block제품 1개와 Machine설비 1개를 사용한다.
Machine1의 경우 소요시간은 평균이 5인 푸아송 분포를 따른다.
Machine2의 경우 소요시간은 평균이 10인 푸아송 분포를 따른다.
Machine3의 경우 소요시간은 평균이 15인 푸아송 분포를 따른다.
사용 함수 목록
• getAssigned
• get
• switch문
• 푸아송 분포 함수
3 Plant1_1 Sink1 Block제품 1개를 사용하며 소요시간은 평균(μ) 10, 표준 편차(σ) 3인 정규 분포를 따른다.
38. 38 | 59
기본 사용법 – M/M/3 모델 실습
모델 상세 내용
공정 실행 공정 이름 설명
1 Plant1_1 Source1 stock 함수를 사용하여 Block제품을 1개를 받아오고 소요시간은 평균이 10인 푸아송 분포를 따른다.
2 Plant1_1 Server1
Block제품 1개와 Machine설비 1개를 사용한다.
Machine1의 경우 소요시간은 평균이 5인 푸아송 분포를 따른다.
Machine2의 경우 소요시간은 평균이 10인 푸아송 분포를 따른다.
Machine3의 경우 소요시간은 평균이 15인 푸아송 분포를 따른다.
3 Plant1_1 Sink1 Block제품 1개를 사용하며 소요시간은 평균(μ) 10, 표준 편차(σ) 3인 정규 분포를 따른다.
41. 41 | 59
심화 사용법 – 공정 레이어 추가하기
하위공정이 존재하는 상위 공정의 Return 값이 0이거나 존재하지 않을 때 실행
1개의 공장을 기반으로 여러 공정실행을 추가할 수 있으나
하나의 공정실행 이외에는 모두 하위 공정이어야 합니다.
하위 공정 실행 조건
42. 42 | 59
심화 사용법 – 공정 레이어 추가하기
하위 공정 추가
공정 실행 추가하위 공장 추가 하위 공정 모델링
43. 43 | 59
심화 사용법 – 공정 레이어 추가하기
하위 공정 추가
상위 공정 속성상위 공정 실행 선택 하위 공정 선택
공정 속성 창
44. 44 | 59
심화 사용법 – 공정 레이어 추가하기
하위 공정 적용된 상위 공정 표시
45. 45 | 59
심화 사용법 – 공정 레이어 추가하기
하위 공정 화면
상위 공정으로 이동
46. 46 | 59
개요
심화 사용법 – 로직 모듈 가져오기
Row Data
가져오기
조선소 모델링
반영
생산 공정
시뮬레이션
47. 47 | 59
로직 모듈 적용하기
심화 사용법 – 로직 모듈 가져오기
로직 모듈 파일 설치 폴더에 붙여넣기 프로그램 재실행
48. 48 | 59
가져오기 기능 활성화
심화 사용법 – 로직 모듈 가져오기
가져오기 기능 활성화 설정
57. 57 | 59
최종 실습 - 모델 수정에 따른 결과 확인
실습 절차
① 저장소 파일 생성
② 최종 실습.soml 가져오기 (http://s1.xinnos.com 에서 다운로드)
③ 모델 수정 (다음 페이지 참고)
58. 58 | 59
최종 실습 - 모델 수정에 따른 결과 확인
모델 상세 내용
공정 실행 공정 이름 설명
1 Outfitting InitialDummy E_1제품 1개를 제품 목록에서 받아오고 소요시간은 0으로 한다. (공정을 1회만 실행하기 위해 소요시간 0 입력)
2 Outfitting E_1 E_1제품 1개 사용하며, E_2, E_3제품 1개 씩을 제품 목록에서 받아오고 소요시간은 17로 한다.
3 Outfitting E_2 E_2제품 1개와 Crane설비 1개를 사용하며 설비 1S[E2-E3]제품 1개를 제품 목록에서 받아오고 소요시간은 15로 한다.
4 Outfitting E_3 E_3제품 1개와 Crane설비 1개를 사용하며 S[E2-E3]제품 1개를 제품 목록에서 받아오고 소요시간은 24로 한다.
5 Outfitting S[E2-E3] S[E2-E3]제품 2개를 사용하며 하위 공정으로 SpoolSubProcess를 갖는다.
6 Outfitting Finish Finish제품 1개를 사용하여 제품을 출고한다. 소요시간은 평균 22, 표준편차 3인 정규분포를 따른다.
7 SpoolSubProcess InitialDummy Request제품 1개를 제품 목록에서 받아오고 소요시간은 0으로 한다.(공정을 1회만 실행하기 위해 소요시간 0 입력)
8 SpoolSubProcess Request Request제품 1개 사용하며 Delivery제품 1개를 제품 목록에서 받아오고 평균이 19인 푸아송 분포를 따르는 시간이 소요된다.
9 SpoolSubProcess Delivery Delivery제품 1개 사용하며 OnDeck제품 1개를 제품 목록에서 받아오고 평균이 21인 푸아송 분포를 따르는 시간이 소요된다.
10 SpoolSubProcess OnDeck OnDeck제품 1개 사용하며 Installation제품 1개를 제품 목록에서 받아오고 평균이 23인 푸아송 분포를 따르는 시간이 소요된다.
11 SpoolSubProcess Installation
Installation제품 1개와 Machine설비를 1개를 사용하며
Check제품 1개를 제품 목록에서 받아오고 평균이 15인 푸아송 분포를 따르는 시간이 소요된다.
12 SpoolSubProcess Check Check제품 1개 사용하며 평균이 24인 푸아송 분포를 따르는 시간이 소요된다.
설비 종류 설비이름 수량 인자 값 단위
1 Crane Crane01, Crane02 1 중량 200 t
2 Machine Machine 1 작업 속도 10 m/s
3 Quay Quay01 1 면적 10000 m²
Shipyard One은 설정을 통해 저장소를 따로 관리할 수 있고, 프로그램 설정 창을 통해 여러 설정을 사전에 제어할 수 있습니다. 또한 가져오기 탭을 활성화하여 외부 조선소 데이터와 외부 모듈에서 작성한 로직을 가져오기 후 변환 기능을 통해 조선소 모델링에 활용할 수 있습니다.
Shipyard One에서는 공장 정보를 분석한 데이터를 바탕으로 시뮬레이션을 하기 위한 공장과 설비, 제품, 공정에 대한 속성을 정의할 수 있습니다. 이를 통해 보다 더 정확한 시뮬레이션 결과를 도출할 수 있습니다. 추가 기능으로 공장에 GIS 정보를 입력하여 공장 별 위치 정보를 확인할 수 있습니다.
시뮬레이션을 위한 공장과 설비를 모델링하고, 공장 별 공정에 대해 모델링을 할 수 있습니다. 공장 별 제약조건, 공정과 설비의 우선 순위를 설정할 수 있습니다. 또한 모델링한 조선소 데이터를 가지고 시뮬레이션을 진행하여 결과를 도출하고, 계획했던 결과와 비교, 분석을 통해 효율적인 결과를 도출할 수 있습니다.