What is "enterprise software" and how is it different from any other kind of software ever?
Some context: I'm a Software Engineering student in University, and I've taken an "Enterprise Application Architecture" course last year and have read Martin Fowler's Patterns of Enterprise Application Architecture
book cover to cover. I'm not satisfied with the Wikipedia definition
As far as I can tell, "Enterprise Software" is no different from any database-driven software project. For example, web sites like del.icio.us
that track bookmarks and sites from millions of users... they have to deal with all the same scaling issues as a huge corporation but it's not "enterprise" software. Another example is content management software for a big site. (Does "enterprise" just mean "big"?)
The patterns in the aforementioned Fowler book are all characteristics of any
decently designed database-driven application, and I don't see what makes them "Enterprise" at all. J2EE is "Enterprise Edition", which would imply that it's used in "enterprise software", but plenty of non-business applications use J2EE, which throws out the "business software" argument. Ruby on Rails has a lot of Fowler's enterprise architecture patterns in it, but what makes a Rails project "Enterprise"? Is blogging software "enterprise"?
As far as I can tell with my (limited) experience, "enterprise" just means the software is overblown, buggy, has a lot of messy code and costs a few million dollars. (I read a lot of TheDailyWTF
and I'm interning at an "enterprise").
So when a teammate on a school project says "We should use C# because it's 'more enterprise'", I cringe and ask "what does that mean
"? I still haven't heard a satisfying answer.
Does "enterprise software" mean anything to you, hive mind?