report on Software Engeneering Conference - Russia, Moscow, November - 2006
Preface
Recently the organization of working process in IT, and especially human aspects, become more different from other industries. Traditional "office" scheme is not optimal now mainly due to drawback of qualified personnel and sufficient growth of salary. This situation cause big software producers use outsourcing schemes and enlist remote workers, e.g. freelancers. Generally speaking the purpose of collecting high qualified employees deals with suggesting special working condition often based upon remote activities. On the other hand it is necessary to organize working process in most effective manner to maximize output of (very expansive personnel). In so doing fuzzy "work-rest" principle of remote work is more convenient in IT then traditional full-time "office" work. The most serious problem of remote work organization is to control employees and to account corresponding work schedule. In this report we will suggest several ideas for organizing "fuzzy" work process in IT and consider simple technique for calculating working schedules based upon mathematics of fuzzy sets.
Approach
Comparison of "traditional" and "fuzzy" work schedule is shown on Diagram. The term "fuzzy schedule" implies being in state of "working" and "not working" simultaneously. (An appropriate example of such work organization will be given in the next topic.) The proportions of "working" and "not working" states are described by membership values µ and 1–µ respectively. The µ value defines perception of the employee of one or another type of activity. This is typical fuzzy approach introduced in the frameworks of possibility theory.
Diagram:
"traditional" (left) versus "fuzzy" (right) work schedule
(circle illustrates 24-hour distribution of membership values)
In traditional "office" scheme the presence of employee in office corresponds to µ=1 and the absence means µ=0. Fuzzy scheme means "background" working when some activity may be done in the rest time. For example thinking (at rest days) about design of developing software can be treated as work with µ~0.2 etc. In this manner "fuzzy" work organizing results from evolving new (probably non-typical) ways and technologies of working process.
It is significant that µ is essentially psychological term and expresses the quantitative measure of subjective opinion of employees. For instance it is naturally that any full-time employee classifies presence in office as "work" (µ=1) and so one. So the membership value µ expresses the opinion of employee concerning his current activity. In other words to define membership values for some working process it is necessary to perform appropriate sociological poll among focus groups of employees. The different methods of pursuance and interpretation of polls are evolved in frameworks of possibility theory.
The mean efficiency of working process is another fuzzy index which can be determined by means of opinion poll among employers or a posteriori by means of calculating correlation between results of work and corresponding working time. We will indicate hour efficiency by symbol η. According to represented model the product of daily (conventional k-hour) work in traditional scheme is equal to
k∙η. (1)
"Fuzzy" scheme gives daily product equal to
(2)
where k_{i} is working time for some (i-th) type of work with corresponding mean efficiency η_{i} and fuzzy membership value µ_{i}.
The values of working time k_{i} in "fuzzy" scheme are connected with µ_{i} by men's psychological and physiological limits. Apparent relationship
(3)
yields very rough estimate for k_{i}. More scientific approach can take into consideration possible spectra of k_{i} distribution and results in appropriate optimization problem: maximization of daily product (2) on condition (3).
The solution (2) of optimization problem is likely to be greater than "office" scheme value (1). Conversion of presented values to employer's money can give thousands and thousands dollars.
Algorithm of developing working schedule
Proposed approach along with typical fuzzy methods provide consequent algorithm of calculating "fuzzy" working schedule.
Evolving new types of activity based on "background" working". Expert groups (employers, heads of projects, top managers etc.) should propose new kinds of technological process. Suppose that some IT project includes (for any employee) a set of N types of work with possible variation of distribution of working time. It is significant that the same purpose can be reached by different working schedule. For example ordinary work in IT project, as usual, can include some part of programming code (i=1), some part of learning (i=2), some part of daily processing correspondence (i=3) and so one (i=4…N_{1}). Work process can be organized as full-time employment for all activities ("office scheme", i=1…N) or (partially) as non-office work. Concerning the example under consideration it is possible to provide the learning activity as remote "background training", to send and receive mail using PDA etc. We have also take into consideration all of such types of work (i=N_{1}+1…N).
Exposure of membership values µ_{i} for each of type of activity. This is the key moment of developing schedule. The only possibility to define membership values is to carry out polls in appropriate focus group of IT employees. The simplest (but not the most reliable) way is to suggest question about direct estimation of membership values (see Graph). It is more preferably to use not qualitative but fuzzy questions ("rather work", "definitely work" and so one).
Graph: Estimating membership values by poll results
Estimating relative efficiency values η_{i}. There are two apparent ways to get the mean efficiency of each working process: appropriate poll among heads of projects and employers and direct analyzing results of i-type work (see below). In any case expert estimate should be took into consideration.
Evolving working schedule. The same experts should suggest trial working schedule for workers consisting of different kinds of activities. Trial schedule results in mean daily hours of i-type work k_{i}. From the practical viewpoint it would be desirable to define a variety of slightly different schedules for different employers in order to obtain additional a posteriori information useful for estimating efficiencies η_{i}. Appropriate inverse problem is expressed by system of linear equations:
, (4)
where j-th equation describes schedule k_{i},_{j }of j-th employee and Λ_{j} is relative yield of work of j-th employee.
Analyzing working schedule. Final step of designing working schedules deals with comparison with corresponding "office" model, i.e. (2) and (3) and analyzing total time of "fuzzy" work schedule, i.e. the left part of (3), and possibilities of increase it.
Example: "background training"
We finish our report by brief introducing one of possible ways of. In recent years training of different kind became an important part of work in IT. Corresponding e-learning technologies use computer as instrument for software education and additional training. This activity can be easily transferred into other forms (with smaller µ) without significant decrease of efficiency (η). In this connection we represent a series of e-learning products for DVD- and PDA- devices along with technology based on Flash and digital video processing. The technology is illustrated in Figure.
Figure: technology of DVD-based e-training
The great part of workers assume that TV-, DVD-, PDA-based activity are "less" work than the same computer-based work. It is necessary that recent DVD-devices have sufficient interactive features for valuable e-training. Consequently the efficiency of DVD-learning is approximately the same as computer-based learning efficiency while the DVD-learning suggests additional possibility for increase of working time because of relatively smaller µ parameter.