home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / software / 3401 < prev    next >
Encoding:
Text File  |  1992-09-08  |  6.5 KB  |  129 lines

  1. Newsgroups: comp.software-eng
  2. Path: sparky!uunet!Cadence.COM!cadence!rene
  3. From: rene@cadence.com (Rene Churchill; x6266)
  4. Subject: Re: ClearCase <was Re: Robust Config Mgmt system wanted for MSwindows&UNIX>
  5. In-Reply-To: geoff@flash.bellcore.com's message of 2 Sep 92 09:50:48
  6. Message-ID: <RENE.92Sep8143343@wizard.cadence.com>
  7. Sender: usenet@Cadence.COM (Usenet News)
  8. Nntp-Posting-Host: wizard
  9. Organization: Cadence Design Systems/CAE Div, Lowell MA
  10. References: <1992Jul28.182422.35886@thegang.uucp> <C2K.92Aug11091844@ham.slc.mentorg.com>
  11.     <1992Aug14.215618.861@thirdi.uucp> <m40m+q#.ash@netcom.com>
  12.     <GEOFF.92Aug20140645@wodehouse.flash.bellcore.com>
  13.     <RENE.92Aug31152248@wizard.cadence.com>
  14.     <GEOFF.92Sep2095048@wodehouse.flash.bellcore.com>
  15. Date: Thu, 27 Aug 1992 06:49:43 GMT
  16. Lines: 111
  17.  
  18.  
  19. In article <GEOFF.92Sep2095048@wodehouse.flash.bellcore.com> geoff@flash.bellcore.com (Geoffrey Clemm) writes:
  20. >>   What is the basis for your belief that ClearCase does not scale to
  21. >>   large (e.g. 5 million line) systems ?  The source information can be
  22. >>   partitioned into an arbitrarily large number of disk servers (with the
  23. >>   constraint that all versions of a given file are clustered on a
  24. >>   single server).
  25.  
  26. Humm, perhaps I need to clarify a bunch of my assumptions.  ClearCase
  27. could load in a system of the 5 million line size.  I do like how you
  28. can split up various libraries across several disks file severs.  You
  29. can have the source code on one machine, while the binaries reside on
  30. another, or some on each.  Anyhow, the raw capacity isn't the
  31. bottleneck of the problem.  It's the NFS file servers themselves that
  32. have to be worked around.  A large project on the 5 million line scale
  33. implies 100-500 engineers working on said code.  Several people could
  34. access such a large project, but several hundred would bring a network
  35. to it's knees.
  36.  
  37. >>   I agree that the current version of ClearCase currently does not support
  38. >>   distributed development that is not on a local network, but that question
  39. >>   is orthogonal to that of system size.  Also, I don't see any architectural
  40. >>   impediments to providing a layer that supports non-local-network code
  41. >>   development.
  42.  
  43. I'm sure they will be able to implement something like CVS's import
  44. functionality, where the system can merge changes from another
  45. development tree into the current tree.  I believe that they are
  46. working on something like this now.  (Next release I think, ask them
  47. for more details.)
  48.  
  49. I don't think this kind of funtionality has a fast enough turn around
  50. time however, it also assumes that the various development sites have
  51. well defined areas in which they work.  Site A works on chunk 1, site
  52. B works on chunk 2, etc.  If you assume that each site work fairly
  53. independantly of any other site, then this would work.  This also
  54. assumes that the time between updates is fairly long, say on the
  55. monthly timescale.  If you want daily updates between all sites, then
  56. I think something more robust is needed.  While daily updates
  57. shouldn't be needed most of the time, they are desparately needed
  58. during this mad rush just before release.
  59.  
  60. A lot of this also depends on the code dependancies.  If all of the
  61. sites develop their own code, then everything is fine and dandy.  If
  62. site A depends on, say, the database that site B develops, then the
  63. time it takes a bugfix to propogate from site B to site A becomes
  64. important.
  65.  
  66. >>      This might go from a
  67. >>      good tool to a great one, depending on what they do in the next couple
  68. >>      of releases.
  69. >>
  70. >>   What changes are you looking for ?
  71. >>
  72.  
  73. Ok, you asked for it.  Here's a description of my dream system.  Yo,
  74. Atria, you folks listening?  :-)
  75.  
  76. In order to allow network access to all of the files that a developer
  77. needs in such a large system, I believe that there needs to be several
  78. "copies" of the system.  Each copy of the system could support say
  79. 10-50 developers, depending on how things were set up.  Postulating
  80. 500 developers, that 10-50 different development sites that need to be
  81. kept in sync with each other in some kind of sane fashion.  What I'd
  82. ideally like to find is some kind of version control which would
  83. automaticly take care of this for me.
  84.  
  85. I think one of the sites would be designated as the "master" site,
  86. which holds the "official" copies of the source code.  This site would
  87. be notified when users at any of the "remote" sites check code in or
  88. out of the system.  The master site would update it's own copy from
  89. the remote site and then update the other remote sites with new code.
  90. This way, the only network traffic between development sites would be
  91. notification of changes to and updates of source code.
  92.  
  93. Because my company has development sites scattered around the world,
  94. the ideal system could not depend on the network being up and running
  95. constantly.  (Yeah, I know the Systems group promises reliability, but
  96. little things like Hurricane Andrew can take anybody off-line.)  I
  97. guess this translates into a nightly or some other regularly timed
  98. syncronization process between the various sites.  If a site misses
  99. out on several updates, it should be able to recover automaticly.
  100.  
  101. One side effect of breaking up the development like this is that the
  102. normal locking paradiam of version control won't work.  Something like
  103. CVS's non-locking system would need to be set up, where the master
  104. site would attempt to automaticly merge in all of the changes and kick
  105. back errors to either the developer or some other designated person.
  106.  
  107. A side effect of the side effect is the need to group changes.
  108. Suppose a developer from site A checks in 10 files and one of them
  109. fails to merge properly becuase of some changes from site B.  None of
  110. those 10 files should be checked into the "master" site.  The system
  111. should make the assumption that the changes to those 10 files are
  112. inter-dependant and the compilation or tests would fail if a partial
  113. checkin occured.
  114.  
  115. ClearCase would well as it for any of the individual sites as I've
  116. described them here.  I just think that in and of itself it can't
  117. handle the whole job.  I'm still trying to think of other methods to
  118. develop on my own to tie a network of ClearCase sites together.  It
  119. might be possible to use this tool as a piece of the overall solution.
  120. It's a problem I'm going to work on when I get the time, which should
  121. be Real Soon Now.  (Like as soon as Next Release :-)
  122.  
  123.     Rene
  124. --
  125.  Rene' Churchill                     rene@cadence.com
  126.  Cadence Design Systems
  127.  2 Lowell Research Center Drive      Experience is something you get
  128.  Lowell, Mass. 01852-4995            just after you really needed it.
  129.