2015年10月24日土曜日

Participant observation of job search



Introduction
 I engaged in job hunting in Japan after completing the curriculum of a social anthropology program (MSc) of a university in the UK. As I had worked as a software engineer before studying anthropology, I looked for engineering jobs while I tried to find opportunities to use anthropology in those positions. As I could find a job, I would like to analyze the process of job search with an anthropologist’s eye. Note that this post is based on my own experience so it is not generalizable to job search in Japan.
 I came across a conversation of different practices of recruitment when I was in London. I heard some aspects of the tactics of job seekers and employers. Job seekers in London, I heard, boasts job offers from other companies to win better conditions. A friend from Kyrgyz said such kind of conduct is inconceivable in her country. I thought it will also be regarded as impolite in Japan. It is only one expression of differences.

Settings
-Players
 The main players are job applicants, employers and recruitment agencies. The employers are not monolithic especially if they are large in size but here I will not delve deeper into that as I do not have enough information. Recruitment agencies contact prospective applicants, often via career change web sites, which are also important material settings, and mediate the relationship between employers and applicants. Those agencies are mainly for experienced workers in Japan. They get fees from employers when applicants accept offer from them. They often get additional fees when applicants-turned-employees continue to work in the company for some time, like one year. Usually applicants themselves have to pay nothing for the agencies. I also relied on those agencies in my job search.

-Application and screening process

 Employers in Japan, as well as in other countries, use several methods to screen job applicants: internship, exams, interviews, and documents. The process depends on resources and policies of the companies. Internship may be the best method if they want to check how the applicants will work, but it is often too costly both for employers and applicants. Even in internships both parties may behave to make themselves more attractive than they actually are. Other methods use much more limited information to judge each other. Almost all companies ask applicants to submit CVs and hold interviews in the recruitment process. Exams are various. Some companies use multiple-choice test to measure basic skills or aptitude for the job of applicants. Other companies do not have exams. Some positions for software engineering require programming tasks, which give employers information of the applicants’ programming skills.

Signaling

 Just as Geertz (1973) defined culture as “a historically transmitted pattern of meanings embodied in symbolic forms”, not only sentences but also nonverbal expressions and how words are expressed matter as symbols of something else. This particular culture of recruitment process is influenced by time constraints as well as the logic of market economy and “Japanese culture” as a whole. Because decision making depends on limited information and has to be done in comparatively short time, both parties try to know what is relevant for them from the communication. What is communicated during the application and screening process works as sign of what they really want to know. For example, applicants in Japan often wonder whether they should write CVs manually or using computers. (It was taken for granted in the UK that applicants use word processors.) Different employers may have different impressions depending on how CVs are written. While handwriting is time-consuming, some employers prefer it because they think it conveys personality of the applicants and regard it as a sign of their willingness to work for the companies. If there is a gap on the rules of communication, it is likely to lead to negative evaluation of each other.
 Signaling is also relevant in interviews. Nervousness often gives negative impression since it may reflect lack of confidence in what they say. A consultant of a career agency told me to talk concisely even if it diminishes information. His advice was based on an assumption that interviewers cannot remember everything and what matters is what they remember after the interview. The situation may be different if interviews are recorded but usually they cannot spend a lot of time for each applicant. He also said logical consistency is usually irrelevant in job interviews. It was somewhat surprising for me and a document from another agency says applicants should be coherent. One possible explanation is that I was already conscious about consistency and that is enough for interviews in which interviewers cannot spend a lot of time in discerning consistency. I thought preparation for job interview as resource allocation problem. Thus I focused on other aspects of the interview.
While compensation and working hours are important factors for applicants when they decide which company to work, it is usually seen as inappropriate for applicants to ask questions about those matters. Those questions may signal the employers that the applicant is mainly interested in his or her personal benefit, which is regarded as undesirable even in market economy. But both employers and agencies know that applicants are interested in how they are treated. Instead, they have to wait interviewers mentioning them or they may ask them through recruitment agencies. Even when I communicate with agency consultants, I justified my mention to those conditions by referring to more acceptable concerns like health and opportunity of challenging tasks. While it is legally obligatory to disclose salary level at least when employers issue offer letter, it is not about expected working hours so it is sometimes difficult to obtain information about them. If employers and recruitment agencies are reluctant to disclose information, applicants may expect hard work. Thus applicants also make use of signals. Another consultant told me if an employer or a career agency urges applicants to make decisions immediately, it is not a good one.
 The applicants are expected to focus on contribution to the employers. So the applicants try to explain what they can do with their present skills. It is basically the same as other negotiations to win contracts. What is different is that as employment is a long term relationship, the applicants also emphasize what they want to do in the future. But it is easy to say what they want to do or want to be. So interviewers try to discern whether the applicants have the potential and the determination to be such persons by how they relate their past experience with the future vision.

Relations

 Anthropological accounts are full of references to alienation in market economy. Ho (2009) characterizes the relationship between Wall Street investment banks and their employees as “two-way lack of obligation” while she did not ignore cultural aspects of the workplace. Meanwhile, others point out that complete disentanglement is impossible (Miller 2002; Holm 2007). Practices around recruitment and job transfer in Japan is also a place where the logic of market transaction and that of attachment coexists in particular manner.
 Legally speaking, corporations have the right to decide whom they employ or not. Applicants also have the right to decide where they work. However, it does not mean that both parties have special feeling toward each other. Indeed, I felt attached to some companies and had to justify my decision (both to the companies and to myself) to decline offers by reference to priorities I had set in advance. In addition, I thank those companies and want to contribute to them by introducing prospective applicants.
 Consultants of recruitment agencies are in special position in its relation with applicants (and maybe with corporations). I felt blue several times after interviews in which I thought I did not do well. I often talked about my failure – nervousness, clumsiness, inconsistency of my reply, and so on – to them. Then they often encouraged me and urged me to be confident. While I appreciate their encouragement and advice, I felt somewhat perplexed although I could not explain my feeling at that time.
 Now I think they engaged in some kind of affective or “emotional labor” in that it “calls for a coordination of mind and feeling” (Hochschild 2003[1983]: 7), although it does not necessarily accompany facial expression in the original definition. While evocation of certain mental state is presented as service, it should not be represented as commodity purchased in markets. If customers (job applicants) imagine so, it would be less effective. Once I was told that if I deserve to be employed. I could neither take this remark at face value nor dismiss as flattery. From the viewpoint of consultants, they face some kind of “double bind” (Bateson 1972). If they say nothing, applicants’ mind would not change. If they say something, it may be taken as remarks for business purpose. And in most cases it is inappropriate to have lengthy explanation about the dilemma they are facing. It is inevitable as we cannot eliminate the context of business interest from our relationship. Although the relationship between consultants and job applicants is less unequal than those between domestic workers or sex workers and their clients, which the word emotional (or affective) labor is often applied, the relationship is asymmetrical. They need some kind of discipline, but it is different from the one needed in other occupations. First, it is not calculative. In addition, unlike futures traders’ (Zaloom 2006), it is represented as something that is desirable outside business.
As a job applicant, it is easy for me to separate business and personal matters. While I felt obliged to do something for them in return for their service, what I thought I can do is to introduce my friends to them, which purely contributes to their business interest and does not satisfy their emotional needs. While I thought it is possible to build personal relationship with them, it is so even if I cannot benefit them in business. The only reason that it is more or less difficult for me to handle those relationship is that I am conscious or even over-conscious about the dilemma the consultants face. Despite my education of anthropology, which is often critical about market logic, I could not eliminate calculation from my thinking even when I think about contribution to others.

Ontology

 While job interviews are primarily the opportunity for employers to assess applicants, it is also true that applicants can use the setting to assess companies. The career agencies I had contacts with emphasized both aspects, although with greater emphasis on the first. While it may be true as long as job market exists, actual attitudes of applicants and employers depend on how they think about possible alternatives. If unemployment rate is high and the applicants does not have skills which are highly evaluated by potential employers, they may make more efforts to be attractive to employers even if it is not what they like to do. Thus the judgement by the job market may be perceived as absolute and what they can only do, they think, is to conform to the absolute law of the market like that of nature and discipline themselves according to the “law”. During my job search in the UK I felt that the result of the screening is something that I cannot control and I did not think that I was choosing a company. But I neither have fatalistic view nor thought I have to completely reshape myself to get a job partly because I had another option to work in Japan. (It does not mean there is no room for agency even in severe conditions. For example, applicants with philosophical or anthropological education may remember Foucaultian argument of discipline and try to resist the temptation to internalize the logic of “the system”.)
 As far as I am concerned, changes I was told by the consultants to undergo was merely on superficial or technical level: how to express future prospects and experience in my previous career or to eliminate anxiety. Even if I could not pass the screening process, it was regarded as lack of chemistry between the company and me (and basically not my fault). It is quite different from those demanded for graduate job applicants, at least at discourse level. Job search manuals in recent years in Japan ask those students to thoroughly examine self and find out who they really are and they introduce various specific techniques for that purpose (Makino 2011). Whereas those techniques are represented as means to “discover” self, it requires particular attitude toward the self. But there is the other side: there is screening process before the applicants are registered to the agencies. Not all prospective applicants can get assistance from the agencies. Some agencies are explicit on that. While it is a rite de passage and almost compulsory for students to adopt certain kind of “technologies of the self” (Foucault et al. 1988), lack of re-formation of self is a result for those who have already acquired discipline in everyday working practice.

Conclusion

 In this short essay I outlined several aspects of job search and recruiting process. There exists particular kind of codification of verbal and nonverbal messages. Each party tries to obtain information on each other under the system of meaning. While both applicants, corporations, and recruitment agencies pursue their own purpose, they do not simply rely on calculation but they have to deal with various emotions. Sometimes it is actively embraced and in other cases it has to be eliminated from decision making process. People also have particular idea about more abstract concept such as job market and the self. Briefly comparing job search of experienced workers with that of students, I extracted invisible presuppositions.
 Relationship between the system of meaning and perception is not clear here. While I treated discourse system as independent of other aspects of the process, it is highly conceivable that use of particular discourse and bodily practice has impact on formation of self and how people think about relationship with others and the world as a whole. It may depend both on psychological process and culture. This aspect is left for future exploration.

Bibliography

Bateson, G. (1972). Steps to an ecology of mind: Collected essays in anthropology, psychiatry, evolution, and epistemology. University of Chicago Press.

Foucault, M., Martin, L. H., Gutman, H., & Hutton, P. H. (1988). Technologies of the self: A seminar with Michel Foucault. Univ of Massachusetts Press.
Geertz, C. (1973). The interpretation of cultures: Selected essays. Basic books.
Ho, K. (2009). Liquidated: an ethnography of Wall Street. Duke University Press.
Hochschild, A. R. (2003). The managed heart: Commercialization of human feeling, With a new afterword. Univ of California Press.
Holm, P. (2007). Which way is up on Callon. Do economists make markets, 225-243.
Makino, T. (2011). Jiko keihatsu no jidai [Self development]. Keiso Shobo.
Miller, D. (2002). Turning Callon the right way up. Economy and society, 31(2), 218-233.
Zaloom, C. (2006). Out of the pits: Traders and technology from Chicago to London. University of Chicago Press.

2014年9月10日水曜日

合理主義の人類学

はじめに

これから文化人類学、社会人類学を学ぶ予定であるため、現時点での自分自身の考えをまとめておく。現実には未確定な部分は多いが、ビジネスやエンジニアリング、場合によっては科学にかかわる人の思考や行動を分析したいと考えている。

現代の組織、企業や役所、研究機関などは、それぞれ目的を持っていて、自らの資源によってその目的を達成することを仕事としている。例えば企業の場合、ステークホルダーとの共存共栄や社会貢献などもあるが、基本的には利益を上げることが目的となっている。従業員個人としては別に目的を持っているとしても、組織の一員としては利益に貢献することを求められる。

ここでの合理主義とは、目的を設定したうえで、自らの行動を目的達成の手段として位置付ける考え方、としておく。利益のような数字にはっきり現れるものでも、そうでなくても、目的を達成する上では事象のモデル化や評価、広い意味での計算が必要であるが、目的を所与としても、論理だけですべきことがすべて決まるわけではない。逆に言うと、(あいまいな言葉ではあるが)「文化」が発生する余地がある。以下に挙げる問題は論理だけで決まる問題ではなく、そのために個人や組織によって異なる方法論やプラクティスが存在すると考えられる。

「計算」の諸問題

可能性の探索

個人や組織は判断に必要な情報をすべて持っているわけではない。なので調査やブレインストーミングなど情報を取得し、整理する活動が必要になるが、それ自体コストがかかるものであり、また情報の有用性は通常情報を得た後でないとわからない。何をどう調査するかをどのようにして決めるのか。過去の経験などを参照して可能な限り論理的に調査しようとする努力には価値があるかもしれないが、経験を生かそうとする場合は、検討対象となっているケースに過去の経験は当てはまるかという同定の問題が生じる。

多数の選択肢から選ぶ

数社の中から発注先を選ぶ、というのであればあまり問題はないが、さらに複雑なケースもありうる。買い物をする場合、各商品をいくつ買うか(買わないか)という選択を考えるだけでも、各商品の選択が独立でない場合、例えば商品Aについての選択が商品Bについての選択に依存する、といった関係が多数ある場合は人間が比較可能な範囲を超えてしまう。そうした事態を避けるため、明示的、暗黙的なルールはあるかもしれないが、ルールはどのように決まり、どう運用されるのか。

例えば、可能性の探索や選択の過程のどこかで、占い師に相談して決めるというのは、不合理とみなされる場合が多いと思われるが、それによって個人や組織が決定にコミットでき、その後のプロジェクトがスムーズに進むというのであれば、後述するコミュニケーションも含めた全体として考えた場合あながち不合理とはいえない。

他者とのコミュニケーション

コンテキストの形成

ほとんどの仕事は一人でできるものではなく、他の人とかかわりながら行うものである。上司と部下のように上下関係があるものもあれば、プロジェクトメンバー同士のように役割が異なるものの対等に近い関係、コンサルタントとクライアントのように組織をまたがる関係も存在する。ただ、個人の側から見た場合、どのような関係であっても相手を(人として敬意を払うにせよ)自分のために動いてもらう存在、と見ることはできる。以前会社で上司が部下に対して自分を使えと言っていたことを聞いたことがあるが、部下であっても上司からアドバイスをもらったり、キーパーソンにつないでもらったり、会議の場でフォローしてもらったりなどいろいろ「利用」する方法はある。

各個人も組織と同様に目的を持ち、合理的に行動している存在だとすれば、他者との関係は「道具的」(instrumental)になるのが自然である(Bateson 1972)。つまり、相手を自己の目的のために働きかけ、利用する対象と考え、その範囲内で自ら学習を行う。この道具的コンテキストで考えることが妥当な場合もあるかもしれないが、多くの場合、こうした関係だけが組織を支配しているわけではない。業務上の関係から出発したとしても、個人間の友情や愛につながり、目的-手段とは別のコンテキストが現れることもある。もっとも、業務上の関係も続いている場合、この合理性を超えた「我と汝」(Buber)の関係は目的達成を至上命題とする組織にとってはプラスにもマイナスにも働きうるものであり、組織の側でどう扱うかは課題となりうる。他の形の関係も考えられる。例えば、上司は道具的に、部下はパヴロフ的(宿命論的)に考えているような場合、上司は自分の指示への反応によって対応を決めようとしているのに対し、部下は自分が何をしても上司の行動に影響を与えられないと考え、(部下から見て)いつ来るか予想できない上司の制裁におびえるという状況である。

また、大きなコンテキストとしては道具的であるにせよ、チームとして活動するにあたり、自らを、またチームメンバーを一時的に対象に没入させることもある。心理学で「フロー」と呼ばれる状態はおそらくこれにあたる。合理主義的計算をゲームとして楽しんでいれば、道具的コンテキストとフローは両立するし、目的達成のために特定の心理状態を作り出すことができれば、そこでもフローが発生する。実際にどのような形をとるのかは検討の余地がある。

意味の解釈

他者との間で何らかの関係が成立している場合、情報のやりとりが行われるが、その情報が何を意味するかが常に明らかなわけではない。次の行動に移るに十分な程度に意味を解釈できなくてはならない。例えば、会議でビジネスプランについての調査結果が報告される場合に、通常は質疑応答が行われ、応答内容によって、さらには声の調子や身振りなどによって報告者が実際には何を考えているか、報告が判断材料としてどれだけ有用か、また報告者のスキルや性格、体調や精神状態といったメタ情報の判断材料になったりする。

道具的コンテキストで考えている場合、相手は機械とあまり変わらないので、近似として人間-機械から成るシステムで考える。人間が何か入力すると機械は出力を返すが、人間が予想しない出力が返ることもある。人間に予測できないのにはいくつか理由があるが、まず機械には人間が知らない仕様があり、多かれ少なかれブラックボックスである。そのため、機械の仕様を知るためにさまざまな入力を与えて反応を見たりすることがある。次に、機械が仕様どおりに動くとは限らない。ソフトウェアのバグやハードウェアの経年劣化など、機械が本来の仕様と異なる挙動をする理由はいくつか考えられる。相手が人間であっても基本的には同じで、人によってできることは異なるし、同じ人であっても状況によって異なるパフォーマンスを示すことがある。

相手が機械でも人でも、何を参照してどのように推論するか、どこまで探索を続けるかなど、合理主義から一義的に決まらない問題がある。相手が人の場合、それに加えて、相手との関係に依存して、相手側からの解釈も行われるので、それをどう扱うかで状況が変わってくる。

以上のような意味の明確化と判明した(と判断した)意味に対する(コンテキストに対応する)行動は現実には並行して行われる。

自己の統治

フーコー的なテーマである。自分とのコミュニケーションという意味では先に挙げた他者とのコミュニケーションと共通するところもある。現時点の合理的に考えられる自分が、別の時点のそうではない自分が暴走しないよう、(第三者の目を入れることを含め)あらかじめ策を講じる、というのであれば、主体としての自己が客体としての自己をコントロールするというデカルト的二元論がほぼ成立し、特に共通するところが多い。

しかし、様々な点で違いもある。自分に罰を与えることができるとしても、その際の精神状態は他人に罰を与えるときと通常は異なる(「自己と対話する」場合も同様)し、「自己欺瞞」は考えられるが、自分に対してうそをつくことは考えられない。

以下のような言葉を考えてみる。
「私はどうしようもなく罪深い人間だ。」
「私はどうしようもなく愚かな人間だ。」
これを次の言葉と比較してみる。
「あいつはどうしようもなく罪深い人間だ。」
「あいつはどうしようもなく愚かな人間だ。」

両者の違いは、「あいつ」を主語にした場合、「あいつ」が自分について同様の認識を持っているとは限らないのに対し、「私」が主語の場合には、文章の意味としてそうした自覚を持っている。他人が罪深い/愚かであるとしたら、自分が、または信頼できる第三者に依頼して何らかの訓練を行い、「あいつ」をまっとうな人間にすることが考えられるが、自分自身が罪深い/愚かなのであれば、そんな自分自身が行う自己改造の努力も信頼できるものでないし、第三者に依頼するとしても、第三者を判断する自分自身の目もあてにならない。これを徹底すると、神や阿弥陀仏のような絶対的な他者に対する信仰に行き着く。ビジネス(ここではエンジニアリングや科学なども含む)では徹底した自己否定から出発することは不可能かもしれないが(それでも信仰など基本的にはビジネスの外で培われた思想がビジネスに与える影響は排除できない)、自分自身に対する信頼と不信がどのような形をとるか、またそれがどのような行動につながるかは検討課題である。

参考文献(現在手元にない文献も含む)
塩沢由典(1998), 『複雑系経済学入門』
Bateson, G.(1972), Steps to an Ecology of Mind(G.ベイトソン(佐藤良明訳)(2000)『精神の生態学』)
Buber, M.(1957), Ich und Du(M.ブーバー(植田重雄訳)(1979)『我と汝・対話』)
Csikszentmihalyi, M.(1975). Beyond Boredom and Anxiety: Experiencing Flow in Work and Play(M.チクセントミハイ(1991)『楽しむということ』) Foucault, M., et. al.(1982), Technologies of the Self(M.フーコーほか( 田村俶, 雲和子訳)(1999)『自己のテクノロジー』)

2014年5月5日月曜日

名前をつけるということ

中世ヨーロッパの思想史では、「実念論」と「唯名論」の対立があったとされる。Wikipediaの説明をそのまま借りると、実念論(実在論)は「言葉に対応するものがそれ自体として実在しているという立場」、唯名論は「実在するのは具体的な個物」という立場である。
一般的な「本質」が存在するかという問題はイスラーム教や禅など「東洋」思想においても議論の対象となってきたようである。(井筒俊彦『意識と本質』
これらの思想で議論で議論の対象となってきたのは、主に「花」とか「犬」といった固体としては物質的な形をとるものである。「科学」や「宗教」、「社会」といった概念に対しては近代の学者がさまざまな定義を試みているが、純粋に分析のための概念と、多少なりとも規範的な概念は扱いが異なると思う。例えば、「社会」はそれ自体ではプラス、マイナスの価値を持って使われないが、「科学」は「非=科学」(疑似科学)より優れたものとして扱われる。

筆者がいるソフトウェア業界でも「科学」のように、純粋に記述的ではなく、規範的な意味を伴って概念が使われる。例えば、「ウォーターフォール」は今ではほぼ記述的に使われるが、「アジャイル開発」や「テスト駆動開発」などはある程度規範的な概念だと思う。(「偽アジャイル」という批判は聞くが、「偽ウォーターフォール」という批判はほとんど聞かない。)

少し前に"TDD is dead. Long live testing."日本語訳という主張が出て筆者の周りでも話題になっていた。自分ではあまり実践できていないし、著者はRuby on Railsなどのコンテキストを背景に主張を述べているためなじみのないところもあるが、TDDを記述的な概念、つまりやるべきことの組み合わせとして考えた場合、状況が違えば(変われば)のやり方のほうがよい場合もあるというのは当たり前で、特に衝撃的とは思えない。

なお、著者の主張はユニットテストだけに頼らずシステムテストなど上位のテストをより重視すべきというものだが、一般論としては状況次第であり、コンテキストとなっているRoRの開発においてどれほど当てはまるのかはわからない。極論をすれば、プロジェクトごとに何をすべきか異なる、ということになる。それでは、なぜ議論が行われるのか?

規範的な概念についての議論の方法


TDDのような概念に対する一つの受け取り方は前述のような記述的なものとみなすことである。コンテキストが特定されていない手法であるから、コンテキストが変わればそのままは適用されないのが当然ということになる。ただ、純粋に記述的な概念はマックス・ウェーバーの「理念型」のように外部の研究者が分析のために使うことはあるものの、内部にいる人にとってはあまり意味をもたない。

別のとらえ方は規範的なもので、「状況に適応する」ということも含め、ソフトウェア開発のあるべき姿を表すものである。この考えに立てば、概念自体を放棄することはありえないが、「成功すること」だけが意味内容であればほとんど無意味になる。

ソフトウェア関係で通常使われる方法論あるいはプラクティスに関する概念は記述的かつ規範的なものである。つまり、一定の条件下ですべきことが述べられており、それに従えば何らかの目的を達成できるものとされる。とはいえ、「条件」や「すべきこと」が常に明確なわけではない。どのような法律でも解釈の予知があるのと同様である。

こうした概念が「従ったがうまくいかない」または「よりよい方法がある」などと批判されるとき、反応としては以下のものが考えられる。

  1. 擁護:考え方は間違っていない。あなたの理解が間違っている。ある宗教の教えに従いながら幸福になれない人に対し、教えを正しく信じ、理解し、実践していないあなたが悪い、と非難するのと構造は似ている。
  2. 拡張:明示されてはいなかったが、もとの概念の中に暗に含まれていたものだ。条件が違う場合にはより一般化して適用すればよい。
  3. 限定:そのケースは概念の適用対象としてふさわしくない。
  4. 否定:もとの概念は間違っている。新しい、より良いものに置き換えるべきだ。
これらははっきり区別できるわけではない。また、同じ概念の中に含めるか、もとの概念を限定して別の概念を独立させるかはさまざまな事情による。

名前をつけるということ


ソフトウェア開発やさらに広くビジネスで使われる方法論の場合、一つの方法を適用すればすべてが成功するということはほとんどない。方法論は特定のコンテキストのもとでの複数のプラクティスの集まりであり、一部だけ適用して他は別のやり方で置き換えるなど、状況に応じて適用の仕方を調整することが求められる。ある意味ではパッケージ化され、名前のついた方法論は関係者を思考停止に導くものであり、害をなすこともあるが、それでも名前をつけることにはメリットもあるのだと思う。

一つはコミュニケーション上の必要である。名前がついていれば少ない言葉で概要を理解することができる。もっとも誤解の可能性もないわけではないが。
また、一つの理想型として参照されることにより、規律を保つというメリットもあると思う。何か違ったやり方をとろうとしても、理想型があればなぜ異なるやり方をするのか理由をはっきりさせることになるので、安易な方向に流れることを防ぐ効果がある。

意味のある議論?


ある方法論やプラクティスが特定のコンテキストのもとで成り立つ(有効である)、またコンテキストを言葉だけで表現することはできないと考える場合(基本的に妥当な仮定だと思う) 、意味のある議論としては、
  1. 個別具体的なケースで特定の方法論やプラクティスを適用すべきか
  2. 特定の条件が方法論やプラクティスの適用にどのような影響を与えるか(メタレベルの議論)
特定の現場にいない人は(ヒアリングを行うなどして)意味のあるアドバイスを与えることはできるとしても、コンテキストをすべて知っているわけではないので判断には限界がある、ということになると思う。
方法論の適用条件に関して、また定式化に関してどのようなことが議論の対象になりうるかについてはまた別の機会に投稿したい。

2013年12月22日日曜日

テスト方法論の位置づけ

先回の投稿に続きWACATE2013冬の話。
ブログの都合上実際のプログラムとは違う順番で書くことにする。

2日目最後のクロージングセッションでSQuBOKをはじめとした知識体系が紹介された。自宅にもSQuBOKの本はあったがしばらく読んでおらず、取り上げられるということで直前に少しだけ読んでいた。もっとも、本はあくまでもガイドであるということが強調されていた。本当に詳しく知りたいなら参考文献にあたる必要がある、ということだ。

確かに、膨大な知識体系を全て吸収して使える状態になっていればよいのだが、実際にそんなことができる人はほとんどいない。各人の職務や関心に応じて一定のレベルまで知識を持っておき、その先が必要になったら文献にあたる、という使い方を想定しているようだ。もっとも、手法があることを知っていてもベースとなる考え方がないと必要なときに吸収できないし、適切なときに文献を参照する、ステークホルダーに相談する、といった行動をとれるようにするためにもある程度のスキルが必要なのだろう。

私が業務の中でテストに関係して一番問題だと思うのは計画段階でテストすべきことをもれなく抽出することである。最初の段階で間違ってしまったら、その後でどれだけ(技法などを使って)詳細を詰めても十分にテストできないことになってしまう。不覚ながら知らなかったが、テストの研究も優れたエンジニアの思考方法を抽出する、という方向に向かっている、という話も聞いた(文脈を無視してはいけないのかもしれないが)。

発想が問われる問題なので、方程式を解くようなやり方は通用しない。そもそも創造性が問われる状況に対してどのようなアプローチが可能なのか、という問題は以前から疑問に思っていたことである。如何に考えられた話であっても、話を聞いて疑問がすべて解消する、というようなことは期待できないが、学んだこと、考えたことを書いてみたい。

テストの観点をめぐる2つのセッション


テストすべき観点を抽出する、ということに関係する話としては、1日目の「リスクベースドテストを活用しよう」と2日目の「探してみようテスト条件」があった。前者については講演者によって資料が公開されているので、興味を持たれた方はこちらを参照していただきたい。

「リスクベースドテストを活用しよう」 は講義と演習の形式で行われたが、「事象の原因(ハザード)」「事象」「危害」の区別のあたりから少し食傷気味。例題としてネットゲームの話が出てきた が、筆者自身は全くやらないのでアウェーな感じ。席が一緒だった方の一人はゲーム会社に勤めているとのことで、知識としては全く太刀打ちできないが想像力を働かせて考える。

演習では重大度と発生確率の検討、 危害のリストアップ、それから危害シナリオの検討、リスク管理表の作成を行ったが、意図としては重大度と発生確率の検討、 危害のリストアップは危害シナリオより前に、独立して行う、ということだったようだ。確かに考えた危害シナリオに引っ張られてそれ以外のリスクが出てこない、といった可能性もありそうだが、筆者の場合シナリオの方が先に思い浮かんでしまった。

「探してみようテスト条件」ではラルフチャートを使ったテスト条件の洗い出しが講義と演習で扱われた。ラルフチャートはソフトウェアテストではHAYST法で使われる。条件の洗い出しが目的であればマインドマップやブレインストーミングなど他にも方法はいろいろあるが、個人的には好きなやり方である。もっとも、演習で手を動かしてみると渡された仕様書に書いてある内容から洗い出すことはできるが、それ以外のことになかなか頭が回らない。
個人ワークの後で各人が書いたものを持ち寄ってグループワークを行ったが、自分が気づかなかった条件を書いていたりして、まだまだ甘いなと思った。それと同時に、複数人で見ることによって一人だけでは抜け落ちてしまう部分をカバーするというチームとしての使い方を身をもって体験した。(もっとも、チームとして使うことを前面に出すなら、よりインタラクティブに進めることもできただろうし、今回のワークの中ではおまけくらいに考えたほうがよい。)

各方法論の関係性

ラルフチャートの使い方として、「ノイズ」や「アクティブノイズ」を条件として考慮する、という話もあり、その中にはシステムのクラッキングやネットワークの切断なども含まれる。突き詰めれば、あえてリスクベースなる概念を使わなくてもリスク低減を図ることはできてしまうのではないか?一方、リスクベースの「リスク」の概念を拡大していけば、仕様ベースのテストとの境界もかなりあいまいになるのではないか?といった疑問も出てきた。論理的にはそうなのだと思うが、人による違いはあるにせよ、問題によってアイデアが出やすいツールがあるので、道具箱に沢山道具を持っておき、必要なときに使えるようにする、ということでよいのだと思う。

ソフトウェアテストの方法論については、例えばこちらにあるように、日本だけを考えても方法論が乱立している、という印象である。(大御所の先生方に対して)それが悪い、と言いたいわけでは全くなく、むしろ、各自の経験や思考方法の違いに応じて、それぞれ自らが納得でき、かつ他の人にも使える方法論を考えている、ということなのだと思う。
アジャイル開発におけるテストの話も少し出ていたのでアジャイルテストの本(これとか)を見直してみたが、 計画段階から詳細な技法レベルまで、「抜け漏れのないテストを行う方法」についてはほとんど記述がなく(!)、その一方でチームとしての協力の仕方や(自動化関係だけでなくアナログなものを含む)ツールの使い方などはストーリーを含めて豊富な記述がある(少なくとも筆者にはそう思える)。

アジャイル開発ではスキルもモチベーションも高いエンジニアが開発に参加するから、詳細な技術は必要になったら学ぶ、ということでテスト条件の抽出などは対象外としているのだろうか。あるいはクリティカルなシステムにアジャイル開発が適用されることは少ない、ということも影響しているかもしれない。

逆にテスト方法論を考える側は重いフレームワークを作っているように感じる。実際には一人でフレームワークに従って進める、というものではなくチームとして品質を保証していることは認識されているが、一人で完結させる前提のときと複数人で互いを補う場合とでは立ち位置は微妙に変わるのではないかと思う。

ソフトウェア開発が扱う仕事の幅は広い。それを単一の方法論でカバーしようとなると、どこかで現実に合わない部分ができるか、実務に使えない抽象的なものになるか、あるいは異なる前提に基づくものの寄せ集めになる可能性が高い。その意味で、クロージングセッションでも紹介されたSEMATのように、異なるプラクティスを組み合わせるという進め方は有効なのだろう。その際にはプロジェクトや個人、チーム、組織の状況に合ったものを採用する必要がある。それも「○○のときは××」といった機械的なものではなく、メンバー間やステークホルダーとの関係も考慮したものになるだろう。

個人と書いたのは、少し話がそれるが、以前あるイベントに参加したときに、どうしてもマインドマップが使えない、と話している方がいたことを思い出したからだ。その方ができることとしては、 無理やりにでもマインドマップを習得する、あるいはマインドマップを使わなくても豊かな発想ができる方法を身につけるなどである。どうするのがよいかは脳というハードウェアの構造次第である。それほど極端ではないにせよ、人による向き、不向きはあるので、外部の状況だけで一概にこのやり方がよいとはいえない。

以上、WACATEで学んだこと、考えたことを独断と偏見に基づいて書き連ねてみたが(一応今回の投稿で終わりのつもり)、ある程度はつながったかなと思う。Scienceの言葉で表現しようとすると一部しかできなさそう(むしろArtに近そう)だが、本当に奥が深い世界である。改めて関係者の皆さんに感謝するとともに、日々の業務で使えるようにしていきたい。

2013年12月16日月曜日

QAの論理、アジャイルの論理

一昨日、昨日とテストエンジニアのためのワークショップWACATE2013冬に参加してきた。
諸々の事情から参加は3年ぶりで久しぶりの再会という方も多く、 楽しかった、疲れたとともに懐かしかった。参加者、セッションの担当者・講演者、スタッフの皆さんありがとうございました。
学んだこと、考えたことを忘れないうちにブログを投稿することにする。

なお、今から書く内容はワークショップのセッションや分科会での話し合いなどから個人として考えたことであり、WACATEの全体像や雰囲気を再現するものではなく、時系列的に並べたものでもない。
また、投稿内容に含まれる誤りや意味不明な点はすべて筆者個人の責任である。

夜の分科会でのこと

夜の分科会(私はその一つに参加)の際に、ある参加者がQA(品質保証)として自社のソフトウェア(プロダクト・プロセス)に統一した基準を作り、守ってもらうことで品質を向上させたいと話していた。それについて別の参加者が結局は人に依存ものであり、基準を作ったとしても最低限のものでしかないと話していた。後者の方とはその後でも話す機会があり、(私が曲解したところもあるかもしれないが)大体の考え方を理解できたかと思っている。

私自身は以前テスト、品質保証を担当していて、プロセス改善などを行っていたこともあり、またアジャイル開発(本当のagilerの方から見ればfakeだとは思うが)に取り組んだこともあり、双方の利点や前提条件をある程度理解できる立場にあると思っている。

QAの論理としては、かなり大雑把にまとめると、開発チームは顧客や経営陣などからプレッシャーにさらされていて、開発者だけに任せていると期待に(少なくとも表面上は)応えるために品質をおろそかにする傾向がある、だから第三者が品質を守らせなければならない、ということになる。

一方、アジャイルなどを実践する開発者にとっては、プロジェクトによって正しいやり方は異なる、プロジェクト固有の事情を知らない第三者が口を出してもデメリットの方が大きい、さらには標準を守らせるという発想では守らせること自体が目的と化し、本来の目的が見失われるといったところだろうか。もちろんアジャイル開発でも「テスター」という役割は存在するが、開発チームの一部としての位置づけである。

私としては、特に人間にかかわる理論や思考については、一般化されたものであれば、ソフト開発に限らず、完全に間違っていて学ぶところが何もない、といった考え方はほとんどなく、 問題なのはどのような前提に基づいていてどの範囲で適用できるか、またどれだけ意味内容を持っているかだと思っている。どこまで成功するかはともかく、この観点から検討する。

コインの両面としての現実主義、理想主義

QAの論理は基本的には現実主義に立ったものだと思う。開発者が自らを律することは不可能、もしくは非常に困難だから、第三者の力を借りるしかないということなのだから。こうした考え方は三権分立や社外取締役の設置などソフトウェア開発以外の世界でもみられるものであり、ある種の知恵に基づくものである。ただ、上にあげたようなQAの論理(少なくとも洗練されていないもの)はその裏に素朴な理想主義も含んでいるように思える。

まず、QAに対する抑制と均衡が働いていない。QA自体がセクショナリズムに陥って自らの存在意義を示すために(と意識はしないかもしれないが)必要以上に開発に介入する、という可能性が考慮されていない。 また基準や標準の浸透が必ず品質の改善に結びつくというのも楽観的に過ぎる。(開発効率を示す指標としてコード行数が測定されているから、無駄にコードを書く、といった冗談を話すこともある。)

一方のアジャイルモデルは開発者(チーム)が自律的に品質を高めていけると考える点では理想主義的であるが、QAのような第三者がプロジェクトに貢献する能力や可能性については懐疑的であり。また、遠い昔に他人によって決められた重いプロセスや基準を現在の開発者(およびQA)が自らのものとして受け止めてその精神を守り、発展させていく可能性については悲観的である。


協力とモニタリング

以上に書いたことから、少なくともQAが自らが決めた基準を杓子定規に適用して開発チームを批判する、というのは正しくないものの、状況次第という面はあるが(アジャイル開発における「顧客」とは別に)品質を守るための第三者が必要な場面は多いと思う。その場合、QA(またはそれに似た立場の人)としては、開発者とどのように協力するかが課題となる。

プロジェクトについての十分な知識を持ち、かつ品質を守るために必要な意見を述べ、チームを動かす、というのが理想的な姿ではあるが、以下の理由から通常はあまり現実的ではないと思う。
  • チームメンバーであってもプロジェクトや開発の詳細をすべて知っているわけではない。特にパートタイムでプロジェクトにかかわる場合、知識が不足することは避けられない。
  • プロジェクトや開発内容にあまりに精通してしまうと、第三者として考えられなくなる。
もしこれができるなら開発者としても自ら規律をもって品質を高めることができる、 よってQAは不要、ということになるだろう。
より現実的なのは、開発者とQAが異なる情報を持ってコミュニケーションを行い、望ましい解決策を探ることだが、コミュニケーションに多少のコストがかかるとしても、画一的な基準の押し付けとなれ合いという両極端を避けるには必要なことなのだと思う。ただ、コミュニケーションの中身についてここで一般的に述べることはできない。個人間の関係によるところも大きいだろう。

小結

ここまで品質保証体制の背後にある前提を抽出しながらそれぞれのメリット、デメリットを考えたが、各種の前提が成り立つかは人次第である。(ただし、同じ人でも何らかのきっかけで変わることはあるかもしれない。)

開発や品質保証の体制をどうするかはプロジェクトの性質に依存するのはもちろんだが、メンバーにも依存するものであり、正しい方法は一つには決まらない。個人も組織も良い面と悪い面は表裏一体のことが多く、良い面だけを伸ばして悪い面は現れないようにするというのは(追求には値するが)簡単ではない。

WACATE1日目のBPPセッションとセッション2では相手のタイプによって接し方を変えることの必要性が説明された。BPPセッションでは「炎上駆動改善」なる方法が紹介され、意識が高くない人も改善に巻き込むための方法が解説された。これもメンバーの動き方についての仮定に基づいた方法論である。自分自身も理由をつけて改善を先延ばしにすることがあるので注意しなければならないと思ったが、意識が高い/高くない、というだけでなく、あることに意識が向いている人、別のことに意識が向いている人、…という面もあると思っている。付け加えるとすれば、相手だけでなく自分についても自分に合ったやり方、合わないやり方があると思う。

他のセッションについても(これもセッションの内容からは離れることになりそう)書きたかったが、時間がかかりそうなので後で別に投稿することにしたい。