Jun 13

I have had some busy months, lots of work for the uni, assignments, exams…you know what I’m talking about. I will have my results within a month.

I have finally decided what to create for my final year project. I will develop an instant messenger application using C#, WPF, WCF and XAML. Initially it will allow you to send text messages over the network and some basic file sharing/sending. If there is some time left, I will implement video conferencing/chatting as well. My choosen supervisor is Dr Paul Sant who is a senior lecturer at the UoB.  I will post updates on the progress of this project.

Next Monday I’m doing a presentation for the ABC Centre’s showcase. The title of the presentation is “Using open source software to create business solutions“. I will give further info on this presentation as well - and will surely make the slides available for download.

Apr 07

Not a long time ago we had to do a presentation on a topic selected by ourselves for the module “Software Engineering”, this was assignment one for the previously mentioned module. I choose the topic Project Management and did a research on Managing Geographically Distributed Projects.

Before doing the research I never really thought of how projects are run these days, how many problems and barriers project managers have to face. After reading a couple of academic papers I started to enjoy this topic more and I became more and more curious. How project leaders manage time differences? What about cultural differences? How the client and the developing company establish trust? How they communicate?

As you might know already, managing IT projects have radically changed in the last couple of years. Years ago, one project was usually run by the same company and usually within one building. These days the projects are distributed, work is outsourced and both the client and the company could be offshore.

Finally I choose the academic paper by: Talha Javed, National University of Computer and Emerging Sciences, Pakistan - Manzil-E-Maqsood, National University of Computer and Emerging Sciences, Pakistan and Quaiser S. Durrani, National University of Computer and Emerging Sciences, Pakistan titled “Managing Geographically Distributed Clients Thgroughout the Project Life Cycle”. (Š2006 by the Project Management Institute - Vol. 37, No. 5, 76-87, ISSN 8756-9728/03)

The authors of the paper use the 12 issues on which projects usually fail and identify 6 of them which are crucial when speaking about geographically distributed projects. These 6 points of possible failure are:

  • Common understanding of project domain and requirements
  • Managing changes requested by client
  • Managing delays from the client side
  • Understanding and meeting the client’s definition
  • Sufficient communication and involvment
  • Successfully negotiating the contracts

Common understanding of project domain and requirements

I think I’m not going to say something new, it is vital that the project is defined clearly from the start, unclear objectives and requirements can contribute up to 18% toward the failure of a project. Also bare in mind that the overall cost of the project may go up as (more) time is spent on defining the project but results in an end-product that meets the client needs and on the end of the day, you will have a happy and satisfied client.

Managing changes requested by client

This second point is as obvious as the first one: changing requirements can contribute toward the failure of a project. Controlling and managing the changes can consume your resources. The common experience with projects is if the clients review the progress of the projects they require additions / modifications, hence expanding the scope of the projects. (This is called the “requirements creep”.)

Managing delays from the client side

Ever heard of a project finishing well after the deadline? Good. Delays can’t be only caused from the developer side but also from the client side. If the client is not keeping the schedule developers think that the client is non-serious and/or disorganised. The delays from the clients can also lead to schedule pressure at the development end which leads to excessive schedule pressure and that reduces the productivity.

Managing Time Differences

The working hours often have a small (or no) overlap, thereby the number of ways for communicating is reduced to e-mail and voice mail (or video conferencing). As a result communication between the client and the development team reduces. It is vital that the communication structures are established in the early stages. Also, an extra care as to be taken as misinterpretation could happen between the developers-analysts-client(s).

Trust and Cultural/Language Differences

In the early stages of the projec the possibility of winning business depends on the relationship established during the marketing cycle. A good way to gain trust (and enhance the communication level) is to use an onshore coordinator. It allows the offshore organisation to meet the client’s needs better and also helps to establish a strong relationship.

Due to cultural and language differences it is much more difficult to communicate one’s meaning clearly and precisely across geographical borders.

IT managers also have to explore the culture of the given country they work with. Let me give you an example. Assume you work with a development team located in Spain and you would like to call them up to discuss an important thing at 1400. I think a lot of people know that Spanish people usually have their “siesta” from 1200/1300 to 1500/1600. In my opinion these little differences make managing (geographically) distributed projects a really interesting topic.

Feel free to download my presentation: Managing Geographically Distributed Projects

Dec 20

Further to an earlier post:

The X represents your current location on the map.
You are on the Lymedius Plains.
| ------------------------------------------------------- |
| Issum Forest      | Vint Plains   | Ledelen Mountains   |
| ------------------------------------------------------- |
| Viwude Cave       | Lauk Desert   | Torit Swamp         |
| ------------------------------------------------------- |
| Lymedius Plains X | Lersam Lake   | Kiml Mountains      |
| ------------------------------------------------------- |

More will follow soon with code snippets as well.

Dec 04

I got permission to modify the original assessment. This is how the story looks now:

Wumpus World is a world which even the mighty warriors fear to enter but now you received an important mission. Your king’s daugther was kidnapped by the evil wumpus’ followers and you have to rescue her. The king promises that you can marry his beloved daughter if you bring her back alive.

You are on your way to rescue the king’s daugther when suddenly some soldiers appear on both side of the road. They just stare at you until you ask them what they want. ‘We will tell’ - they reply. The next thing you realise is that they start to attack you, more and more appear from the forest…

You wake up hours later, you are in pain and you realise that you have no equipment, no weapon. They took everything from you. You feel ashamed turning back so you decide to continue your journey to Wumpus World.
Soon you arrive to a plain, on your map, it’s named as the Lymedius Plains…

GAME STARTED

The Lymedius Plains are well known for their healing bushes….
You can see the following things:
rock
strawberry bush
sword
You can go to the following places:
Lersam Lake
Viwude Cave
Your health is 60%

More is coming up soon :)

Sep 29

Now I have some better ideas on my modules.

Object Oriented Program Development is a module on C# which is really cool. I already have some understanding about C# but this knowledge can now be expanded :) Also we are going to study about .NET 2.0 which is relevant enough nowadays.

Concepts of AI will kick some arse. It’s not beating around the bush. It’s AI, it’s hard. We will study about Prolog as well which came as a surprise to me but I’m quite satisfied with that too.

Both of the above mentioned modules will be held by Dr Dayou Li, Vitaly Schetinin, Des Stephens and Keith Lam (demonstrator).

DBMS Development will be about nothing else then Oracle. Held by Penny Onley and Mike Niblett.

Information Systems Engineering is rather a theoretical subject on understanding system developments and software development methodologies. Also this module will give practical understanding of the range of modern Information Systems approaches to software development. Held by Penny Onley again and Adrian Benfell.