Databases evolve over time. Access cannot and was never designed to solve every database problem. What it does offer is a great, cost-
effective, and quick solution for a wide range of common database challenges in Windows. Anticipate and welcome the natural evolution of
databases, and you’ll find an important role for Access in the overall database strategy of your organization. Compared to alternatives,
Access offers tremendous ROI opportunities and competitive advantages to those who use it properly. Going back to our military analogy,
think of Access as the tactical part of your IT team. It's designed to take care of small problems that don't need the resources of the main
strategic force. Tactical teams are expected to do things quick, dirty and cheap, and is often the BEST solution for the challenges they face.
That said, there will be situations that grow beyond the capabilities of the tactical team. When an infantry calls for air support, good leaders
don't complain why they need it. They just deliver overwhelming power to solve the problem. Good planners have the planes in the air
awaiting the inevitable calls for help. Plan, anticipate, and optimize all your resources to address your constantly changing battlefield.
Splashsoft
Your Expert Resource for MS Access Software Development
There are Many Database Needs
Database Challenges in an Organization
Access Fills an Important Segment
Advantages of Access
Why Access is Important
Conclusions
Summary
Database Evolution: MS Access within an
Organization's Database Strategy
Over the past few years, there has been lots of confusion over the role of Access within an organization. Sitting between the power of Excel and
client server databases, Access extends from simple end-user tasks to mission critical operations. The database needs of an organization are
unpredictable and change over time.
Microsoft Access solves many database problems but not all and neither do other tools. What Access offers is the best solution for its range of
capabilities. As the most popular database product in the world, Access clearly dominates one of the most important segments of the database
ecosystem.
When formulating the database strategy of an organization, it’s helpful to think of individual databases evolving over time. Healthy database
applications are not just created once but change and grow. Bad ones go extinct, and sometimes even good ones die because their
environment (market) changes. Meanwhile mission critical applications sometimes appear from unexpected sources. Millions of databases are
created in Excel spreadsheets each year, but only a tiny percentage “graduate” to the next level: Access. Similarly, only a tiny percentage of
Access applications graduate to a more sophisticated solution. In the interim, a huge number of database needs are solved completely by
Access. Access is simply the best at what it does.
An IT manager needs to understand and use Access tactically, and anticipate that some Access applications will migrate over time. This is not
an indictment on Access, but rather the natural process of database evolution as the organization's needs change. Sure, it would have been
better to build that Access application with a more sophisticated platform from the beginning, but it was impossible to predict it would be that
important when it was first created. Most will run perfectly fine in Access forever or go extinct. Making a big investment today makes no sense
when a simpler, less risky Access solution is possible.
Let time determine which databases evolve and require additional investment to take them to the next level. The key is to anticipate this and not
be surprised when it happens. Even when Access applications evolve to another platform, Access scales by supporting the migration of Jet to
SQL Server while preserving the application development investment. The features developed for Access can be rolled into the new platform
guaranteeing the success of the new system (or at least minimizing end-user objections). In that case, Access proved to be a great prototype.
The savvy IT manager learns when Access is effective and when it’s not. If it can be done in Access, the ROI is superior to alternate
technologies. Taking advantage of the strengths of Access gives your organization a significant competitive advantage both financially and in
response to user, market, and customer conditions.
Some databases are critical to the survival of an organization while others are simply quick and dirty systems for ad-hoc analysis. No matter how
large or small the organization, databases are used at a variety of levels for a variety of reasons:
Enterprise Level
These are mission critical applications that the entire organization requires for its survival. Examples include accounting systems, customer
transaction tracking, high volume data processing, or other critical systems vital to the organization’s ability to complete its mission. In large
organizations, this is often considered the function of the data center. Critical issues here include processing large amounts of data, maintaining
historical data and legacy systems, accuracy, security, and administrative depth (backups, disaster recovery, etc.)
Department Level
Applications built for departments are less critical for the survival of the entire organization. Although these may still include important data center
applications, other applications may be managed in the department itself. Department level applications are usually created by professional
developers and maintained by dedicated personnel. They often tap into or pass data into the data center repositories.
Workgroup/Team Level
Work group applications focus on the needs of a smaller group of people working together. These applications can often change rapidly to meet
the needs and challenges the workgroup faces either internally or from external market forces. Work group applications tend to be PC based (not
mainframe) and are often controlled by the line of business using it. These applications often involve professional developers, although many
instances of applications created by power users and non-developers exist. These applications often retrieve data from data center systems, but
do not commonly send data back. Data analysis, report generation, and managing the needs of the work group to perform its functions are
common examples.
Individual and Small Groups
On individual PCs, many people create their own databases in Excel and Access. These tend to be single user applications that have relatively
short life spans. Their purpose is to simplify the work of the individual or small group of people who created it. Most of these applications are
created by people whose primary job function is not programming.
Every organization faces a myriad of database challenges to fulfill their mission. These include: Maximizing ROI is more critical than ever.
Management demands tangible results for the expensive investments in database application development. And many database development
efforts fail to yield the results they promise. Choosing the right technology and approach for each level in an organization is critical to maximizing
ROI. This means choosing the best total return, which does not mean choosing the cheapest initial solution. This is often the most important
decision a CIO/CTO makes.
Managing Human Resources
Managing people to customize technology is very challenging. The more complex the technology or application, the fewer people are qualified to
handle it and the more expensive they are to hire. Turnover is always an issue, and having the right standards in place is critical to successfully
supporting legacy applications. Training and keeping up with technology is also very challenging.
Rapid Deployment is Critical
Being able to create database applications quickly is important not only for reducing costs, but responding to internal or customer demands. The
ability to create applications quickly provides a significant competitive advantage. The IT manager is responsible for offering alternatives and
making trade offs to support the business needs of the organization. By using different technologies, you may be able to give the business
decision makers choices such as a 60% solution in three months, a 90% solution in 12 months, or a 99% solution in 24 months (instead of
months, it could be dollars). Sometimes time to market is most critical, other times it may be cost, and other times the features or security most
important. Business changes quickly and is unpredictable. We live in a “good enough” rather than perfect world, so knowing how to deliver “good
enough” solutions quickly gives you and your organization a competitive edge.
Flexibility and Maintainability is Important
Even with the best system design, by the time multi-month development efforts are completed, needs change. Versions follow versions, and a
system that’s designed to be flexible and able to accommodate change can mean the difference between success and failure for the users’
careers. Scale ability is Necessary, but Often Secondary Systems should be designed to manage the expected data and more. But many
systems never get completed, get thrown away soon after use, or change so much over time that the initial assessments are often wrong.
It’s all
about evolution. is nice, but this is often less important than having a solution quicker. If the application successfully supports growth, Scale ability
can be added later when it’s financially justified.
Matching the Correct Technology to the Solution Maximizes Returns
We’ve already seen how different levels of an organization have different database needs. Choosing the right technology and approach for each
level impacts the ability of that level to perform long-term, and the returns it generates.
Using Multiple Tools is Critical to Success
An organization faces a variety of database challenges. No tool solves every issue. Many tools and approaches are available each with their own
strengths and weaknesses. Some manage large amounts of data in a very structured and secure manner. Other tools mange a relatively small
amount of data in an unstructured, minimally secure, yet highly flexible manner. Depending on the objectives, one tool may be superior to the
other.
Military Analogy
Like a CIO/CTO, a commanding general has many types of battles to fight and multiple weapons to use. The general wants the most powerful
weapons but would be handicapped without tanks, artillery, and rifles. That’s because all battles are not the same. Some require massive
resources while others require infantry. Choosing the right weapon for a particular challenge is critical to meeting objectives, managing budgets
and resources, and responding to the unique requirements of each sit
Lots of Data is Stored in Excel
Even though Excel is not a database, in many organizations, people store more data in spreadsheets than any other platform. This drives IT
professionals crazy, but works. Decision makers need to analyze data and they know Excel. This is one of the greatest benefits of desktop
computing. Although Excel is not a relational database, it solves many simple database problems completely. That’s because many database
problems can be solved with simple database solutions. Only a tiny percentage of Excel spreadsheets ever reach the limits of Excel, but when
they do, many should migrate to Access.
Microsoft Access Fills a Large and Important Segment
The success of Access as the most popular database in the world is a testament to its capabilities and the pervasive need for database solutions
by productivity workers. Access is the first weapon of choice when it comes to relational databases because of its ability to quickly create useful
database solutions. It may not have all the features Scale ability, performance, reliability, and security of more sophisticated solutions, but for
many situations, those features are irrelevant or secondary to what Access offers. Access offers an excellent solution for database challenges
facing individuals, small teams, and work groups across a network. The number of database challenges within an organization that can be
solved by Access is much larger than solutions solved by more complex and expensive solutions. And over time, with the drop in hardware
prices and increases in performance, more and more database situations are solved by Access.Different database problems require different
solutions. If an organization’s only database response is a $200K+ solution, it cannot profitably manage opportunities worth less than that. That
may or may not be a problem today, but it gives competitors an opportunity if they have less expensive solutions. Over time, some of those
small opportunities grow into big ones. The cost of solutions and the solutions themselves vary significantly by the platform selected. Here are
some ballpark numbers:We can argue over the fact that there are million dollar Access applications and $20,000 .NET applications, but that
misses the point. These numbers show order of magnitude for a large organization, and what they generally spend for solutions on those
platforms. It is worthy to note that solutions created for the first three platforms (Excel and simple Access applications) are often created by non-
IT professionals. Managers, analysts, and administrators create these solutions without IT budgets or guidance. It’s simply part of their job. Most
of these solutions would rarely make economic sense if IT staff fulfilled them, nor would they be able to create them in a timely manner. That
said, many applications created by non-IT professionals are not maintainable and suffer from poor design. Once you get into work group
applications, defined budgets, design processes and more structured development efforts occur, and people specializing in application
development get involved. But even at this point, costs vary widely based on the platform selected.
Rapid Application Development
The Access development environment lets you create results fast. Access solutions often require significantly less code than alternatives. It’s a
great platform for prototyping.
Integrates with Microsoft Office
Access is part of Office and integrates with the most popular interface users use: Office. Enabling users to view data and exporting it into Excel
or Word (or users simply pasting it themselves) is extremely powerful to knowledge workers.
Great for Data Entry – Windows Still Beats Web
Somehow web users are trained to accept behavior that would cause howls in Windows applications. For instance, changing the quantity and
pressing [Update] to refresh total sales. Access easily (cheaply) supports this, copying and pasting records, displaying multiple one to many
relationships, and other basic features (e.g. spell checking) that provide a much friendlier and richer data entry experience than Web solutions.
Interfaces with Lots of Database Formats
Access links to all sorts of data sources.
Excellent Report Generator
The Access report generator is second to none. Sub-reports are extremely useful for showing multi-table relationships. Combine this with
Access’ ability to link to many data sources and you have a great report generator. Many desktop database applications have significant report
generation features. Web reports still don’t compare or print on paper properly, even with a lot more effort.
Approachable Development Environment
The VBA IDE is the same as VB and offers a very productive development environment. Unlike .NET or Java, you can edit code while
debugging which is a real time saver. Access Solves Many Solutions with Less Code than Alternatives The less code required for a solution,
the better. It’s easier to create and easier to maintain. N-tier solutions are definitely not RAD, and not beneficial if you never need to share your
data.
Ideal for Network Solutions
Access is designed for file server solutions on local area networks.
Handles Non-Connected Situations
Access supports laptops and disconnected solutions that can’t be handled by web applications. Access databases can also be easily emailed to
others. In limited low data collision situations, Access replication is appropriate for addresses remote database sharing.
Access is the best solution for the segment between Excel spreadsheet and more sophisticated database solutions. In the pyramid, this is the
area of individual to work group solutions. Access is the most popular database in the world by servicing this segment extremely well. Many
Database Problems are Completely Solved by Access .Access simply does its job well and for many situations, a more sophisticated solution
would offer very little beyond what Access delivers. ROI: Access Solutions Cannot be Cost Justified on Other Platforms Access is a RAD tool.
Solutions created in Access often require much less code than other platforms, and can be created by people who cost a lot less. Some
databases are simply not worth a lot. A $40K business opportunity may support a $10K Access solution. But if the IT shop can only offer $50K
solutions, the choice is simple: it can’t be done. Access Provides Tremendous Competitive Advantage By being low cost, Access offers the
opportunity to go after business that would otherwise be left to competitors. A tiny fraction of those seemingly “small” opportunities may become
significant in the future. Being able to profitably participate in such engagements is strategically important for an organization. Many baseball
players built their careers by hitting lots of singles. Every now and then one of them goes over the fence. You just don’t expect it or know when
it will happen, but you know the more at bats you have, the more likely it will occur.
Access is often criticized for its scale ability and migration limitations, but this is not so. Here’s why: Most Database Problems are Small Most
database problems manage relatively small amounts of data and usually well under 100 MB. This is well within Access’ strength and using a
product like SQL Server would be overkill for such small amounts of data (SQL Server does offer features that might be important beyond
database size).Few Database Problems Exceed Access’ Capabilities Access/Jet databases can support up to 2 GB of data. Access
applications can link to multiple databases, so even using Jet databases, Access applications can manage lots of data. Very few database
problems involve this much data. SQL Server Eliminates the Scale ability Issue
Microsoft has designed Access to be scalable. Access applications can eliminate Jet and use SQL Server as its data repository. Access
databases (M D B s) can link to SQL Server data, and ADPs work directly against SQL Server. SQL Server eliminates the Scale ability issue
for data size and number of users. When people focus on the limitations of Access Scale ability, it’s important to note that the issue is really
about the Jet Database Engine, and not Access as the front-end to SQL Server SQL Server. Of course it takes extra work to migrate to SQL
Server or convert an MDB to ADP, but a significant portion of the development investment is preserved .Hybrid Solutions Work If an
application exceeds Access’ capabilities, a hybrid solution with Access and other interfaces against SQL Server is often appropriate. We’ve
created VS. NET applications for web solutions against SQL Server, with Access still playing a role inside the organization for administrative
functions and reports. Using Access where it’s appropriate maximizes ROI.
Counter
(DBA: Splash Software 1998-2010)