Sonntag, 11. November 2007

After one month of PhD studies

I have not posted for one month now, due to that there was a lot going on in the first month. We (my company, my advisor and I) managed to narrow down my research direction and we also decided which courses I will take in the next few month and which papers we are going to write. At the moment, I am working on the following:
  • Case Study at my company: I am going to look at different software process models (waterfall, incremental development) used in my company with a focus to factors hindering software process efficiency and effectiveness. Hindering factors are for example bottlenecks, unnecessary work (referred to waste in agile and lean software manufacturing) and avoidable rework. In order to get a better understanding of interesting problems wich I will help to solve during my PhD, I am doing a case study at my company now. In this case study, I will review documentation and interview people to identify the hindering factors at the company in the different process models. Thereafter, the relative importance and severance of the hindeirng factors will be identified by letting people do cumulative voting on the different issues. That is, they distribute 1000 points between the identified hindering factors, the ones that are most critical should receive a larger amount of points than factors that are less critical. In total, I am going to interview around 30 to 40 people, this will be quite a lot of work doing the interviews as well as analyzing them. However, this is extremely interesting :) The different process models we are going to compare are waterfall and incremental development. This is so interesting because the comapany is now changing their way of working from long lasting waterfall models to large incremetal (and agile) projects. A proposition for the study is for example, that bottlenecks are a big issue in waterfall models in large organizations, but not in incremental development. Another proposition is that testing is a bottleneck in incremental and agile development, because it is repeated more often. I hope the end result will be a nice paper that shows which problems are interesting for me to tackle :)
  • Systematic review on software productivity: As software productivity is my area of research, I would like to know what has been done in the area so far. Therefore, I am going to do a systematic review on software productivity. A systematic review allows you to determine what do we know about a certain area, and what we don't know. Systematic means that one has to document search strategy (keywords, search strings, scientific databases), paper selection criteria, paper evaluation criteria, how to synthesize the findings of the identified studies and so forth. As the review is more systematically than the usual literature review, it is easier to argue why ones research is a valuabe contribution to the body of knowledge. When collecting all relevant papers that help to answer a review question, it is often the goal to define a taxonomy or a framework for the area. With the taxonomy in place, one can say: I belong in this category, and in this category there is no evidence for whatever and I am going to address this research gap in the following way. Furthermore, systematic reviews can also be valuable to practitioners. They often have to decide which techniques to use, and if they know that there is strong evidence for a particular technique (for example that effort estimation with COCOMO II delivers accuate results), then the technique is more likely to work. My next blog entry will give a more detailed descriptions on systematic reviews as I think this is a great thing to do. It takes a lot of effort upfront, but will make the writing of future related work sections much easier :) ... and systematic reviews are likely to be published at the moment, there is a large interest to synthesize findings in different areas. This will hopefully increase the chance for my paper ;)
  • Course work: I am going to take three courses in the next few month.
    • The first course is software productivity (7,5 ECTS). I agreed with my advisor that I should deliver a systematic review protocol (search strategy, how to analyze the data and so forth) and then make an initial synthesis of the findings and propose a preliminary version of the taxonomy. The result will then be presented to students in a course, so they get to know more about systematic reviews. Thereafter, the work will be extended to become another paper for my licenciate thesis (see previous bulet).
    • The second course is scientific publications (4,5 ECTS). In this course, we should learn about scientometrics and how to decide where to publish our papers. Scientometrics are measurements that determine how important a journal or a conference is. For example, journals have impact factors. In my area, TSE (transactions on software engineering) and TOSEM (transactions on software engineering & methodology) have the highest impact factors. If you as a software engineering researcher have a paper in these journals, this increases your reputation as a scientist in the area. However, it is quite hard to get accepted there. Assignments in the course are to identify the major journals in a particular area, and the major scientists. Furthermore, we are going to propose our own publicatioin strategy. Finally, we have to do some reviews of papers.
    • The third course is statistical methods in software engineering (7,5 ECTS). This course will be fun :) As a researcher you collect data, and when you have the data, what are you going to do with that? Knowledge about statistical methods will help to answer these questions. As my advisor said, the course will be quite problem driven. We will receive research questions, hypotheses, datasets etc. and then we should argue why we selected certain methods to analyze the data. This will be discussed in five seminars. In my opinion, this is a great way to teach statistics. Better than watching somebody filling several blackboards with mathematical formulas :)
PS: Thanks Sebastian for the reminder to start blogging again :)