An application is a software product which fulfills a useful purpose (performing a task, storing data, etc.)
An enterprise application is an application which is suitable for use in a wide variety of environments seen in companies. (for example, as a point of difference, an enterprise application might support a wider variety of platforms or data, or at greater scale than a non-enterprise application)
What about collection of different applications which is inter-dependent with each other. Each application must be communicable and extensible with less pain. That's what in my mind for enterprise right now..
Enterprise extensibility and inter-operativity or inter-dependency is extremely complex to get right.
Multiple standards exist for just about anything, and most implementations of something are broken in one way or another. I've seen obvious and subtle breakage in things that ought to be simple:
* timestamps (not unambigious, not including timezone data)
* mac addresses (within SNMP, in a variety of formats in different places on the same kit)
* integration with LDAP (group membership only looking at primary membership)
* etc.
An internal piece of software built by so many people that no one can agree on a feature set. Usually way over engineered using the latest technology buzz to enhance developers resumes.
Sold by people who promise everything and deliver very little after a lot of high priced consultants customise it to what they think your requirements should be. Costs a fortune to buy and several more in 'maintenance' fees. New, incompatible version, is released a month after you go live.
I worked 5y at an Enterprise Search vendor. For us there, Enterprise application was:
* to be used "within" a large org or corporations (vs web facing apps)
* which deployment/usage is through the overall organization (not just departmental (=specialized app) this is why often the 2 types of license sold were "corporate or Enterprise license" with 1 important parameter: the number of employees (per seats) of the corp
* Most of the time, installed within the firewall on the corps own servers (vs cloud)
* if modern architecture the app to be deployed globally should have "connectors"/connectivity so that it can communicate with other pre existing systems
* very often deployed by system integrators or at 3 to 4 x the price by the engineers of the Enterprise App vendor
A large application trying to do many things at once. Has a very long sales cycle and is expensive. It requires sales and marketing effort teams to get sales. Support services offered because it is a pain to install and/or run.
I'll add that selection is often the result of a top-down decision, with an attendant disconnect between the needs and interests at the top as compared to those in the trenches. The greater the separation of those mindsets, the worse the result, speaking generally.
And I'm not against it or anything. It can be more work than small or med businesses but it's also significantly more money. In fact, the amount of money is probably inordinately more. So you can actually become more financially successful doing enterprise software.
- Has often unnecessary hardware and software requirements to reduce sticker shock. For example, requires Solaris on SPARC and the database must be Oracle or MS SQL Server when it's just a glorified CRUD web app.
- Is buzzword-compliant (extra points for more esoteric buzzwords (like JSR-170 compliant)).
- Is often written in Java to allow your typical IT drone to write the necessary glue to integrate it with other enterprise software.
- Is excessively complex at all levels (UI/UX, configuration, extension).
- Is poorly documented due in part to the excessive complexity and more in part to the fat support contracts the vendors rely on.
- Makes your IT boss happy, because it continually uses up their yearly budget allotment, generates a lifetime of status meetings, and gives more of their subordinates something to do.
- Makes you, the IT worker, miserable because you have to continually fight it in order to keep it working.
- Makes you, the office worker, miserable because you have to continually fight it just to get anything done.
Or is critical to generating money not more than two removes from balance sheet.
I don't define most CRM as the above, but count CRM as a funnel. Reason: good sales bods used to do that in their head. So, for a sales app to be critical ("enterprise") you have to get to the bits an old school sales team can't do. It doesn't include lead search or credit analysis front of house. Critical in sales would be an engine which prices product in a way you secure sales over competitors. But that might be such a fluid piece of code, you'd never hard-wire it into any billing system.
If you're selling a service, that's obviously enterprise: no service, no money. But i think you were talking about internal apps here.
I dislike entrprise search / discovery being classified as entreprise. Archival matters. But you can always restore to a search server if you must, for legal e.g. later. If you need to use full text search to find line of business information, i think you've got a messy practise, to put it mildly. Yet, there sure is a lot of money in that space. My take is that such search utility is more a distraction, and at worst if used it ought to be rationed.
I started with my Razor, so i'll save typing any more expansions. I said 2 removes, to emphasise that in a enterprise sized company, if you go much further you have a very big graph to reduce as to what's important.
Seems everyone else here is going for Computer Contradictionary style answers. I'm trying to say that enterprise software is what you can't take away without losses. My org bonuses those in that trench in line with front of house / sales. Sometimes i think that enterprise software is deliberately arcane so that median salary employees can be "trusted" with apps near to the money because they'll have to be geniuses to know how anything works, and if they are, they'll leave. Whenever i get that feeling, a vendor gets shown the door.
Where management is prepared to spend a double digit % of revenue to achieve something. That "something" might be "anything".
Alt. answer #2:
When your Big Four accounting company junior uses vendor's name in familiar, knowing terms. Optionally, when any business novice tries to explain it to you in breathless excitement.
an application that is large, redundant, complex, and build to do lots of different things; costs a lot of money/resources; and is subsequently configured and customized down to fit the needs of the customer.
I like Steve Jobs' definition: With enterprise software, the people who are making the purchase decision / order (whether it's in-house or externally developed) are typically not the people who're going to use the software. There are exceptions, of course.
I like this definition. It is short and zesty and feels true. However I don't think it is a sufficient condition for something to be enterprise software. Some tools for software developers or other highly skilled employees are too expensive to be bought by the employees themselves, but I still don't consider it enterprise software.
I think for it to be real enterprise software it must also be dictated from the powers that be that the minions should use it, wether they like it or not.
An environment that combines the most intractable features of the La Brea tar pits and an industrial-scale cash furnace, with attendant performance and maintenance issues, dependencies on custom kudzu code, and all of which is in aggregate entirely critical to on-going business operations.
If you can afford to rip it all out and replace it - without seriously risking blowing up your business, your entire revenue stream, or risking having to issue a mea culpa to a legal entity, or having to jack-hammer congealed product out of your mongo-million dollar manufacturing line - then it's not Enterprise code.
And yes, stuff that might not be traditionally thought of as an enterprise installation can fit this definition. The large-scale deployments of Microsoft Windows and Microsoft Exchange and SitePoint can fit this definition, as can your own large-scale deployment of your own customized software platform, as can anything to do with financial verifications or controlled substances, too.
A software system intended to store and manage a large portion of the data created and used by the members of an organization.
Most of the comments I see here so far are funny, pejorative, and spot-on accurate but the original post asked for a definition.
- a software system: an enterprise application is like a library (as in books) except that instead of books it stores smaller pieces of information - employee names, timecards, purchase orders, etc.
- intended to: because they don't always actually do that
- store and manage: not just store but make provisions for users to add to and look up the data stored there.
- a large portion: because a single spreadsheet shouldn't count. Postings on TheDailyWTF notwithstanding.
- by the members: enterprise apps may involve public-facing information services but if that's all they do then they don't count as enterprise
- of a an organization: not just businesses but schools, governments, and any other groups with a defined membership and purpose.
Any software program or system that can net an expert more than $250k/year in consulting fees so he can call himself a real professional, just like his buddies who went to law school or medical school (or the finance industry).
24 comments
[ 3.2 ms ] story [ 64.8 ms ] threadAn enterprise application is an application which is suitable for use in a wide variety of environments seen in companies. (for example, as a point of difference, an enterprise application might support a wider variety of platforms or data, or at greater scale than a non-enterprise application)
What about collection of different applications which is inter-dependent with each other. Each application must be communicable and extensible with less pain. That's what in my mind for enterprise right now..
Multiple standards exist for just about anything, and most implementations of something are broken in one way or another. I've seen obvious and subtle breakage in things that ought to be simple: * timestamps (not unambigious, not including timezone data) * mac addresses (within SNMP, in a variety of formats in different places on the same kit) * integration with LDAP (group membership only looking at primary membership) * etc.
We live in hope. Postel's Law applies.
* Is developed and delivered in big-bang style rather than incrementally.
* End users and support staff are not involved in purchase or evaluation.
* Primarily sold by offering decision makers (people with budget) tickets to the British Open, Premier League football, great meals, etc.
* to be used "within" a large org or corporations (vs web facing apps)
* which deployment/usage is through the overall organization (not just departmental (=specialized app) this is why often the 2 types of license sold were "corporate or Enterprise license" with 1 important parameter: the number of employees (per seats) of the corp
* Most of the time, installed within the firewall on the corps own servers (vs cloud)
* if modern architecture the app to be deployed globally should have "connectors"/connectivity so that it can communicate with other pre existing systems
* very often deployed by system integrators or at 3 to 4 x the price by the engineers of the Enterprise App vendor
A site license is > 500 seats
Long, intensive sales cycles
Heavy support and uptime requirements
And I'm not against it or anything. It can be more work than small or med businesses but it's also significantly more money. In fact, the amount of money is probably inordinately more. So you can actually become more financially successful doing enterprise software.
- Has often unnecessary hardware and software requirements to reduce sticker shock. For example, requires Solaris on SPARC and the database must be Oracle or MS SQL Server when it's just a glorified CRUD web app.
- Is buzzword-compliant (extra points for more esoteric buzzwords (like JSR-170 compliant)).
- Is often written in Java to allow your typical IT drone to write the necessary glue to integrate it with other enterprise software.
- Is excessively complex at all levels (UI/UX, configuration, extension).
- Is poorly documented due in part to the excessive complexity and more in part to the fat support contracts the vendors rely on.
- Makes your IT boss happy, because it continually uses up their yearly budget allotment, generates a lifetime of status meetings, and gives more of their subordinates something to do.
- Makes you, the IT worker, miserable because you have to continually fight it in order to keep it working.
- Makes you, the office worker, miserable because you have to continually fight it just to get anything done.
Or is critical to generating money not more than two removes from balance sheet.
I don't define most CRM as the above, but count CRM as a funnel. Reason: good sales bods used to do that in their head. So, for a sales app to be critical ("enterprise") you have to get to the bits an old school sales team can't do. It doesn't include lead search or credit analysis front of house. Critical in sales would be an engine which prices product in a way you secure sales over competitors. But that might be such a fluid piece of code, you'd never hard-wire it into any billing system.
If you're selling a service, that's obviously enterprise: no service, no money. But i think you were talking about internal apps here.
I dislike entrprise search / discovery being classified as entreprise. Archival matters. But you can always restore to a search server if you must, for legal e.g. later. If you need to use full text search to find line of business information, i think you've got a messy practise, to put it mildly. Yet, there sure is a lot of money in that space. My take is that such search utility is more a distraction, and at worst if used it ought to be rationed.
I started with my Razor, so i'll save typing any more expansions. I said 2 removes, to emphasise that in a enterprise sized company, if you go much further you have a very big graph to reduce as to what's important.
Seems everyone else here is going for Computer Contradictionary style answers. I'm trying to say that enterprise software is what you can't take away without losses. My org bonuses those in that trench in line with front of house / sales. Sometimes i think that enterprise software is deliberately arcane so that median salary employees can be "trusted" with apps near to the money because they'll have to be geniuses to know how anything works, and if they are, they'll leave. Whenever i get that feeling, a vendor gets shown the door.
Where management is prepared to spend a double digit % of revenue to achieve something. That "something" might be "anything".
Alt. answer #2:
When your Big Four accounting company junior uses vendor's name in familiar, knowing terms. Optionally, when any business novice tries to explain it to you in breathless excitement.
I think for it to be real enterprise software it must also be dictated from the powers that be that the minions should use it, wether they like it or not.
it takes all parts, processes and prices for those processes and generates reports.
Its enterprise to me because it could be valuable to many other companies.
If you can afford to rip it all out and replace it - without seriously risking blowing up your business, your entire revenue stream, or risking having to issue a mea culpa to a legal entity, or having to jack-hammer congealed product out of your mongo-million dollar manufacturing line - then it's not Enterprise code.
And yes, stuff that might not be traditionally thought of as an enterprise installation can fit this definition. The large-scale deployments of Microsoft Windows and Microsoft Exchange and SitePoint can fit this definition, as can your own large-scale deployment of your own customized software platform, as can anything to do with financial verifications or controlled substances, too.
Most of the comments I see here so far are funny, pejorative, and spot-on accurate but the original post asked for a definition.
- a software system: an enterprise application is like a library (as in books) except that instead of books it stores smaller pieces of information - employee names, timecards, purchase orders, etc.
- intended to: because they don't always actually do that
- store and manage: not just store but make provisions for users to add to and look up the data stored there.
- a large portion: because a single spreadsheet shouldn't count. Postings on TheDailyWTF notwithstanding.
- by the members: enterprise apps may involve public-facing information services but if that's all they do then they don't count as enterprise
- of a an organization: not just businesses but schools, governments, and any other groups with a defined membership and purpose.
http://www.mail-archive.com/kragen-tol@canonical.org/msg0010...