Academia.eduAcademia.edu

Integrando Agentes no Ambiente de Desenvolvimento de Software ODE

2006, Jiisic

Risk Management is a practice composed by processes, methods and tools that allows managing risks in projects; this activity is typically started during the initial phase of a project and it continues during the whole project life cycle. Risk Identification implies to determine potential risks elements by using a consistent and structured method. Taxonomy-Based Risk Management involves using, during the Risk Identification tasks, a checklist of risk grouping structured according to different classes. This paper presents a new model to identify risks in projects based on the use of standard taxonomies. It is founded on experience and results feedback use. The proposed approach is adaptable to corporate and academic environments from different areas of knowledge and with diverse maturity levels.

Proceedings V Ibero-American Symposium on Software Engineering. Puebla (Mexico) Pp. 13-18 A Taxonomy-Based Model for Identifying Risks Sebastian Maniasi, Paola Britos and Ramón García-Martínez Global Software Group (GSG) Argentina Motorola Argentina Centro de Software Software & Knowledge Engineering Center. Graduate School. Buenos Aires Institute of Technology [email protected] Abstract Identification Co n Documentation & Communication Tr ac ki ng SEI (Software Engineering Institute) defines a Risk as “the possibility to suffer a loss” [10] and the Risks Management as “the practice composed by processes, methods and tools that allows to manage risks in projects and provides a disciplined environment for taking decisions pre-actively based on the continue determination of what can go bad (risks), the identification of the top risks to focus on and the implementation of an strategy to manage them” [10]; this activity is started on the first phase of a project (during concepts’ exploration) and continues along the whole life cycle (until product acceptance). ing nn Pla 1. Introduction An alysis t rol Risk Management is a practice composed by processes, methods and tools that allows managing risks in projects; this activity is typically started during the initial phase of a project and it continues during the whole project life cycle. Risk Identification implies to determine potential risks elements by using a consistent and structured method. Taxonomy-Based Risk Management involves using, during the Risk Identification tasks, a checklist of risk grouping structured according to different classes. This paper presents a new model to identify risks in projects based on the use of standard taxonomies. It is founded on experience and results feedback use. The proposed approach is adaptable to corporate and academic environments from different areas of knowledge and with diverse maturity levels. According to [9], Risks Management is important because it helps avoid disasters, rework, and overkill, but more importantly because it stimulates win-win situations. A proper Risks Management allows, for this, the optimal use of resources and promotes, as a consequence, the increase of the profits and the decrease of the losses. There are several Risks Management models and the most used one consists of five sequential and iterative steps: Identification, Analysis, Planning, Tracking and Control. In parallel, two common activities are performed: Documentation and Communication (see Figure 1 – Risks Management Model). Figure 1 – Risks Management Model Risk Identification in projects means to determine potential risk elements by using a consistent and Proceedings V Ibero-American Symposium on Software Engineering. Puebla (Mexico) Pp. 13-18 structured method; this is, probably, the most important step among those that compound the Risks Management activities, due to the fact that without a correct risks determination, it is not possible to develop and to implement in advance proper responses to the problems that could appear in the project [3]. The result of the risks identification is a list that contains the risks that have been identified and their related category. Taxonomies [13] are sorted classifications of elements according to their presumed relationship; they can be used as a very useful tool on different areas of the science and the industry where it is required to organize and to expedite the access to a wide set of related elements. Taxonomy-Based Risks Management implies to use a grouping structure according to different classes as a checklist during Risks Identification activities (this structured list can be obtained from the own company or from any other available source, such as: [5] or [8]). On this context, risk’s sources Taxonomies and Risks Identification are key elements because they are considered as fundamental components of the Activities included on the Risks Management PA (Process Area) of the CMMI (Capability Maturity Model Integration) model [2]. Current Taxonomy-Based Risks Models TBQ (Taxonomy-Based Questionnaire) from SEI Taxonomy-Based risks identification method was originally developed by SEI [5], and, its initial version, works grouping different risks sources on diverse categories and providing a questionnaire called TBQ (Taxonomy-Based Questionnaire) that allows to perform a systematic identification process. The questionnaire consists of objective questions under each taxonomic attribute designed to elicit the range of risks and concerns potentially affecting the product of the project. The questionnaire application is semi-structured and both, the questions and their sequence are used as a defining but not as a limiting instrument for applying other methodologies. The TBQ process consists of four sequential activities: Management Commitment: Before the questionnaire can be conducted, it is necessary to have company executive acceptance and commitment, also the project selection, and the participant selection from different areas must be performed. Team Selection and Training: The team includes both project personnel and customer company staff. Once the team has been selected, it is required to train the group on the technique to be used, roles responsibilities, interview’s protocol to be followed, etc. Risk Identification: It begins with a briefing of all the risk identification participants and the method to be used and continues with interviews to the selected personnel. Identification Conclusion: To conclude the risk identification, it is necessary to show the results obtained to all participants. This methodology is an instrument that allows to obtain a wide range of high level system risks and that, additionally, facilitates highlighting those areas that require more attention from the project team. Taxonomy-Based Risk Management from CMMI The process proposed by [2] consists of the following phases and activities: Prepare for Risk Management: Implies to determine risk sources and categories, to define risk parameters and to establish a risk management strategy. Identify and Analyze Risks: Implies to identify risks and to evaluate, categorize, and prioritize them. Mitigate Risks: Requires to develop risk mitigation plans and to implement risk mitigation plans. Preparation is conducted by establishing and maintaining a strategy for identifying, analyzing, and mitigating risks. This is typically documented in a risk management plan. Identification of risk sources provides a basis to systematically examine changing situations over time. Establishing categories for risks provides a mechanism for collecting and organizing risks as well as ensuring appropriate scrutiny and management attention for those risks that can have more serious consequences on meeting project objectives. Risks taxonomies can be used to provide a framework to determine risk sources and categories. Risks must be identified and described in an understandable way before they can be analyzed and managed properly. Risk identification should be an organized, thorough approach to seek out probable or realistic risks in achieving objectives. Among all the existing methods to identify risks. The use of taxonomies meets and promotes the objectives listed before. Finally, the evaluation of risks is needed to assign relative importance to each identified risk, and it is used in determining when appropriate management attention is required. Often it is useful to aggregate risks based on Proceedings V Ibero-American Symposium on Software Engineering. Puebla (Mexico) Pp. 13-18 their interrelationships, and to develop options at an aggregate, sources or taxonomies level. 2. Motivation Hantos [4] affirms that a group of previous experiences on the use of taxonomies for identifying risks have shown that an initial customization of the standard taxonomies to the organizations leads to get better results with higher levels of efficiency and efficacy. Additionally, [2] mentions that, in order to be effective, risk identification process should not be an attempt to address every possible event regardless of how highly improbable it might be; it must be focused on the most important and probable risks, in other words, it is necessary to validate the relevance and applicability of the information obtained by using taxonomies. Microsoft [8] mentions that learning leads to improve results and that the knowledge obtained on a project could reduce the uncertainty for taking decisions when the information is not trustworthy. Direct analysis of previous Project results promotes learning in teams and organizations. Additionally, knowing that risks identification is a frequent task in projects, it is expected to get some monetary and time ROI from the techniques selected to implement this activity. It is possible to affirm that taxonomies serve multiple purposes for a project team. During risk identification they can be used to stimulate thinking about risks arising within different areas of the project. During brainstorming risk classifications can also ease the complexities of working with large numbers of risks by providing a convenient way of grouping similar risks together. Also they may be used to provide a common terminology for the team to use to monitor and report risk status throughout the project and, finally, taxonomies are critical for establishing working industry and enterprise risk knowledge bases [8]. Finally, it would be beneficial to have tools available for supporting the risks management model selected in order to ease its application and, for this, to get advantage of its benefits. Current taxonomy-based risks models do not provide a tools’ support nor specify explicitly the need to customize and adjust the classification to the actual situation and to the results previously obtained by the organization and projects in which they were applied; considering this, it is necessary to raise a new model that promotes the advantages derived from them. 3. MIRT - Model for Identifying Risks with Taxonomies MIRT’s main objective is to establish, standardize and systematize practices related to risks identification for the project management responsible. Even though the research performed is focused on software projects, MIRT is applicable to any type of project from different knowledge areas. MIRT guides project managers on initial risks identification process and it could be used by organizations of any type because it allows customization and it promotes the use of standard taxonomies. 3.a. MIRT’s structure MIRT is organized on three phases composed by activities (see Figure 2 –MIRT’s structure): Phase 1 – Customization - Activity 1 – Base Taxonomy Selection. - Activity 2 – Projects Types Classification Selection. - Activity 3 – Adjusted Risks Taxonomy Development. - Activity 4 – Risks Identification Rules Development. Phase 2 – Execution - Activity 1 – Project’s Characteristics Specification. - Activity 2 – Risks Identification Rules Execution. - Activity 3 – Project Manager response to Risks related questions. - Activity 4 – Identified Risks Presentation. Phase 3 – Tracking - Activity 1 – Identified Risks Tracking. - Activity 2 – Opportunities to Improve Detection. MIRT - Model for Identifying Risks with Taxonomies Customization Start Base Taxonomy Selection Projects Types Classification Selection Adjusted Risks Taxonomy Development Yes Execution Tracking Project’s Characteristics Specification Identified Risks Tracking Risks Identification Rules Execution Opportunities to Improve Detection Project Manager response to Risks related questions Undefined Risks No Risks Identification Rules Development Identified Risks Presentation Figure 2 – MIRT’s structure Proceedings V Ibero-American Symposium on Software Engineering. Puebla (Mexico) Pp. 13-18 3.b. MIRT’s description MIRT’s phases and activities are described below. 3.b.i. Phase 1 – Customization Customization is MIRT’s first phase; its objective is to adapt and adjust the main components of the model (taxonomies, risks and projects types) to the characteristics of the organization that will use it. This first phase is composed by four activities; two of them conforms the Initialization sub-phase (Base Taxonomy Selection and Projects Types Classification Selection) and the remaining ones that conform the Continues Improvement sub-phase (Adjusted Risks Taxonomy Development and Risks Identification Rules Development). Base Taxonomy Selection activity implies to select (to create or to combine) some of the industry standard risks taxonomies for each of the different areas of knowledge.1 Projects Types Classification Selection implies to select (to create or to combine) some of the projects classifications existing on the industry for each of the different areas of knowledge. Adjusted Risks Taxonomy Development is started once the Initialization sub-phase has been completed. This activity is based on both, the selected Base Taxonomy and the chosen Projects Types Classification; by means of a series of domain experts Wideband Delphi sessions, it produces as a result a modification to the Base Taxonomy that, for each risk and project type, establishes applicability and expected exposure level. Finally, during the Risks Identification Rules Development activity some experts (from both, the domain and project management areas) are consulted with the purpose of identifying and producing a set of rules that reflects causal and exclusion relationships among risks, this is, in order to establish criteria for determining if the existence (or absence) of one or a group of risks promotes (or complicates) the appearance of other or another risks. 3.b.ii. Phase 2 – Execution Execution is MIRT’s second phase; its objective is to generate a list of candidate risks on a particular project by considering its characteristics and by using the Adjusted Risks Taxonomy and Risks Identification Rules obtained on the previous phase. 1 MIRT’s implementation developed as part of this research contains a compendium of the information and categories proposed by different authors and entities for software projects, including: [5], [1], [12], [8] and [11]. This second phase consists of four activities; two of them are executed once (Project’s Characteristics Specification and Identified Risks Presentation) and the remaining ones are performed iteratively (Risks Identification Rules Execution and Project Manager response to Risks related questions). Project’s Characteristics Specification implies to determine values for several aspects that will describe the project to be evaluated (type, existence of customer organization and organizational environment; for example), this will lead to determine a first group of candidate risks based on the applicability criteria previously defined. After this, and until determining an exposure level on the project for each of the risks on the taxonomy, the Risks Identification Rules are executed and Project Manager response to Risks related questions is requested. Based on the exposure level for each risk (predefined on the Adjusted Risks Taxonomy or determined on a previous iteration) the identification rules are executed in order to establish, automatically, the expected final importance for each one of the risks with undefined value; after this, and for all the risks for which it is not possible to determine an exposure level yet, the project manager is asked about the value to be used for a particular project. Once this iterative process has been finished, the Identified Risks Presentation is conducted; it means to list all the risks of the taxonomies that are applicable for a project with its related exposure level (determined during the Execution phase via one of the following methods: predetermination on the adjusted risks taxonomy, identification by using identification rules or by means of direct questions to the project manager). 3.b.iii. Phase 3 – Tracking Tracking is MIRT’s last phase; its objective is to detect opportunities to improve both, the Adjusted Risks Taxonomy and the Risks Identification Rules generated during the Customization phase. This third phase consists of two recurrent activities: Identified Risks Tracking and Opportunities to Improve Detection. Identified Risks Tracking implies to validate once the development activities have started if the risks selected for the project by using the proposed method are applicable; by doing this, it will be possible to detect Opportunities to Improve both, the Adjusted Risks Taxonomy and the Risks Identification Rules by means of historical information that allows to adjust, add, correct and produce new adaptations whose benefits will be verified and used on future MIRTS’s implementations. Proceedings V Ibero-American Symposium on Software Engineering. Puebla (Mexico) Pp. 13-18 3.b.iv. A MIRT’s implementation As part of a previous research, a prototype MIRT’s implementation was developed with two objectives: 1.Validate the proposed model. 2.Support Motorola Argentina SA on CMMI’s Risk Management PA implementation. Tool’s development was promoted due to the fact that Risks Identification Task’s characteristics to be modeled stimulates the possibility to create a system for being structured and defined by a series of actions (See Figure 3 - Risks Identification Task’s Activities). Input Use tools for risks identification Classify risks It increases confidence on the identified risks because historical data and experts’ judgment are used. Other key benefits are that MIRT promotes to standardize activities on an organization, encourages continues improvement and the use of lesson learned and facilitates the implementation of a quality model as CMMI, for example. Until now, there have not been defined any usable models that could be applied on organizations of any type, and that could guide project managers along the customization, the use and the adjustment of taxonomies (on a vital activity in projects, such us the risks identification). Because of this, it is expected that MIRT could be used on a critical task like this. Risks list Review risks by considering project structure Figure 3 - Risks Identification Task’s Activities The implementation was focused on the development of assistant software tool that provides support for MIRT; it was based on Java technologies and created following the Métrica V3 [7] methodology. The tool is being used during risks identification sessions on real projects at Motorola Argentina SA; this projects are used as pilots for completing the phases of the new technology introduction process on the organization. 4. Conclusion Risks management is a high importance activity on the project management context (and, for this, on the software engineering area). On the industry, a persistent effort is devoted to cover continues and growing need of the companies to get tools that allow to achieve a higher maturity. The use of taxonomies during the risks identification leads to reach these objectives. Traditional models for managing risks with taxonomies raise only a group of activities without taking an explicit advantage of the experience and previous results (at industry and organizational levels). MIRT’s most important benefits against traditional models are related to the following aspects: It allows to dramatically reduce time and effort during early risks identification activities because avoids analyzing completely a risks taxonomy on each session. 5. Future Lines of Research Currently, pilot tests are being performed with the MIRT tool prototype at Motorola Argentina SA; this will provide valuable feedback related to the use of the system in real environments and situations and will lead to originate new proposals for extensions, modifications and corrections. Even before finishing the pilot tests, there are some future lines of research already identified for both, the model proposed and the tool developed. 5.a. MIRTS’s Future Lines of Research The following should be highlighted: To incorporate the remaining phases of the general risks management model. To define and to incorporate metrics that will allow performing a quantitative follow up of the results obtained to apply the model. 5.b. Software Tool Future Lines of Research The following should be highlighted: To replace the current fuzzy scale used on the Adjusted Risks Taxonomy (low, medium and high probability risks) by a numeric scale that allows specifying probability for each of the risks and that permits to use different thresholds and trusts levels. To incorporate a resource system to support a more complex and complete rules engine (Mandarax [6], for example); this will lead to use different control mechanisms, to consider trust thresholds, to operate under uncertainty, etc. Proceedings V Ibero-American Symposium on Software Engineering. Puebla (Mexico) Pp. 13-18 To add graphic reports in order to highlight the main risks areas in a project and the relationships identified among different risks. To increase system features by adding online helps and tutorials to explain and to allow the user to know and to understand the risks management model that acts as base of the system. To optimize search mechanism for questions to be done to the user in order to obtain better performance and to increase system efficiency (considering the small number of rules existing, the current strategy is based on a “generate and check” mechanism: the questions are performed following the risk identification order, no particular heuristic is applied). To extend current Adjusted Risks Taxonomy by incorporating new risks categories, risks and project types. To extend risks database by identifying and adding new Risks Identification Rules. To modify the tool in order to allow its execution on remote or Internet environments. 6. References [1] Caper Jones, 1994. Assessment and Control of Software Risks. Prentice Hall Editorial. ISBN 0137414064. [2] CMMI, 2002. Capability Maturity Model Integration. Software Engineering Institute, Carnegie Mellon University. [3] Futrell, Shafer & Shafer, 2002. Quality Software Project Management. Prentice Hall Editorial. ISBN 0130912972. [4] Hantos, 2000. A Practical Approach to Quantifying Risk Evaluation Results. Xerox Company, El Segundo – California. [5] Marvin J. Carr, Suresh L. Konda, Ira Monarch, F. Carol Ulrich y Clay F. Walker, 1993]. Taxonomy-Based Risk Identification. [6] Mandarax, 2005. Mandarax, versión 3.3.2. The Mandarax Project. [7] Métrica V3, 2000. Metodología de Planificación, Desarrollo y Mantenimiento de sistemas de información. Ministerio de Administraciones Públicas Español. [8] Microsoft, 2002. MSF Risk Management Discipline v.1.1. Microsoft Solutions Framework, Seattle. [9] Rosenberg, L., Hammer, T., Gallo, A., 1999. Continuous Risk Management at NASA. Software Management Conference, San Jose – California. [10] SEI, 2004. Continuous Risk Management Guidebook. Software Engineering Institute, Carnegie Mellon University. [11] TBS, 2002. Risk Management. Treasury Board Secretariat, Ottawa. [12] TeraQuest, 1998. Risk Management Process for Projects. Course material from Liveware IS Argentina. [13] Webster, 2004. Merriam-Webster's Collegiate Dictionary. Merriam-Webster Editorial. ISBN 0877797099.