|
Microsoft Access is a powerful platform for small to medium sized business. Access is also useful for departmental applications
within large organizations. There’s good reason for it. Microsoft Access is a rapid application development (RAD) platform for databases.
I develop data driven software in many computer languages, and I have yet to find a platform that is faster and easier for database
application development. Plus, many developers don’t realize its great power for its low cost.
I hear some people say that “Access is slow and doesn’t scale.” This simply isn’t true. I have been called in to fix many database
performance problems. With Access, the most common problem is the previous developer’s poor design skills. What some developers
don’t realize is that Access can be used as a standalone database, or, as a “front end” to a larger database, such as Microsoft
SQL Server. “Microsoft Access Projects” communicate directly to Microsoft SQL Server. This is a very efficient and secure means
of storing data; it’s much more efficient that trying to use a file-based Access database by itself. Plus, since Microsoft SQL 2005
Express is free, why not take advantage of it. I have customers with more than 40 simultaneous users, connecting to
a server with Access, SQL, Exchange, file sharing, print sharing, and Active Directory installed on the same server. No performance problems.
Case in Point: A New Reporting System in MS Access Saves $240K/Year
One of my customers needed a new reporting system. They were spending thousands of dollars monthly on manually compiled Excel reports. MS Access
with SQL was a best bet for their application. Time was of the essence and, as stated, Access is fast to develop, easy to deploy, and cost effective.
The first task at hand was to centralize their incoming data from more than 20 different sources, in different formats and different levels of
detail. I worked with each spreadsheet to map it into a new reporting system using Microsoft Access as the front end to a Microsoft SQL Server database.
After mapping all the information to the database and making sure all newly received Excel spreadsheets automatically feed the database with new
information, I worked with the client to design the report filters and presentation templates that customers would see. Their resultant reports are
professional-looking PDF files which are easy for customers to read because the aggregated information now has a consistent design and layout—plus
their branding.
Plus, using Access as a “front-end” provides a solid upgrade path once a system matures and is ready for a more robust “front end” like Microsoft
VB .NET. As their business demands outgrow Access capabilities, this customer only has to upgrade their front end, not their database. Data integrity is maintained.
My customer’s entire reporting system was created in about four months, but in just one month’s time, the new reporting system replaced the need to hire the
outside manual reporting firm, saving them $20K a month. What used to take more than a month, is now accomplished in a day or two. The entire system paid
for itself in three months and they have the reporting flexibility they need as their business grows.
What does all of this mean? The cost of creating and maintaining your custom software is much less when using Access compared to other software
development platforms. Microsoft is dedicated to new versions of Access for years to come, and since there are many Access Programmers on the market
from which to choose, there is no risk that you might build your business software on a platform that will no longer be supported.
3 Considerations: When Access May Not Be a Match for Your Needs
I only recommend Access when it matches the business need and, as with all software, Access does have its limitations. The following are 3 considerations that may rule out Access as your solution:
- Remote Users: If you have a large number remote people that need to view the data, an ASP.net web application may be a better solution for you. It depends on your needs. I have customers
that use an Access front-end internally in the office, and have a small ASP.net web component used by remote sales people that only has 10% of the functionality of the internal Access
application. Terminal services can also be used to view Access applications remotely in some cases.
- Simultaneous Users: Another limitation of Access is the number of simultaneous users that can use the system. If you purchase a server dedicated to just Microsoft SQL, with multiple processors,
64-bit operating system, and plenty of RAM, you will get 80 to 100 simultaneous connections to the database without much problem. If you needs are any larger than that, a .Net application
will likely be a better option.
- Application Size Requirements: The last limitation of Access is the actual size of the application itself. While, yes, you can create an extremely large application in Access with hundreds
of forms, it really doesn’t make sense. Access if perfect for smaller applications in that they can be built quickly and full of functionality. If the application becomes very large, Access
becomes more difficult to maintain. You would benefit from using an enterprise-level application development platform. The only "real" choices in this arena are the Microsoft .Net platform,
and the Java Platform Enterprise Edition. Applications built in these platforms, are much easier to maintain when the application becomes large. There are many other developing platforms on
the market, but among the majority of serious business application developers, these are the only two feasible options on the market for large applications.
We’ve had multiple instances of customers wanting, and starting, with a small Access application only to realize the power of the software in transforming how they do business.
What generally happens is customers get a taste of how powerful the technology is once they have it in their hands, and they start coming up with their own ideas on how to
bring it to the next level. In these cases, we end up re-developing the front-end application in .Net or Java to handle the larger application size.
Visit our
website for more information. Or contact us for a free analysis of which platform best meets the need of your organization.
|