日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

目标驱动的软件度量(选译)

發布時間:2025/3/19 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 目标驱动的软件度量(选译) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1?介紹
1.1?目的
這本指導書講述了如何識別和定義軟件度量來支持你們自己組織的商業目標。我們要講解的這個過程會提供深入對于你們來說最重要的管理的洞察力。這些度量能夠追溯到你們的商業目標,因此你們的數據收集活動會更好地集中在他們既定的目標上。
我們把這個過程稱之為"目標驅動度量"。在目標驅動度量中,首要的問題不是"我應當運用什么指標?",而是"什么是我想要知道的或要學習的?"[引自R ombach 89]

2?基礎
2.1?為什么度量
度量軟件過程,產品和資源有四個理由:
??為了提取特征 to characterize
??為了評價 to evaluate
??為了預測 to predict
??為了提高 to improve

我們提取特征,來獲得對過程,產品,資源和環境的理解;來建立可供未來評估作比較的基線。

2.2?度量元素
通過度量這個過程,數值或象征信號被分配到現實中的實體的屬性上,按照清淅定義的規則得到這些屬性的特征[Fenton95]。度量要求:
??實體(所關心的對象)
??屬性(實體的特征)
??標識屬性值的尺度(和計量單位)
總之,屬性的分類或數量是我們要度量的東西。
這意味著,在我們開展度量之前,我們必須清淅地識別實體,下文要講述屬性和我們用于標識屬性值的計量單位。
Figures 2-1 through 2-3 顯示了軟件企業產生、使用或管理的實體的例子。

?
?
?
2.3?客觀和主觀的度量
在一些圈子中有這樣一種趨勢,認為所有的度量都應當是客觀的。我們強烈表示不同意。堅持客觀會遺失這一點,就是客觀和主觀度量經常表述基本的不同需要。而且,實際情況是不客觀的,而是主觀的,一致,可重復的,最小化度量的錯誤和噪聲。
3?一個識別和定義軟件度量的過程模型
本章提供了目標驅動度量模型的概況和實施路徑,詳細的說明會在第四章。在目標驅動的度量中要強調的是,當收集有助于達到商業目標的信息時,和當保持度量與商業目標一致的跟蹤能力時,度量本身的工作量是不能夠不清不楚的。
This chapter provides an overview and roadmap for the goal-driven measurement process
that we describe in Chapter 4. The emphasis throughout goal-driven measurement is on
gathering information that helps you achieve your business goals-and on maintaining
traceability from measures back to business goals, so that measurement efforts do not
wander astray.
目標驅動度量過程的結構來自于由Victor Basili and Dieter Rombach [Basili 88, Basili 89, Rombach 89].報告的想法和經驗。
這個過程的動力學和幾個圖解來源于由ami ESPRIT project [ami 92, Pulford 96]開發的度量過程指南。
The structure of the goal-driven measurement process draws extensively on ideas and
experience reported by Victor Basili and Dieter Rombach [Basili 88, Basili 89, Rombach 89].
The process dynamics and several of the illustrations that we use have their origins in
measurement process guidelines developed by the ami ESPRIT project [ami 92, Pulford 96].
The goal-driven measurement process also incorporates experience that we have gained at
the Software Engineering Institute in designing and using checklist-based frameworks for
defining software measures and communicating measurement results [Florac 92, Goethert
92, Park 92, SEI 96].
3.1?總覽:概念和過程步驟Overview: The Precepts and the Process Steps
CMU/SEI-96-HB-002 15
目標驅動的度過程基于三個概念,包括10個步驟。
這三個概念是
??度量目標是來自于商業目標
??由模型來獲得度量的環境和焦點
??GQ(I)M把非正式的目標變成可操作的度量結構。
GQ(I)M是目標(Goal)問題(Question)(指標)(Indicator)-度量(Measure)的首字母縮寫。這個插入的"I"使得這與相近的GQM區別開來。
The goal-driven measurement process is based on 3 precepts, and it consists of 10 steps.
The three precepts are
o Measurement goals are derived from business goals.
o Evolving mental models provide context and focus.
o GQ(I)M1 translates informal goals into executable measurement structures.

十個步驟是:
1,?識別商業目標
2,?識別你要學習或知道的東西
3,?識別你的子目標
4,?識別與子目標相關的實體和屬性
5,?公式化你的度量目標
6,?識別量化的問題和相關的指標,這些會用于實現你的度量目標
7,?識別用于獲得指標的要收集的數據元素,這些個指標是可以幫助你回答上述問題
8,?定義度量的使用,使得這些定義具有可操作性
9,?識別你使用度量的行動
10,?準備一個計劃來實施度量


The 10 steps are
1. Identify your business goals.
1 GQ(I)M is an acronym for goal-question-(indicator)-measure. The "I" in parentheses distinguishes
this from the closely related GQM methodology introduced and described by Basili and Rombach
[Basili 88, Basili 89, Rombach 89]. Our use of GQ(I)M is described in Sections 4.5-4.8.
2. Identify what you want to know or learn.
3. Identify your subgoals.
4. Identify the entities and attributes related to your subgoals.
5. Formalize your measurement goals.
6. Identify quantifiable questions and the related indicators that you will use to
help you achieve your measurement goals.
7. Identify the data elements that you will collect to construct the indicators
that help answer your questions.
8. Define the measures to be used, and make these definitions operational.
9. Identify the actions that you will take to implement the measures.
10. Prepare a plan for implementing the measures.


4?實施目標驅動過程
4.1?識別你們的商業目標
4.2?識別你要學習或知道的東西

A prudent question is one-half of wisdom.
- Francis Bacon
一個明確的問題就是一半的智慧
?????????????????? -------培根
識別了商業目標之后,下一步就是開始識別你為了理解,評估,預測或提高與你目標相關的活動,想知道什么。通過提出類似這樣的問題:"什么活動我要管理或執行?","我要實現什么,提高什么",并完成這樣的描述"為了做這個,我需要做…"。
With your business goals identified, the next step is to begin identifying what you would like
to know in order to understand, assess, predict, or improve the activities related to achieving
your goals. By asking questions such as
"What activities do I manage or execute?"
and
"What do I want to achieve or improve?"
and by completing statements such as
"To do this, I will need to…",
你能夠開發識別你可能需要的量化的信息。你應當幾次重復這些問題,把頂級的目標分解到具體的事情和條目上,這些事情是你想要完成的,這些條目是你要表達闡述的。
?
you can begin identifying the quantitative information that you would like to have. You
should repeat these questions several times as you break top-level goals down into specific
things that you want to accomplish and issues that you will need to address. The ellipse in
Figure 4-4 highlights this part of the process and shows how it draws upon your mental
model of the processes you manage.

Scenario
4.2.1?場景
我們在這份材料中使用幾個例子,來顯示給你實體,屬情和涉及的概念模型是如何來幫助指導和關注目標驅動的過程。為了后續的例子,我們提供了如下的場景:
??你的組織剛剛完成了一次軟件過程評估。
??其中的一個發現是你們的項目能夠準時的發布軟件功能和文檔,但是客戶并不象你想象中的那樣滿意。
??相關的行動是提高客戶滿意度。
??你的過程改進小組已經識別了這個行動為它們首要的目標。
??你是一個項目經理,你需要一系列的度量來幫助你的項目向這個目標前進。

We use several examples in the materials that follow to show you how entities, attributes,
and evolving mental models help guide and focus the goal-driven process. To give
substance to these examples, we offer the scenario shown in Figure 4-5.
Scenario
o Your organization has just completed a software process
assessment.
o One of the findings was that your projects are delivering
software functions and documentation on time, but
customers are not as satisfied as you would like them to be.
o The related action item is: Improve customer satisfaction.
o Your process improvement team has identified this action
item as one of its primary goals.
o You are a project manager, and you need a set of measures
that will help your project make progress toward this goal.
Figure 4-5: Scenario
4.2.2?實體問題列表
我們推薦的用于識別和構勒問題的工具被稱為"一個實體問題列表"
使用這個工具的一個例子就在ami Handbook中有相似的闡述。任務排列如下:
1.?從一個在第一步中發現頂級目標開始
2.?識別你的小組要涉及的人或小組,這可能是你或你的組織的領導。這個定義了你的處景以及你和你的小組所扮演的角色,這會在任務3到任務6中以及下面的目標驅動過程步驟中用到。
3.?建立一個你這個角色的相關過程草圖(概念模型),當你做這個,應當由你想要實現的,和你要表達的條目來指導你。


28 CMU/SEI-96-HB-002
The Entity-Question List-A Template for Framing Questions
The tool we recommend to help identify and frame questions is called an entity-question list.
Our example of the use of this tool is patterned after a similar illustration in the ami
handbook [ami 92]. The sequence of tasks is as follows:
1. Start with one of the top-level goals that your team identified in Step 1.
2. Identify the persons or groups whose concerns your team will address.
(This may be you or the organization you lead.) This defines your
perspective and the roles that you and the team will assume in Tasks 3
through 6 here and in the remaining steps of the goal-driven measurement
process.
3. Create rough sketches (mental models) of the relevant processes that you,
in your role, manage or affect. As you do this, be guided by what you want
to achieve and the issues you will have to address to achieve it.
4.?列出受你或你的角色管理或影響的重要的事物(實體),確認你對每個事物表述了下列過程實體的四個方面:
??輸入和資源
??產品和副產品
??中間工件,例如過程目錄和工作
??活動和流程

5.?對每個實體,列出問題,如果回答了,這些問題會幫助你或你的角色向著你的目標來計劃和管理過程。例如:
??它有多大?
??多少?
??有多個個組件?
??它有多快?
??它持續多久?
??它值多少錢?

4. List the important things (entities) in your processes that you, in your role,
manage or influence. Make sure that you address each of the four kinds of
process entities below:
- inputs and resources
- products and by-products
- internal artifacts such as inventory and work in process
- activities and flowpaths
You may also want to list some of the environmental entities outside your
processes that affect your work.
5. For each entity, list questions that, if answered, would help you, in your
role, plan and manage progress toward your goals. For example:
- How big is it?
- How much is there?
- How many components?
- How fast is it?
- How long does it take?
- How much does it cost?
6.?然后回顧一下,總體看看你的過程是否你遺漏了什么,通過詢問如下問題:
這個過程穩定嗎?
運行的如何?
什么限制了我們的能力?
什么決定了我們的能力?
什么是決定性的成功因素?
什么東西我們能夠控制?
我們的客戶想要什么?
什么限制了我們的性能?
什么可能引起錯誤?
什么可能是早期的警告信號?
我們的訂貨有多少?
訂貨在哪里發生?
最重要的
我們要如何才能知道?
你可能發現其它的實體,它的屬性也值得度量。
6. Then step back and look at your process as a whole to see if you have
missed anything. By asking questions such as
- Is the process stable?
- How is it performing now?
- What limits our capability?
- What determines quality?
- What determines success?
- What things can we control?
- What do our customers want?
- What limits our performance?
- What could go wrong?
- What might signal early warnings?
- How big is our backlog?
- Where is backlog occurring?
and most importantly
- How will we know?
you may discover additional entities whose properties may be worth
measuring.
7.?為了你的其它的目標,重復1~6
7. Repeat Tasks 1-6 for your other goals.

當把與實體相關的問題列出,不必花費更多的時間來試圖尋找構勒出完美的問題,進行問題構勒是下一步的事。這時的問題應是很通用的或描述性的。
When listing questions related to entities (Task 5 above), do not spend excessive time trying
to frame the perfect question. Precise framing of questions will come later-you are still early in the goal-driven process. Your questions at this point can be either very general or quite specific.
最重要的是把你所關心的放到這張表中去,你可以利用它們來提練你的模型,因此他們能夠形成這個階段,為了第三步--識別和明確子目標。注意第二步中任務7并沒有在任務5,6后立即執行。
The important thing is to get your concerns on the table so that you can use
them to help elaborate your mental model, and so that they can set the stage for identifying
and articulating subgoals in Step 3 of the goal-driven process (Figure 3-1).
Note that Task 7 of Step 2 does not have to be performed immediately after Tasks 5 and 6.
Usually it is best to continue on through Step 7 of the goal-driven measurement process, to
the point where you have clearly identified the data elements that address one or two of your
business goals, before branching off on additional goals. This helps keep the goal-driven
process manageable. Ultimately, though, you will want to give priority to measures that
address more than one goal. This is especially true when you begin to reduce the large set
of potential measures to the ones that are most valuable to you. There are no universal
guidelines for when to address additional goals-it all depends on the situation. You and
your team will have to judge this for yourselves.

Examples
例子
4-6到4-9是場景例子所關心的實體和問題列表。
?
?
Figures 4-6 through 4-9 on the following pages list some of the entities and questions that
might concern the project manager in our example scenario when he or she is trying to
improve customer satisfaction. Your lists for your own organizations or projects will likely be
more encompassing.


4.3?識別你的子目標
4.3.1?把相關問題放在一組中,有利于識別子目標
第三步就是把你的頂級目標分解為子目標,這個子目標與你管理或執行的活動有關系。
問題會提升,當考慮你的操作過程的模型,無論是明確的還是不明確的,與實體和屬性結合,來達到2你的目標。你現在要識別與實體相關的問題,然后給他們分組,你能夠把結果轉化成可管理的子目標。
?
Grouping Related Questions Helps Identify Subgoals
The third step in the goal-driven process is to translate your top-level goals into subgoals
that relate specifically to activities that you manage or perform. You can use the entityquestion
lists from Exercise 2 to help you do this.
The ellipse in Figure 4-11 shows where we are in the process. The questions that were
prompted by the evolving mental model of your operational process(es) point, either
implicitly or explicitly, to entities and attributes associated with achieving your goals. You
now need to identify the questions that you have about the entities, then group them and
identify the issues they address. You will then be able to translate the results into
manageable subgoals. (If you are familiar with team-based problem-solving processes, you
will recognize this as a convergent step that organizes and structures the results of the
divergent process we used to generate the entity-question lists.)

Examples
Figure 4-12 shows some results for our example scenario. Here, the groupings are easily
identified. For example, the first four questions listed for products and by-products address
documentation. This issue is grouped already, since we generated the questions by
focusing on the document entities we produce.
?
As we scan down the entity-question list, we see that the next five questions relate to the
quality and performance of the software product. This concern continues in Figures 4-13
and 4-14. Since this seems to be a consistent theme, we elect to collect these questions as
group #2.
?
As we continue identifying principal themes or issues, we collect the questions related to
each issue and transfer them to a new list, sorted by issue. Figure 4-15 shows the results
for our scenario. Keep in mind that the groupings will always be somewhat arbitrary, since
they are based on the team's perceptions of central themes. Moreover, it is perfectly
appropriate for a question to be repeated in more than one grouping.
?
?
CMU/SEI-96-HB-002 37
The groupings of issues and questions then translate naturally into candidate subgoals,
which can be prioritized. The results for our scenario are illustrated in Figure 4-16. In the
real world, you would want to validate these subgoals with your customer(s) to ensure that
you are addressing their true concerns. This would also help you assign priorities to your
subgoals.
Derived Subgoals
??Subgoal #1 Improve readability and traceability of documents.
??Subgoal #2 Improve reliability and performance of released code.
??Subgoal #3 Improve monitoring of plans and budgets.
??Subgoal #4 Improve performance of the change management process.
??Subgoal #5 Improve communications with the customer.
Figure 4-16: Derived Subgoals-A Project Manager's Perspective of the Goal "Improve Customer Satisfaction"

The issues in the training scenario we have been using have mapped nicely, one-to-one,
into subgoals. This will not always happen in real life. In your work, you may find several
issues mapping into a single subgoal, or single issues mapping into several subgoals.
There is nothing wrong with this-formal decomposition of business goals is not what we are
after. The point is simply to arrive at rational subgoals that
o can be addressed by managerial or technical actions
o point us toward focused measurement goals
If your list of groupings is long and you perceive it leading to many measures, your teams
may want to assign priorities to the issues and sort them into rough priority order. This will
help them focus on first things first in the steps that follow.

4.4?識別與子目標相關的實體和屬性
4.5?公式化你的度量目標
4.6?識別量化的問題和相關的指標,這些會用于實現你的度量目標
4.7?識別用于獲得指標的要收集的數據元素,這些個指標是可以幫助你回答上述問題
4.8?定義度量的使用,使得這些定義具有可操作性
4.9?識別你使用度量的行動
4.10?準備一個計劃來實施度量

總結

以上是生活随笔為你收集整理的目标驱动的软件度量(选译)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。