제 17회 한국 소프트웨어공학 학술대회 논문집 다운로드(kcse 2015)

463
2015 제 17회 한국 소프트웨어공학 학술대회 논문집 Proceedings of the 17th Korea Conference on Software Engineering (KCSE 2015) 일시: 2015년 1월 28일(수) ~ 1월 30일(금) 장소: 강원도 평창 한화리조트(휘닉스파크점) 주최: 한국정보과학회, 한국정보처리학회 주관: 한국정보과학회 소프트웨어공학 소사이어티 한국정보처리학회 소프트웨어공학 연구회 한국전자통신연구원 후원: ㈜비트컴퓨터, ㈜코스콤, ㈜다한테크, ㈜솔루션링크, 슈어소프트테크㈜, 정보통신산업진흥원 SW 공학센터, ㈜ESG 솔루션, ITRC 고품질융합소프트웨어연구센터, STA 테스팅컨설팅㈜, TTA 소프트웨어 시험인증 연구소, 무인자율 및 자가적응형 소프트웨어 센터 제 17 권 제 1 호 Vol. 17 No. 1

Upload: hakien

Post on 08-Feb-2017

393 views

Category:

Documents


33 download

TRANSCRIPT

  • 2015

    17

    Proceedings of the 17th Korea Conference on

    Software Engineering (KCSE 2015)

    : 2015 1 28() ~ 1 30()

    : ()

    : ,

    :

    : , , , ,

    , SW ,

    ESG , ITRC ,

    STA , TTA ,

    17 1

    Vol. 17 No. 1

  • KCSE 2015 17 1

    i

    2015 .

    ,

    , ,

    17 (KCSE 2015) .

    1 28 1 30

    , ,

    83 .

    , , 6

    . SW , SW SW

    SW

    . 2

    . , , ,

    SW , , ,

    .

    ,

    .

    .

  • KCSE 2015 17 1

    ii

    : (), ()

    : ()

    : (KAIST), (), (),

    (), (), (),

    ()

    : ()

    : (KAIST), (KAIST), (), (),

    (), (), (KAIST),

    (), (), (),

    (), (), (),

    (), (), (), (),

    (), (), (), (),

    (), (), ()

  • KCSE 2015 17 1

    iii

    T1: SW

    MBTI SW

    (SW)

    T2: SW 1

    (KAIST)

    T3: SW 1

    ()

    T4: SW

    ( )

    T5: SW 2

    Architecture for Smart Services and Systems

    ()

    T6: SW 2

    ()

  • KCSE 2015 17 1

    iv

    (A1)

    Exture+

    ()

    Exture+

    ()

    ()

    (SW)

    SW Fault Tolerance

    ()

    (crowd)

    (STA )

    (ESG)

    1 (A2)

    []

    , , (KAIST)

    ISO/IEC 9126

    (), (), ()

    SW

    , ()

    []

    (), (LG), (KAIST)

  • KCSE 2015 17 1

    v

    (A3)

    , (KAIST)

    , , (KAIST)

    Open API RESTful

    , , , ()

    Cross-cutting SLA

    , , , , , ()

    (A4)

    (GPLv2) (HIS Approach)

    , (), , , ()

    , , (KAIST)

    , , ()

    Software Refactoring Impact on Software Quality in Android Application Development []

    Mesfin Abebe, ()

  • KCSE 2015 17 1

    vi

    SPLE (B1)

    , , (KAIST)

    []

    , ()

    []

    (), (), ()

    TMMi []

    , , (LIGNex1)

    []

    (), , , (KAIST)

    2 (B2)

    Running a SCRUM project within a Document Driven Process []

    Jonathan Sawyer, ()

    []

    , ()

    SBA Web []

    , , , ()

    Multicultural Diversity Software Team

    []

    (), (LG), (), (KAIST)

    Agile Approach []

    (), (LG), (NIA), (KAIST)

  • KCSE 2015 17 1

    vii

    1 (B3)

    []

    , , ()

    []

    , , ()

    IoT []

    , , , ()

    []

    (KDN), (KAIST)

    : []

    (), (LG), , (KAIST)

    1 (B4)

    , , ()

    []

    , , ()

    []

    , , ()

    []

    , , ()

    []

    , , ()

  • KCSE 2015 17 1

    viii

    1 (C1)

    []

    , ()

    : LG

    []

    , , (KAIST), , , (LG)

    Hybrid Approach for Improving Test Case Specification and Generation Efficiency []

    (), (KAIST)

    Node.js []

    BAT ERDENE KHUVIZAYA()

    (C2)

    , ()

    , ()

    []

    , , , ()

    []

    (), (), ()

    2 (C3)

    []

    , , (KAIST)

    , , , (KAIST), , (LG)

    []

    , , ()

    []

    , , ()

  • KCSE 2015 17 1

    ix

    (C4)

    , , ()

    Improving Resolution Time on JIRA System with Ontology

    , (KAIST)

    []

    , , ()

    []

    (ADD), (KAIST), (ADD), (KAIST), (KAIST)

    2 (D1)

    Prioritizing Factors Affecting the Usability of Android-based Applications []

    Ludwing Chiri Najaya, ()

    []

    , , , ()

    GUI []

    , ()

    []

    , ()

    SW (D2)

    : SW

    , , (), , ()

    DO-178 V []

    , ()

    []

    , (LIG Nex1)

  • KCSE 2015 17 1

    x

    SW 1 (D3)

    - - []

    , ()

    IT []

    , ()

    []

    , , ()

    []

    , ()

    3 (D4)

    Flexible architecture for pervasive computing with wearable device

    , (KAIST)

    []

    , (KAIST), (ADD)

    xSHEL []

    (), ( OPS)

    (E1)

    1 API

    , (KAIST)

    - []

    , ()

    []

    , ()

    SCXML Modeling and Simulation (M&S) based on Stochastic based State Diagram []

    (), (), ()

  • KCSE 2015 17 1

    xi

    (E2)

    []

    , ()

    []

    , ()

    []

    , , , , (), (), ()

    []

    (LG), (KAIST)

    SW (E3)

    GUI []

    , ()

    IoT REST []

    , ()

    IoT []

    , ()

    []

    , ()

    2 (E4)

    - Bunch

    , , , ()

    - []

    , ()

    []

    , ()

  • KCSE 2015 17 1

    KCSE 2015

    1 28 ()

    10:0010:30

    :

    5

    10:30-12:00

    SW

    :

    2

    13:0013:30 KCSE

    T1: SW

    () :1

    T2: SW 1

    () :2

    T3: SW 1

    () :3

    13:30-15:00

    (90)

    : MBTI

    SW

    (SW)

    :

    (KAIST)

    :

    ()

    :

    5

    15:00-15:15

    T4: SW

    () :1

    T5: SW 2

    () :2

    T6: SW 2

    () :3

    15:15-16:45

    (90)

    :

    ( )

    : Architecture for Smart Services and

    Systems

    ()

    :

    ()

    16:45-17:00

    : ()

    : 2

    17:00-17:05 ( ), ( )

    17:05-17:15 KCSE 2015 ()

    : ()

    : 2

    17:15-18:00

    18:00-19:00

  • KCSE 2015 17 1

    1 29 ()

    07:00-09:30

    A

    A1:

    ()

    : 2

    A2: 1

    ()

    : 1

    A3:

    ()

    : 2

    A4:

    (KAIST)

    : 3

    09:30-11:30

    (120)

    Exture+

    ()

    Exture+

    ()

    ()

    (SW)

    SW Fault

    Tolerance

    ()

    (crowd)

    (STA )

    (ESG)

    []

    , , (KAIST)

    ISO/IEC 9126

    (), (),

    ()

    SW

    , ()

    []

    (), (LG),

    (KAIST)

    * 11:35

    , (KAIST)

    , , (KAIST)

    Open API

    RESTful

    , , ,

    ()

    Cross-cutting

    SLA

    , , , ,

    , ()

    (GPLv2)

    (HIS Approach)

    , (), , ,

    ()

    , , (KAIST)

    , , ()

    Software Refactoring Impact on Software

    Quality in Android Application Development

    []

    Mesfin Abebe, ()

    * 11:20

    11:30-13:00

  • KCSE 2015 17 1

    B

    B1: SPLE

    ()

    : 2

    B2: 2

    ()

    : 1

    B3: 1

    ()

    : 2

    B4: 1

    ()

    : 3

    13:00-15:00

    (120)

    , , (KAIST)

    []

    , ()

    []

    (), (),

    ()

    TMMi

    []

    , , (LIGNex1)

    []

    (), , ,

    (KAIST)

    Running a SCRUM project within a

    Document Driven Process[]

    Jonathan Sawyer, ()

    []

    , ()

    SBA Web

    []

    , , , ()

    Multicultural Diversity

    Software Team

    []

    (), (LG),

    (), (KAIST)

    Agile

    Approach []

    (), (LG),

    (NIA), (KAIST)

    []

    , , ()

    []

    , , ()

    IoT

    []

    , , ,

    ()

    []

    (KDN), (KAIST)

    :

    []

    (), (LG),

    , (KAIST)

    , , ()

    []

    , , ()

    []

    , , ()

    []

    , , ()

    []

    , , ()

    15:00-15:20

  • KCSE 2015 17 1

    C

    C1: 1

    ()

    : 2

    C2:

    ()

    : 1

    C3: 2

    (KAIST)

    : 2

    C4:

    ()

    : 3

    15:20-17:00

    (100)

    []

    , ()

    : LG

    []

    , , (KAIST),

    , , (LG)

    Hybrid Approach for Improving Test

    Case Specification and Generation

    Efficiency[]

    (), (KAIST)

    Node.js

    []

    BAT ERDENE KHUVIZAYA()

    * 16:50

    , ()

    , ()

    []

    , , , ()

    []

    (), (),

    ()

    []

    , , (KAIST)

    , , ,

    (KAIST), ,

    (LG)

    []

    , , ()

    []

    , , ()

    , , ()

    Improving Resolution Time on JIRA System

    with Ontology

    , (KAIST)

    []

    , , ()

    []

    (ADD), (KAIST), (ADD),

    (KAIST), (KAIST)

    17:00-17:30

    : ()

    : 2

    17:30-18:00

    18:00-21:00 , ,

    : 1

  • KCSE 2015 17 1

    1 30 ()

    07:00-09:20

    D

    D1: 2

    (KAIST)

    : 2

    D2: SW SW

    ()

    : 1

    D3: SW 1

    ()

    : 2

    D4: 3

    ()

    : 3

    09:20-10:40

    (80)

    Prioritizing Factors Affecting the

    Usability of Android-based

    Applications[]

    Ludwing Chiri Najaya, ()

    []

    , , ,

    ()

    GUI

    []

    , ()

    []

    , ()

    :

    SW

    , , (),

    , ()

    DO-178 V

    []

    , ()

    []

    , (LIG Nex1)

    - -

    []

    , ()

    IT

    []

    , ()

    []

    , , ()

    []

    , ()

    Flexible architecture for pervasive computing

    with wearable device

    , (KAIST)

    []

    , (KAIST), (ADD)

    xSHEL

    []

    (), ( OPS)

    10:40-10:50

  • KCSE 2015 17 1

    E

    E1:

    ()

    : 2

    E2:

    ()

    : 1

    E3: SW 2

    ()

    : 2

    E4: 2

    ()

    : 3

    10:50-12:20

    (90)

    1

    API

    , (KAIST)

    -

    []

    , ()

    []

    , ()

    SCXML Modeling and Simulation

    (M&S) based on Stochastic based

    State Diagram[]

    (), (),

    ()

    []

    , ()

    []

    , ()

    []

    , , , ,

    (),

    (), ()

    []

    (LG), (KAIST)

    * 12:15

    GUI

    []

    , ()

    IoT REST

    []

    , ()

    IoT

    []

    , ()

    []

    , ()

    - Bunch

    , , , ()

    -

    []

    , ()

    []

    , ()

    * 12:10

    12:20-12:30 : ()

    : 2

    * .

  • KCSE 2015 17 1

    T-1

    KCSE 2015

    : 1 28() 13:30~15:00

    : 1

    : MBTI SW

    : (SW)

    :

    SW , MBTI

    . MBTI(Myers-Brigs Type Indicator) C. G. Jung

    Katherine Cook Briggs Isabel Briggs Myers

    .

    , , ,

    . MBTI ( vs , vs

    , vs , vs ) , , , 16

    . SW

    MBTI .

    :

    2010~ SW

    2010

    2005~2008 USA,

    2001~2005 ,

    2000~2001 , SW

    1999

    1995~2000 , SW

    1994~1995 , SW

    T1: SW

  • KCSE 2015 17 1

    T-2

    : 1 28() 13:30~15:00

    : 2

    :

    : (KAIST)

    :

    . ,

    , ,

    :

    2009~ KAIST

    2003~2013 MSE

    2001~2009

    1993~2001 (KT)

    1992 University of Iowa

    1982

    : , , , 2012.

    T2: SW 1

  • KCSE 2015 17 1

    T-3

    : 1 28() 13:30~15:00

    : 3

    :

    : ()

    :

    ,

    .

    ,

    , . ,

    ,

    .

    :

    2006~

    2003~2006 (Fraunhofer IESE)

    2003

    : , , .

    T3: SW 1

  • KCSE 2015 17 1

    T-4

    : 1 28() 15:15~16:45

    : 1

    :

    : ( )

    :

    ,

    ,

    . ,

    . ,

    , ,

    .

    , MSR (Mining Software Repository)

    (Software Analytics) .

    , , , , , ,

    . , Stack Overflow Git Hub

    .

    ,

    .

    Spark

    . Spark Hadoop

    ,

    . , /

    , /////

    .

    :

    2014~

    2011~2014 LG TV

    2010

    2006~2009 LG

    1994~1998 LG

    2006

    2000

    1994

    T4: SW

  • KCSE 2015 17 1

    T-5

    : 1 28() 15:15~16:45

    : 2

    : Architecture for Smart Services and Systems

    : ()

    :

    Being Smart in various types of services and systems becomes a mega-trend in our daily life. The

    product development for this trend is accelerated by the wide availability of sensors and IoT devices.

    That is, it becomes quite feasible to monitor various objects in our environment, store the gathered

    contexts in the Big Data scheme, inferring situations and future indicators by applying contexts analytics,

    and perform situation-specific services. The net benefit of these activities is the augmented smartness

    of our daily activities.

    In this lecture, we will explore three topics for smart services and systems; 1) What is smartness in

    services and systems, 2) Technology of Sensors and IoT devices, 3) Requirements and Architectural

    Solutions for Smart Services and Systems, and 4) a Case Study of Developing a Smart Personal

    Healthcare service.

    :

    Missouri Computer Science , University of Iowa

    Computer Science . .

    , .

    , , , IoT

    . 2006 , 400 .

    ,

    T5: SW 2

  • KCSE 2015 17 1

    T-6

    : 1 28() 15:15~16:45

    : 3

    :

    : ()

    :

    .

    , ,

    .

    . ,

    , Verification &

    Validation .

    .

    :

    2012~

    2008~2012

    2005~2008 LG DTV

    2003~2005 ImageSolutions, Inc.

    2003

    1997

    : , ,

    E-mail: [email protected]

    T6: SW 2

    mailto:[email protected]

  • (A1)

    Exture+

    ()

    Exture+

    ()

    ()

    (SW)

    SW Fault Tolerance

    ()

    (crowd)

    (STA )

    (ESG)

    KCSE 2015 17 1

    1

  • 1 (A2)

    []

    , , (KAIST)

    ISO/IEC 9126

    (), (), ()

    SW

    , ()

    []

    (), (LG), (KAIST)

    KCSE 2015 17 1

    2

  • * (Quality Based Software Project Staffing and Scheduling with Time Bound)

    , ,

    291 {dwseo, donghwan, bae}@se.kaist.ac.kr

    : , . : , , , 1. [1], . (2 ), (3), (4). 2. , , . , . . [2]. - , , , , . . . 3. [3]

    * [10044457, / ] ()[10041313, UX SW ] .

    , , . .

    1

    3.1 [4] , , . . . [ 1] , ( , ) .

    2

    3.2

    , . [ 2] () () .

    KCSE 2015 17 1

    3

  • 3.3 . 1 , . . . 4. 80 ,

    .

    1

    (#, #)

    Duration

    (days) Quality Score

    Success rate

    Quality Score

    Set 1 -10 (18, 10) 206.9 0.59(1) 43% 0.73(1.23) Set 11-20 (32, 10) 278.5 0.53(1) 77% 0.64(1.22) Set 21-30 (32, 15) 252.6 0.49(1) 68% 0.64(1.31) Set 31-40 (32, 20) 293.9 0.45(1) 58% 0.64(1.42) Set 41-50 (62, 10) 444.6 0.46(1) 99% 0.58(1.25) Set 51-60 (62, 15) 343.9 0.41(1) 92% 0.51(1.25) Set 61-70 (62, 20) 410.4 0.37(1) 96% 0.49(1.34) Set 71-80 (92, 15) 474.3 0.37(1) 99% 0.48(1.30)

    [ 1] Success rate ,

    .

    , 1-10 Success rate = 43% 100 43

    .

    43% ~ 99%

    Success rate , 23% ~ 40%

    . ,

    .

    41

    99% Success rate ,

    ,

    .

    5. [5]. [7], . 6.

    . , . . . , , DAM(Defect Amplification Model) . [1] R.-G. Ding and X.-H. Jing, Five Principles of Proj-

    ect Management in Software Companies, Project Management Technology, vol. 1, 2003.

    [2] Bellenguez-Morineau, Odile, and Emmanuel N_eron. A branch-and-bound method for solving multi-skill project scheduling problem., RAIRO-Operations Research, vol.41, no.2, pp. 155-170, 2007

    [3] Jihun Park, Dongwon Seo, Gwangui Hong, Donghwan Shin, Jimin Hwa, Doo-Hwan Bae, Practical Human Resource Allocation in Software Projects Using Genetic Algorithm, 26th International Conference on Software Engineering and Knowledge Engineering, pp. 688-694, 2014.

    [4] , , , , , , , , : , 40, 7, pp.369-380, 2013 7.

    [5] Peixoto, Daniela CC, Geraldo R. Mateus, and Rodolfo F. Resende, The Issues of Solving Staffing and Scheduling Problems in Software Development Projects, Computer Software and Applications Conference, 2014.

    [6] Constantinos Stylianou, Andreas S. Andreou, A Multi objective Genetic Algorithm for Software Development Team Staffing Based on Personality Types, Artificial Intelligence Applications and Innovations, Springer Berlin Heidelberg, 2012.

    KCSE 2015 17 1

    4

  • ISO/IEC 9126

    *, **, *

    *

    206 [email protected], [email protected]

    **

    134 [email protected]

    2014 () -

    (No. NRF-2014M3C4A7030504).

    :

    .

    ,

    .

    ()

    ,

    .

    .

    ISO/IEC 9126 6 ,

    .

    .

    : , , , ISO/IEC 9126

    1.

    .

    ,

    .

    ,

    V

    .

    (verification

    and validation) [1] .

    .

    (task, activity)

    [2,3].

    . 1 ,

    (software artifact)

    1

    KCSE 2015 17 1

    5

  • .

    (code artifact)

    , .

    (document artifact) ,

    .

    . 1 , ,

    /

    .

    /:

    , ,

    / , ,

    .

    /:

    .

    ,

    .

    /:

    .

    .

    ,

    1 . ,

    .

    ISO/IEC

    9126 [4-7]

    , (external

    metrics)[5], (internal metrics)[6],

    (quality in use metrics)[7] .

    ,

    6

    2 .

    1

    , [8] . ISO/IEC 9126

    (requirement

    specifications), (design), (review

    report), .

    ,

    1

    .

    .

    (software traceability)

    (links) //

    [9].

    ,

    (traceability links; relations)

    (requirement traceability)

    [10-12].

    ,

    (vertical)/(horizontal) ,

    (forward)/(backward)

    . ,

    ()

    (traceability matrix)

    (tracking table) [13-15]

    .

    () .

    ,

    . ,

    . , 1 ,

    2 ISO/IEC 9126 : -

    -( / )

    KCSE 2015 17 1

    6

  • .

    , ISO/IEC 9126

    . ,

    ,

    .

    .

    ,

    , ISO/IEC 9126

    .

    2.

    ,

    .

    2.1

    , , ,

    .

    .

    2.2

    ,

    (description)

    .

    RUP(Rational Unified Process)[16], MIL-SD-498[17]

    .

    25

    [18].

    .

    (SDP; Software Development Plan):

    (, , , )

    .

    (SRS; Software Requirement Specification):

    . 3 (a) RUP

    [16], (b) [18]

    .

    (SDD; Software Design Description) (SAD;

    Software Architecture Document):

    . 3 (c) (d)

    RUP[16] [18]

    .

    (STD; Software Test Description): (

    , , ) .

    (SPS; Software Product Specification):

    3

    KCSE 2015 17 1

    7

  • .

    , 3

    ( )

    ,

    .

    3.

    ,

    ,

    .

    3.1

    1

    .

    , ,

    ,

    . ,

    .

    (), () (, ,

    , ), (, )

    . 1 ,

    2.2 (

    , , )

    .

    ,

    . , ,

    [9-15]

    (

    ) .

    . 1

    , 3

    . ISO/IEC 9126

    ,

    .

    .

    3.2

    ISO/IEC 9126

    .

    (

    , )

    ,

    .

    . ISO/IEC 9126

    , 6

    (functionality) .

    4 ISO/IEC 9126-3

    1 .

    , 14

    7 7

    . 4

    . ISO/IEC 9126

    (functional) ,

    ()

    (corresponding description)

    . 2 7

    ,

    . ,

    A ,

    B .

    1

    ( )

    /

    ()

    ()

    (,

    , , )

    (quantitative

    attribute)

    ()

    ,

    , ,

    ( )

    ()

    KCSE 2015 17 1

    8

  • (format adequacy)

    ISO/IEC 9126

    .

    ,

    . ,

    ,

    . 1

    ,

    . ,

    () ,

    () ,

    500

    . ,

    () .

    (corresponding description completeness)

    .

    (B)

    (A) ()

    . A () B

    ,

    . ,

    ,

    ()

    . , B(SDD)

    A(SRS)

    .

    .

    4 : ISO/IEC 9126 ()

    KCSE 2015 17 1

    9

  • (corresponding description coverage)

    A , B

    .

    . , A 5

    B 3

    ,

    2 ISO/IEC 9126 ()

    ISO/IEC 9126-3 S/W

    (

    )

    ( ) #

    Functionality

    Suitability

    Functional

    adequacy

    ,

    (function)

    (format

    adequacy)

    Functional

    implementation

    completeness

    ,

    (corresponding

    description

    completeness)

    S/W

    ,

    Functional

    implementation

    coverage

    ,

    (corresponding

    description

    coverage)

    S/W

    ,

    (1

    )

    Functional

    specification

    stability

    ,

    (corresponding

    description

    stability)

    S/W

    ,

    (1

    )

    Accuracy Precision

    ,

    (corresponding

    description

    precision)

    ,

    Security Data corruption

    prevention

    (corresponding

    description

    corruption

    prevention)

    S/W

    Functionality

    compliance

    Functional

    compliance

    (format

    compliance)

    (

    )

    KCSE 2015 17 1

    10

  • /

    . .

    (corresponding description stability)

    ,

    A B

    , ,

    , ,

    . ,

    ,

    .

    (corresponding description precision)

    ISO/IEC 9126

    , B

    , ,

    A .

    ,

    ,

    .

    (corresponding description corruption prevention)

    .

    ,

    () . , B

    A B

    . , SRS SDD ,

    ,

    .

    (format compliance)

    ,

    .

    ,

    (consistency),

    (completeness), (traceability)

    .

    .

    .

    4.

    ,

    .

    .

    .

    , ISO/IEC

    9126 .

    ,

    ISO/IEC 9126 6

    5 14

    .

    .

    ISO/IEC 9126

    KCSE 2015 17 1

    11

  • .

    ,

    .

    .

    [1] IEEE, IEEE Std 1012 - IEEE standard for software verification and validation, IEEE Standards, 2005

    [2] ISO/IEC, IEEE, ISO/IEC 12207, IEEE Std 12207 Systems and software engineering software life cycle processes, ISO/IEC, 2008

    [3] ISO/IEC, IEEE, ISO/IEC 15288, IEEE Std 15288 - Systems and software engineering system life cycle processes, ISO/IEC, IEEE Standards, 2008

    [4] ISO/IEC, ISO/IEC 9126-1 Software engineering-product quality-part 1: quality model, ISO/IEC Technical Report, 2001

    [5] ISO/IEC, ISO/IEC 9126-2 Software engineering-product quality-part 2: external metrics, ISO/IEC Technical Report, 2003

    [6] ISO/IEC, ISO/IEC 9126-3 Software engineering-product quality-part 3: internal metrics, ISO/IEC Technical Report, 2003

    [7] ISO/IEC, ISO/IEC 9126-4 Software engineering-product quality-part 4: quality in use metrics, ISO/IEC Technical Report, 2004

    [8] X. Chen, Extraction and visualization of traceability relationships between documents and source code, in Proceedings of the IEEE/ACM International Conference on Automated Software Engineering(ASE10), pp.505-510, 2010

    [9] K. Jaber, B. Sharif, C. Liu, A Study on the Effect of Traceability Links in Software Maintenance, IEEE Access, Vol.1, pp.726-741, 2013

    [10] V. Leino, Documenting Requirements Traceability Information - A Case Study, Masters Thesis, Helsinki University of Technology, 2001

    [11] J.I. Maletic, M.L. Collard, B. Simoes, An XML-based approach to support the evolution of model-to-model traceability links, in Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering(TEFSE05), pp.67-72, 2005

    [12] A. Ahmad, M.A. Ghazali, Documenting requirements traceability information for small projects, in Proceedings of IEEE International Multitopic Conference(INMIC07), pp.1-5, 2007

    [13] , ,

    ,

    : ,

    34, 5, pp.419-430, 2007

    [14] , ,

    ,

    , 17 , 5 , pp.115-126, 2012

    [15] , ,

    ,

    :

    , 2, 7, pp.461-470, 2013 [16] Major Artifacts of the RUP(Rational Unified

    Process), http://sce.uhcl.edu/helm/rationalunifiedprocess/

    [17] MIL-STD-498 Software development and documentation, Military Standard, 1994

    [18] ,

    , 2011-26 , 2011

    KCSE 2015 17 1

    12

  • SW

    ,

    206 [email protected], [email protected]

    :

    .

    , , , , ,

    ( , ,

    )

    .

    , .

    ,

    ,

    .

    , ,

    .

    : , ,

    , ,

    1. 1 ,

    .

    [1-3].

    1 2014 ()

    -

    (No. NRF-

    2014M3C4A7030504).

    ,

    , ,

    ,

    [4].

    .

    ,

    .

    ,

    .

    1

    ,

    .

    , ()

    ,

    ,

    KCSE 2015 17 1

    13

  • ,

    . ,

    ()

    .

    ()

    . ,

    ( , ,

    )

    ( ,

    , , , , ,

    ) .

    ,

    .

    [6~9].

    ,

    .

    .

    ,

    ,

    , .

    .

    ,

    . ,

    ,

    .

    ,

    1:1 ,

    . ,

    .

    ,

    ,

    .

    . 2

    , 3

    .

    4 3

    , 5 .

    2.

    .

    [6] 2

    .

    2 [6]

    () ,

    () . , [6]

    ()

    ()

    ()

    .

    ,

    ,

    .

    KCSE 2015 17 1

    14

  • [7~9]

    .

    3

    .

    3. [8] ID

    , .

    ,

    .

    .

    ,

    .

    [10] RUP

    ADDMe

    .

    ,

    . [10]

    .

    .

    ,

    ,

    .

    3.

    ,

    .

    3.1.

    . . 4 .

    4. 4

    (A ) (B, C ) . , , (B ) , , , (C ) . A

    B

    .

    C

    .

    .

    KCSE 2015 17 1

    15

  • 3.2.

    .

    . 5

    .

    ( ,

    .)

    5 (SRS)

    (SDD)

    SDD (SPS)

    SRS SPS

    , SRS

    SPS .

    .

    ,

    , , , ,

    . ,

    .

    . 6

    . (

    ,

    .)

    6

    ,

    .

    ,

    5

    6

    KCSE 2015 17 1

    16

  • . , .

    . , . , 6 .

    , . , , . 6 .

    3.3.

    .

    .

    7

    .

    7

    . ,

    (, , ,

    S/W )

    .

    . 8

    .

    8

    . , 1

    2

    .

    .

    ,

    ,

    .

    1:1

    .

    (, 1 2

    )

    .

    9

    .

    KCSE 2015 17 1

    17

  • 9

    () 1 ().

    .

    3.2

    1

    () 3.1

    . 1

    3.2

    3.1

    .

    .

    ,

    ,

    .

    .

    ,

    . 1 .

    .

    , , ,

    4

    ,

    .

    ,

    ,

    ,

    .

    1

    .

    ()

    .

    ,

    .

    .

    . , .

    .

    . , .

    .

    . , .

    KCSE 2015 17 1

    18

  • ,

    ,

    . ,

    ,

    .

    .

    .

    4.

    .

    .

    ,

    .

    .

    10 .

    10

    4

    4

    . ,

    .

    : 3.3

    . 8

    .

    8 204

    152 .

    :

    .

    . 11

    .

    11 152

    328 .

    .

    :

    .

    8 ,

    .

    2

    .

    2

    328 ,

    .

    KCSE 2015 17 1

    19

  • .

    5.

    .

    .

    ,

    .

    .

    , ,

    .

    ,

    .

    [1] Dart, Susan. "Concepts in configuration

    management systems." Proceedings of the 3rd international workshop on Software configuration management. ACM, 1991.

    [2] Gotel, Orlena CZ, and Anthony CW Finkelstein. "An analysis of the requirements traceability problem." Requirements Engineering, 1994., Proceedings of the First International Conference on. IEEE, 1994.

    [3] Aiello, Robert, and Leslie Sachs. Configuration Management Best Practices: Practical Methods that Work in the Real World. Pearson Education, 2010.

    [4] IEEE Standard for Configuration Management in Systems and Software Engineering, The Institute of Electrical and Electronics Engineers, 2012

    [5] TTA Standard for Software Configuration Management Plans, TTA. IE-828,

    , 1999. [6] McMillan, Collin, Denys Poshyvanyk, and

    Meghan Revelle. "Combining textual and structural analysis of software artifacts for traceability link recovery." Traceability in Emerging Forms of Software Engineering, 2009.

    TEFSE'09. ICSE Workshop on. IEEE, 2009. [7] , et al. " Pain chain

    ."

    38.1A (2011): 206-209. [8] , and . "

    ." : 34.5 (2007): 419-430.

    [9] , , and . "

    ." D 17.4 (2010): 271-282.

    [10] , et al. "

    ."

    34.1B (2007): 28-32.

    KCSE 2015 17 1

    20

  • KAIST S/W

    28 25

    [email protected]

    LG

    KAIST S/W

    28 25

    [email protected]

    KAIST

    KAIST S/W

    28 25

    [email protected]

    : Base

    .

    ,

    .

    PL(Project Leader)

    .

    PL ,

    ,

    PL

    .

    , ,

    ,

    ,

    .

    ,

    PL

    : , ,

    1

    main sub branch

    .

    main

    sub branch

    . A

    main

    B, C, D

    . [ 1]

    [ 1]

    Side Effect

    Software Reliability Curve

    .

    .

    PL

    QA

    .

    2 PL

    3

    .

    KCSE 2015 17 1

    21

  • 4

    5

    . 6

    .

    2

    .

    .

    (PL QA)

    .

    A 5

    1827

    49% .

    ( 2)

    [ 2] A

    (2014 3~7 , 1827)

    A PL

    Side effect

    .

    (A, B, C), (%),

    ( ), Code (Text), ,

    , . ,

    PL

    .

    31%

    ( 3)

    .

    [ 3] A

    (2014 3~7 )

    PL

    .

    Side Effect

    .

    3

    (MCDM: Multi-Criteria Decision Making)

    PL

    ,

    .

    .

    .

    .

    (MODM: Multiple Object

    Decision Making)

    .

    .

    (MADM: Multiple Attribute

    Decision Making)

    .

    [ 1] [1]

    - -

    (935),

    51%(892),

    49%

    ,

    61%, 7%

    ,

    31%

    KCSE 2015 17 1

    22

  • (Scori

    ng Method)

    -

    (GAM)

    ,

    -

    -

    - ,

    -

    (MAUT)

    -

    (

    )

    -

    (Outrankin

    g Method)

    ,

    ,

    -

    -

    -

    -

    -

    (AHP)

    -

    -

    -

    -

    - 2

    -

    ,

    .

    .

    . (

    )

    .

    .

    . ,

    ,

    .

    .

    ,

    .

    . [1]

    1) : N

    .

    =1

    2) :

    . i

    .

    = + 1

    ( + 1)=1

    3)

    =1

    (1 )=1

    .

    4

    4.1

    PL

    . (TV, ,

    )

    ,

    .

    .

    KCSE 2015 17 1

    23

  • .

    [ 4]

    [ 4]

    80%

    .

    4.2

    [ 2]

    1/ 1

    (1 )=1

    1 1 0.375

    2 0.5 0.188

    3 0.333 0.125

    Family 4 0.25 0.094

    4 0.25 0.094

    6 0.166 0.062

    6 0.166 0.062

    2.665 1

    [ 2] .

    4.3

    ,

    , ,

    TV

    .

    1)

    [2]

    0~10

    .

    [ 3]

    (%)

    1

    ,

    ,

    70.8 0.403 10.0

    2 VOD

    Youtube,

    Netflex,

    DLNA

    15.5 0.201 5.0

    3

    8.4 0.134 3.3

    4

    2.2 0.1 2.5

    5 Smart TV

    Game App 0.9 0.08 2.0

    5 SNS

    Facebook,

    Twitter

    0.9 0.08 2.0

    7 1.3 0.05 1.4

    2)

    Code

    .

    code

    ,

    [3].

    (%)

    ,

    DSM(Dependency Structure Matrix) tool

    .

    [ 3]

    (%)

    0-10 0.48 10

    11-20 0.24 5

    21-50 0.16 3.3

    50 0.12 2.5

    3)

    QA

    .

    10 .

    = 10

    4)

    , ,

    .

    . PL

    Family

    . Family

    , , Branch

    0 20 40 60 80 100

    Family Branch

    Branch

    KCSE 2015 17 1

    24

  • Code .

    PL

    Family Family

    Family

    .

    =

    10

    5)

    QA

    .

    10 .

    [ 4]

    A 0.545 10.0

    B 0.272 5.0

    C 0.181 3.3

    6) Code

    (, , ) code

    (1 + ifs + loops + cases) ,

    code

    [4]. McCabe [5]

    11 code

    28%, 38 50% ,

    78 98%

    .

    code metric tool

    .

    ,

    .

    [ 5]

    1-10

    : 0.48 10

    11-20

    : 0.24 5

    21-50

    : 0.16 3.3

    51

    : 0.12 2.5

    7)

    QA

    .

    .

    [ 6]

    0.545 10.0

    0.272 5.0

    0.181 3.3

    4.4

    .

    [ 7] () A B C D

    5 10 10 2

    5 10 5 10

    5 9 2 1

    Family

    2 10 5 5

    10 10 10 5

    10 5 10 2.5

    (70) 42 64 47 35.5

    [ 8] ()

    A B C D

    0.375 1.875 3.75 3.75 0.75

    0.188 0.94 1.88 0.94 1.88

    0.125 0.625 1.125 0.25 0.125

    Family

    0.094 0.188 0.94 0.47 0.47

    0.094 0.94 0.94 0.94 0.47

    0.062 0.62 0.31 0.62 0.155

    0.062 0.31 0.62 0.31 0.62

    (10

    ) 5.498 9.565 7.28 4.47

    7

    .

    .

    4 (A, B, C, D)

    8 B

    4

    .

    5

    KCSE 2015 17 1

    25

  • 2

    .

    5.1

    6.536 .

    . ( 9)

    [ 9] (70) (10)

    0.375 10 3.75

    0.188 2.5 0.47

    0.125 3 1.25

    Family

    0.094 2 0.188

    0.094 5 0.47

    0.062 3.3 0.204

    0.062 3.3 0.204

    42.8 6.536

    PL

    Text

    Code .

    5.2

    , , ,

    .

    PL

    . ( 10)

    [ 10] (70) (10)

    0.375 10 3.75

    0.188 10 1.88

    0.125 1 0.125

    Family

    0.094 7 0.658

    0.094 10 0.94

    0.062 10 0.62

    0.062 5 0.31

    51.3 8.283

    PL

    .

    PL

    .

    .

    6

    . 7

    , ,

    .

    ,

    .

    ,

    .

    ,

    .

    . ,

    .

    7

    [1]

    , , 2000.

    [2] ,

    , 2011 12 .

    [3] Using Dependency Models to Manage Complex

    Software Architecture - Neeraj Sangal, Ev Jordan,

    Vineet Sinha, Daniel Jackson, ACM Sigplan

    Notices 2005.

    [4] Structured Testing: A Testing Methodology

    Using the Cyclomatic Complexity Metric, NIST

    Special Publication 500-235, Arthur H. Watson,

    September 1996.

    [5] McCabe (December 1976). "A Complexity

    Measure". IEEE Transactions on Software

    Engineering: 308-320.

    KCSE 2015 17 1

    26

  • (A3)

    , (KAIST)

    , , (KAIST)

    Open API RESTful

    , , , ()

    Cross-cutting SLA

    , , , , , ()

    KCSE 2015 17 1

    27

  • ,

    291 {Hyeonjun.jo, iko}@kaist.ac.kr

    : . . , .

    : , , , , 1.

    (Internet of Things, IoT) , (Computing Task) . , (Service Oriented Architecture, SOA) [1][2].

    , , (Service Discovery) . : -

    , , [3] -

    , [4]

    , . , , . , . , .

    KCSE 2015 17 1

    28

  • 1

    (Mobile Ad-hoc Network, MANET) . , . 1 , . , . 1 Source Destination . [5]. - . - . -

    . -

    , . - (forwarding)

    , .

    - (Infra-Structure) .

    SOA . , , (Overhead) . , . , . SOA [6]. SOA

    . (Registry) (Centralized) (Distributed) . (Single point of failure) . , SOA . (Gateway)

    KCSE 2015 17 1

    29

  • . , .

    , . . , .

    (Query) , . .

    (Bloom Filter) . (Classifier) . .

    .

    . 2

    3

    . 4

    , 5

    . . 2.

    2 [7]

    2.1 2

    . . , . . . . . , [8].

    Cetralized Distributed

    Backbone-

    basedCluster-based DHT-based

    KCSE 2015 17 1

    30

  • [7]. 2.2

    . (Backbone) . . . [9][10].

    (Clustering) . . . , [11][12]. (Distributed

    Hash Table, DHT) . . .

    , . . GPS . [13][14]. 2.3

    . . . [6].

    (Counting Bloom Filter) . , [15].

    . ,

    KCSE 2015 17 1

    31

  • .

    3.

    3 . (Physical layer) . , . . . , . .

    3

    (Logical layer)

    , . , , . . , . (Composite

    Service Layer) , , , . , .

    4. 4.1 4

    . , .

    , . . , . .

    KCSE 2015 17 1

    32

  • 4

    4.2

    5 . , (Hash) . m . 5 x, y 1 , z 0 . . .

    .

    5

    4.3 . , . (Rule) . 1 . (Field) , 1, 2 . (Action) , , , .

    1

    .

    Field1 Field2 ruleMode Action Rule 1 1 2 0 A1

    Rule 2 4 5 2 A2

    KCSE 2015 17 1

    33

  • . 1 . (ruleMode) , , . . . , . , . 4.4 , . . . .

    1 Network Simulator-3: http://www.nsnam.org/

    5. 5.1 ns31 . ns3

    . C++ , , , .

    . . , . ,

    . , . ruleMode , , . , .

    KCSE 2015 17 1

    34

  • . . , . 1% , 7 . 7 .

    . , UDP (User Datagram Protocol) . (Handshaking), , TCP (Transport Control Protocol) UDP UDP .

    (Hop) . . .

    5.2 10 ,

    50 , 0.01 . (Random walk) . 6 10 , 10 , 30 . 5 .

    6

    . 10 .

    KCSE 2015 17 1

    35

  • 7

    7 10~50

    . 50 100% , 50 .

    8

    . 30% 8 . 30% 5% ~ 10%

    . 7 . 6.

    , . .

    . , .

    . , . (Semantic) . Acknowledgement (Dual Use Technology Program) (UM13018RD1).

    KCSE 2015 17 1

    36

  • [1]

    Albert D.D., Garstka, J.J, Stein, F.P, Network Centric Warfare : Developing and Leveraging Information Superiority, CCRP Publ, 2nd Edition Aug 1999

    [2] Zhang, Y., Liu, X., Wang, Z., & Chen, L. A Service-Oriented Method for System-of-Systems Requirements Analysis and Architecture Design. Journal of Software, 7(2), 358365. 2012

    [3] Zhu, Fen, Matt W. Mutka, and Lionel M. Ni. "Service discovery in pervasive computing environments." IEEE Pervasive computing 4.4 (2005): 81-90.

    [4] Bettstetter, Christian, and Christoph Renner. "A comparison of service discovery protocols and implementation of the service location protocol. "Proceedings of the 6th EUNICE Open European Summer School: Innovative Internet Applications. 2000.

    [5] Kozat, Ulas C., and Leandros Tassiulas. "Network layer support for service discovery in mobile ad hoc networks." INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications. IEEE Societies. Vol. 3. IEEE, 2003.

    [6] Sailhan, Francoise, and Valerie Issarny. "Scalable service discovery for MANET." Pervasive Computing and Communications, 2005. PerCom 2005. Third IEEE International Conference on. IEEE, 2005.

    [7] Ververidis, Christopher N., and George C. Polyzos. "Service discovery for mobile ad hoc networks: a survey of issues and techniques. " Communications Surveys & Tutorials, IEEE 10.3 (2008): 30-45.

    [8] Zhang, Wenyu, et al. "A reputation-based peer-to-peer architecture for semantic service discovery in distributed manufacturing environments. " Concurrent Engineering (2012):

    [9] U. C. Kozat and L. Tassiulas, Service Discovery in Mobile Ad Hoc Networks: An Overall Perspective on Architectural Choices and Network Layer Support Issues, Ad Hoc Networks, vol. 2, no. 1, 2004, pp. 2344.

    [10] F. Sailhan and V. Issarny, Scalable Service Discovery for MANET, Proc. 3rd IEEE Intl. Conf. Pervasive Computing and Commun. (PerCom 2005), Kauai Island, Hawaii, Mar. 812, 2005.

    [11] M. Klein, B. Knig-Ries, and P. Obreiter, Service Rings A Semantic Overlay for Service Discovery in Ad Hoc Networks, Proc. 6th Intl. Wksp. Network-Based Information Systems (NBIS 2003) at DEXA 2003, Prague, Sept. 2003.

    [12] G. Schiele, C. Becker, and K. Rothermel, Energy-Efficient Cluster-Based Service Discovery for Ubiquitous Computing, Proc. 11th ACM SIGOPS European Wksp., Leuven, Belgium, Sept. 2004.

    [13] Sivavakeesar, Siva, Oscar F. Gonzalez, and George Pavlou. "Service discovery strategies in ubiquitous communication environments." Communications Magazine, IEEE 44.9 (2006): 106-113.

    [14] Tyan, Jerry, and Qusay H. Mahmoud. "A comprehensive service discovery solution for mobile ad hoc networks." Mobile Networks and Applications 10.4 (2005): 423-434.

    [15] Cheng, et al "An efficient service discovery algorithm for counting bloom filter-based service registry." Web Services, 2009. ICWS 2009. IEEE International Conference on. IEEE, 2009.

    KCSE 2015 17 1

    37

  • , ,

    291 {sonjoosik, kohangyu, iko}@kaist.ac.kr

    : , . , . , , . , , . , . : , , 1.

    Mark Weiser [1], TV, , (Consumer Electronics) , . (Actuation Capability) 1 http://www.netflix.com/

    [2]. ,

    / (Internet of Things, IoT) , (Capability) [2].

    [3].

    , . / . , Netflix1, Amazon.com2 [4].

    . . Amazon.com

    2 http://www.amazon.com/

    KCSE 2015 17 1

    38

  • Netflix (Rating) .

    . , , , .

    / . , Stochastic Gradient Descent(SGD) . . , 2

    3 . 4 , 5 . 2.

    2.1

    , , , (Cold Start)

    3 http://www.youtube.com/

    . Cai[6] (Object Typicality)

    . , , . , .

    Yu, Qi[7] , . (Matrix Factorization) , (Latent Feature) (Decision Tree) . . Quality-

    of-Service(QoS) . QoS , . QoS , Zheng[8][9] Youtube3 Wikipedia4 WSRec . QoS , WSRec QoS , . , IP QoS .

    . , . 2.2 (Context-aware)

    , .

    4 http://www.wikipedia.org/

    KCSE 2015 17 1

    39

  • , 2 (Rating) , , (Context-aware) .

    (Context) Palmisano[10] . Pre-filtering, Post-filtering, Contextual Modeling , (2009, 2014) .

    Dou[11] . Term Frequency-Inverse Document Frequency(TF-IDF) , . ,

    . .

    2.3

    TaskOS[3]

    , . , RFID .

    TASKREC[12] . . ,

    . , , , .

    3. 3.1

    (Rating) [13]. . 2 , .

    . , 1 5 . , Amazon.com . [8] QoS . , Round-Trip Time(RTT) .

    . , . . 5 , . , , ,

    , , = ( ) . 5 .

    , =1(, 0)0(, 0) (1) , = , (2) , = log , (3) , = log , (4)

    , = log , (5)

    KCSE 2015 17 1

    40

  • 1 5 (1), (2), Log2 (3), Log10 (4), Ln (5) . . , . , Log , . . . 3.2

    1

    . , , (Similarity) (Threshold)

    [13]. (Euclidean Similarity), (Pearson Correlation) , [14]. , , , [13]. Singular Value Decomposition(SVD), Matrix Factorization(MF), SGD . .

    SGD . SGD , , MF SVD (Overfit Problem) . , SGD .

    , , . , . , . 1 . , , , , .

    ()

    String 100%

    Integer(0~24 ) 94.87%

    Integer() 94.87%

    Boolean(on/off) 97.44%

    Integer() 30.77%

    Integer() 100%

    Double 25.00%

    Double 27.56%

    KCSE 2015 17 1

    41

  • , , .

    , SGD , . , , , , , , . Mean-Absolute-

    Error(MAE), Root-Mean-Square-Error(RMSE), Normalized Discounted Cumulative Gain(NDCG), Average Precision , RMSE . 2 , , , RMSE .

    RMSE = 1(, ,), ( 6 )

    .

    4. 4.1 4.1.1

    KAIST , ,

    , , , , ,

    2

    (KAIST) IT (N1) 8 CS825 ( 2 ). , , , , , . KAIST , , , , . , . 33

    19 . 3 157 , . 1259 , 131 . (Density) 20.89%. 8 , 1 . 4.1.2

    .

    . . (Rating) QoS . . , .

    3.1 . . , (Rating)

    KCSE 2015 17 1

    42

  • . 2, 10, (e) .

    GraphChi 5 . GraphChi Generalized Stochastic Gradient Descent(GenSGD) 5 RMSE .

    (Context-Aware Information) . 5 , RMSE ( 6 ) Log10 , . 3.2 (Dimension) , 3 . 8 , 8 3 . , . 3 5 , 4 , 5 . RMSE 5 , 10 . 13 GenSGD RMSE 4.2 , .

    4.2 4.2.1

    5

    , . 3.1 . 3

    RMSE .

    (7)

    0 1

    . 5

    5 https://github.com/GraphChi

    .

    RMSE(normalized) 0.00813553

    0.200865111 (Log2) 0.195554888 (Log10) 0.195278669 (Loge) 0.195509674

    3 RMSE PredictionMAX = , PredictionMIN =

    = (7) 3

    RMSE . . 1 1 100 2 3 1 . RMSE .

    RMSE 0.0053, 0.0056 . . . . 2

    RMSE . , (Log2), (Log10), (Loge Ln) 5 . 2 RMSE .

    KCSE 2015 17 1

    43

  • 2

    4.2.2 4.2.1

    . (Baseline) . 5 , .

    (1) 3

    . , , 3 RMSE RMSE . () , . , . RMSE , . .

    3 RMSE (2) 4

    . , 2 RMSE RMSE . , . RMSE . 4.2.2.1 .

    4 RMSE

    KCSE 2015 17 1

    44

  • (3) 5

    . , , . , . 4 , RMSE , . , . , .

    5 RMSE (4) 6

    . , , RMSE 8 ( ) RMSE . , (Log10) . , .

    6 RMSE

    (5) 7 4

    . , RMSE , . RMSE

    0.169962161 , RMSE 0.188538578 . , . , .

    7 RMSE

    KCSE 2015 17 1

    45

  • RMSE 0.1952786695

    0.1932457681 0.1926726276 0.1692843141

    0.1770938948

    0.1957698052

    0.1930742341 0.1931605750

    0.1938819106 0.1904190914 0.1799608724

    0.1934773709

    , , 0.1832971773

    0.188538578 0.1699621605

    4

    RMSE 4.3

    , . KAIST , . , . ,

    . , . . . 5.

    .

    . , , . , .

    . , . KAIST , . , . ,

    . , , .

    . , , .

    Acknowledgement

    . [B0101-14-0334, IoT ]

    KCSE 2015 17 1

    46

  • [1] Weiser, M., The computer for the 21st century, ACM SIGMOBILE Mobile Computing and Communications Review, Vol. 3, Issue 3, pp. 311, 1991.

    [2] Atzori, L., Iera, A., & Morabito, G. The Internet of Things: A survey. Computer Networks, 54(15), 2010.

    [3] Vo, C., Torabi, T., and Loke, S. W., Task-Oriented Systems for Interaction with Ubiquitous Computing Environments, In Proceedings of the 7th ICST Conference on Mobile and Ubiquitous Systems (MobiQuitous 2010), December 6-9, Sydney, Australia, pp. 332-339, 2010.

    [4] Fleder, D. M., and Hosanagar, K., Recommender systems and their impact on sales diversity, in Proceedings of the 8th ACM conference on Electronic commerce, pp.192-199, 2007.

    [5] Kawsar, F. et al. 2009. Design and implementation of a framework for building distributed smart object systems. The Journal of Supercomputing. Vol. 54, Issue 1, pp. 428, 2009.

    [6] Cai, Yi, et al. "Object typicality for effective Web of Things recommendations." Decision Support Systems 63: 52-63, 2014.

    [7] Yu, Qi. "Decision tree learning from incomplete qos to bootstrap service recommendation." Web Services (ICWS), 2012 IEEE 19th International Conference on. IEEE, 2012.

    [8] Zheng, Zibin, et al. "Qos-aware web service recommendation by collaborative filtering." Services Computing, IEEE Transactions on 4.2: 140-152, 2011.

    [9] Chen, Xi, Zibin Zheng, and Michael R. Lyu. "QoS-Aware Web Service Recommendation via Collaborative Filtering." Web Services Foundations. Springer New York, 563-588, 2014.

    [10] Palmisano, Cosimo, Alexander Tuzhilin, and Michele Gorgoglione. "Using context to improve predictive modeling of customers in personalization applications." Knowledge and Data Engineering, IEEE Transactions on 20.11: 1535-1549, 2008.

    [11] Dou, Wanchun, Xuyun Zhang, and Jinjun Chen. "KASR: A Keyword-Aware Service Recommendation Method on MapReduce for Big Data Application." IEEE Transactions on Parallel and Distributed Systems, 2014.

    [12] Vo, Chuong Cong, et al. "TASKREC: a task-based user interface for smart spaces."

    Proceedings of the 9th International Conference on Advances in Mobile Computing and Multimedia. ACM, 2011.

    [13] Adomavicius, Gediminas, and Alexander Tuzhilin, Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions, IEEE Transactions on Knowledge and Data Engineering, Vol. 17, Issue .6, pp.734-749, 2005.

    [14] P. Resnick, N. Iakovou, M. Sushak, P. Bergstrom, and J. Riedl, GroupLens: An Open Architecture for Collaborative Filtering of Netnews, Proc. 1994 Computer Supported Cooperative Work Conf., 1994.

    KCSE 2015 17 1

    47

  • Open API

    RESTful

    *, *, *, **

    * , ** 30

    { anstn088, mj.deff, kaluas, yeom}@pusan.ac.kr

    : Open API . 3.0 Open API . Open API . Open API Open API . . Open API RESTful . . : Open API, , , RESTful 1.

    Open API API(Application Programming Interface) . 3.0 . Open API

    . Open API REST, SOAP, RSS, ATOM . REST Open API . SOAP 6.9% REST 93.1% [1]. Open API Open API . Open API Input output , . Open API Open API Q&A F&Q . . . RESTful RESTful . . 2 REST . 3 RESTful . , . . 4 .

    " IT " (NIPA-2013-(H0301-13-1012))

    KCSE 2015 17 1

    48

  • 2. 2.1 Open API

    Open API SOAP, REST, RSS, ATOM Application Programming Interface. Open API Raw , . Open API , API . .

    2.2

    , . SOAP(Simple Object Access Protocol) , REST(REpresentational State Transfer) . WSDL(Web Service Description

    Language) SOAP , REST . Open API REST .

    2.3 REST

    REST ROA(Resource

    Oriented Architecture) . REST URI HTTP . GET, PUT, POST, DELETE , URI . SOAP Open API SOAP . Open API ProgrammableWeb[2] . 1 Open API . REST . REST Open API .

    1 Open API

    2.4 2.0, 2 Open API . Open API , Open API . Open API Open API [4,6,7,10]. SOAP(Simple Object Access Protocol) . REST [3]. [4] SOAP (JAVA, C++ ) REST Open API REST . Open API . .

    [5] REST Open API . Open API . 3. RESTful

    Open API . 2 Open API

    KCSE 2015 17 1

    49

  • 3 . Open API . ->API . API . . .

    3.1 . 3.2 . 3.3 . 3.4 3.2 .

    2

    3.1 RESTful Open API .

    l Service: Service REST Open API

    . Id Service id . name , type REST HTTP

    GET, POST, PUT, DELETE . URL key .

    l Input: Open API response. Input . mandatory Input . Input repeat .

    3

    l Reference: Open API

    xls . Reference Input . Path .

    l Output: Output . . Open API Output . repeat output .

    l Data: Data Input, Output . type Open API

    KCSE 2015 17 1

    50

  • . Name .

    l Item: Open API . Item Data .

    l NextInput: Output Input . NextInput Input .

    3.2

    Open API RESTful . 4 -> API XML .

    4 -> API

    XML

    4 . Service id s01 name -> . API URL key . -> API , . Input . 3.1 Input Data Data . Data type . -> API Input Mandatory true . Input -> API .

    Output repeat false Output Input Data . 5 Open API .

    5

    -> API . Input mandatory false . Output Data Item . Output repeat true .

    3.3

    RESTful . 6 Input .

    KCSE 2015 17 1

    51

  • 6

    . 7 . Input Output Data Input .

    7 1

    8 . Output Data .

    8 2

    3.4

    3.1 -> API 3.2 . 9 .

    9

    id serviceId Id . s01 -> API id s02 . Service NextInput Input Service Output Input . Link StartService EndService StartService id EndService id . Input .

    10

    KCSE 2015 17 1

    52

  • 10 . API . 4.

    Open API

    REST REST Open API RESTful .

    RESTful RESTful . .

    Output Input . .

    [1] , http://www.data.go.kr/ [2] programmableweb, http://www.programma

    bleweb.com/ [3] , , REST

    , , 11 , 9, pp. 79-92, 2013

    [4] , Open API , , pp. 115-126, 2012

    [5] , , , , Mash-Up Open API , pp. 954-95, 2012

    [6] , , , , , OpenAPI , , 39, 1, pp 71-73, 2012

    [7] , Open API Mashup , Journal of The Korea Society of Computer and Information, Vol. 17, No. 5, 2012

    [8] X. Liu, Y. Hui, W. Sun and H. Liang, Towards Service Composition Based on Mashup, IEEE International Conference on Services

    Computing, pp. 332-339, 2007. [9] X. Zhao, et al, RESTful web service

    composition: extracting a process model from linear logic theorem proving, In 7th International Conference on Next Generation Web Services Practices, pp. 398-403, 2011.

    [10] Cesare Pautasso, RESTful Web service composition with BPEL for REST, Data & Knowledge Engineering, pp. 851-866, 2009

    KCSE 2015 17 1

    53

  • Cross-cutting

    SLA

    *,

    ,

    *,

    **,

    **,

    **

    * ,

    ,

    **

    30 {aym41, pjs50, ckstkwldls, kus9010, lodestar692, yeom}@pusan.ac.kr

    :

    .

    (SLA)

    .

    ,

    .

    ,

    SLA .

    cross-cutting

    VSLA(Variable SLA) .

    : SLA(Service Level Agreement), ,

    ,

    1.

    IT

    .

    IT

    , IT

    . ,

    ()

    [1].

    , 3

    : IaaS (Infrastructure as a Service), PaaS (Platform as

    a Service), SaaS (Software as a Service). IaaS

    , ,

    . PaaS

    API . SaaS

    .

    .

    . IaaS, PaaS, SaaS

    [1]. ,

    [2][3].

    .

    .

    (Service Level Agreement, SLA)

    [4][5][6]. SLA

    , (penalties)

    . , SLA

    [7].

    SLA ,

    SLA SLA

    2014 ()

    (No. NRF-2013R1A2A2A01068256)

    KCSE 2015 17 1

    54

  • .

    cross-cutting

    ,

    SLA

    VSLA(Variable SLA)

    .

    2.

    2.1 AOP Cross-cutting

    AOP

    ,

    . AOP

    core concerns ,

    .

    cross-cutting concerns [8].

    .

    , ,

    cross-cutting

    .

    2.2 SLA

    SLA

    . SLA SLA

    .

    [9] Cloud as a service SLA

    (description) . UML

    SLA .

    [10] SLA

    SLA . [10]

    , SLA IaaS,

    PaaS, SaaS Storage as a Service

    .

    SLA (Negotiation Strategies)

    .

    [11] Property diagraph

    SLA (formalization) SLA

    SLA graph data model

    . Diagraph

    SLA .

    ,

    .

    SLA .

    ,

    .

    3. VSLA

    cross-cutting

    .

    QoS

    .

    VSLA

    .

    3.1 Cross-cutting

    [12]. 1

    Core concern IaaS, PaaS, SaaS

    .

    SLA ,

    .

    cross-cutting

    .

    1

    (QoS Parameter) .

    1. Cross-cutting QoS

    KCSE 2015 17 1

    55

  • (QoS Metric)

    . 1 IaaS, PaaS,

    SaaS

    . 13

    ,

    .

    .

    1

    .

    IaaS customizability configurability

    collaborability . Configurability

    VM,

    , collaborability IaaS

    .

    , SaaS customizability

    ,

    .

    1.

    Para-

    meter

    Metrics

    IaaS PaaS SaaS

    Custo-

    mizabi-

    lity

    Configurability

    Collaborability

    OpenAPI

    License

    Avail-

    ability

    Uptime

    Maximum tolerable processing time

    Pings

    Relia-

    bility

    Fault rate (Error rate)

    Coverage of fault tolerance

    Mean time between failure (MTBF)

    Load balancing

    Maximum packet loss rate

    Mean time to repair (MTTR)

    Perfor-

    mance

    Response time

    Throughput

    Booting time

    VM processing

    time

    Data transfer

    time

    Deployment

    latency

    Query

    response time

    Create time

    Read time

    Delete time

    Get time

    Put time

    Average lag

    time

    Runtime

    API calls per

    time unit

    Robust

    -ness

    Exception handling

    Resiliency

    Scala-

    bility

    VM scale

    Scale up/down

    Auto scaling

    Number of users

    Para-

    meter

    Metrics

    IaaS PaaS SaaS

    Virtualization

    degree

    Server scale Extensibility

    Usabi-

    lity

    Service of help

    Learnability

    Monitoring agency

    Manageability

    Average

    functional

    depth

    Multi-terminal

    support

    Multi-language

    support

    Stability

    Geographic

    location Browsers

    Inter-

    opera-

    bility

    Portability

    Platform

    integration Data integration

    Capa-

    city

    Network capacity

    Server capacity

    Records storage

    capability

    Rate of requests

    per minute

    Cache memory

    size

    Communicati-

    on channel

    capacity

    Storage size

    Reco-

    very

    Backup

    Failover

    Recovery time

    Secu-

    rity

    Encryption

    Authentication

    Authorization

    Traceability

    Non-repudiation

    Privacy

    Auditability

    Repu-

    tation

    Number of users

    Score graded by users

    Companys awareness

    Effi-

    ciency

    Utilization of resource

    Time behavior

    3.2 VSLA

    VSLA(Variable SLA) SLA

    (machine-readable document). VSLA

    ,

    . 2 cross-cutting

    KCSE 2015 17 1

    56

  • VSLA

    .

    SLA

    . VSLA , ,

    [13] . VSLA 5

    (parts) : Party, Guarantee, Violation,

    Governance, Pricing.

    .

    Party

    ContractingParty

    SLA ThirdParty

    .

    Guarantee VSLA ,

    SLO(Service Level Objective) [13] .

    SLA

    (compliance level) .

    Guarantee 2.2 cross-cutting

    .

    , party

    . VSLA

    ,

    .

    Violation guarantee

    . VSLA party

    (compensation)

    . Credit Penalty

    . Credit party

    VSLA

    . Penalty

    SLA

    ,

    .

    Governance VSLA

    .

    Feedback VSLA party

    ,

    Context

    .

    (source) (target) . ,

    Context

    . Policy

    ,

    (rule) . Rule (action)

    (pre-condition)

    2. VSLA

    KCSE 2015 17 1

    57

  • (post-condition) .

    Pricing party

    .

    (cost value) ,

    .

    VSLA

    .

    VSLA .

    4.

    3

    IaaS, PaaS, SaaS

    .

    IaaS, PaaS, SaaS

    cross-cutting

    . 2

    IaaS Google Compute Engine [14], PaaS

    Google App Engine [15], SaaS

    Office 365 [16]

    .

    Reliability, Capacity

    QoS

    ,

    .

    Google Compute Engine reliability

    load balancing

    , Office 365 reliability

    load balancing

    . Google App Engine

    reliability HTTP ,

    API . QoS

    cross-cutting

    .

    2.

    Parameter IaaS PaaS SaaS

    Google Compute Engine Google App Engine Office 365

    Customizability Configurability: Cloud SDK

    (gcutil)

    License:

    Availability Uptime: >99.95% (Monthly) Uptime: >99.95% (Monthly) Uptime: >99.9% (Monthly)

    Reliability

    Load balancing:

    (5

    - $0.025,

    $0.010 )

    Fault rate(error rate): App

    engine HTTP

    , Datastore API ,

    Search API

    Error

    Load balancing:

    load balancing

    Performance

    VM: machine type

    standard

    1,2,4,8,16

    API calls per time unit: Channel API calls (3,000 calls/minute), Mail API calls(32 calls/minute)

    Throughput: inbox folder-20,000 items, sent items folder-20,000 items, contacts-5,000

    items

    Robustness

    Exception handling: HTTP

    Exception handling: HTTP

    Exception handling:

    thresholds

    Scalability

    Auto scaling: cloud

    monitoring

    Cloud monitoring

    metric

    Service scale: 70

    Number of Users: Snapchat,

    Rovio

    Number of Users: Office 365

    Business: 300 , Office 365

    Enterprise:

    Usability

    Service of help:

    google.com/support

    Learnability:

    Geographic location: ,

    ,

    Service of help: stackoverflow

    google.com/support

    Learnability:

    Service of help: support.office.com

    Learnability:

    Multi-language support:

    (, ,

    17 )

    KCSE 2015 17 1

    58

  • 3. Office 365 SLA XML

    99.9 % 1 monthly 5 % 100 %

    IaaS, PaaS, SaaS

    IaaS

    PaaS PaaS SaaS

    . cross-cutting

    .

    SLA 3 XML

    . 3 2

    Office 365

    VSLA

    VSLA

    .

    3 SLA

    Office 365 SLA

    SLO, ,

    . Office 365 3

    SLO

    (uptime). Office 365

    99.9% ,

    99%

    5% credit 95% 100%

    credit .

    XML

    VSLA

    . VSLA

    ContractingParty

    .

    5.

    cross-cutting QoS

    .

    SLA

    SLA .

    cross-cutting

    SLA

    VSLA . VSLA

    SLA document

    model , SLA

    . VSLA ,

    .

    VSLA

    ,

    VSLA

    .

    [1] J. Na, Qualitative Study on Service Features for

    Cloud Computing, Journal of Digital Contents Society, Vol. 12, No. 3, pp. 319-327, Sep. 2011

    [2] M. M. Qiu, Y. Zhou and C. Wang, Systematic Analysis of Public Cloud Service Level Agreements and Related Business Values, In Proceedings of International Conference on Services Computing, pp. 729-736, Jun. 2013

    [3] C. Wu, Y. Zhu and S. Pan, The SLA Evaluation Model for Cloud Computing, In Proceedings of International Conference on Computer, Networks

    KCSE 2015 17 1

    59

  • and Communication Engineering, pp. 331-334, May 2013

    [4] E. Badidi, A Cloud Service Broker for SLA-based SaaS Provisioning, In Proceedings of International Conference on Information Society, pp. 61-66, Jun. 2013

    [5] S. Venticinque, R. Aversa, B. D. Martino, M. Rak and D. Petcu, A cloud agency for SLA negotiation and management, In Proceedings of Euro-Par Parallel Processing Workshops, pp. 587-594, Jan. 2011

    [6] Z. Wang, X. Tang and X. Luo, Policy-Based SLA-Aware Cloud Service Provision Framework, In Proceedings of International Conference on Semantics Knowledge and Grid, pp. 114-121, Oct. 2011

    [7] H. He, Z. Ma, H. Chen and W. Shao, Towards an SLA-Driven cache adjustment approach for applications on PaaS, In Proceedings of the Asia-Pacific Symposium on Internetware, pp. 11-20, Oct. 2013

    [8] AOP(Aspect Oriented Programming), http://stophyun.tistory.com/34

    [9] I. Ayadi, N. Simoni and T. Aubonnet, SLA approach for Cloud as a Service, In Proceedings of International Conference on Cloud Computing, IEEE Computer Society, pp. 966-967, Jun. 2013

    [10] M. Alhamad, T. Dillon and E. Chang, Conceptual SLA Framework for Cloud Computing, In Proceedings of International Conference on Digital Ecosystems and Technologies, pp. 606-610, Apr. 2010

    [11] K. Stamou, V. Kantere, J. H. Morin and M. Geogiou, A SLA graph model for data services, In Proceeding of International Workshop on Cloud data management, pp. 27-34, Oct. 2013

    [12] , , ,

    ,

    , Jun. 2014

    [13] S. Hussain, R. Gustavsson, A. Saleem and L. Nordstrom, A SLA conceptual framework for monitoring QoS in smart grid, In Proceedings of IEEE Grenoble on PowerTech, pp. 1-6, Jun. 2013

    [14] Google Compute Engine, https://cloud.google.com/compute

    [15] Google App Engine, https://cloud.google.com/appengine

    [16] Office 365, http://office.microsoft.com/ko-kr/business/FX104051403.aspx

    KCSE 2015 17 1

    60

  • (A4)

    (GPLv2) (HIS Approach)

    , (), , , ()

    , , (KAIST)

    , , ()

    Software Refactoring Impact on Software Quality in Android Application Development []

    Mesfin Abebe, ()

    KCSE 2015 17 1

    61

  • (GPLv2)

    (HIS Approach)

    A HIS(History, ISP, Structured based) Refactoring Approach to

    Compliance with OSS License

    * 1, 5

    35 [email protected] [email protected]

    2, 3, ** 4,

    35 {ryudwig, elisa, jtkim}@swexpertgroup.com

    : SW SW

    GPLv2

    . GPLv2

    (Licensee)

    .

    (Business Logic)

    .

    , ,

    , , ,

    3 .

    : SW, GPLv2 , ,

    ,

    1.

    SW

    .

    **

    2.0(GPLv2, General Public License Version 2)

    SW

    [1].

    (Blackduck Software)

    2014 GPLv2

    SW SW 25.22%

    [2].

    SW

    (Licensee) SW

    SW

    .

    (BSD, Berkeley Software

    Distribution) GPL

    , BSD SW

    GPL SW, GPLv2

    SW [3].

    GPLv2 ,

    SW GPLv2

    ,

    GPLv2 .

    GPLv2 ,

    KCSE 2015 17 1

    62

  • .

    Approach

    (SOLID) [4]

    (ISP, Interface Segregation

    Principle) 3

    . ISP

    .

    2

    .

    1)

    .

    (Bad

    smell)

    .

    2) , 3

    .

    SW

    ,

    , 3 /

    .

    2

    .

    GPLv2

    . 3 GPLv2

    -

    .

    ,

    , . 4

    .

    SW

    SW [5],

    SW [6],

    SW [7] .

    .

    2.

    .

    BSD , GPLv2

    , , (SOLID)

    .

    2.1 BSD

    SW BSD

    GPL .

    BSD BSD ,

    MIT , Apache [5].

    BSD (Copyleft)

    ,

    .

    ,

    . BSD

    4 .

    2.2 GPL

    GPL [6] GPL2.0, GPL3.0, LGPL2.1,

    LGPL3.0, AGPL3.0 .

    (Free Software Foundation)

    .

    BSD

    .

    GPL, LGPL, AGPL . GPL

    5 .

    GPL GPLv2

    SW 2

    (Derivative work)

    . , SW

    (Business Logic)

    . 1

    GPLv2 .

    KCSE 2015 17 1

    63

  • 1 SW

    2.3

    (Refactoring),

    . ,

    .

    ,

    .

    2.4 (SOLID)

    GPLv2

    .

    C. (Agile

    Software Design) SW

    (SOLID) . (Single Responsibility

    Principle).

    .

    - (Open-Closed Principle).

    (, , )

    .

    (Liskov Substitution

    Principle).

    .

    (Interface Segregation

    Principle).

    .

    (Dependency Inversion

    Principle).

    . ,

    ,

    .

    ISP

    .

    3.

    SW

    . , GPLv2

    SW

    .

    GPLv2 SW

    SW

    .

    GPLv2

    (FSF, Free Software Foundation)

    (Sockets Communication), (Pipes),

    (Command-Line Arguments), exec(), fork()

    .[7]

    GPLv2 SW

    .

    SW

    . ,

    .

    2 GPLv2

    2 GPLv2

    KCSE 2015 17 1

    64

  • , ISP,

    HIS .

    . GPLv2

    GPLv2 SW

    .

    SW

    .

    2 ,

    SW

    - .

    ,

    SW

    .

    FSF

    .

    .

    ,

    ()

    . ,

    .

    SW

    .

    .

    .

    . ,

    SW

    .

    2 GPLv2

    SW ,

    , GPLv2

    .

    3 SW GPLv2

    W5xxx_Prxxxxx.c, W5xxx.Soxxxxx.c

    .

    W5xxx_Prxxxxx.c Process_UDPServer

    SW W5xxx.Soxxxxx.c

    .

    GPLv2 W5xxx_Prxxxxx.c

    W5xxx_Soxxxxxx.c

    .

    .

    3

    SW GPLv2

    W5xxx_Prxxxxx.c

    W5xxx_Soxxxxxx.c -

    . SW W5xxx.Soxxxxx.c

    .

    SW

    .

    (Network Adapter) .

    SW

    .

    KCSE 2015 17 1

    65

  • Process_UDPServer GetDestPort

    GetDestPort

    .

    .

    SW

    (function index) .

    .

    SW .

    SW

    GPLv2 .

    ,

    . SW,

    ,

    . HIS

    .

    .

    interface

    3 ,

    Process_UDPServer

    , .

    4 .

    ,

    .

    4 SW

    SW

    ,

    (ISP,

    Interface Segregation Principle)

    .

    .

    ,

    .

    (Change-history)

    SW

    .

    . (Paretos Law)

    20%

    ,

    80%, 20% .

    /.

    5

    .

    .

    6

    SW

    . SW

    m1, m3, m4, m5, m6 . m1, m3, m4,

    m5, m6 , .

    . m1 100, m3, m4, m5, m6

    10 m1 m3, m4, m5,

    m6 .

    .

    5

    KCSE 2015 17 1

    66

  • 6 SW

    (Coupling)

    (Fat interface)

    SW

    .

    [8]ICP(Information-flow Based Coupling)

    .

    SW

    ICP . ICP

    . ICP

    positive-outlier

    .

    .

    1 6 SW

    f1() f2() f3() f4()

    m1() O X X X

    m2() X X X X

    m3() O X O X

    m4() X X O X

    m5() X O X X

    m6() O X X X

    2 6

    SW

    f1() f2() f3() f4() - -

    Par(mi) 6 3 2 1 - -

    m1() m2() m3() m4() m5() m6()

    Par(fj) 3 2 4 2 1 3

    6

    SW ICP 2

    3 . SW

    m2 IPC

    6.2, 2.77. (

    IPC)+() 9.64 IPC

    m3 .

    m1, m4, m5, m6

    .

    3 6 ICP

    m1() m2() m3() m4() m5() m6()

    ICP(mi) 7 0 10 3 4 7

    4.

    XX SXX

    .

    . XX GPLv2 988

    SXX 94 .

    6

    GPLv2 .

    XX 2, SXX .

    2 XX GPLv2

    129 SXX 76

    86%, 19% .

    7 HIS

    , GPLv2 .

    7 HIS , GPLv2

    XX SXX

    . SW

    SXXX XXXX 4 HIS

    GPLv2

    .

    0

    2000

    XX SXX

    GPLv2

    GPLv2

    KCSE 2015 17 1

    67

  • 5. &

    , SW

    . SW

    , (GitHub)

    . SW

    .

    6.

    [1]

    [2]

    [3]

    [4]

    https://www.blackducksoftware.com/news/releases/open-source-mobile-project-growth-continues-gain-momentum https://www.blackducksoftware.com/resource

    s/data/top-20-open-source-licenses

    Lerner J., Tirole J., The scope of open source

    licensing, J. Law Econom. Organ. 2005

    Robert C. Martin, Agile Software

    Development, Pearson Group, 2013

    [5]

    [6]

    [7]

    [8]

    [9]

    [10]

    [11]

    S. Schleimer, D.S. Wilkerson, and A. Aiken,

    Winnowing: local algorithms for document

    fingerprinting, in Proceedings of the 2003 ACM

    SIGMOD international conference on

    Management of data, ser. SIGMOD 03. New

    York, NY, USA: ACM, 2003, pp.76-85

    S. Haefliger, G. von Krogh, and S. Spaeth,

    Code reuse in open source software, Manage.

    Sci., vol. 54, no. 1, pp.180-193, Jan. 2008.

    D.M. German and A.E. Hassan, License

    integration patterns: Addressing license

    mismatches in component-based development,

    in Proceedings of the 31st International

    Conference on Software Engineering, ser.

    ICSE 09. Washington, DC, USA: IEEE Computer

    Society, 2009, pp.188-198

    OLIS, SW

    2.0()

    OLIS, SW

    2.0() http://www.gnu.org/licenses/gpl-faq.en.html Lionel C. Briand, A Unified Framework for Coupling Measurement in Object-Oriented Systems, IEEE Transaction on Software Engineering, Vol.25, Issue.1, pp.91-121, Jan/Feb 1999

    KCSE 2015 17 1

    68

  • 5.

    4 BSD

    BSD Apache

    2.0

    MIT

    O O O

    X O O

    Attribution O O O

    (Reciprocity) X X X

    (Larger Work) X X O

    X O X

    X O X

    X O X

    , , O O X

    O O O

    O O O

    KCSE 2015 17 1

    69

  • 5 GPL

    GPL 2.0 GPL 3.0 LGPL AGPL

    3.0

    O O O O

    O O O O

    Attribution O O O O

    (Reciprocity) Derivative

    work

    Work

    based on

    the

    pr