느낀점
첫번째 요구분석 프로젝트는 2주 가까이 요구분석을 할 수 있는 시간이 있었고, 프로젝트 기간이 얼마나 될지 몰라 어느정도의 깊이로 준비를 해야하는지, 맞게 가고 있는지 조차 구분이 안되었다.
그러다보니 요구분석 기간을 넉넉히 잡아줬음에도, 설계에 대한 부분은 전혀 준비가 되지 않은 상태로 프로젝트에 임하게 되었다. 그리하여 막상 프로젝트를 시작하면서, 내부 로직이 처음에 바로 매끄럽게 이어지지 않아
시간과 시행착오를 다소 많이 거쳤다.
반면 두번째 프로젝트는 계획을 잡으면서 동시에 설계가 같이 어느정도 구상이 되었고, 실제로 금방 DB 설계와 클래스 설계가 나왔다. 대신에 요구분석을 세세하게 적지 않아 추가하고자 하는 기능이나 요구사항들이 많이 반영되어있지 않은 단점이 있었다. 첫번째 했던 프로젝트처럼 확실히 요구사항을 하나하나 명세 해놓으니, 프로젝트의 기간이 길어지고, 분량이 많아지면서 내가 어디까지 했고, 무얼해야하는지가 우선순위가 잊어버릴 때가 있는데, 그런 부분에서 명확히 딱딱 짚을 수 있는 이정표가 있으니, 그대로 나는 오늘 할 분량에 대해 계속 구현만하면 되어 방황할 시간이 줄었다.
그러나, 확실히 요구분석을 상세하게 명세 하는 일은 번거롭고 힘든 일이다. 이런 부분을 어떻게 빠짐없이 일목요연하고 세세하게 작성할 수 있을지는 아직 고민해봐야할 부분이다. 정보처리기사를 통해 무엇을 파악해야하는지 머리로는 아는데, 실전 경험이 턱없이 부족하다!
긍정적인 점
첫번째는 키오스크를 따라 구현하는 명확한 주제가 있었고, 실제 프로젝트에서 사용하게 될 주제들을 많이 접하고 다뤄본 것 같다. 확실히, 그 전까지는 QPushButton에 clicked 이벤트만 활용할 수 있었던 과거와 달리 처음으로 QWidget에 pressedEvent를 활용하는 기술도 접목하고, 동적으로 위젯끼리 정보가 주거니 받거니 화면을 출력하는 기능들, Qt의 클래스들을 상속하여 이용하는 기술들을 처음으로 활용해보았고, 시간과 시행착오들이 걸렸지만 결국 완수해냈다.
두번째는 비슷한 환경의 Qt Framework 의 과정이지만, 내가 잘 아는 분야에 대해 주제를 선정하고, 어떤 기능들이 필요한지 아니까, 요구분석을 분명히 명세하지 않았음에도, 추가해야할 기능들이 딱딱 나왔다. 또한, 이전의 시행착오들이 경험이 되어 상속을 통한 구현도 금방금방 해결이 되었고, 구조도 매끄럽게 짜여 단기간에 원하는 결과물을 낼 수 있었지 않았나 싶다.
개선해야할 점
어떤 프로그램을 만들든 내가 무엇을 만들지 명확해야(목적) 거기에 걸맞는 프로그램이 나온다는 것을 이해했고, 잘 모르는 분야에 대해서는 요구 분석과 비즈니스 요구사항 등을 명확히 이해하려고 노력해야겠다는 경험을 했다. 하지만 아직 부족한 점은 미래에 어떤 일이 벌어질 줄 알고 "거기에 걸맞는 설계를 해야하는 것인가"이다. 데이터베이스와 객체지향적 설계를 놓고, 어떤 객체를 어디서 생성하고 전달하고, 여기서부터 여기까지는 객체로, 어디서부터 어디까지는 단순한 데이터로 조회하고 입력해야하는지 명확히 구분점이 서질 않는다. 여기서 이걸 불러와도 되나..? 하는 부분들이 늘어나는데, 시간 안에 OOP의 5가지 원칙들을 모두 준수하면서 프로그램들을 만든다는 것 참 어렵구나 느꼈다. 디자인 패턴에 대한 다시 학습이 필요하다고 느끼고, 자바에서는 이렇게 했는데, 파이썬에서는 이렇게 해야하네.. 그런 부분들을 느끼면서 최적의 좋은 모델과 방법들을 계속 찾아나가야겠다.
제일 좋은 방법은 좋은 잘 깎인 코드를 읽어보고 왜 이렇게 작성했지..? 그렇게 코드리뷰를 하면서 공부를 해나가야할 것 같다.
감사합니다.
'광주인력개발원' 카테고리의 다른 글
[개발계획서] "봄 감자가 맛있단다" | 1조_무상광자 팀 | 강원도 여행 계획 프로그램 | (0) | 2023.07.09 |
---|---|
데이터 분석 기초 개인 공부 [2023-07-02 학습일지] (0) | 2023.07.02 |
파이썬 개인 프로젝트 - ICU Flowsheet 프로그램 만들기 3일차 -완료- [2023-07-01 개발일지 & 완료보고서] (0) | 2023.07.02 |
파이썬 개인 프로젝트 - ICU Flowsheet 프로그램 만들기 2일차 [2023-06-30 개발일지] (0) | 2023.07.02 |
파이썬 개인 프로젝트 - ICU Flowsheet 프로그램 만들기 1일차 [2023-06-29 개발일지] (0) | 2023.07.02 |