what is wrong with TM Forum SID?

What is TM Forum?

The TM Forum is a standards organization for the communications industry. Rather than defining standards for particular network technologies, TM Forum is most interested in how to manage the processes across the entire service provider’s business. Their approach to modeling the communications problem domain divides the space into processes (eTOM), data (SID), applications (TAM), and integration. TM Forum has gained wide acceptance in the industry, and it has become the only game in town at the size and scale of its membership and audience.

What are eTOM and SID?

The business process framework and information framework together serve as an analysis model. They provide a common vocabulary and model for conceptualizing the communications problem space. As with any standards organization, the specifications are an amalgam of contributions from its diverse membership, and the result is formed by consensus.

The business process framework (eTOM) decomposes the business starting at the macro level and explores the parts at more granular levels of activities. Processes are described in terms of the actors, roles, responsibilities, goals, and the types of relevant information involved. There is no presumption of whether activities are performed by humans or automated systems.

The information framework (SID) decomposes the data into the product, service, and resource domains. Each domain is a model of entities and relationships presented as an object model using UML as the notation. The product domain is concerned with customer-facing and commercial interests. The service domain is concerned with abstracting the network resources into capabilities that can be parameterized for commercialization and that are of value to deliver to subscribers. The resource domain is concerned with the networks that enable services to be delivered.

What is wrong with TM Forum SID

As an analysis model, the eTOM and SID do a decent job to help people understand the problem space. However, these standards are problematic, because proponents promote them as being detailed and precise enough to be considered design models that can be translated directly into a software implementation. More accurately the framework is promoted as a starting point, which implies the ability to extend in a robust manner, and it is this position that I challenge. This position is stated in principle and demonstrated in practice through code generation tools. The separation of behavioral and structural modeling seems like a natural approach to organizing concepts, but at the level of detail to design software behavior and data need to come together cohesively as transactions. Object-oriented or service-oriented techniques would normally do this.

By representing SID in UML, it has the appearance of being an object model, but what it omits is behavior in the form of operations and their signatures. This is explained away by delegating the responsibility for interface specifications to the integration framework. That certainly contradicts the position that SID is a design model which translates into implementation.

Missing detailed transactional behavior

The integration framework tries to define software interfaces that directly use the SID entities. The result is a collection of interfaces that only superficially represents the behavior of the system. Because of the methodology of separating process modeling from data modeling, the interfaces are very CRUD-like, and the majority of behavior is assumed to continue residing in process integration (i.e., BPEL). This would work well for service provider specific business processes, but it is the wrong approach for defining transactional behavior that is intrinsic to the domain. These behaviors include life cycle management, capacity management, utilization and availability, compatibility and eligibility, and topology (rules and constraints for designing services and networks).

Because eTOM does not describe the behavior to this level of detail, SID does not define the entities and relationships to a level of detail that supports these essential behaviors. Consequently, neither do the interfaces defined by the integration framework. The problem is that many in the community view the model as robust with rich and unambiguous semantics, when this is far from true. If the very generic-sounding elements of the SID are used to model some of the behaviorally rich capabilities like resource utilization, we quickly discover missing attributes, missing relationships, and missing entities. Even worse, we may even find that the existing elements conflict with how the model needs to be defined to support the behavior. Sometimes a simple attribute needs to become an entity (or a pattern of entities) with a richer set of attributes and relationships. Sometimes relationships on a generalized entity are repeated in a specialized way on a specialized entity, and this is ambiguous for implementation. These issues undermine the robust extensibility of the framework, making the idea that the framework is easily usable as a starting point (extend by adding) very suspect, because extensions require radical destabilizing redesign.

Software design is a complex set of trade-offs to balance many opposing forces, including performance, scalability, availability, and maintainability alongside the functional requirements. SID cannot possibly be a design model, because none of these forces are considered. I strongly believe it would be an error to accept SID as a design model for direct implementation in software. I believe that any reasonable software implementation will have a data model that looks radically different than SID, but elements of the software interface will have a conceptual linkage to SID as its intellectual ancestry. If we think of SID in this capacity, we have some hope for a viable implementation.

a champion is a winner – are you one?

You’re not a champion of the free market if you oppose low priced goods from China and off-shoring to low cost labor. You’re just another protectionist, who favors the interests of a few domestic corporations over the interests of millions of consumers. It is a failure to understand the economics of comparative advantage.

You’re not a champion of smaller government if you want higher military spending on foreign interventions and ‘humanitarian’ missions. You’re just another big government crony in the pocket of the defense industry to promote the military industrial complex. National security in reality puts our focus on the defense of our actual national interests.

You’re not a champion of liberty if you support drug prohibition and the war on drugs. You’re just another nanny statist, who does not believe in individual rights. It is also a failure to understand the economics that create black markets, promote lawlessness, escalate violence, and increases drug potency that endanger users.

You’re not a champion of the US Constitution if you believe the Supremacy Clause gives federal powers over States beyond those powers expressly enumerated. You’re just another supporter of a living Constitution that comports with whatever powers politicians want and in whatever directions populist opinions lobby for. You talk about federal programs in education, energy, housing, and “job creation”, conceding the most important limiting principle—that the Constitution does not authorize the federal government to interfere in these ways, no matter what the present day politicians, constitutional “experts”, and the US Supreme Court (itself a branch of the federal government) has to say about it.

You’re not a champion of transparency if you support unchecked government discretion to classify information for secrecy and “national security”. You’re just another political class elitist who does not believe in accountability.

You’re not a champion against Ponzi schemes if you want to save the Social Security program as we know it. You’re just another delusional politician who thinks that kicking the can down the road to win votes today does not matter, because the inevitable crisis will not occur until someone else’s watch.

You lost, because you were not a champion.

dark matter – skepticism

I remain skeptical of both dark matter and dark energy. I don’t believe that either are valid concepts. They are hypothesized as explanations for observations that defy the current theories of how ordinary matter and energy ought to behave. I don’t have an argument to disprove either concept, but I do believe the burden of proof is on those who assert the existence of dark matter and dark energy. In this article, I would like to present an alternative theory to explain the anomalous behavior that proponents of dark matter use to support their hypothesis.

We must begin with an introduction to the topic of dark matter. One of the reasons that dark matter is hypothesized is to explain the unexpected rotational speeds of galaxies. In spiral galaxies like our own, the stars orbiting closer to the central super-massive black hole should appear to orbit very quickly, while the stars orbiting farther away should move much more slowly. The stars should behave as the planets do in our solar system. But they don’t. The galaxy rotates more like a wheel.

A wheel rotates the way it does because it is solid. The molecules that make up the solid are far apart, and the spaces between them are enormous. It is the electrostatic forces forming the bonds between molecules that are so strong that the molecules maintain a rigid structure.

Perhaps the stars within a galaxy travel together like a solid. Could the mutual gravitation between neighboring stars be strong enough to hold them together in a somewhat rigid configuration? That seems more plausible than to view the stars as orbiting the central super-massive black hole.

The Milky Way has a mass of ~1,250 billion solar masses. Its super-massive black hole, Sagittarius A*, has a mass of 4.1 million solar masses. Compare these proportions to the Solar System, where the Sun at 2 * 10^30 kg is more than 1000 times larger than the planets at less than 2 x 10^27 kg combined. The Sun’s dominant mass explains why the planets orbit the Sun. Sgr A* is puny relative to the stars in the galaxy. Perhaps this is why the mutual gravitation of neighboring stars would hold them in a nearly rigid configuration, and these influences would dominate over the gravitational force of the central super-massive black hole.

I don’t have the math skills to test that hypothesis. But it’s fun to wonder about such things in the hopes that someone with skills might think of the same idea and publish a legitimate version of the theory.

the shape of a galaxy and its black hole

I was reading this article: Stirred, Not Shaken. Black Hole Antics Puff Up Whopper of a Galaxy.

Articles like this make me wonder whether the shape of a galaxy reflects the influences (gravity, spin, active/inactive) of the central black hole or lack thereof. Maybe a black hole with a mass and spin (moment of inertia) above a certain threshold causes a galaxy to become more spiral. Maybe if it spins with a wobble, the spiral develops a central bar. Maybe if the black hole has a moment of inertia that is below a certain threshold in proportion to the rest if the galaxy’s mass, the galaxy becomes elliptical.

Thoughts return to the weird relationship between the surface area of the black hole’s event horizon (not an existent, since “it” has no energy) to its entropy. Since entropy is a measure of information, the black hole behaves like a hologram. It again leads one to wonder whether the shape of the galaxy is a reflection of the information that is contained in the black hole.

checks and balances – US Constitution

The US Constitution established a Federal government with powers divided to provide checks and balances. Clearly this system of checks and balances has been largely eroded.

The laws passed by Congress have delegated its legislative responsibilities to the Executive branch. Laws are written that grant regulation writing power to the Executive. Laws are written that delegate the power to start offensive wars.

The Executive branch routinely issues executive orders and waivers that either nullify the enforcement of existing laws or rewrite them. Executive orders are often used to initiate the enforcement of rules that are in effect new laws that have not been passed by Congress.

The Supreme Court has been toothless in defending the Constitution by limiting the Federal government to the powers expressly granted. This raises the question, why would we even have an expectation that the Supreme Court should have jurisdiction to rule on matters of law for which the Federal government has not been granted any power. When all powers not expressly granted to the Federal government are reserved to the States and the People, it should be clear that the US Supreme Court should be similarly limited. Would it not make sense for State Supreme Courts to retain ultimate authority for all such matters instead of deferring to the US Supreme Court?

When the Executive branch oversteps its authority, what possible remedy is possible, when it requires a super-majority of Congress to impeach, and the US Supreme Court is largely deferential to Congress and the Executive?

We are left to resort to State nullification by the sovereign states and jury nullification by sovereign individuals. Through these means we can safeguard the powers that are reserved to the States and the People, when the Federal government has betrayed us and the Constitution to which they pledged to defend.

how to vote – US Constitution

To decide which candidate to vote for, we have to determine the criteria we use for evaluating candidates. From how candidates campaign and how the media reports on these campaigns, we are led to believe that we are choosing our representative of ideal human. This is a faulty premise.

Voting for a political candidate is expressing a preference for that candidate to fill a position. The candidate is applying to fill a job opening, and we are evaluating candidates to hire the one most qualified. We should apply criteria that are relevant and appropriate for this evaluation, and refrain from misapplying criteria that are irrelevant or inappropriate. Is it appropriate to hire or disqualify a candidate based on gender, religion, race, or sexual preference? Of course not.

The US Constitution defines precisely the role of the federal government and its elected officials. Defending the Constitution entails the recognition of the limited authority that is granted to the federal government, while liberty is protected by recognizing the rights of the individual. The powers that sovereign individuals grant to the federal government are enumerated, while the rights of the individual are unlimited. Therefore, the proper way to evaluate a political candidate is to consider first and foremost how faithfully they understand and defend the Constitution. Then, evaluate how qualified that candidate is capable of performing the limited responsibilities of that office, while never overstepping the authority granted to the office by the Constitution.

When a Presidential candidate talks about how to be a responsible civilian leader of the military in the role of Commander-in-Chief, that candidate is expressing qualifications.

If a Presidential candidate talks about faithfully enforcing the laws passed by Congress, when those laws are pursuant to the Constitution, that candidate is expressing qualifications.

When a candidate talks about expanding public education and green energy initiatives, that candidate is disqualified.

If a candidate talks about increasing healthcare and retirement benefits through a government-run Ponzi scheme, that candidate is disqualified.

When a candidate talks about using taxpayer funds or debt to stimulate the economy or to improve your community, your family, or your life, that candidate is disqualified. Bribery is corrupt, and doing so during a job interview should be astonishing. Not only is the candidate disqualified, the candidate should be charged with criminal behavior.

If a candidate talks about being a likable, generous, and charitable member of the community, that candidate is lobbying for the job of celebrity but offering no substantial qualifications for the office.

We should not be seeking an admirable model citizen, who exemplifies our moral principles and projects our image of an ideal American. Doing so betrays our obligation to defend the Constitution. A candidate who asks for our trust in all things is asking for license to act with unlimited power. We don’t need someone who demands that degree of trust. A personality and appearance that we find likable is also unnecessary. We only need someone to perform a very limited job function for a fixed term.

The Constitution tells us exactly how we must vote. Now, if only voters would recognize that fact, they would then be equipped to fulfill their own pledge of allegiance, which implies a commitment to defend the Constitution.

on the rights of a fetus

Living cells do not per se have a right (protected freedom) to life for the same reason a virus or a mouse has no right to life.

Rights are a recognition of requirements for a person to live as a human which means freedom to think and act toward sustaining that life. Non-humans do not have rights, because they are incapable of recognizing rights. Without that recognition, there can be no rights, as their abrogation would immediately ensue through force, coercion, and other manners of violation.

A fetus is not yet capable of living in any way as a thinking, acting person in that sense. Therefore, it has no rights to do so.

As litmus test, can a fetus given rights (freedom without mom) perform the most basic biological acts of sustaining its own life? No. The fetus cannot oxygenate its blood, eliminate its toxins, convert food into a form that can power its cells, and any number of other biological functions that mom is performing on its behalf. If given the freedom to live as a person per se, the fetus cannot perform the most basic actions to sustain its life, it does not have rights, because no recognition of such requirements for it to live and no protection of its freedom will make any difference. The fetus does not need freedom at this stage in its life; it is entirely dependent on its mother.

To artificially bestow a “right” to life on the fetus is merely granting an entitlement to enslave the life of its mother, if the mother does not consent to participate in the pregnancy. This would not be protecting anyone’s freedom—only taking freedom away from the mother.

I am anti-abortion and pro-rights. Therefore, I am for a woman’s right to choose, no matter how much I dislike abortion. My opposition or dislike for something does not automatically mean support for government action to outlaw it. Because the law must exist to protect individual rights, any law that would abrogate rights must never be passed.

My position on abortion is consistent with other similar positions. I am an anti-smoking non-smoker, but I oppose legislation that would ban smoking. I am anti-drug and I do not use drugs, but I oppose the war on drugs. These positions consistently recognize that the law must exist to protect individual rights, not to trample on individual liberties.

When does a fetus become a person with rights? I believe the earliest that can happen is when a fetus becomes viable. That is, when it is medically possible for the fetus to survive when physically separated from its mother. This may involve the assistance of medical devices, medication, and extraordinary measures. The key criterion is the ability for the baby to live without being tied to the mother’s life. At that point, the baby’s life can be sustained by other means, and adoption becomes an option. As medical technology improves, this may happen at earlier stages of gestation. This would be the reasoning behind objecting to late term abortion.

Broken Link Resolver – idea for Google

I originally posted this on Monday, October 4, 2010 at 4:27pm on Google’s Facebook page. Since I have not seen any progress in this area, I am posting this again as a reminder to Google. If they are not going to pursue it, maybe Marissa Mayer might be interested in doing this at Yahoo!

Broken Link Resolver

Since Google Product Ideas does not feature Search, I’ll submit my idea here. One of the biggest unsolved problems on the World Wide Web is broken links. As the Google bot crawls the Web, it can detect whether the URLs of previously seen significant content have become stale (failure to connect or 404), and based on a heuristic content search determine where that page has moved.

Google could offer a new service that could answer the question: given this broken URL, tell me where the page has moved. Then, provide features in Google Chrome and a plug-in for Firefox that can make use of this service upon encountering a failure to connect or a 404. You could also provide an Apache httpd module that can use this service for handling 404s by automatically redirecting.

the literal, the colloquial, and the peace of nothing

I try very hard to write using phrases that convey literal meaning. I look down on writers who rely too much on colloquial phrases. I consider it sloppy, especially when the writer is unfamiliar with the concrete situation from which the phrase originated. Then, the phrase is merely repeated to convey a shallow meaning without understanding its deeper meaning and context.

Today, I was curious about the origin of the phrase “extend an olive branch”. I thought there must be a great, gripping story behind it. It turns out the origin has long been forgotten. It was that memorable and significant. The symbol of peace that is so widely understood across many cultures is anchored by… nothing. It is learned by rote and repeated mindlessly, not knowing that it is hollow and empty. Perhaps that becomes the truly significant origin of the modern phrase. Contemplate what new and deeper meaning this would assign to the phrase “extend an olive branch”, when applied to present day situations like the Middle East peace process. There is a certain perfection to that. Shaka, when the walls fell.

mobile devices and carriers

When I upgraded to an Android mobile device with AT&T, I signed a new two year contract with a more costly data plan. The device was discounted to zero thanks to a special promotion, but actually the full cost of the device is amortized over the life of the contract. This explains why there is a prorated termination fee for recouping that cost.

AT&T, like most carriers, preinstalls their own lineup of apps on top of the base Android operating system. They also disable features like being able to specify alternative sources for downloading apps. Many AT&T apps require a subscription with an additional monthly recurring charge. AT&T Family Map is an example. There are many disadvantages to this arrangement.

AT&T is extremely slow to upgrade their apps to newer releases of Android. In fact, they don’t even bother to do so for legacy (2yr old) hardware. This is horrible for users who cannot take advantage of the constant stream of software innovations available from Google.

The preinstalled apps cannot be uninstalled. This bloat occupies precious memory and storage that is better used for the user’s favorite apps. These undesirable apps occupy valuable resources and drain battery life.

It is understandable that a carrier would want its users to install its apps in the hopes of generating more revenue. It is a never-ending quest for carriers to avoid becoming dumb pipes, while over-the-top content and Internet services vendors become rich. Unfortunately, no matter how hard they try, carriers will never innovate fast enough to maintain a competitive advantage in these value added services, because they are too slow and too old-school. Dumb pipes are all they are good at.

On my next device, I will almost certainly reimage it with Cyanogenmod.

Insights into innovation