¹øÈ£ : 3   Á¶È¸¼ö : 1547   Date : 2004-06-04 ¿ÀÈÄ 9:34:08
ÀÛ¼ºÀÚ : ½Å½ÂÅÃ
  Software Configuration Management   -



Software Configuration Management


Technology Report


September 1994



References at Software Technology Support Center(STSC)



1998/12/29 by ½Å½ÂÅÃ





  1. Preface


    Software Configuration Management(SCM)Àº software development processÀÇ backboneÀ̸ç, ¿Ã¹Ù¸£°Ô ¼öÇàµÇ¾úÀ» ¶§ softwareÀÇ ÁúÀûÀÎ Çâ»ó°ú processÀÇ °³¼±È¿°ú¸¦ °¡Á®¿Â´Ù.



    Purpose and Overview



    SCMÀº ¸ðµç °³¹ß ¹× ¿î¿µ ´Ü°è¿¡ À־ ÄÄÇ»ÅÍ ÇÁ·Î±×·¥ Á¦Ç°ÀÇ Àü°³¸¦ °ü¸®ÇÏ´Â ºÐ¾ßÀÌ´Ù. SCMÀº software lifecycleÀÇ ¸ðµç ¿µ¿ª¿¡ °ÉÃÄ ÀÌ·ç¾î Áø´Ù.



    ¡¡



  2. Basic Concepts


    "Software Configuration Management´Â ÁÖ¾îÁø ½ÃÁ¡¿¡¼­ softwareÀÇ configuration(i.e., selected software work products and their descriptions)À» identifyÇϸç, configurationÀÇ º¯°æ¿¡ ´ëÇÏ¿© ½Ã½ºÅÛÀûÀ¸·Î controllÇϸç, software lifecycle¿¡ °ÉÃÄ configurationÀÇ integrity¿Í traceability¸¦ À¯ÁöÇÑ´Ù. SCMÀ» ÅëÇÑ work productµéÀº °í°´¿¡°Ô Àü´ÞµÉ software product(e.g., the software requirements document and the code)µé°ú ÀÌ·¯ÇÑ software productµéÀ» ¸¸µå´Âµ¥ ¿ä±¸µÇ°Å³ª identifiedµÈ item (e.g., compiler)µéÀ» Æ÷ÇÔÇÑ´Ù." [Paulk 93].



    SCMÀº software productÀ» Àü°³ÇÏ´Â »óÅ¿¡ ´ëÇÑ visibility¸¦ Á¦°øÇÑ´Ù.



    SCMÀº ´ÙÀ½ÀÇ ±â´ÉÀûÀÎ ¿µ¿ªµé·Î ³ª´©¾î Áø´Ù.


    : Identification, Change Control, Status Accounting, and Audit.





    Figure Software Configuration Management



    ¡¡


    ¡¡




    1. Configuration Identification


      IdentificationÀº software systemÀÇ ±¸Á¶¸¦ identifyÇϸç, individual componentµéÀ» uniqueÇÏ°Ô identifyÇϸç, ¾î¶² form¿¡ µû¶ó ±×µéÀ» accessÇÒ ¼ö ÀÖ°Ô ÇÏ´Â °ÍÀÌ´Ù. IdentificationÀÇ ¸ñÇ¥´Â lifecycle¿¡ °ÉÃÄ system componentµéÀ» identifyÇÒ ¼ö ÀÖ¾î¾ß Çϸç, software¿Í °ü·ÃµÈ software productµé »çÀÌÀÇ traceability¸¦ Á¦°øÇØ¾ß ÇÑ´Ù.



      ¾Æ·¡ ±×¸²Àº softwareÀÇ ÀüÇüÀûÀÎ ¸í¼¼¸¦ º°°³ÀÇ ºÎºÐÀ¸·Î Ç¥ÇöÇÏ°í ÀÖÀ¸¸ç, °¢ componentµéÀ» uniqueÇÏ°Ô identifyÇÏ´Â numbering schemeÀ¸·Î Ç¥ÇöÇÑ´Ù.




      Figure Software Configuration Identification Hierarchy




    2. Change Control


      Configuration Change ControlÀº Àü software lifecycle¿¡ °ÉÃÄ software productµéÀÇ release¿Í º¯°æÀ» Á¦¾îÇÑ´Ù. throughout the software lifecycle. Change ControlÀÇ ¸ñÇ¥´Â ÁúÁÁÀº software¸¦ »ý»êÇϱâÀ§ÇÑ mechanismµéÀ» ¼¼¿ì±â À§ÇÔÀÌ´Ù. generic change process°¡ ¾Æ·¡ ±×¸²¿¡ identifyµÇ¾î ÀÖ´Ù.





      Figure Generic Change Process



      baselineÀº SCMÀÇ Çٽɰ³³äÀÌ´Ù. baselineÀº ¡°°ø½ÄÀûÀ¸·Î reviewµÇ°í µ¿ÀÇµÈ ½ºÆåÀ̳ª Á¦Ç°À» ÀÏÄÃÀ¸¸ç, ±×¶§ºÎÅÍ ´õ ³ªÀº °³¹ßÀÇ ±âÃʸ¦ Á¦°øÇϸç, °ø½ÄÀûÀÎ º¯°æÀýÂ÷¿¡ ÀÇÇؼ­¸¸ º¯°æµÉ ¼ö ÀÖ´Ù¡± [IEEE 90]. itemÀÌ baselineµÇ¸é itemÀº °íÁ¤µÇ¸ç, ¿ÀÁ÷ »õ·Î¿î ¹öÀüÀ» createÇÔÀ¸·Î½á¸¸ º¯°æµÉ ¼ö ÀÖ´Ù.




    3. Configuration Status Accounting


      Configuration Status AccountingÀº change processÀÇ recording°ú reportingÀ» ÇÑ´Ù. status accountingÀÇ ¸ñÇ¥´Â baseline³»ÀÇ ¸ðµç itemµéÀÇ status record¸¦ À¯ÁöÇÔÀ¸·Î½á, Àü software lifecycle¿¡ °ÉÃÄ baselineÀÇ ¸ðµç º¯°æÀÇ traceability¸¦ Á¦°øÇÏ´Â °ÍÀÌ´Ù.




    4. Configuration Audit


    Configuration Audit´Â software productÀÌ requirements, standards, or contractual agreement¿¡ µû¶ó builtµÇ¾ú´ÂÁö¸¦ verifyÇÑ´Ù. Test reports and documentation´Â software°¡ ±â¼úµÈ ¿ä±¸ºÐ¼®°ú Ãæµ¹ÇÏ´ÂÁö¸¦ verifyÇϴµ¥ »ç¿ëµÈ´Ù. Configuration AuditÀÇ ¸ñÇ¥´Â ¸ðµç software product°¡ ¿Ã¹Ù¸£°Ô produceµÇ°í, identifyµÇ°í, describeµÇ´ÂÁö¿Í ¸ðµç º¯°æ ¿ä±¸°¡ ÇØ°áµÇ¾ú´ÂÁö¸¦ verifyÇÏ´Â °ÍÀÌ´Ù. ºñ°ø½ÄÀûÀÎ auditµéÀº software lifecycleÀÇ ÇÙ½ÉÀý¿¡¼­ ¼öÇàµÈ´Ù. °í°´¿¡°Ô diliverµÇ±âÀü¿¡ ¼öÇàµÉ °ø½ÄÀûÀÎ audit´Â µÎ°¡Áö typeÀÌ ÀÖ´Ù.


    Functional Configuration Audit (FCA)


    Physical Configuration Audit (PCA)


    FCA´Â System Requirements Specification and the Interface Requirements Specification¿¡ ±â¼úµÈ software ¿ä±¸»çÇ×À» ½ÇÁ¦·Î ¸¸Á·ÇÏ´ÂÁö¸¦ verifyÇÑ´Ù. PCA´Â design and reference documentµéÀÌ builtµÈ software¸¦ Á¦´ë·Î Ç¥ÇöÇÏ´ÂÁö¸¦ °áÁ¤ÇÑ´Ù.



    ¡¡



  3. Software Configuration Management Tools




    1. UNIX Utilities


      Source Code Control System (SCCS) : AT&T Version


      Revision Control System (RCS) : on the Internet


      Make



      SCCS and RCS´Â version control and baseline management¸¦ Á¦°øÇÑ´Ù. À̰͵éÀº source¸¦ controllÇϱâÀ§ÇÏ¿© designµÇ¾úÁö¸¸ ´Ù¸¥ µ¥ÀÌÅ͵µ ÀúÀåÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ Check-out/Check-in SCM model³»¿¡¼­ repository·Î½á Á¦°øµÈ´Ù.



      °³¹ßÀÚ°¡ itemÀ» modifyÇϱâ À§Çؼ­´Â ´ÙÀ½ÀÇ ÀýÂ÷¸¦ °ÅÄ£´Ù:


      1. Checks the item out from the repository (Check-out)


      2. Incorporates the changes (Edit)


      3. Checks the item back into the repository (Check-in).



      itemÀÌ checked-outµÇ¾úÀ»¶§, µ¿½Ã¿¡ µ¿ÀÏÇÑ itemÀ» º¯°æÇÏ·Á´Â °³¹ßÀÚµéÀ» ¸·±âÀ§ÇØ lockÀ» ÇÑ´Ù. SCCS¿Í RCS´Â disk space¸¦ Àý¾àÇϱâ À§ÇÏ¿© delte storage schemeÀÇ º¯ÇüÀ» ÀÌ¿ëÇÑ´Ù. delta storage scheme´Â °¢ ¹öÀü°£ÀÇ Â÷ÀÌÁ¡¸¸À» ÀúÀåÇÑ´Ù. SCCS´Â Ãʱâ baseline°ú °¢ baseline°£ÀÇ Â÷ÀÌÁ¡À» ÀúÀåÇÏ´Â forward delta scheme¸¦ ±¸ÇöÇÑ´Ù. RCS´Â °¢ ÀÌÀü baseline°£ÀÇ Â÷ÀÌÁ¡¿¡ µû¸¥ lastest versionÀ» ÀúÀåÇÏ´Â reverse delta storage¸¦ »ç¿ëÇÑ´Ù. Reverse delta storage´Â latest versionÀ» À¯ÁöÇϱ⠶§¹®¿¡ latest versionÀÇ ´õ È¿À²ÀûÀÎ retrievalÀ» Á¦°øÇÑ´Ù.



      The UNIX utility, Make, was developed to automate the build process.




    2. SCM Tool Features




  • Version Control


  • Configuration Support


  • Process Support


  • Change Control


  • Team Support


  • Library/Repository Support


  • Security/Protection


  • Reporting/Query


  • Tool Integration


  • Build Support


  • Release Management


  • Customization Support


  • Graphical User Interfaces (GUIs)

 

µî·ÏµÈ ÀÇ°ßÀÌ ¾ø½À´Ï´Ù.