2025/06/06 33

[소프트웨어 공학] 4. 요구 분석

요구Permalink요구 추출Permalink고객 발표문헌, 양식 조사인터뷰설문브레인스토밍 회의프로토타입핑관찰이런 많은 방법을 통해 요구사항을 추출해야한다.교수님은 인터뷰가 가장 좋다고 하신다.요구 분석Permalink도출한 요구 후보들을 분석하고 결정해서 요구로 확장하는 단계이다.요구 품질Permalink요구 후보들의 품질을 평가한다.도메인 분석Permalink도메인은 요구의 배경을 뜻한다.소프트웨어를 구축할때 문제가 무엇인지를 이해해야 하고 문제를 해결하기 위해 문제가 어디에 놓여있는가를 이해하는 단계이다.시나리오 기반 분석Permalink5W 1H로 시나리오를 표현하면 효과적이라고 하는데 이는 When, Where, Who, What, Why, How를 의미한다.UseCase (유스케이스)Perma..

[소프트웨어 공학] 3. 프로젝트 계획과 관리

INTROPermalink여러가지 자원, 인력, 비용, 재료, 기술을 효과적으로 사용해 프로젝트 목표를 달성하는 것.핵심은 시간표를 잘 짜라.스스로 추적 관리를 해라.스타트업에 몸담고 있는 교수님의 말씀은 교재 보다는 현장에서 몸으로 느끼는 것이 중요하다고 한다.실질적으로 학생 입장에서는 이걸 체험해 보기 어렵다고 하시면서 프로젝트를 할때 꼭 규모를 키워서 진행해 보라고 하셨다.그런 의미에서 지금 하고 있는 졸업 프로젝트, 창업 동아리가 많은 도움이 되는 것 같다.이 내용은 다른 글에서 정리해 보겠다.WBS (Work Breakdown Structure)Permalink개발 팀이 프로젝트 목표를 달성하고 결과물을 산출하기 위하여 수행하여야 할 작업을 계층적으로 분할한 것스케줄링PermalinkWBS를 기..

[기계학습 심화] Neural Network

Neural NetworkPermalink인간 뇌의 neuron 구조를 모방한 네트워크 구조를 Neural Network라고 한다.Training, InferencePermalink진행 방식은 다음과 같다.Training수많은 데이터를 순방향 전파 (forward propagation)를 통해 신경망을 거쳐가고 Loss Function을 통해 에러율을 판단한다.그 에러율을 줄이기 위해 역방향 전파 (backward propagation)로 다시 신경망을 반대로 지나가면서 각 신경망의 Weight들을 바꾼다.Inference모델이 원하는 작업을 수행해 주는 것이다.쉽게 말해 예측하는 작업! 당연히 학습된 모델이기 때문에 추론 과정에서는 순방향 전파만 일어난다.https://manchann.tistory.c..

[기계학습 심화] Linear Classification review

Linear ClassificationPermalink살짝 복습으로우리는 예측값을 구하기 위해 함수를 찾으려는 것이고,Linear에서는 W, b를 찾는 것이 목적이다.최적의 W, b를 찾기 위해 Loss 개념을 사용해train data에서 가장 실제값을 잘 표현하는 W, b를 찾는 것이다.부가적으로 직접 설정해야 하는 hyper parameter 값을 잘 설정하기 위해서는 validation data를 사용Loss FunctionPermalinkLoss Function - L1 LossPermalink정답이 1일때 예측값이 1이면 에러가 0간단하다.Loss Function - L2 LossPermalink이것도 간단하다 L1에서 제곱Loss Function - Cross Entropy LossPermal..

[기계학습 심화] PCA

Supervised Learning vs Unsupervised LearningPermalinkSupervised Learning: 지도 학습데이터에 레이블이 붙어 있음예측 문제 (Regression, Classification)예시: Linear Regression, SVM, KNNUnsupervised Learning: 비지도 학습데이터에 레이블이 없음군집화 문제 (Clustering)예시: K-Means, PCAPCA (Principal Component Analysis)PermalinkUnsupervised Learning 기법으로머신러닝, 딥러닝 할때 데이터 크기 (차원)이 너무 크다는 문제점을 해결하기 위해 사용하는 것이다.쉽게 말해 축 (basis vector)를 바꿔서차원을 줄이는 방법이다..

[소프트웨어 공학] 2. 프로세스와 방법론

프로세스소프트웨어 공학에서 프로세스란소프트웨어 시스템을 구축하기 위해 수행되는 작업의 집합을 의미즉 프로젝트에서 수행해야 하는 작업과 수행 순서를 정의한 명세를 의미한다.프로세스 모델프로세스 모델이란일반적인 프로세스를 추상적으로 기술한 것. (작업 흐름)작업의 단계와 순서, 각 단계 작업 수행의 제약사항이나 조건을 모아 놓은 것프로세스 (명세), 프로세스 모델 차이점프로세스 정의Permalink프로세스를 명확하게 설명하기 위해서는 3가지를 정의 해야 한다목적작업 방법성과전통적인 모델Permalink폭포수 모델Permalink가장 오래되고 널리 사용된 프로세스 모델계획 단계 -> 운영 -> 유지보수 모두 순서대로 진행각 프로세스 사이에 결과물이 있어 명확히 구분, 이전 작업으로 돌아가는 재작업 없다결과는 ..

[졸프] 출시, BM, 개선사항

현재 상황1월 초 ~ 2월 말 현재까지 개발을 진행해출시를 앞두고 있다회의이번 졸프는 1년짜리니까실 사용자를 끌어들이기 위한 노력이라도 해보려고 한다..본격적으로 원래 계획했던 홍보를 시작해야 할 것 같아서 회의때 몇가지 제안을 해봤다타자 치기 귀찮으니 사진으로 대체컨셉개선사항BM소감, 아쉬운점, 방학 회고방학기간 동안 V1 프엔 백엔 개발을 거의 끝내서 나름 뿌듯하긴 하다하지만 동시성, AOP, jenkins, 멀티 스레드 등등.. 해보고 싶은게 많았는데사실상 내공부는 많이 못했다주변 개발하는 모습을 보면운영 DB, 개발 DB, 운영 서버, 개발 서버를 먼저 구축하고 개발하는 것 같던데나는 너무 로컬 -> 운영으로 바로 넘어가는게 아닌가 싶기는 하다너무 실전적이지 않은 느낌?이부분은 다음 프로젝트에 시..

PROJECT 2025.06.06

[졸프] 3주만에 플러터로 앱 만들기!

글머리에 적는 소감과 결과물어렵다..다들 쉽다고 하는데 나는 잘 모르겠다프론트를 제대로 해보는게 처음이어서 그런지UI 배치도 마음대로 잘 안되고 상태관리도 헷갈리고.. 그랬다프론트 하시는 분들 대단하다생각보다 빠르게 한 것 같아서 약간 뿌듯하다눈에 보이는 결과물이 있어서 그런듯 하다레퍼런스가 생각보다 없다기초적인 글은 지인짜 많은데 좀 복잡한 부분을 다루는 글은 몇개 없는 것 같다..https://nomal-dev.tistory.com/15이분 블로그가 정말 많은 도움이 되었다내가 만든 디자인은 어딘가 이상하다 기술스택 선정팀원 모두 프론트 경험이 없는 상태였고빠르게 출시하기 위해 cross platform을 선택.react native, flutter중 고민하다가난이도가 낮다고 하는 fl..

PROJECT 2025.06.06