28 September 2015

What is a Phone Number?



Do you know what a Phone Number is? 

Are you sure?  Did you say something like?

It is a number used on one phone to connect to another phone.

As far as it goes, that is correct, but that is only one of several correct answers. You could have answered the question by saying any of the following and also be right because phone number pops up all over the CSPs business, but spotting it can be a bit like playing Wheres Wally (or Wheres Waldo, if you are American).



What is a phone number?
a)    A phone number is a string of digits and is not, in its truest sense, a number because any leading zero is significant.
b)    A phone number is something that can be bought or sold and quite significant amounts of money can be paid for phone numbers.  According to The Register (www.theregister.co.uk) the world's most expensive phone number was auctioned for charity on 22 May 2006 in Qatar.  The number, 666 6666, sold for 10m Qatari riyals or £1.5m.
c)    A phone number is asset allocated to the Communications Service Provider (CSP) by the telecoms regulator that is then allocated, sold, lent or in some other way given for the use of a customer (see (a) above).  The customer can, often, take the phone number with him when he leaves the CSP; he can port it out.
d)    A phone number is a way of contacting people and/or organisations (the simple answer); so it is a type of address.
e)    A phone number is information on how to connect two phones during a call.
f)     A phone number is a service identifier; a phone service is identified by the phone number used by that service.
g)    A phone number is an account identifier; the customer's account or sub-account is identified by the phone number, after all it appears on the bill.
Im sure there are other answers too, but the list shows that there are quite a few different definitions a phone number and that it should be found in quite a number of different pictures that illustrate the CSPs business.

In the CSP world we have the Frameworx Information Model (aka the SID) that provides definitions of important business concepts and provides lots of pictures or data models that show how these concepts interrelate.  So lets start searching for Phone Number in the SID.  The SID is full of entities and relationships so looking for a particular entity really can be a bit like reading Wheres Wally/Waldo; looking for what should be something really easy to spot, but that just doesnt stand out from the crowd.

SID experts know, even though the SID but doesnt explicitly show it, that Wally (the phone number) can be found disguised as a Logical Resource and as the Logical Resource can be provided through a Product we can claim to have found him for pictures (a), (b) and (c).

The SID actually has phone number in it as (d), a Contact Medium, used to contact Customers, so this time Wally wasnt even disguised but because it doesnt relate this phone number with the (Logical Resource) phone number of the Product the Customer is using to make phone calls on the CSPs network it wasnt particularly easy to find.
So can we find the Phone Number in the SID doing the job defined in (e), providing information on how to connect two phones?  Mr Strowgers mechanical exchange invented about 125 years ago used a phone number to automatically route the call from one phone to another.  Mr Strowger was an undertaker who became convinced that the telephone operator who was the wife of a competitor undertaker was forwarding calls to her husband when people called for an undertaker, and so he dreamt up a way cutting out the operator in connecting two phones together. CSPs still use this fundamental mechanism in one way or another to route calls using the information imbedded in the phone number to work out how to find the phone that is being called.  This is very important for OSS/network operations but it also has a direct impact on the amount charged to a customer for the call and the profit made by the CSP (on net, off net, roaming, roaming partners, etc, etc). 
So we would expect to find Wally/Waldo (the Phone Number) somewhere around the network picture even if it seems to be bit of an obscure area to find him/it.  But, actually, how obscure is this picture?  Lets face it, the two of the most important fields on a CDR are the A Number and the B Number phone numbers and Billing wouldnt work if these didnt identify the product/service being used and ultimately the pricing, discounting and allowances to be applied to the customers account for the usage of the network. 
Search as you may, you wont find Wally/Waldo here in the SID.
And finally, and perhaps most importantly, all the CSPs Ive worked with all talk about the phone number as being the identifier for the user/the subscriber (a legacy concept that isnt in the SID) or the product (the subscription or price plan (two more legacy ideas quite rightly excluded from the SID).  But this isnt just a bit of legacy thinking which is how I used to dismiss this definition.  There is an important idea here not all Products are equal there are the subscription products or the contract product that define the overall (basic) services (e.g. voice, messages and data) and their prices and allowances while there are other add-on products that are then associated with or bolted on to the main product and the main product, nine times out of ten, is identified by the Phone Number by both the Customer and the CSP. 
The SID doesnt draw Wally/Waldo into this picture either, though the ever-flexible SID experts (like me) can claim he is there, you just cant see him!
I dont think we should let Phone Number hide in Logical Resource whilst also living secret lives as Contact Medium, Product, Service Identifier and Network Address these different nuances of the phone numbers role need to be explicitly stated. 
We should be able to see Wally/Waldo wherever he is, then when someone who has never seen the SID before says
Wow!  That looks complicated Lets start with something easy; show me where in these diagrams Phone Number is,
you can point confidently to the model and say
There!
rather than waving your hands around talking about rather complicated things called Logical Resource, Resource Role, Involvement Role etc etc and conducting the Wheres Wally? hunt.
You may ask,
How can I make the SID representation of Phone Number a little closer to the business view of Phone Number?
or perhaps, if you will,
How can I put Wally in SID?
If you make the following enhancements to your own in-house implementation of the SID then it will reflect the business realities and define phone numbers in a way that everyone can recognise and relate to and you will able to point confidently to the SID and say Theres Wally/Waldo.

  1. Put PhoneNumber and PhoneNumberSpecification into the SID as concrete subclasses of Logical Resource and Logical Resource Specification respectively
  2. Create an association from Contact Medium (Phone) to this class.
  3. Create concrete subclasses of Product Offering and Product as Contract Product Offering and Contract Product to identify these key products.
  4. Create an association from Contract Product to Phone Number identified by to acknowledge that this is important relationship.

I know that the last step is a little controversial for dyed-in-the-wool SID practitioners as this is information is already provided by the multipurpose ProductInvolvementRole.  This is a sub type of InvolvementRole that is played by a CustomerAccount, or a PartyRole, or importantly a ResourceRole.  As an alternative to step 4 the creation of a concrete subclass of ResourceRole called IdentifyingPhoneNumber would keep the purists, if not the business and Wally hunters happy.
So Phone Number is a lot of things to a lot of different people and many of these are already in the SID if hidden from view but one thing is for certain it isnt just a string of digits or just a Logical Resource.
So, now, where are Wallys friends IMSI, IMEI and MSISDN hiding in the SID?