decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books

Gear

Groklaw Gear

Click here to send an email to the editor of this weblog.


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
Joan Thomas - Declaration of June 23, 2004
Thursday, January 13 2005 @ 12:50 AM EST

Here is another of the paper exhibits, finally scanned and transcribed. By finally, I mean me. It's the June 23, 2004 Declaration of Joan Thomas, [PDF] in which she explains just how burdensome SCO's discovery request really is by describing how CMVC works. She walks the judge step by step through the process IBM would have to follow to provide all that SCO is asking for.

She estimates that the materials requested by SCO as additional discovery amount to "the equivalent of billions of lines of source code and at least ten million pages of paper." Later in the declaration, there is an estimate of 40 million pages of paper for another step in the process. It would take months to gather it all, she tells the court. And that's just the code. SCO is also asking for whitepapers, programmers' notes, and design documents. Of course, if you are not in any hurry, and SCO appears not to be, why not ask for billions of lines of code and millions of pages in discovery?

She tells us that there is no Dynix code in CMVC. More significantly, there isn't any revision control information for AIX source code pre-dating 1991. So, if the whole point of SCO's request is to trace the complete line going back to the very beginning to prove their stairstep theory, they can't do it this way anyway. This declaration was attached to IBM's Response to SCO's Memorandum Regarding Discovery as Exhibit A. It was responding to SCO's Memorandum Re Discovery.

There is a second Declaration of Joan Thomas, just so you don't get confused.

******************************

SNELL & WILMER, L.L.P.
Alan L. Sullivan (3152)
Todd M. Shaughnessy (6651)
[address, phone, fax]

CRAVATH, SWAINE & MOORE LLP
Evan R. Chesler (admitted pro hac vice)
David R. Marriott (7572)
[address, phone, fax]

Attorneys for Defendant/Counterclaim-Plaintiff
International Business Machines Corporation


__________________________


IN THE UNITED STATES DISTRICT COURT
FOR THE DISTRICT OF UTAH

___________________

THE SCO GROUP, INC.

     Plaintiff/Counterclaim-Defendant,

-against-

INTERNATIONAL BUSINESS
MACHINES CORPORATION,

     Defendant/Counterclaim-Plaintiff


Civil No. 2:03CV-0294 DAK

Honorable Dale A. Kimball

Magistrate Judge Brooke C. Wells

1

DECLARATION OF JOAN THOMAS

I, Joan Thomas, declare as follow:

1. I am employed by International Business Machines Corporation ("IBM"), as Program Director, AIX and HPC Program Management and pSeries Software Development Operations.

2. This declaration is submitted in connection with the lawsuit brought by The SCO Group, Inc. ("SCO") against IBM, entitled The SCO Group, Inc. v. International Business Machines Corporation, Civil No. 2:03CV-0294 DAK (D. Utah 2003). I make this declaration based upon personal knowledge.

3. I have read SCO's "Memorandum Regarding Discovery" and am familiar with the scope of the additional discovery that SCO seeks from IBM relating to AIX and Dynix. As I illustrate herein, the material sought by SCO is massive by almost any standard, and it would be an enormous burden for IBM to produce it. I estimate that the materials requested amount to the equivalent of billions of lines of source code and at least ten million pages of paper. It would take months for us to prepare this information for production and it could be produced only at the expense of significant time, money and energy.

4. Contrary to SCO's suggestion, it would not be a simple matter for IBM to produce the materials SCO seeks. Those materials are not all contained in a single or even a few places. Moreover, they cannot easily be retrieved from the locations in which they are found. Producing the materials requested would require

2

the concentrated efforts of a team of persons over a lengthy period of time and require searches of the files of the hundreds of persons who worked on the development of AIX over the course of several decades.

5. Configuration Management Version Control ("CMVC") is the source code revision system currently used by IBM's AIX development organization, as well as by many other areas inside of IBM. CMVC has been used in AIX development since 1991. IBM does not maintain revision control information for AIX source code prior to 1991. CMVC does not contain any Dynix code.

6. CMVC provides shared access to source code files used in the development of the AIX operating system, allows IBM to keep track of changes that are made to source code files, and ensures that the files are available for viewing or updating only by those with the proper authorization. When an authorized user "checks out" a source code file from CMVC in order to work on the file, and then "checks in" the file back into CMVC, CMVC keeps track of the changes that were made to the file. CMVC keeps track of the changes that are made to each of the hundreds of thousands of source code files, whether or not those changes actually end up in a version or release of the AIX operating system.

7. The particular CMVC server at IBM that contains source code for the AIX family also contains a large amount of material unrelated to the AIX operating system. First, it contains source code for hundreds of products other than the AIX operating system. Second, in addition to source code, CMVC contains documentation for both the AIX operating system and for products other than the AIX operating system.

8. The source code that is part of the AIX operating system is not segregated in a single location within CMVC, but rather requires extraction from the tens

3

of thousands of other source code files that are not part of the AIX operating system. Identifying which files are part of the AIX operating system and which files are not requires a thorough and painstaking review of the CMVC database by persons who are intimately knowledgeable about the AIX operating system.

9. Isolating and producing all of the AIX operating system source code that is stored on CMVC would not be a simple task. The opposite is true. First, an engineer would have to go through the CMVC server that includes the AIX operating system -- which, again, contains a large amount of code other than the AIX operating system -- and identify each of the "components" that are part of the AIX operating system. Second, a script -- a small computer program -- would have to be written in order to map those components to specific files, estimated to be in the hundreds of thousands. Third, one or more knowledgeable persons would have to confirm that the source files identified by the script are in fact part of the AIX operating system. Fourth, the list of source file names and identifiers would have to be correlated to their corresponding Source Code Control System ("SCCS") files. Each of these hundreds of thousands of SCCS files provides the complete file development history since 1991 for the particular corresponding source code file in the AIX operating system. As noted above, IBM no longer maintains revision control information for AIX source code pre-dating 1991. Finally, those SCCS files would have to be extracted from the database, and transferred to an appropriate storage medium.

10. I estimate that the SCCS source code files extracted from CMVC would consist of at least approximately two billion lines of code or the rough equivalent of more than 40 million pages of paper. I arrive at this estimate based on the expected

4

size of the SCCS files (40 gigabytes). Since we have not actually undertaken the work effort of extracting these SCCS files, it is impossible to state with precision in advance the quantity of code involved.

11. It would take many weeks of effort to complete the task of identifying and extracting from CMVC all of the SCCS source code files that are part of the AIX operating system and to transfer that information onto industry-standard data tapes. This is the format that IBM uses to provide source code to original equipment manufacturers and software vendors and is easily readable using standard data tape drives. Copying the source code files onto CDs or DVDs instead -- which hold far less data -- would entail many additional weeks of work, once the effort of identifying and extracting the AIX operating system source code files from CMVC were complete.

12. Gathering and reviewing for production the design documents, whitepapers and programming notes requested by SCO would be a similarly burdensome task. There is no single location at IBM that contains all design documents, whitepapers, and programming notes for AIX. There are some design documents and programming notes stored on CMVC, and gathering and reviewing those for production would, as with the AIX source code, require sifting through large amounts of other unrelated material that is stored on CMVC. For example, I estimate that there are probably at least ten million pages of programming notes relating to AIX stored on the CMVC server.

13. In addition, to collect whitepapers, design documents, and programming notes relating to the areas of AIX functionality identified by SCO, IBM may have to identify, collect, and review documents from each of the several hundred

5

people who ever worked on AIX marketing, product management and development, as well as search any relevant IBM repositories, archives, or web sites.

14. SCO's request for whitepapers, design documents, and programming notes is estimated to require collecting, reviewing, and producing many millions of pages of documents, a process that would take at least several additional months to complete.

15. I declare under penalty of perjury that the foregoing is true and correct.

Executed: June 23, 2004

Austin, Texas

_______[signature]____
Joan Thomas

6


  


Joan Thomas - Declaration of June 23, 2004 | 76 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
corrections here
Authored by: Anonymous on Thursday, January 13 2005 @ 12:54 AM EST
so they are easy to find

[ Reply to This | # ]

off topic here
Authored by: Anonymous on Thursday, January 13 2005 @ 12:56 AM EST
cause off topic has to be somewhere

[ Reply to This | # ]

Official "The SCO Group" Positions - Ninety-one days without an official post
Authored by: AllParadox on Thursday, January 13 2005 @ 01:35 AM EST
Main posts in this thread may only be made by senior managers or attorneys for
"The SCO Group". Main posts must use the name and position of the
poster at "The SCO Group". Main posters must post in their official
capacity at "The SCO Group".

Sub-posts will also be allowed from non-"The SCO Group" employees or
attorneys. Sub-posts from persons not connected with "The SCO Group"
must be very polite, address other posters and the main poster with the
honorific "Mr." or "Mrs." or "Ms.", as
appropriate, use correct surnames, not call names or suggest or imply unethical
or illegal conduct by "The SCO Group" or its employees or attorneys.

This thread requires an extremely high standard of conduct and even slightly
marginal posts will be deleted.

PJ says you must be on your very best behavior.

If you want to comment on this thread, please post under "OT"


---
All is paradox: I no longer practice law, so this is just another layman's
opinion. For a Real Legal Opinion, buy one from a licensed Attorney

[ Reply to This | # ]

    Joan Thomas - Declaration of June 23, 2004
    Authored by: Latesigner on Thursday, January 13 2005 @ 02:20 AM EST
    This after SCO came up with some fantastic figure (was it 25,000 man years?) to
    show why they couldn't search their own UNIX code for examples of infringement.
    What can a judge do to a plaintiff, and their lawyers, who abuse the court in
    this fashion?

    [ Reply to This | # ]

    Joan Thomas - Declaration of June 23, 2004
    Authored by: chris_bloke on Thursday, January 13 2005 @ 02:50 AM EST

    I'm no friend of SCO, but this seems rather odd for a company that's been in the computing game for as long as IBM has.

    If that's the sad state of source code control in IBM for AIX then it's a wonder that they ever manage to build it for distribution... and to build it for distribution they certainly must have an automatic build system for it, otherwise quality control would be a nightmare (how else would you *know* that the same bits of code you were building out for this beta were the same as the ones you did for the last one ?).

    As for finding the main C files for the kernel (not including the header files) then a good starting point would be:

            
    strings /usr/lib/boot/*unix* | grep /src/        
    
    

    They'll be the ones that start:

           
    
    ../../../../../src/bos/kernel/         
    

    User space commands are left as an exercise to the reader (hint: Drop the first / from /src/).

    The *real* complication (which I fear is what has been glossed over in the deposition) would be knowning all the correct versions for each of those files for *each* OS release - if they haven't used some sort of tagging to peg a revision of a file to a particular build then they're in real trouble. I can't remember if you can do that with SCCS, it's been about 12 years since I last used it.. :-(

    But then again I would have thought that IBM would have been in this business long enough to understand such QA issues as being able to reproduce a particular release easily.

    Mind you, this could explain why AIX is so damn wierd - the old quote:

    "It used to be said [...] that AIX looks like one space alien discovered Unix, and described it to another different space alien who then implemented AIX. But their universal translators were broken and they'd had to gesture a lot." --- Paul Tomblin

    Chris

    [ Reply to This | # ]

    Using Source Control Systems
    Authored by: Anonymous on Thursday, January 13 2005 @ 09:36 AM EST
    There is something that I do not agree with on the deposition: almost any decent
    SCS I know of (but I do not know the one IBM uses, so caveat emptor) will allow
    you to extract a particular branch (meaning a certain revision level).

    This is a requirement, since it usually does not help just to edit the source.
    you should also re-gen the product -- and this means building it -- compiling,
    etc.

    So... It is not THAT difficult to isolate a SINGLE branch. This means that the
    identification of the files that compose the AIX source -- at THIS SPECIFIC
    level -- should not be extremely difficult. And, since the whole idea at this
    point is to extract and build the OS, any and all files extracted for the build
    are deemed to be part of the required set of files to build the OS (or any of
    it's components -- and they are legion on AIX). If you are extracting (for a
    build) files that are not part of the product, then something is very wrong in
    the setup.

    And... this process is usually automated. You only do it manually if (a) you are
    stupid; (b) it is a really small product; (c) something went kaputt in the SCS,
    and you are trying to salvage what you can.

    Of course, there's the other side of the story: the AIX source tree will
    probably have thousands of branches, and (most probably) much more than that for
    leaves. So... extracting each one of the possible AIX images is going to take
    quite a long time, an amazingly large amount of storage space, and will be
    almost impossible to be actually used.

    Ah well. Perhaps the end result is the same, anyway.

    [ Reply to This | # ]

    Stack of papers...
    Authored by: Observer on Thursday, January 13 2005 @ 10:36 AM EST
    Hummm... 40,000,000 pages, if you assume a ream of 500 sheets is about 1.5 inches tall, comes out to a stack of papers something like 10,000 feet tall.

    Hey, no sweat!

    ---
    The Observer

    [ Reply to This | # ]

    Who is going to analyse the code anyway?
    Authored by: ricketts30 on Thursday, January 13 2005 @ 03:18 PM EST

    Maybe SCO thought it would be nice to take a look at all the "methods and sequences" and trade secrets that AIX/Dynix might contain - maybe they thought it would help them to develop a better UnixWare/OpenServer product. Correct me if I'm wrong, but my understanding is that SCO employees (e.g. programmers) will not be able to look at this AIX / Dynix code.

    The question is "Who is SCO going to get to study all the versions of AIX that IBM have given them already?"

    If SCO have to get an outside contractor or two perform the analysis (rather than SCO employees) perhaps the time frame will get even longer than the estimated 25,000 man years!!

    Note : My rates are very reasonable :)

    [ Reply to This | # ]

    Just a little visual aid...
    Authored by: Anonymous on Thursday, January 13 2005 @ 04:17 PM EST

    If you can even picture this in your mind, that is:

    40,000,000 pages of paper amounts to 80,000 boxes of copier paper. If I were to pack my house from floor to ceiling (both floors) with that many reams of paper, I'd need a little over six houses to house (pun intended) all that paper.

    (And judging by the amount of time it took me to clean out old papers and whatnot the last time I moved, I can easily see where it might take 30,000 man-years to examine all that code. :-) )

    This isn't merely a fishing expedition but a desire by SCO to deploy a driftnet with the hope that they'll find something, anything, that they can twist into a violation. I'm surprised they didn't think of sending IBM's original notice of alleged contact violation to the wrong address so they could void the contract on a timeliness issue.

    --
    RT

    [ Reply to This | # ]

    Groklaw © Copyright 2003-2013 Pamela Jones.
    All trademarks and copyrights on this page are owned by their respective owners.
    Comments are owned by the individual posters.

    PJ's articles are licensed under a Creative Commons License. ( Details )