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 :)

Samstag, 6. Oktober 2007

My first week as a PhD student

In this week, a lot happend. The first three days of the week I was introduced to Ericsson. There was a huge amount of material to look at, like process descriptions, organizational charts, products and so forth. Honestly, I don't think that I have really understood it yet as this is a complex organization :)

Additionally, there was a lot of practical stuff to solve. For instance, I had to sign the contract, get my badge and so on. This was quite hard because I did not have my social security number yet. If one does not have this number in Sweden, he basically does not exist in Sweden, cannot open bank accounts or sign binding contracts. However, I got my number on Thursday and now everything is moving forward smoothley.

We also had a few meetings. At the university, there was a meeting called Brown Bag Seminars. Actually, this is a lot of fun. Somebody from the group or a guest researcher presents his research in a relaxed atmosphare while the others have a light lunch. Thereafter, a discussion of the research takes place and people bounce ideas around. Some of the other PhD students were also at the universtiy when I did my master studies. One of them is Nina, she was a lecturer back then. We talked a little about our research as she is doing research at my company, too. As our topics seem to be well integrated, we thought about doing a paper together. I look forward to that and will further discuss it with her next week.

On friday, we had a very important meeting with the Streering Group of my PhD studies, consisting of me, my advisor and two people from Ericsson. The streering group will meet every four weeks to discuss what has been done, to give feedback, discuss new research ideas, and decide what to do in the next four weeks. This week we had some very interestind discussions which made me understand some of the problems the company is facing pretty well. Furthermore, some research ideas popped up and we were able to roughly define an initial overall goal of the research. We also planned an initial case study at the company which I will start to prepare now. I took minutes of the meeting and wrote down some research questions. Next week, I will distibute the notes to the steering group to see whether we have the same understanding of things. When this becomes more mature, I will also go into the topic of my area and write something about this.

To draw an overall conclusion of my wirst week: It was a lot of information to cover and a lot of prictical things to solve, but everybody is very supportive which made the first week of my studies very pleasent.

Samstag, 29. September 2007

My PhD studies in Sweden

During the PhD studies in Sweden, a PhD student completes course work as well as research work resulting in a PhD thesis. Thereby, a PhD is worth four years of full time study. In between, most PhD students finish a so called licentiate which is an intermediate degree. The licentiate is awarded after two years of full time study and results in a licentiate thesis. The theses (licentiate as well as PhD) include a set of papers published as well as an introduction which explains how the papers are interrelated and contribute to the overall research goal and research questions addressed during the studies.

My PhD studies will start on the 1st of October 2007. I will be an industrial PhD student, meaning that I spend most of my time in industry and will do research there. As an industrial PhD student at BTH one is employed partly by BTH and a company, in my case Ericsson.

The topic of my research will be how to predict the impact of changes in a software process on software productivity as well as how to generally improve productivity. This will help to evaluate different alternatives of possible changes against each other. Software productivity research seems to be a very broad area as one needs to understand how the different phases of the development process (e.g. requirements engineering and testing) interrelate which requires a good understanding of all these phases. Additionally, in order to predict the productivity means are necessary to measure productivity in a good way. I really look forward to going deeper into this interesting topic.