Danh mục

Agile Processes in Software Engineering and Extreme Programming- P4

Số trang: 30      Loại file: pdf      Dung lượng: 3.20 MB      Lượt xem: 12      Lượt tải: 0    
tailieu_vip

Hỗ trợ phí lưu trữ khi tải xuống: 20,000 VND Tải xuống file đầy đủ (30 trang) 0
Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Agile Processes in Software Engineering and Extreme Programming- P4:“The Program Commitee of XP 2000 invites you to participate in this meeting ofsoftware development researchers, professionals, educators, managers, and students.The conference brings together people from industry and academia to shareexperiences and ideas and to provide an archival source for important papers onflexible process-related topics.
Nội dung trích xuất từ tài liệu:
Agile Processes in Software Engineering and Extreme Programming- P478 E. Damiani et al.organizations to specify the goals for their projects, and traces these goals to thedata that are intended to define these goals operationally, providing a frameworkto interpret the data and understand the goals. Specifically, our measurement meta-model is defined as a skeletal genericframework exploitable to get measures from any development process. The InformationNeed node is the container node that identifies the informa-tion need over which all the measuring actions are based, as for instance aninternal process assessment. This node is used as a conceptual link between thetwo meta-models. Following the GQM paradigm, the measurableConcept class defines the areasover which the analysis is based; examples of measurableConcept data instancescould be “Software Reuse” or “Software Quality”, indicating as goals an assess-ment of software reuse and software quality level within the organization. The measurableAttributes node defines which attributes have to be measuredin order to accomplish the analysis goals. Furthermore, this element specifiesthe way how attribute values could be collected: indeed, there a strict relationbetween workProduct and measurableAttribute classes. The measure class defines the structure of measurement values observed dur-ing a measurement campaign. Measure is strictly related to unit and scaleTypeclasses, that define, respectively, the unit of measurement used and the typeof scale adopted (nominal, ordinal, and so forth). In particular, measure is inrelation with the metric class, that defines conditioning and pre-processing ofmeasurements in order to provide meaningful indicators. Finally, the metric classis in relation with the threshold node that specifies the threshold values for eachmetric when needed for qualitative evaluation.3.3 Trigger Meta-ModelThe trigger meta-model defines a skeletal middle layer that connects develop-ment process and measurement framework meta-models, factoring out entitiesthat model application of measures to attributes. Fig. 3 shows the trigger meta-model and its relation with the other two meta-models. The trigger meta-model is composed of two entities: trigger and triggerData. Trigger is the class that represents a specific question, component, or probethat evaluates a specific attribute in a given moment of the development process.Indeed, trigger is related to the measurableAttribute class in order to specifywhich attributes are to be measured, and with organization, project, phase, andactivity classes to indicate the organizational coordinates where attributes haveto be measured. Finally, the triggerData class identifies a single result of a measurement ac-tion performed by a trigger instance. There is a slight but important differencebetween data represented by triggerData and raw measures: measure instancessupply triggerData values to metrics applying, whenever necessary, suitable ag-gregations to reduce the cardinality of triggerData result set. A Metamodel for Modeling and Measuring Scrum Development Process 79 Fig. 3. Trigger Meta-model4 Scrum ModelIn this section we use our software process meta-model to model an agile processand couple it with measurement framework. As a proof-of-concept, we shall focuson the Scrum development process [2,4]. A major difference between traditionaldevelopment processes and empirical ones like Scrum is that analysis, design, anddevelopment activities during a Scrum process are intrinsically unpredictable;however, a distributed control mechanism is used to manage unpredictabilityand to guarantee flexibility, responsiveness, and reliability of the results. At firstsight, it may seem that Scrum’s unpredictability could make it difficult to use ameasurement framework to assess a Scrum process. However, we shall see thatour meta-model seamlessly superimposes a measurement framework to Scrumactivities.4.1 The Scrum Development ProcessIn the following sections we propose an instance of our development processmeta-model based on Scrum, defining phases, activities, and workproducts ofit. Our description of Scrum is based on the work of Schwaber [11] that clearlydefines Scrum phases and workproducts and gives guidelines for defining itsactivities.Phases and Activities. The Scrum process is composed by the following fivephases (see Fig. 4): 1. Planning, whose main tasks are the preparation of a comprehensive Backlog list (see Section 4.1), the definition of delivering dates, the assessment of the risk, the definition of project teams, and the estimation of the costs. For this phase, none activity has been formalized; to maintain coherence with the proposed meta-model, we define a generic planningActivity.80 E. Damiani et al. ...

Tài liệu được xem nhiều: