A Culture-Centered Multilevel Software Process Cycle Model Silvia T. ACUÑA
Instituto de Informática, Universidad Nacional de Santiago del Estero, Av. Belgrano (S) 1912, 4200 Santiago del Estero, Argentina
[email protected] and Mabel del V. SOSA
Departamento de Informática, Universidad Nacional de Santiago del Estero, Av. Belgrano (S) 1912, 4200 Santiago del Estero, Argentina
[email protected] ABSTRACT In this paper a culture-centered multilevel software process cycle model (MPCM) is presented. This model interrelates the socio-cultural, scientific/technological and paradigmatological environments. The proposed model is composed of three environments made up of the ecological universe, engineering, management, development and evaluation levels which represent the process cycle, and the lines of “what”, “who” and “how”. These lines characterize the processes under development, the profile of the human beings involved and the type of tools used. MPCM considers cultural, social, organizational and personnel-related issues, normally absent in the traditional software process models. This paper focuses in the description of the organization process of engineering level and how this process is developed. A cultural procedure of the MPCM is described in order to model the organization and to determine the capacities or behavioral competencies that a person (user or developer) has to reallocate him/her a role in the software process. The validation performed gives place to a first verification of every two stages (People Capacities Determination and Construction of Conceptual Models) of the cultural procedure of the MPCM. Keywords: Software Process, Organization, Culture-Centered Process, Multilevel Model, Engineering Level, Cultural Procedure, Behavioral Competencies.
1. INTRODUCTION A software process model should come out of the fecund interrelation between the socio-cultural, scientific/technological and paradigmatological environments [2, 8]. In this paper a culture-centered multilevel software process cycle model (MPCM) is presented. This model considers cultural, social, organizational and personnel-related issues, normally absent in the traditional software process models. The general aim of the software process research is to improve the practice of the development of software through [10]: a) improved ways of the organizational design at a level of individual processes and the organization as whole; and b) complementary innovations in the technological support. The technological dimension has been object of investigations and fruitful developments [6]. The same does not happen whit the organizational dimension of incipient development in the software process modeling. Although there has been a historical
lack of relationships between the technological and organizational dimensions for the software process modeling, the situation is changing for a few years [1, 2, 3, 5, 8, 10]. This transition happened when there was an awareness of the importance the socio-cultural environment has in the origin, development, application and evaluation of the high quality software products. In this article, we address the following subjects: a) how to model the organization and b) how to determine the capacities or behavioral competencies that a person has to reallocate him/her a role in the software process. In addition, the validation accomplished to verify the feasibility of the People Capacities Determination and Construction of Conceptual Models stages are introduced. This validation allows a first verification of the cultural procedure of the MPCM to be done.
2. MULTILEVEL PROCESS CYCLE MODEL The MPCM is based on the organizational culture [2]. This model interrelates the socio-cultural, scientific/technological and paradigmatological environments. The socio-cultural environment is where the software products are conceived, applied an evaluated. The scientific/technological environment is where the teleological, political and decision-making dimensions are developed. The paradigmatological environment is where the process cycle is produced and developed. The MPCM is represented in figure 1. The model proposed is formed by the ecological universe, engineering [2], management, development and evaluation levels and by the “what”, “who” and “how” lines, which characterize the processes under development, the profile of the human beings involved and the type of tools used. The characterization of the MPCM is detailed in table 1.
3. ENGINEERING LEVEL: ORGANIZATION PROCESS AND CULTURAL PROCEDURE This paper is centered on the engineering level and its relationships with the ecological universe and management levels. A cultural comprehensive procedure for the realization of the engineering level is developed by considering the process taking part in it. This process is decomposed in: What is done?; Who does it?; and How does it do it?
What is done? The activities made by the Organization Process in order to transform input documents into output documents are detailed in table 2.
W H O
E N G IN E E R
EN V
O
NM
ACCEPTA BI
WA FT SO
T OJ EC
VA L IDATI ON
SO F TWARE ELS EL O PMENT MOD
WA FT SO
IC M STE
SY CO
SP E ECI AR PR FIC SOFTW LS OCESS MODE
HO W
GE SS NE CE RIC SOFTWARE PRO MODELS
E
PA R
TO OLS
PR O
RE
PR
C ES S PR O
LUE S
US ER PA R TI CI P
AL
ORG AN IZA TI ON PROBLEM S DISCO AND VE A RY PP D
UR
RE
VA
DE V
Q
IA
CE S S
A L U A TO EV
AD
I GM
ATOL IRO O GICAL EN V
VIRO NM ENT
TY LI
LIT Y UA C RITE R R
S OCI O - C ULT
GO AL E VE LOP E R SA N D IO AT D
ATION AL ER OP O NS ND IS I EC
AT WH
M AN AG E R
EN AL
N TIO CA IN LI MA O
Who does it? A main team (eco-systemists, process engineers, psychologists, direction, representative employees) and a support team (sociologists, market analysts, advertising agencies) are recommended to perform the activities of this process.
SC
IE N SOFT TI WA RE FI C EN GI NE T AIM E SA ND OB JE CT
IC E ENGINEERIN OG LEDG G OL KNOW HN ONS EC G ECISI N CD AS PE R GI RI TE RA CTICAL ST D TA AN NS LE V E L ES SIO IV CI DE
IR
E C OSY STE M IST
T EN
EN NM
T
The outputs Problem Model, Process Model and People Model conforms together the Current Organization Model and on the other hand the output Activities and Roles Model conforms the Future Organization Model. Both constitute the Organization Model.
LEVEL REFERENCES
ECOLOGICAL UNIVERSE
ENGINEERING
DEVELOPMENT
EVALUATION
How does it do it? The Cultural Procedure is proposed to model the organization and to determine what capacities the people involved in the process model have. In this modeling procedure, the Ecological Universe Specification is considered input. It is a full description of the organization and its environment as well (organizational, functional and behavior structure). The output is made up of two models, namely: the Current Organization Model and the Future Organization Model. The different stages of the Cultural Procedure and their products are shown in figure 2.
MANAGEMENT
Figure 1. Culture-Centered Multilevel Process Cycle Model
The engineering level consists of the Organization Process, which models the organization. This process involved in the engineering level and its cultural procedure are described below.
The description of the different stages of the Cultural Procedure are included in table 3. Below it is described the validation of the last two stages of the Cultural Procedure which may be performed in any order.
Table 1. Characteristics of the MPCM levels
Level Ecological Universe Engineering
Objective To contextualize and conceptualize To explain
Management
To organize
Development
To apply
Evaluation
To evaluate
What Identify, understand and describe to socio-cultural characteristics Design, build and improve generic software process models Manage specific software process models Design, build and improve the application software Quantitatively and qualitatively value the process and the product
Who Eco-systemists
How Cultural Procedure
Process engineers Process managers Process developers Evaluators
Cultural Procedure Process Model Procedure Management-Oriented Methods Specific Methods Evaluation Methods
Table 2. Activities, input and output documents of the Organization Process
Input documents Ecological Universe Specification - Socio-cultural characteristics - Political-legal characteristics - Nature of the available human resources - Technological aspects - Ecological: quality and perception of the environment. Historical Organization Records
Activities - Essential Information Extraction - Study of the Organizational Domain - Formulation of the Relevant Processes - People Capacities Determination - Construction of Conceptual Models
Output documents Organization Model Current Organization Model - Organizational structure, culture identification and description achieved development degree, future aspirations, etc. - Identification of relevant problems and of people connected to problems-owners. - Organization technologies. Future Organization Model - Attitudinal, structural, and procedural changes. - Cultural changes. - Organization requirements.
Elicitation of the Ecological Universe
Ecological Universe Specification CULTURAL PROCEDURE Stage 1: Essential Information Extraction Cultural Characteristics Validation
Relevant Characteristics Stage 2: Study of the Organizational Domain Problem Model Stage 3: Formulation of the Relevant Processes
4. VALIDATION OF THE MPCM CULTURAL PROCEDURE A tool has been designed in order to: a) create the conceptual models which indicates the way each relevant transformation process may be performed; and b) determine the behavioral competencies or capacities that a person (user or developer) has in order to assign him/her a role within the software development process. Firstly, the organization considered in the validation will be described; secondly, the performing of stages 4 (People Capacities Determination) and 5 (Construction of Conceptual Models) of the Cultural Procedure will be detailed. Lastly, the results of the study case will be analyzed.
Process Model Stage 4: People Capacities Determination People Model
Stage 5: Construction of Conceptual Models Activities and Roles Model
4.1. Background for the Validation In the National Institute of Agricultural Technology organization, Experimental Station Santiago del Estero (EEAINTA), Argentina, an organizational study has been carried out so as to show the culture and its development degree [2].
Figure 2. Stages and products of the Cultural Procedure
Stage 1: Essential Information Extraction
2: Study of the Organizational Domain
3: Formulation of the Relevant Processes
4: People Capacities Determination
5: Construction of Conceptual Models
Table 3. Cultural Procedure Description This step starts at the Ecological Universe Specification obtained while the Ecological Universe Elicitation Process. Its aims is to analyze the information giving neither functional nor cultural characteristic away from the Ecological Universe Specification, and to make explicit that implicit information needed to understand those characteristics within the Ecological Universe Specification. The information from the Ecological Universe Specification together with the implicit one makes up the Relevant Characteristics, which in turn are the output of this stage. The aim of this stage is to obtain a global specification of the structure, the processes and the behavior of the organization concerning its environment and the organization itself. The elements that constitute the problematic situations in the organization domain are structured by means of two activities: one of analysis and the other of synthesis. The former considers the information coming out of the elicitation techniques while the latter uses the Rich Picture technique [7] (organizational domain free-expression drawing). The output of this stage is the Organization Domain Concepts Dictionary and the Rich Picture, both make up the Problem Model. The aim of this stage is to define a concise model which represents both the static and dynamic parts of the relevant process of the organization. From this Problem Model, potential processes such as “candidate to problems” or relevant processes are identified and potential solutions are tried as well. Such solution implies a change in the social reality of the organization and it is expressed through the basic or radical definition. The radical solution is a textual specification of what is and how must be a relevant process. The descriptive information is the static part of the radical definition and it contains the structural properties of the information the organization will use. The descriptive information of the dynamic part of the radical definition states interactions that transform the information mentioned above. The Process Model is the output of this stage. The Process Model is used for the construction of the Preliminary People Model. To determine what capacities or behavioral competencies are associated with the people involved in each process, techniques such as the Radical Definitions Views Analysis [7], Questionnaires, Personality Tests [4], etc. are used. All the lists obtained during this stage are called People Preliminary Model. This model will be validated later, giving rise to the People Model. Out of the Process Model, the Activities and Roles Model are constructed. To define it, it is necessary to determine the activities the process should perform to fulfill the radical definition and the set of associated roles requirements. The Activities and Roles Model obtained after this stage is also called Conceptual Models. The output of this stage is the Activities and Roles Model.
In addition, the current organization model has been built by using stages 1-3 of the Cultural Procedure [2]. In the analysis of the results obtained in the qualitative research made on the members of the organization, it was determined that the relevant systems “problem candidates” of the organization are: a) Organization Image System; b) Service System; and c) Organizational Management System. In this research it was decided to develop the last two systems, following stage 4 (People Capacities Determination) and stage 5 (Construction of Conceptual Models) of the Cultural Procedure and the MPCM proposed products and activities. But with a peculiarity, in the Service System the users are involved at random as established by the members of the user’s organization together with people from the EEA-INTA. While
in the Management System users are distributed according to their capacities in a role, Service System and Organizational Management are chosen for this work, because when dealing with these system problems we inevitably get into the other difficulty of the EEA-INTA. Nowadays the capacity to satisfy the service demands, in quality and quantity, and its management are inadequate. For both systems we developed the following base definition: “Transform the centralized system of service and organizational management in a distributed and participating system, that includes small and medium growers, agricultural cooperatives and extension groups, through automated advice activities that benefit both sides”.
4.2. Construction of Conceptual Models in Action Based on the definition given before, in the “Strategic
Assumption Surfacing and Testing” [7] technique and in personal conceptual models of the organization members, for example, the following conceptual model was developed (figure 3). For each conceptual model activity (figure 3), the following questions were answered. Is this activity done at present? And if so, how?
play a dominant role [4]. In this section, a list of general capacities is presented. These capacities are exclusively referred to the characteristics or skills of a person's general behavior in his/her role in the process, independently of other aspects as the control of technological elements or specific knowledge. They are definitions of capacities affecting the group of professionals of an organization not taking into account position or functional area. Capacities of the defined list are given to each of the processes in a software process model [3, 4].
4.3. People Capacities Determination in Action Several dimensions and attributes may characterize culture. Among the latter, people capacities or behavior competencies
UNDERSTANDING OF SERVICE SYSTEM (i) Know service demand and user's expectancies
(ii) Determine the existence of technicalagricultural decision support systems
(iii) Establish permanent transformation and select appropriate communication and group work techniques
(iv) Choose appropriate tools and methods for distributed advising (v) Establish knowledgebased decision support systems for key cultivation
(vi) Set measures of performance for this system (vii) Monitor and control the system MONITOR & CONTROL SYSTEM
SYSTEM TO IMPROVE QUANTITY AND QUALITY OF SERVICES
Figure 3. Conceptual model of Service System of Santiago del Estero EEA-INTA
The capacities allow a respective role to achieve efficiently its activities so as to be able to have, on the long term, an identification and homogenization of the basic or really important values of software development organization and a precise identification of those involved in the quality management of product, software process and organization. According to Acuña et al [4], with an approach integrating functional theoretical elements with cognitive elements, twenty general capacities have been defined and classified, validated in the ACM frame (Assessment Centre Method). These capacities are classified in five categories. This classification is based on acquisition levels of the different skills in the professional evolution process of the members of the software development organization. The categories considered are [4]: Metaskills, Betaskills, Operative skills, Interpersonal skills and Manager skills. This type of classification is important at the moment of defining human potential evaluation processes, designing development plans and improving people to performance involved in the software process and in choosing a life cycle adequate to the organization human resources skill. In table 4 the categories mentioned above and their associated capacities are listed. These capacities are allocated to each one of the processes of the software process model taking into account success criteria for their achievement as is shown in the table 5. These capacities are classified into three different levels: high (H), medium (M) and low (L). Two different parts make up the tool to determine the capacities of the people: 1) an
intelligence test, Raven’s Progressive Matrix Test [9]; and 2) a focused interview. The second part is a projection test where you have a group of questions so as to have “flash-backs”. In this way we verify each of the capacities detected in a focused interview. The objective of the interview is the correct and detailed identification of the critical capacities that a person must have to perform a determined role. The result is a list of behavioral competencies or capacities that a person has. The role is allocated to the person that has greater number of capacities according to those foreseen in table 5. 4.4. Results on Tool Application and Evaluation Criteria The EEA-INTA chose six people to collaborate in the development of the two systems to automate. We shall name these people A, B, C, D, E and F and that have the following positions in the organization: Personnel Manager, Manager Secretary, Purchase Manager, Service Engineer, Trainer and Customers Office Employee. A, C and D join the Service System development process in the roles of: Knowledge Analyst, Planner and Trainer respectively. B, E and F undergo the foreseen tests to detect capacities. A criterion is followed that a user can join the development process to cover a role, if the number of his capacities covers the 80% or more of those stated in table 5 for that role (coincidence degree). Table 6 shows the results obtained and the assigned role in the development process of the Organizational Management System. We must state here that the test is given by a Work Psychologist.
Table 4. Categories of the capacities
Categories
Description
Capacities
Metaskills
Betaskills
Operative skills
Interpersonal skills
Manager skills
Behavioral competencies or skills of an elemental general type basic to the individual. They become a preparation for an efficient performance as a future professional development.
Behavioral competencies or skills which are necessary for the adaptation and his/her professional evolution within the structural organization.
Behavioral competencies or skills which are related to the success in the tasks that assume an interpersonal contact with other people. Generally, these types of skills are closely related to efficiency in social contact positions.
Behavioral competencies or skills necessary to manage other people within the organization, orienting the performance in different levels or stages of supervision and with different responsibility levels.
- Problem analysis - Decision - Independence - Judgement - Stress tolerance
- Environment knowledge - Innovation/ creativity - Perseverance - Risk aversion
Behavioral competencies or skills related to the efficient performance. They are operative efficient skills when the professional works in a personal and individual task or project. - Self-organization - Discipline - Environmental approach
- Customer service - Negotiation capacity - Customer orientation - Sociability - Team work/Cooperation
- Collaborators evaluation - Group leadership - Planning and organization
Table 5. Capacities and roles by a software process model subprocesses [4] CAPACITIES
Q u a lity Assurance Engineer
M M
M M M M M
M
M
H
M M M M
H H H H
M M
M M M M
H H
L L L
M M M M M M
H H H
M M
M M
M M M M
M M M M
M M
M M
M M M M
H
M M
Dom ain Analyst Feasibility Analyst
M M
L H
M M M M
M M
System Analyst Knowledge Analyst Requirem ents Specificator
M M M
L L L
M M M
M M M
Designer Im plem e n t a t i o n M a n a g e r
M L
M M
M M
M M
M M
M M M M
Installation Manager System O perator M a intenance Manager Retirem e n t M a n a g e r
L L L L
M M M M
M M M M
M M
M M M M
M M M M M M M
L L
M M
M M
M
Configuration Manager
M M
M M M M
Docum entalist Trainer
L L
M M
M M
M
M M M M
M M
M M
M M
M L
M M
M M
M M M M
M M M M
M M M
H H
Validation and Verification Manager
Team Manager Knowledge Engineer
M
H M
M M M
M M M
M M M
M M M
Managing Skills
M M M M
H H H H
Planning and organization
Team Work/Cooperation
Sociability
Customer orientation
Negotiation capacity
Customer Service
Environmental approach
Discipline
M M
Role Allocation Engineer
Self-organization
M M
Risk aversion
H H
M M M M M M
Perseverance
M M
M M M M M M M
Interpersonal Skills
Group leadership
Monitoring and Control Engineer
Innovation/creativity
M
H H M H
Stress tolerance
H
Judgement
M
Planning Engineer
Operative Skills
Collaborators evaluation
Software Engineer
Independence
SLCM PROCESS PROJECT MANAGEMENT PROCESSES Initiation, Planning and Estim ation Process Project Monitoring and Control Process Software Quality Managem ent Process Person to Role Allocation Process SOFTWARE MODELLING PROCESSES EXPLORATION PROCESSES Dom ain Study Process Feasibility Study Process CONCEPTUALIZATION PROCESSES System Analysis Process Knowledge Analysis Process Requerim ents Analysis Process FORMALIZATION PROCESSES Design Process Im plem e n t a t i o n a n d I n t e g r a t i o n P r o c e s s UTILIZATION PROCESSES Installation and Acceptance Process Support and Operation Process M a intenance Process Retirem e n t P r o c e s s INTEGRAL SUPPORT PROCESSES QUALITY PROTECTION PROCESSES Verification and Validation Process Configuration Process TECHNOLOGICAL TRANSFER PROCESSES Docum entation Process Training Process COMUNICATION PROCESSES Teamwork Conform ation Process Inform a t i o n a n d K n o w l e d g e A c q u i s i t i o n P r o c e s s
Decision
ROLES
Problem analysis
PROCESSES
Betaskills Environment knowledge
Metaskills
H H H
M
H
H
Table 6. Users/Collaborators distribution according to capacities Name
Raven Test
Detected capacities
Role
Coincidence degree
E
P 90
Quality Assurance Engineer
83,3 %
F
P -75
Requirements Analyst
100 %
B
P 50
Problem analysis – Independence – Judgement – Stress tolerance – Environment knowledge – Perseverance – Risk aversion – Discipline – Environmental approach – Negotiation capacity – Customer orientation – Teamwork/Cooperation – Collaborators evaluation – Group leadership – Planning and organization Problems analysis – Decision – Independence – Stress tolerance – Discipline – Environmental approach – Customer orientation – Negotiation capacity – Sociability – Teamwork/Cooperation Decision – Independence – Self organization – Discipline – Environmental approach – Customer orientation – Team work/Cooperation
Documentalist
87,5 %
The proposed criteria to validate the MPCM according to users participation are:
•
Abandonment Level: Users percentage that in the first month of participation decide not to take part in the project.
•
Achievement Time: Variation in less, in percentage, regarding the planned time.
•
Participation Level: Medium percentage of fulfillment of the allocated tasks on the people fulfilling their role until the end of the project.
•
Potential Involvement Level: Medium percentage of willingness to participate in an experience of similar characteristics among the users that fulfill their role until the end of the project.
The result of the validation is shown in table 7.
Criterion
Table 7. Validation results Users involved at random
Abandonment level Achievement time Participation level Potential involvement level
We must point out that the roles of the team members of the developing organization (medium size) for the two projects were their current roles. In both projects the capacities-centered integral process was used and, as we have already described, we worked in one with users playing the role or roles of his preference and in the other project considering his capacities for the role distribution.
5. CONCLUSIONS The MPCM and Cultural Procedure conform and adequate framework to develop capacities-centered software process models. The practicability of such a framework involves a longterm strategic planning within the organization in order to obtain results. The model obtained favors the users (engineer, manager or developer), comprehension and direct communication, of the process in relation to the model aspects considered: “what is done” and “who is doing it”. This model assures the modeling and recovering of all the influential elements of the software process (processes, activities, products, people, roles, capacities) by means of an integral and adequate procedure. Once the qualitative and quantitative research is finished it is possible to determine: a) the organization culture: cultural aspirations, cultural realizations, and cultural attributes. The designed validation and the instrument used in it make possible the validation of the MPCM at the level of the “who” of the software process. The human capacities specification allow the execution of the adequate processes to the capacity of the human resources organization. We follow in the research trend here established by means of the development of a tool that automates the MPCM and Cultural Procedure proposed.
6. REFERENCES [1] S. T. Acuña and N. Juristo, “Software process model for KBS development”. The Journal for the Integrated Study of
33,3 % 40 % 50 %
Users involved according to their capacities 0% 5% 90 % 66,6 %
Artificial Intelligence, Cognitive Science and Applied Epistemology. CC-AI 13, 4 (1996) 1-39. [2] S. T. Acuña and G. Barchini, “The socio-cultural environment in the software process modeling”. Proceedings of the 19th International Conference of Chilean Computer Science Society, IEEE Computer Society (November 1999) 216227. [3] S. T. Acuña, M. Lopez, N. Juristo, A. Moreno, “A process model applicable to software engineering and knowledge engineering”. International Journal of Software Engineering and Knowledge Engineering 9, 5 (1999) 663687. [4] S. T. Acuña, G. Barchini, C. Laserre, A. Silva, M. Sosa, V. Quincoces, “Software engineering and knowledge engineering software process: Formalizing the who’s who”. Proceedings of the 12th International Conference on Software Engineering and Knowledge Engineering (July 2000) 221-230. [5] E. Ellmer, “Extending process-centered environments with organizational competence”. In Lecture Notes in Computer Science, Software Process Technology: Proceedings of the 5th European Workshop 1149 (Springer-Verlag, 1996) 271-275. [6] J. Finkelstein, Kramer and B. Nuseibeh, Software Process Modelling and Technology. (Research Studies Press, 1994). [7] R. Flood and M. Jackson, Creative Problem Solving: Total Systems Intervention (John Wiley & Sons, 1991). [8] A. Fuggetta, “Software process: A roadmap”. In The Future of Software Engineering, Ed. A. Finkelstein, (ACM Press, 2000) 27-34. [9] A. Guth Aguirre, Reclutamiento, Selección e Integración de Recursos Humanos. (Trillas, 1994). [10] P. Kawalek and D. G. Wastell, “Organisational design for software development: a cybernetic perspective”. In Lecture Notes in Computer Science, Software Process Technology: Proceedings of the 5th European Workshop 1149 (Springer-Verlag, 1996) 258-270.