Wireless Telphone Network Simulator

There was no definitive project requirement. We needed to study wireless systems and implement a simulator within 3 months using UML and Java. This project was assigned as team project. It started out as a grand scale project because we had a lot of people in each team. It turned out that we could do less because there were too many people (actually some of us spent most of the time solving political problems not technical problems). This project perfectly illustrated the Wicked Problem in front of my eyes. On the other hand it opened my eyes to the true power of UML.
Thanks to Joe (Chi-Kin Li) and Shane Robinson who really gave a push to get us through.

To keep it simple, originally we had 2 components: handset and basestation (later landline part has more than one component, e.g. MSC, HLR, BSC). The model we used is AMPS system where communication channels are divided into control channels and voice channels. Each channel categories can be divided further into reverse channels (from handset to basestation) and forward channels (from basestation to handset).

At first we thought we would simulate the mobility property of handset and implement handoff procedure. Finally, only normal cases could be implemented. Besides, audio was cancelled. We had to use string instead. This is a nice project anyone can do. I can publish only the handset part. I was not allowed to access the base station part (except the interface) :(. If you are interested in this simulator, I suggest building another component, medium, and change from stream to udp. Then you can simulate any strange behavior of the wireless system.

In the following documentation you might find it strange to deal with only one basestation. My group were responsible only for the handset. Therefore we abstract the whole landline system to be a single base station. This abstraction bothered even the professor but I think it is the way to go!