개발/학교 수업

제품과 공정의 조합 제폼-공정의 수명주기 제품 수명주기: 도입-성장-성숙-쇠티 초기: 수요자 많지 않음 -> DTO 중기: 수요 증가 -> 표준화 및 생산능력 증가 -> MTO, ATO 후기: 대량 생산을 위한 완전 표준화 제품 -> MTS (소량) DTO -> MTO -> ATO -> MTS (대량) 공정의 수명 주기 제품 수명 주기에 따라 다름 초기: 생산량 적고 제품 이질성 높음 => 유연성 중요 -> 공정별 배치 후기: 생산량 많음, 표준화된 제품 대량 생산 -> 제품별 배치 공정 유형의 동태적 변화 Unit job Shop -> Batch job Shop -> Discrete(continuous) flow shop 제품-공정의 연계 균형 전략: 제품의 유형과 공정의 유형 간 최적의 연계 기본 모..
아이패드로 공부하다가 졸려서 블로그에 쓰면서 공부 제조시스템의 설계 핵심 주제 제품의 유형과 설계, 공정의 유형과 설계, 설비 배치 제품-공정 매트릭스 설비 입지, 요인 평점법, 수송비용 기준법 공급만 관리(SCM), 채찍효과 학습 목표 제품 분류 기준, 공정 분류 기준, 설비 배치 유형 알아보기 제품과 공정의 연결관계를 P-P 매트릭스를 바탕으로 알아보기 설비입지 선정 기준. 평점 요인법과 수송비용 기준법을 이용해서 최적입지 선정하기 공급망 구조를 이해, 채찍 효과를 줄일 수 있는 공급망 설계와 관리의 원리. 제조시스템의 본질 경영조직 시스템 vs 제조/서비스 시스템 기업 시스템(본사) vs 제조시스템(생산현장) 경영 조직 기능별 라인 조직, 라인-스탭 조직 사업부제 조직, 매트릭스 조직, 네트워크 조..
Code Layout 개인 취향에 따라 다르다. 하지만 특정 규칙을 정해놓고, 통일성있게 작성하자. Evidence that Layout Matters Chase & Simon (1973): "Preception in Chess" Schneiderman(1975): "Exploratory Experiments in Programmer Behavior" McKeiten et al. (1981) Soloway & Ehrlich (1984) 파이썬 래이아웃은 일등 시민이다 원칙과 목표 비주얼 레이아웃 -> 프로그램의 논리적 구조 목표: 코드를 예쁘게 만드는 것이 아닌 이해하기 쉽게 만든다. 다른 프로그래머들의 경험을 빌리자. 더욱 빠르게 전문가가 될 수 있음 Withstand the test of time h..
Software Dev Process Objectives 소프트웨어 개발 단계를 이해한다. 제품의 품질 향상을 위한 공정들을 이용하기. 전통적인 방법 더욱 모던한 방법 어떤 것이 적용될 수 있고, 적용될 수 없는지 이해하기. Development Phases 시장 조사 요구사항 수집 및 분석 Specification, planning, design 구현과 테스팅 배포 지원 및 유지보수 시장 조사 유저 혹은 현장에 있는 사람, 내부 직원(개발자 등) 등이 조사 대상 사회적/경제적 실현 가능성 판단 시간/비용이 얼마나 필요한지 가늠해보기 마케팅을 무시하지 말 것. 요구사항 분석 제품 정의 information, function, behavior, performance, interfaces 목표와 사용가능한 ..
Credit: Many Slides from UCB CS169 지라에서 사용하던 것들의 정확한 의미를 알게 되어서 좀 더 재밌게 공부할 수 있었다. Requirements and Specification Requirements Engineering 소프트웨어 시스템을 만드는데 가장 중요한 부분 중 하나: 무엇을 만들 것인가 잘못된 프로세스가 있으면 바로잡기. 나중에 고치려하면 더욱 많은 비용이 든다 반드시 software process에 적합해야 함 향후 plan과 document를 위해 requirements/specs을 아주 상세히 만들어야함. 일부 user story들은 여러 번 반복해서 수정하고, 개선시킴(iterative process) Determining Stateholders and Nee..
기본적인 프로젝트 진행 방식과 document 작성 규칙, 방법들을 배웠다. 프로젝트 스프린트 과정 팀 구성 프로젝트 주제 제안 프로젝트 스프린트 Sprint 1: (Features + Setup) - requirements and specification Sprint 2: design and planning document, starting development Sprint 3 Sprint 4 Sprint 5 Final demo poster session Final Report 스프린트 마다 문서들을 버저닝 하면서 업데이트 해야한다. Project requirements and specification a living document github wiki 이용 간결하게 작성포함 되어야할 내용 프로젝트 ..
Testing 2 들어봤을 법한 테스팅 용어 Mutation Testing: 일부러 코드에 오류를 만들었을 경우 테스트가 멈추는가? Fuzz testing: random input을 매우 많이 넣어보기. DU-coverage: 각각의 쌍이 모두 실행되었는가? Symbolic execution Concolic testing: concrete + symbolic test Mutationg-based Fuzz Testing example 예시 과정: 크롤링 - 퍼징 툴(스크립트)로 - grab & mutate file, Feed it to prog, rec if crashed. Focus on Sets of Values Path마다 그룹으로 나눠서 보기.(트리 그려가면서) 각 그룹마다 하나의 대표값 찾기. S..
1. Testing Traditional Quality Assurance 전통적인 QA 방법은 9단계로 진행된다. 머리 속에서 코드 실행해보기 IDE warning으로 인지해서 고치기 complier warnings 고치기 코드 리뷰(피어 리뷰) Unit testing (black +white) Integration testing System testing Alpha testing Beta testing 얼마나 테스트를 진행해야할까? Bad: "Until time to ship" better: Lines of Test / Lines of code 1.2~1.5 값은 터무니 없는 값이 아니다. 적정하거나 더 많이 수행된다. 실제 프로덕트 시스템에서는 더욱 많은 테스트가 진행 more better Quest..
Woogie2
'개발/학교 수업' 카테고리의 글 목록