ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 네 번째 강연 주제: Framework Engineering
    컴퓨터 공부 ver 0.2/세미나 정리 혹은 후기 2011. 6. 20. 11:07
    반응형

    강연 주제: Framework Engineering

    강연자: 손영수(Blog: http://www.arload.net)

    1.      고 정덕영 님 블로그 주소: http://inicrabbit.tistory.co.kr

    2.      프레임의 수많은 정의 중 하나: semi-complete application: 반쯤 완성된 어플리케이션

    3.      프레임워크와 라이브러리의 차이점(?)

    A.     Control-Flow(loc)를 가지고 있는가 없는가의 차이

    4.      성숙되지 않은 시장의 framework 사용은 신중히 고려해야 한다.

    5.      Framework 개발 시

    A.     Organization(조직)

                    i.         조직 문화를 고려, 조직의 구조 = 소프트웨어의 구조

                   ii.         조직의 크기에 따른 고려사항

    1.      조직이 작다면

    A.     Simple Design

    B.     Consistency Design

    C.     Focus on 80/20 Rules

    2.      조직이 크다면

    A.     Powerful

    B.     Lack consistency

    C.     Remove Requirements

    B.     Planning

                    i.         고객 지향적 vs 벤더 지향적의 연장선

                   ii.         시나리오에 중점. 시나리오 별로 팀을 구성

                  iii.         Milestone = Scenarios + Feature

    C.     Architecture

                    i.         타입에 대한 고려

                   ii.         Libraries

                  iii.         인터페이스나 UI 를 설계 시 신중하게 그리고 최대한 유연하게

    1.      한번 변경하면 전체 시스템을 변경(?)해야 하는 경우가 발생할 수도 있다. 혹시 변경할 것을 대비해서 하지만 변경 안 하도록 설계하는 것이 중요

                  iv.         Dependence

    1.      Component

    2.      Type of Dependency

    A.     Circular Dependency

                                               i.         A à B à C à A

    3.      도구

    A.     DSM(Dependency Structure Management)

     

    1

    2

    3

    1

    *

     

    2

    *

     

    3

     

     

    *

                                               i.         1 2, 2 1 (위험)

    B.     Code Matrix

    C.     xDepend(Ndepend, Xdepend, Cdepend)

    4.      호환성을 유지(중요)

                   v.         Design(설계)

    1.      정확한 목표를 위한 설계. 피드백이 중요.

    A.     Framework Design Studio à Visual Studio에 있음

    2.      인터페이스를 똑같이 만든다.

    3.      Static Analysis Tool

                  vi.         Development

    1.      빚을 지지 말자.

    A.     이 작업은 여기까지만 하고 내일하자.” “내가 좋아하는 스타일로 개발하고 나중에 다른 사람에게 알려줘야지이런 식의 빚을 지지 말자 그런 의미.

    2.      Milestone Quality à 중간, 중간 상황을 Check

    6.      느낀 점 그리고 좋았던 점

    한 마디로 요약하면 지금까지 들었던 강연 중 가장 재미있고 좋았다. 소프트웨어 공학이야 평소 관심사이기도 하지만 강연하시는 분의 강연 포스가 느껴지는 준비를 많이 하시고 자주 하셨다는 느낌을 받은 듣기 좋은, 집중하기 좋은 강연이었다. 1시간이 아까울 정도로 그랬다.
     
    강연 내용에 있어서도 좋았다. 물론 아직 설계를 하고, 팀을 이끌어 어떤 프로그램을 개발할 입장은 아니지만 머리 속 어딘가 고이 잘 보관해 놓거나, 가끔 이렇게 정리한 걸 보면서 기억의 되새김질을 하면 좋을 듯한 내용이었다. 물론 이 분이 쓰셨거나, 앞으로 나올 현재 번역 작업을 하고 계시다는 책을 내 위시리스트에 넣어놔야겠다는 생각을 하게 했다. 오랜만에 들은 유익한 강연이었다.

    반응형

    댓글

Designed by Tistory.