Oracle Corporation et al v. SAP AG et al

Filing 844

Declaration of Zachary J. Alinder in Support of 843 Memorandum in Opposition, to Defendants' Motion to Exclude Testimony of Paul Pinto filed byOracle International Corporation, Oracle USA Inc., Siebel Systems, Inc.. (Attachments: # 1 Exhibit A, # 2 Exhibit B, # 3 Exhibit C, # 4 Exhibit D, # 5 Exhibit E, # 6 Exhibit F, # 7 Exhibit G, # 8 Exhibit H, # 9 Exhibit I, # 10 Exhibit J, # 11 Exhibit K, # 12 Exhibit L, # 13 Exhibit M, # 14 Exhibit N, # 15 Exhibit O)(Related document(s) 843 ) (Alinder, Zachary) (Filed on 9/9/2010)

Download PDF
Oracle Corporation et al v. SAP AG et al Doc. 844 Att. 15 EXHIBIT O Dockets.Justia.com Copyright©2006 Computer Aid, Inc. (CAI) Page 1 Presents An IT Metrics and Productivity Journal Special Edition Focus on David Herron, Author of Function Point Analysis A CAI State of the Practice Interview July, 2006 Biography of David Herron David Herron is a Principal in The David Consulting Group. Mr. Herron is an authority in areas such as Functional Measurement and Software Process Improvement. He has over 25 years of experience in software development. During the past ten years he has served as a consultant to Fortune 1000 companies in the areas of software metrics, software process improvement and applications outsourcing management. He is an acknowledged authority in the measurement and estimation of software productivity and quality, specializing in the determination of software project size, effort and cost. His engagements have supported clients on the use of metrics to monitor the impact of IT on the business, on the advancement of IT organizations to higher levels on the Software Engineering Institute's Capability Maturity Model and on the governance of offshore outsourcing arrangements. Mr. Herron is also a noted author and lecturer on functional measures, software process improvement and applications outsourcing. Our interview with David Herron and Michael Milutis, Executive Director of the IT Metrics and Productivity Institute, took place in April of 2006. CAI: Could you tell us a little about yourself, your background and what you are working on today? DAVID HERRON: I started out 30 years ago in operations, came up through the ranks as a project program manager, and ended up running a small development shop for a major retailer. That was the first part of my career. The second part of my career began about 12 years ago, when I entered the wonderful world of consulting. With my partner David Garmus, we founded The David Consulting Group (DCG), which is Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 2 currently focused on helping software organizations maximize business value through an emphasis on software measurement, function point analysis, software process improvement and portfolio management. CAI: You and David Garmus wrote Function Point Analysis: Measurement Practices for Successful Software Projects. What did you originally set out to accomplish when writing this book? DAVID HERRON: Actually, this was the second book that we wrote on software measurement. The first book - Measuring The Software Process: A Practical Guide to Functional Measurements - preceded the second book by four years. When we wrote the first book, nothing had been written on function point analysis for a number of years. And what did exist was somewhat outdated. Consequently, the purpose of the first book was to refresh function point analysis for everyone in the field. Our most recent book - Function Point Analysis - was written to help the reader understand how to successfully utilize the methodology. We wanted to illustrate for people how the function point methodology is being applied today by companies all over the world. We wanted to expand their understanding of its benefits and show how it can be utilized most effectively. CAI: Why should software and IT executives care about software measurement? concerns? How does it ultimately link back to high level, strategic IT DAVID HERRON: There is an old adage attributed to Peter Drucker: "You can't manage what you don't measure." From a strategic business perspective, how can an organization monitor the impact of IT activities without basic software measurement? On a tactical level, how can you track the progress of a project without basic software measurement? Without effective software measurements, how do you know where you are or where you are going? And perhaps most importantly, how do you know where you are going to end up? Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 3 CAI: How do function points play a role in this? How would you define them? Why are they important? DAVID HERRON: Once you have identified the performance indicators you want to examine in an organization, the next step is to identify the specific metrics that make up those measures. This is where function points come into play. Function points are used to measure the size of the functionality that is being delivered to the end user. Function points serve the purpose of measuring size - which is one of several core measures. Along with size, other core measures typically include cost, effort and quality. These measures are used to calculate productivity and quality performance indicators. For example, a common delivery measure for productivity is hours per function point. Other examples include time to market, defect density and cost per unit of work - all expressed relative to a specific function point value. Function points should not be viewed as a standalone measure. Function points are one of several industry accepted measures that must be utilized in order to measure performance and quality effectively. CAI: The lines of code metric is another widely accepted metric in our industry. Could you compare and contrast function points with lines of code? Why would one be preferred over the other? DAVID HERRON: The lines of code metric has been around forever. It is very tangible and easy to count. For a long time lines of code served as the de facto standard sizing measure for the government and for the Department of Defense. One of the disadvantages of lines of code is that there is no universally accepted way to count a line of code. Organizations such as the IEEE (Institute of Electrical and Electronics Engineers) have developed guidelines for counting lines of code but there is no industry standard. Consequently, counting lines of code is not done consistently Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 4 among various organizations. The lack of consistency becomes particularly problematic when conducting comparative analysis across organizations (variance in counting lines of code can lead to inaccurate comparisons). On the other hand, and in contrast to counting lines of code, function points present a well-defined and consistently applied methodology. There have been studies showing that for a given application, two people will arrive independently at the same size metric using the function point methodology. Another important factor is that lines of code can only be counted when they are available, and that is typically very late in the lifecycle. Because function points measure functionality requested by the user, they can be defined during the very early stages of development. As a result of this, function points can be used as a sizing metric to estimate project performance early in the life cycle. I would never suggest abandoning one measure for the other. In an organization where people are comfortable counting lines of code and they have no need for external comparisons or early lifecycle estimating, there is nothing wrong with what they are doing. Capers Jones has conducted studies that show correlations between function points and lines of code in relation to language complexity. For example, a Java or a C+++ program can be expected to generate a certain number of lines of code per function point. There is a process based on this correlation, known as backfiring, that can be used in high level estimating. We often modify the backfiring approach to capture specific correlations realized at an individual client site. We refer to this process as an approximation backfiring method. Using this method, we are able to accurately estimate the number of function points by taking into account language complexity and lines of code generated in a specific client environment. Another measure that has its `roots' in function points is Use Case Points. Use case points calculate a size measure based on use cases. CAI: How can function points be used for benchmarking purposes? Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 5 DAVID HERRON: It depends on how one defines benchmarking. Typically, benchmarking refers to an evaluation of your current levels of performance, one that is focused on establishing a `stake in the ground' baseline. Function points are one of the key measures that can be used to calculate such performance levels. Since other organizations are likewise utilizing function points as a sizing metric to measure their level of performance, industry benchmark data expressed in function points are readily available. Using benchmark productivity values, such as average rate of delivery or best in class rate of delivery, organizations can compare and contrast themselves to their competitors. Comparisons can be further refined by additional factors, such as industry, project size or application type. In this manner, companies can have greater insight into their competitive position relative to others. These benchmarks can also help them determine performance targets and appropriate improvement initiatives. This is a common service we provide at The David Consulting Group. We often help companies benchmark their current level of performance, and then forecast their expected rate of improvement based on the successful execution of their process improvement initiatives. CAI: Could you describe for us how function points can be used to help improve software estimates? DAVID HERRON: Approximately half of the inquiries we receive about function points are geared towards the improvement of software estimation techniques. An effective estimating model requires information about the size and relative complexity of the problem domain as well as information about the organization's capacity to define, design, develop and deploy a particular requirement. Function points are used to estimate the size component of software estimating model. With function points, since the various components of functionality are formulated in terms that are already familiar to the user, the developer is able to better articulate the requirements of the user and therefore produce a more accurate estimate. Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 6 Although one of the advantages of function points is their ease of use early in the development lifecycle, some criticisms have surfaced due to the fact that there is much data that may be unavailable during these early lifecycle stages. In response to this problem, The David Consulting Group has developed an alternative function point methodology technique that specifically adapts to the data limitations of those early stages. We have coined the phrase FP LiteTM to describe this alternative methodology. It is our hope that FP LiteTM will encourage clients to use the function point methodology for their estimation needs, initially in a simplified 'light' version and later as more data becomes available - in its more comprehensive form CAI: In your book Function Point Analysis, you have a chapter on using function points effectively. In that chapter, you speak of project manager level function points, IT management level function points and organizational level function points. Could you elaborate on the distinctions between these three categories? DAVID HERRON: audiences it serves. For example, at the enterprise level, your audience may be interested in achieving a business objective such as cost reduction. Perhaps cost reduction is of paramount Therefore, those on the A measurement program needs to be sensitive to the various importance in an enterprise-wide strategic business plan. enterprise level will want to zero in on cost per unit of work. Function points can be used to define that unit of work. At the IT level, managers will be trying to meet the expectations of the enterprise objectives. However, in an effort to reduce costs, they may need to focus on numbers such as hour per unit of work, as opposed to cost per unit of work. Function points can be used to define this as well. Similarly, a project manager must have good estimation practices at the project level while the project is developing. As the functionality changes, the size of the project will need to be reexamined, resized in terms of function points and then re-estimated using Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 7 those function points to determine the associated costs. The organization does not need an extraordinary variety of measures. You just need to be sensitive to the different levels in the organization and how they all need to view the data to drive the organization forward. Once again, a basic core set of measures, well defined and properly focused, will satisfy most organizations' need for measurement. CAI: Could you summarize for us some of the core function point measures that tend to get used in most organizations? DAVID HERRON: One is rate of delivery. This is an important factor in assessing A second is the cost of that A third common productivity, measured in hours per function point. delivery to the end customer, measured in cost per function point. measure is defect density, measured in defects per quantity of function point. In my opinion these are the three main indicators necessary to meet the minimum measurement requirement within an organization. The beauty of this is that function point measures are well defined. With function points, I am not only able to understand my individual level of performance, I can also compare myself to other industry segments that are measuring with function points. CAI: Could you discuss the specific methodology behind function point counting? DAVID HERRON: The methodology consists of a three step approach. First, one must identify five key functional elements that make up your software project. These five elements include all the inputs coming into the system, all the outputs, all the inquiries that a user could make, all the opportunities needed to store and maintain data within the application, and all of the data residing elsewhere in other systems that one may need access to. Once those five key elements are identified, the second step is to assign a complexity level to each of the elements identified. The methodology assigns different complexity Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 8 values to the various inputs, outputs, inquiries, internal stores of data and interface files based on a set of well defined characteristics. The third step in the function point methodology is to examine a set of general systems characteristics. For example, I have identified some inputs coming into the system and I have determined their level of complexity. But the user may also want some additional features that will enhance the software. The function point methodology recognizes that these extra features exist. into the final equation. Accordingly, they need to be incorporated So in the third step, the methodology comes up with an adjustment factor that gets applied to the previous calculation. The result is a final function point size. The first two steps of the methodology have been recognized by the ISO (International Standards Organization) as an international standard. CAI: Is there any advice that you might have for an organization that is just getting started? Are there any typical mistakes they should clearly avoid when embarking on the function point methodology? DAVID HERRON: When getting started it is important to firmly establish the expectations of the organization. Function points are a means to an end, not an end unto themselves. I get very apprehensive when someone approaches me saying, "I want to start using function points." I would much rather hear someone say, "I want to improve my estimating practice" or "I want to initiate a process improvement program and I need to understand current levels of improvement." The function point methodology itself is not important to an organization. Process improvement is important to an organization. Properly estimating is important to an organization. Function points will be one of many measures that can be exploited to support these initiatives. Another aspect of function points that people need to be very clear about from the onset is that function points just provide measure of software size. Function points by themselves will not improve your estimation accuracy. For example, if I told you that Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000 Copyright©2006 Computer Aid, Inc. (CAI) Page 9 the office space next door is 2000 sq. ft., you might have some sense of how big that is. Nevertheless, you would not be able to make any other kinds of assessments. You would not have any idea how much the office space costs, the functionality of the rooms or any other meaningful detail. All you would know was the size. You would need to have other qualitative information and quantitative measures in order to make sense of the square footage. Similarly, function points cannot stand alone. They are only effective when used in conjunction with other measures. CAI: What can you tell us about the International Function Points Users Group? How can they be of use to people who are interested in function points? DAVID HERRON: The International Function Point Users Group is a good resource for any organization interested in function points. The group certifies training materials and counters and has a help line available to its members. It has many case studies which illustrate how other companies have utilized function points while deploying various, different technologies. And it has a very active and very effective users group. In short, it is a great place to go to get some free advice about basic utilization and deployment of the function point methodology. Questions? Suggestions? Comments? Please contact the IT Metrics and Productivity Journal Editor at michael_milutis@compaid.com Computer Aid, Inc. 1390 Ridgeview Drive Allentown, PA 18104 (610) 530-5000

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?