어떻게 소프트웨어를 만들어야 좋게 만들수 있을까, 어떻게 ComputerProgramming해야하는가에 관한 ComputerScience. DevelopmentProcess, ProgrammingParadigm에 관심이 많다. 관련사항들 * DesignPatterns * [[Refactoring]] * UnitTest * StepwiseRefinement * 관련인물들 * WardCunningham * MartinFowler * KentBeck * RonJeffries * Software development paradigms basically need to address two issues: 1. The contents issue --> Methodology * Structured methodologies : 시스템프로그래밍에 적합, 고객지향에 부적합 * InformationEngineering : 엔터프라이즈급 데이터 모델 * ObjectOriented methodologies 1. Manageability issue --> Life-cycle strategy (DevelopmentProcess) Classical phases in software development * Requirements analysis * Analysis * Design * Implementation * Testing * UnitTest * System test * recovery testing, security testing, stress testing, performance testing * AcceptanceTest = Validation testing * Conversion * parallel approach, direct cutover, pilot study, phased approach * Maintenance SeeAlso SoftwareEngineeringForBioinformatics ---- 사실, 어떻게 만들어야 하는가에 관한 방법론적인 사항들이 학문분야로 자리잡은건 ComputerScience의 좀 특이한 면이라고 생각한다. [Biology]만 하더라도, 실험을 어떻게 해야하는가, 프로젝트를 어떻게 유지하고, 팀내 어떻게 정보를 공유해야하는가등등이 학문분야로 자리잡혀있지는 않다. 프로그래밍분야는 특별한것이 있다. --[[yong27]], 2002-12-16