Académique Documents
Professionnel Documents
Culture Documents
1 PROBLEMS STATEMENT
The present software application is related to maintain the records of the donors
who donated generously towards the great cause of our non-profit organization.
All these are to be automated and an application is required to relate all of them
relatively and logically so that the current system can be replaced and accepted
without major changes and problems.
The application should provide quick access to the records maintained and must
reveal the important reviews about the business so that the growth can be easily
compared and should provide with the various reports showing the related details
so that the important decisions could be taken easily.
OBJECTIVE
The main objective of the application is to automate the existing system of manually
maintained records of the contributors of the non-profit organization along with other
valuable information like listing of pledged and unpledged donors.
Some major objectives are
Hardware Requirements
Processor
RAM
2GB RAM
Monitor
15 Color Monitor
Operating System
Windows XP/7/8
Developing Tool
MS Access
Software Requirements
System Study
Preliminary system study is the first stage of system development life cycle. This is
a brief investigation of the system under consideration and gives a clear picture of
what actually the physical system is? In practice, the initial system study involves
the preparation of a System proposal which lists the Problem Definition,
Objectives of the Study, Terms of reference for Study, Constraints, Expected
benefits of the new system, etc. in the light of the user requirements. The system
proposal is prepared by the System Analyst (who studies the system) and places it
before the user management. The management may accept the proposal and the
cycle proceeds to the next stage. The management may also reject the proposal or
request some modifications in the proposal. In summary, we would say that system
study phase passes through the following steps:
background analysis
inference or findings
Feasibility Study
In case the system proposal is acceptable to the management, the next phase is to
examine the feasibility of the system. The feasibility study is basically the test of
the proposed system in the light of its workability, meeting users requirements,
effective use of resources and of course, the cost effectiveness. These are
categorized as technical, operational, economic, schedule and social feasibility.
The main goal of feasibility study is not to solve the problem but to achieve the
scope. In the process of feasibility study, the cost and benefits are estimated with
greater accuracy to find the Return on Investment (ROI). This also defines the
resources needed to complete the detailed investigation. The result is a feasibility
report submitted to the management. This may be accepted or accepted with
modifications or rejected. In short, following decision are taken in different
feasibility study:
Economic feasibility - The likely benefits outweigh the cost of solving
the problem which is generally demonstrated by a cost/ benefit analysis.
Operational feasibility - Whether the problem can be solved in the users
environment with existing and proposed system workings?
Organizational feasibility Whether the proposed system is consistent with the
organizations strategic objectives?
Technical feasibility - Whether the problem be solved using existing technology
and resources available?
Social feasibility Whether the problem be solved without causing any social
issues? Whether the system will be acceptable to the society?
All the data and the findings must be documented in the form of detailed data flow
diagrams (DFDs), data dictionary, logical data structures and miniature specifications. It
includes planning for the new system, analysis of requirement, system constraints,
functions and proposed system architecture, prototype of the proposed system and its
analysis.
Errors removed, then system test is done. At this stage the test is done on
actual data. The complete system is executed on the actual data. At each stage of
the execution, the results or output of the system is analyzed. During the result
analysis, it may be found that the outputs are not matching the expected output of
the system. In such case, the errors in the particular programs are identified and
are fixed and further tested for the expected output. All independent modules be
brought together and all the interfaces to be tested between multiple modules, the
whole set of software is tested to establish that all modules work together correctly
as an application or system or package. When it is ensured that the system is
running error-free, the users are called with their own actual data so that the
system could be shown running as per their requirements.
The product is developed as per the framework to meet the objectives of the system
requirement specifications approved.
2.2.5 Implementation
The project enters the implementation phase when the product is ready to be
implemented/piloted on the production environment and after thorough training to all the
end users the product is implemented
After having the user acceptance of the new system developed, the implementation phase
begins. Implementation is the stage of a project during which theory is turned into
practice. The major steps involved in this phase are:
The hardware and the relevant software required for running the system must be made
fully operational before implementation. The conversion is also one of the most critical
and expensive activities in the system development life cycle. The data from the old
system needs to be converted to operate in the new format of the new system. The
database needs to be setup with security and recovery procedures fully defined. During
this phase, all the programs of the system are loaded onto the users computer. After
loading the system, training of the user starts. Main topics of such type of training are:
After the users are trained about the computerized system, working has to shift from
manual to computerized working. The process is called Changeover. The following
strategies are followed for changeover of the system.
1.
the new system. It is a risky approach and requires comprehensive system testing
and training.
2.
Parallel run: In parallel run both the systems, i.e., computerized and
manual, are executed simultaneously for certain defined period. The same data is
processed by both the systems. This strategy is less risky but more expensive
because of the following facts:
Failure of the computerized system at the early stage does not affect the
working of the organization, because the manual system continues to work, as it
used to do.
3.
Pilot run: In this type of run, the new system is run with the data from one
or more of the previous periods for the whole or part of the system. The results are
compared with the old system results. It is less expensive and risky than parallel
run approach. This strategy builds the confidence and the errors are traced easily
without affecting the operations. The documentation of the system is also one of
the most important activity in the system development life cycle. This ensures the
continuity of the system. Generally following two types of documentations are
prepared for any system. User or Operator Documentation System Documentation
User Documentation: The user documentation is a complete description of the
system from the users point of view detailing how to use or operate the system. It
also includes the major error messages likely to be encountered by the user.
System Documentation: The system documentation contains the details of system
design, programs, their coding, system flow, data dictionary, process description,
etc. This helps to understand the system and permit changes to be made in the
existing system to satisfy new user needs.
2.2.6 Maintenance: Maintenance is necessary to eliminate errors in the system during its
working life and to tune the system to any variations in its working environments. It must
meet the scope of any future enhancement, future functionality and any other added
functional features to cope up with the latest future needs. It has been seen that there are
always some errors found in the systems that must be noted and corrected. It also means
the review of the system from time to time. The review of the system is done for:
knowing the full capabilities of the system
Duration
in weeks
3
5 Implementation
1. Simplicity
2. Consistency
3. Identity
4. Visual appeal
5. Compatibility.
Design leads to a model that contains the appropriate mix of aesthetics, content, and
technology. The mix will vary depending upon the nature of the Application, and as a
consequence the design activities that are emphasized will also vary.
The activities of the Design process;
1. Interface design-describes the structure and organization of the user interface.
Includes a representation of screen layout, a definition of the modes of interaction,
and a description of navigation mechanisms.
Interface Control mechanisms- to implement navigation options, the designer
selects form one of a number of interaction mechanism;
a. Navigation menus
b. Graphic icons
c. Graphic images
Interface Design work flow- the work flow begins with the identification of user, task,
and environmental requirements. Once user tasks have been identified, user scenarios are
created and analyzed to define a set of interface objects and actions.
2. Aesthetic design-also called graphic design, describes the look and feel of the
Application. Includes color schemes, geometric layout. Text size, font and
placement, the use of graphics, and related aesthetic decisions.
3. Content design-defines the layout, structure, and outline for all content that is
presented as part of the Application. Establishes the relationships between content
objects.
2.5
Office suite of applications, included in the Professional and higher editions or sold
separately.
Microsoft Access stores data in its own format based on the Access Jet Database Engine.
It can also import or link directly to data stored in other applications and databases.
Software developers and data architects can use Microsoft Access to develop application
software, and "power users" can use it to build software applications. Like other Office
applications, Access is supported by Visual Basic for Applications, an object-oriented
programming language that can reference a variety of objects including DAO (Data
Access Objects), ActiveX Data Objects, and many other ActiveX components. Visual
objects used in forms and reports expose their methods and properties in the VBA
programming environment, and VBA code modules may declare and call Windows
operating-system functions.
History
Project Omega
Microsoft's first attempt to sell a relational database product was during the mid 1980s,
when Microsoft obtained license to sell R: Base. In the late 1980s Microsoft developed
its own solution code named Omega. It was confirmed in 1988 that a database product for
Windows and OS/2 was in development.[ It was going to include "EB" Embedded Basic
language, which was going to be the language for writing macros in all Microsoft
applications, but the unification of macro languages did not happen until the introduction
of VBA. Omega was also expected to provide a front end to the Microsoft SQL Server.
The application was very resource-hungry, and there were reports that it was working
slowly on the 386 processors that were available at the time. It was scheduled to be
released in the 1st quarter of 1990, but in 1989 the development of the product was reset
and it was rescheduled to be delivered no sooner than in January 1991. Parts of the
project were later used for other Microsoft projects: Cirrus (codename for Access) and
Thunder (codename for Visual Basic, where the Embedded Basic engine was used). After
Access's premiere, the Omega project was demonstrated in 1992 to several journalists
and included features that were not available in Access.
Project Cirrus
After the Omega project was scrapped, some of its developers were assigned to the Cirrus
project (most were assigned to the team which created Visual Basic). Its goal was to
create a competitor for applications like Paradox or dBase that would work on Windows.
After Microsoft acquired FoxPro, there were rumors that the Microsoft project might get
replaced with it, but the company decided to develop them in parallel. It was assumed
that the project would make use of Extensible Storage Engine (Jet Blue) but, in the end,
only support for Microsoft Jet Database Engine (Jet Red) was provided. The project used
some of the code from both the Omega project and a pre-release version of Visual Basic.
In July 1992, betas of Cirrus shipped to developers and the name Access became the
official name of the product.
Timeline
1992: Microsoft released Access version 1.0 on 13 November 1992, and an Access 1.1
release in May 1993 to improve compatibility with other Microsoft products and to
include the Access Basic programming language.
1994: Microsoft specified the minimum hardware requirements for Access v2.0 as:
Microsoft Windows v3.1 with 4 MB of RAM required, 6 MB RAM recommended; 8 MB
of available hard disk space required, 14 MB hard disk space recommended. The product
shipped on seven 1.44 MB diskettes. The manual shows a 1994 copyright date.
Originally, the software worked well with relatively small databases but testing showed
that some circumstances caused data corruption. For example, file sizes over 10 MB
proved problematic (note that most hard disks held less than 500 MB at the time this was
in wide use), and the Getting Started manual warns about a number of circumstances
where obsolete device drivers or incorrect configurations can cause data loss. With the
phasing out of Windows 95, 98 and ME, improved network reliability, and Microsoft
having released 8 service packs for the Jet Database Engine, the reliability of Access
databases has improved and it supports both more data and a larger number of users.
With Office 95, Microsoft Access 7.0 (a.k.a. "Access 95") became part of the Microsoft
Office Professional Suite, joining Microsoft Excel, Word, and PowerPoint and
transitioning from Access Basic to Visual Basic for Applications (VBA). Since then,
Microsoft has released new versions of Microsoft Access with each release of Microsoft
Office. This includes Access 97 (version 8.0), Access 2000 (version 9.0), Access 2002
(version 10.0), Access 2003 (version 11.5), Access 2007 (version 12.0), and Access 2010
(version 14.0).
Versions 3.0 and 3.5 of Microsoft Jet database engine (used by Access 7.0 and the laterreleased Access 97 respectively) had a critical issue which made these versions of Access
unusable on a computer with more than 1 GB of memory.[18] While Microsoft fixed this
problem for Jet 3.5/Access 97 post-release, it never fixed the issue with Jet 3.0/Access
95.
The native Access database format (the Jet MDB Database) has also evolved over the
years. Formats include Access 1.0, 1.1, 2.0, 7.0, 97, 2000, 2002, 2007, and 2010. The
most significant transition was from the Access 97 to the Access 2000 format; which is
not backward compatible with earlier versions of Access. As of 2011 all newer versions
of Access support the Access 2000 format. New features were added to the Access 2002
format which can be used by Access 2002, 2003, 2007.
Microsoft Access 2000 increased the maximum database size to 2GB from 1GB in
Access 97.
Microsoft Access 2007 introduced a new database format: ACCDB. ACCDB supports
links to SharePoint lists and complex data types such as multivalue and attachment fields.
These new field types are essentially recordsets in fields and allow the storage of multiple
values or files in one field. Microsoft Access 2007 also introduced File Attachment field,
which stored data more efficiently than the OLE (Object Linking and Embedding) field.
Prior to the introduction of Access, Borland (with Paradox and dBase) and Fox (with
FoxPro) dominated the desktop database market. Microsoft Access was the first massmarket database program for Windows. With Microsoft's purchase of FoxPro in 1992 and
the incorporation of Fox's Rushmore query optimization routines into Access, Microsoft
Access quickly became the dominant database for Windows - effectively eliminating the
competition which failed to transition from the MS-DOS world.
Access's initial codename was Cirrus; the forms engine was called Ruby. This was before
Visual Basic. Bill Gates saw the prototypes and decided that the BASIC language
component should be co-developed as a separate expandable application, a project called
Thunder. The two projects were developed separately.
Access was also the name of a communications program from Microsoft, meant to
compete with ProComm and other programs. This proved a failure and was dropped.
Years later, Microsoft reused the name for its database software.
Uses
In addition to using its own database storage file, Microsoft Access also may be used as
the 'front-end' of a program while other products act as the 'back-end' tables, such as
Microsoft SQL Server and non-Microsoft products such as Oracle and Sybase. Multiple
backend sources can be used by a Microsoft Access Jet Database (accdb and mdb
formats). Similarly, some applications such as Visual Basic, ASP.NET, or Visual
Studio .NET will use the Microsoft Access database format for its tables and queries.
Microsoft Access may also be part of a more complex solution, where it may be
integrated with other technologies such as Microsoft Excel, Microsoft Outlook, Microsoft
Word, Microsoft PowerPoint and ActiveX Controls.
Access tables support a variety of standard field types, indices, and referential integrity
including cascading updates and deletes. Access also includes a query interface, forms to
display and enter data, and reports for printing. The underlying Jet database, which
contains these objects, is multiuser-aware and handles record-locking.
Repetitive tasks can be automated through macros with point-and-click options. It is also
easy to place a database on a network and have multiple users share and update data
without overwriting each other's work. Data is locked at the record level which is
significantly different from Excel which locks the entire spreadsheet.
There are template databases within the program and for download from their website.
These options are available upon starting Access and allow users to enhance a database
with predefined tables, queries, forms, reports, and macros. Database templates support
VBA code but Microsoft's templates do not include VBA code.
Programmers can create solutions using the programming language Visual Basic for
Applications (VBA), which is similar to Visual Basic 6.0 (VB6) and used throughout the
Microsoft Office programs such as Excel, Word, Outlook and PowerPoint. Most VB6
code, including the use of Windows API calls, can be used in VBA. Power users and
developers can extend basic end-user solutions to a professional solution with advanced
automation, data validation, error trapping, and multi-user support.
The number of simultaneous users that can be supported depends on the amount of data,
the tasks being performed, level of use, and application design. Generally accepted limits
are solutions with 1 GB or less of data (Access supports up to 2 GB) and performs quite
well with 100 or fewer simultaneous connections (255 concurrent users are supported).
This capability is often a good fit for department solutions. If using an Access database
solution in a multi-user scenario, the application should be "split". This means that the
tables are in one file called the back end (typically stored on a shared network folder) and
the application components (forms, reports, queries, code, macros, linked tables) are in
another file called the front end. The linked tables in the front end point to the back end
file. Each user of the Access application would then receive his or her own copy of the
front end file.
Applications that run complex queries or analysis across large datasets would naturally
require greater bandwidth and memory. Microsoft Access is designed to scale to support
more data and users by linking to multiple Access databases or using a back-end database
like Microsoft SQL Server. With the latter design, the amount of data and users can scale
to enterprise-level solutions.
Microsoft Access's role in web development prior to version 2010 is limited. User
interface features of Access, such as forms and reports, only work in Windows. In
versions 2000 through 2003 an Access object type called Data Access Pages created
publishable web pages. Data Access Pages are no longer supported. The Microsoft Jet
Database Engine, core to Access, can be accessed through technologies such as ODBC or
OLE DB. The data (i.e., tables and queries) can be accessed by web-based applications
developed in ASP.NET, PHP, or Java. With the use of Microsoft's Terminal Services and
Remote Desktop Application in Windows Server 2008 R2, organizations can host Access
applications so they can be run over the web. This technique does not scale the way a
web application would but is appropriate for a limited number of users depending on the
configuration of the host.
Access 2010 allows databases to be published to SharePoint 2010 web sites running
Access Services. These web-based forms and reports run in any modern web browser.
The resulting web forms and reports, when accessed via a web browser, don't require any
add-ins or extensions (e.g. ActiveX, Silverlight).
Access 2013 can create web applications directly in SharePoint 2013 sites running Access
Services. Access 2013 web solutions store its data in an underlying SQL Server database
which is much more scalable and robust than the Access 2010 version which used
SharePoint lists to store its data.
Features
Users can create tables, queries, forms and reports, and connect them together with
macros. Advanced users can use VBA to write rich solutions with advanced data
manipulation and user control. Access also has report creation features that can work with
any data source that Access can access.
The original concept of Access was for end users to be able to access data from any
source. Other features include: the import and export of data to many formats including
Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server, Oracle, ODBC, etc. It also
has the ability to link to data in its existing location and use it for viewing, querying,
editing, and reporting. This allows the existing data to change while ensuring that Access
uses the latest data. It can perform heterogeneous joins between data sets stored across
different platforms. Access is often used by people downloading data from enterprise
level databases for manipulation, analysis, and reporting locally.
There is also the Jet Database format (MDB or ACCDB in Access 2007) which can
contain the application and data in one file. This makes it very convenient to distribute
the entire application to another user, who can run it in disconnected environments.
One of the benefits of Access from a programmer's perspective is its relative
compatibility with SQL (structured query language) queries can be viewed graphically
or edited as SQL statements, and SQL statements can be used directly in Macros and
VBA Modules to manipulate Access tables. Users can mix and use both VBA and
"Macros" for programming forms and logic and offers object-oriented possibilities. VBA
can also be included in queries.
Microsoft Access offers parameterized queries. These queries and Access tables can be
referenced from other programs like VB6 and .NET through DAO or ADO. From
Microsoft Access, VBA can reference parameterized stored procedures via ADO.
The desktop editions of Microsoft SQL Server can be used with Access as an alternative
to the Jet Database Engine. This support started with MSDE (Microsoft SQL Server
Desktop Engine), a scaled down version of Microsoft SQL Server 2000, and continues
with the SQL Server Express versions of SQL Server 2005 and 2008.
Microsoft Access is a file server-based database. Unlike clientserver relational database
management systems (RDBMS), Microsoft Access does not implement database triggers,
stored procedures, or transaction logging. Access 2010 includes table-level triggers and
stored procedures built into the ACE data engine. Thus a Client-server database system is
not a requirement for using stored procedures or table triggers with Access 2010. Tables,
queries, forms, reports and macros can now be developed specifically for web base
application in Access 2010. Integration with Microsoft SharePoint 2010 is also highly
improved.
Access Services and Web database
ASP.NET web forms can query a Microsoft Access database, retrieve records and display
them on the browser.
SharePoint Server 2010 via Access Services allows for Access 2010 databases to be
published to SharePoint, thus enabling multiple users to interact with the database
application from any standards-compliant Web browser. Access Web databases published
to SharePoint Server can use standard objects such as tables, queries, forms, macros, and
reports. Access Services stores those objects in SharePoint.
Access 2013 offers the ability to publish Access web solutions on SharePoint 2013.
Rather than using SharePoint lists as its data source, Access 2013 uses an actual SQL
Server database hosted by SharePoint or SQL Azure. This offers a true relational database
with referential integrity, scalability, maintainability, and extensibility compared to the
SharePoint views Access 2010 used.. The macro language is enhanced to support more
sophisticated programming logic and database level automation.
HTML
dBase (dropped in Access 2013)
Paradox (with Access 2007)
Lotus 1-2-3
ODBC-compliant data containers, including:
o Microsoft SQL Server
o Oracle
o MySQL
o PostgreSQL
o IBM Lotus Notes
o AS 400 DB2
Microsoft Access Runtime
Microsoft offers free runtime versions of Microsoft Access: Access 2013 Runtime,
Access 2010 Runtime, Access 2007 Runtime, which allow users to run an Access desktop
application without needing to purchase or install a full version of Microsoft Access. This
allows Access developers to create databases that can be freely distributed to an unlimited
number of end-users. The runtime version allows users to view, edit and delete data,
along with running queries, forms, reports, macros and VBA module code. But the
runtime version does not allow users to change the design of Microsoft Access objects or
code. The runtime versions are similar to their corresponding full version of Access and
usually compatible with earlier versions; for example Access Runtime 2010 allows a user
to run an Access application made with the 2010 version as well as 2007 through 2000.
Due to deprecated features in Access 2013, its runtime version is also unable to support
those older features.
Development
Access stores all database tables, queries, forms, reports, macros, and modules in the
Access Jet database as a single file.
For query development, Access offers a "Query Designer", a graphical user interface that
allows users to build queries without knowledge of structured query language. In the
Query Designer, users can "show" the datasources of the query (which can be tables or
queries) and select the fields they want returned by clicking and dragging them into the
grid. One can set up joins by clicking and dragging fields in tables to fields in other
tables. Access allows users to view and manipulate the SQL code if desired. Any Access
table, including linked tables from different data sources, can be used in a query.
Access also supports the creation of "pass-through queries". These snippets of SQL code
can address external data sources through the use of ODBC connections on the local
machine. This enables users to interact with data stored outside the Access program
without using linked tables or Jet. Users construct the pass-through queries using the SQL
syntax supported by the external data source.
When developing reports (in "Design View") additions or changes to controls cause any
linked queries to execute in the background and the designer is forced to wait for records
to be returned before being able to make another change. This feature cannot be turned
off.
Non-programmers can use the macro feature to automate simple tasks through a series of
drop-down selections. Macros allow users to easily chain commands together such as
running queries, importing or exporting data, opening and closing forms, previewing and
printing reports, etc. Macros support basic logic (IF-conditions) and the ability to call
other macros. Macros can also contain sub-macros which are similar to subroutines. In
Access 2007, enhanced macros included error-handling and support for temporary
variables. Access 2007 also introduced embedded macros that are essentially properties
of an object's event. This eliminated the need to store macros as individual objects.
However, macros were limited in their functionality by a lack of programming loops and
advanced coding logic until Access 2013. With significant further enhancements
introduced in Access 2013, the capabilities of macros became fully comparable to VBA.
They made feature rich web-based application deployments practical, via a greatly
data, ADO is required. DAO is most appropriate for managing data in Access/Jet
databases, and the only way to manipulate the complex field types in ACCDB tables.
In the database container or navigation pane in Access 2007 and later versions, the
system automatically categorizes each object by type (e.g., table, query, macro). Many
Access developers use the Leszynski naming convention, though this is not universal; it
is a programming convention, not a DBMS-enforced rule. It is particularly helpful in
VBA where references to object names may not indicate its data type (e.g. tbl for tables,
qry for queries).
Developers deploy Microsoft Access most often for individual and workgroup projects
(the Access 97 speed characterization was done for 32 users). Since Access 97, and with
Access 2003 and 2007, Microsoft Access and hardware have evolved significantly.
Databases under 1 GB in size (which can now fit entirely in RAM) and 50 simultaneous
users are well within the capabilities of Microsoft Access. Of course, performance
depends on the database design and tasks. Disk-intensive work such as complex
searching and querying take the most time.
As data from a Microsoft Access database can be cached in RAM, processing speed may
substantially improve when there is only a single user or if the data are not changing. In
the past, the effect of packet latency on the record-locking system caused Access
databases to run slowly on a Virtual Private Network (VPN) or a Wide Area Network
(WAN) against a Jet database. As of 2010 broadband connections have mitigated this
file server) and a "front-end" (containing the application's objects such as queries, forms,
reports, macros, and modules). The "front-end" Access application is distributed to each
user's desktop and linked to the shared database. Using this approach, each user has a
copy of Microsoft Access (or the runtime version) installed on their machine along with
their application database. This reduces network traffic since the application is not
retrieved for each use. The "front-end" database can still contain local tables for storing a
user's settings or temporary data. This split-database design also allows development of
the application independent of the data. One disadvantage is that users may make various
changes to their own local copy of the application and this makes it hard to manage
version control. When a new version is ready, the front-end database is replaced without
impacting the data database. Microsoft Access has two built-in utilities, Database Splitter
and Linked Table Manager, to facilitate this architecture.
Linked tables in Access use absolute paths rather than relative paths, so the development
environment either has to have the same path as the production environment or a
"dynamic-linker" routine can be written in VBA.
For very large Access databases, this may have performance issues and a SQL backend
should be considered in these circumstances. This is less of an issue if the entire database
can fit in the PC's RAM since Access caches data and indexes.
Access to SQL Server Upsizing (Upgrading) (SQL as a backend)
In previous versions of Access, including Access 2010, databases can also be converted
to Access Data Projects (ADP) which are tied directly to one SQL Server database. This
feature was removed from Access 2013. ADP's support the ability to directly create and
modify SQL Server objects such as tables, views, stored procedures, and SQL Server
constraints. The views and stored procedures can significantly reduce the network traffic
for multi-table joins. Fortunately, SQL Server supports temporary tables and links to
other data sources beyond the single SQL Server database.
Finally, some Access databases are completely replaced by another technology such as
ASP.NET or Java once the data is converted. However any migration may dictate major
effort since the Access SQL language is a more powerful superset of standard SQL.
Further, Access application procedures, whether VBA and macros, are written at a
relatively higher level versus the currently available alternatives that are both robust and
comprehensive. Note that the Access macro language, allowing an even higher level of
abstraction than VBA, was significantly enhanced in Access 2010 and again in Access
2013.
In many cases, developers build direct web-to-data interfaces using ASP.NET, while
keeping major business automation processes, administrative and reporting functions that
don't need to be distributed to everyone in Access for information workers to maintain.
While all Access data can migrate to SQL Server directly, some queries cannot migrate
successfully. In some situations, you may need to translate VBA functions and user
defined functions into TSQL or .NET functions / procedures. Crosstab queries can be
migrated to SQL Server using the PIVOT command.
Protection
Microsoft Access offers several ways to secure the application while allowing users to
remain productive.
The most basic is a database password. Once entered, the user has full control of all the
database objects. This is a relatively weak form of protection which can be easily
cracked.
A higher level of protection is the use of workgroup security requiring a user name and
password. Users and groups can be specified along with their rights at the object type or
individual object level. This can be used to specify people with read-only or data entry
rights but may be challenging to specify. A separate workgroup security file contains the
settings which can be used to manage multiple databases. Workgroup security is not
supported in the Access 2007 and Access 2010 ACCDB database format, although Access
2007 and Access 2010 still support it for MDB databases.
Databases can also be encrypted. The ACCDB format offers significantly advanced
encryption from previous versions.
Additionally, if the database design needs to be secured to prevent changes, Access
databases can be locked/protected (and the source code compiled) by converting the
database to a .MDE file. All changes to the VBA project (modules, forms, or reports)
need to be made to the original MDB and then reconverted to MDE. In Access 2007 and
Access 2010, the ACCDB database is converted to an ACCDE file. Some tools are
available for unlocking and "decompiling", although certain elements including original
VBA comments and formatting are normally irretrievable.
File extensions
Microsoft Access saves information under the following file formats:
File format
Extensio
n
.ade
.adp
.adn
.accdb
.accdr
.accdt
.accda
.mdb
.cdb
.mda
workgroups (2).
Access Blank Database Template (2003 and earlier)
Access Add-in Data (2003 and earlier)
.mdn
.mdt
.mdw
.mdf
.mde
earlier)
Protected Access Database, with compiled VBA and/or macros (2007)
Windows Shortcut: Access Macro
Windows Shortcut: Access Query
Windows Shortcut: Access Report
Windows Shortcut: Access Table
Windows Shortcut: Access Form
Access lock files (associated with .mdb)
Access lock files (associated with .accdb)
.accde
.mam
.maq
.mar
.mat
.maf
.ldb
.laccdb
Versions
Version
Access 1.1
Access 2.0
Access for
Version Release
numbe
Date
version
r
1.0
2.0
7.0
1992
1993
Aug. 24,
1.1
2.0
3.0
Windows
95
Access 97
2000
Supported OS
Windows 3.0
Windows 3.1x
Windows 95
1995
8.0
Jan. 16,
1997
Access
Jet
9.0
June 7,
1999
3.5
Windows 95,
Office 97
Windows NT 3.51
Professional and
SP5, Windows NT
Developer
4.0 SP2
4.0 SP1 Windows 95,
Windows NT 4.0,
Office 2000
Professional,
Windows 98,
Access
10.0
2002
Access
May 31,
Windows 2000
4.0 SP1 Windows NT 4.0
2001
11.0
2003
Premium and
Developer
Office XP
Professional and
Windows 2000,
Developer
Windows Me
Nov. 27, 4.0 SP1 Windows 2000 SP3 Office 2003
2003
or later, Windows
Professional and
12.0
Jan. 27,
12
2007
Windows 7
Windows XP SP2,
Enterprise
Office 2007
Windows Server
Professional,
Professional Plus,
operating system
Ultimate and
Enterprise
Notes
There are no Access versions between 2.0 and 7.0 because the Office 95 version
was launched with Word 7. All of the Office 95 products have OLE 2 capabilities,
and Access 7 shows that it was compatible with Word 7.
Version number 13 was skipped.
Microsoft Access has been around for some time, yet people often still ask me what is
Microsoft Access and what does it do? Microsoft Access is a part of the Microsoft Office
Suite. It does not come with all versions of Microsoft Office, so if you specifically want
Microsoft Access make sure the office suite you are purchasing has it. Microsoft Access
has the look and feel of other Microsoft Office products, including its layout and
navigational aspects. That is where the similarity ends. Microsoft Access is a database
and, more specifically, a relational database. This will be explained in more detail later.
Access has an .mdb extension by default, whereas Microsoft Word has the .doc
extension. Although this has changed in Access 2007 where the extension is now an
accdb extension. Early versions of Access cannot read accdb extensions but Microsoft
Access 2007 can read and change earlier versions of Access. The above is a bried
overview of what is Microsoft Access. Now lets look at it in a bit more detail. What is
Microsoft Access made up of?
The Microsoft Access Database is made up of 7 major components:
Tables;
Relationships;
Queries;
Forms;
Reports;
Macros;
Modules.
take a bit of time when setting up your tables. Queries, forms, etc. are usually based on a
table. The tables that contain data look a bit like a table in Microsoft Word or a
Microsoft Excel Spreadsheet, when opened. They have columns and rows as does a
table in Microsoft Word and an Excel worksheet. Each of the columns will have a field
name at the top and each of the rows will represent a record.
As an example:
2.5.3 Forms
Forms are the primary interface through which the users of the database enter data. The
person who enters the data will interact with forms regularly. The programmer can set the
forms to show only the data required. By using queries, properties, macros and VBA
(Visual Basic for Applications), the ability to add, edit and delete data can also be set.
Forms can be set up and developed to reflect the use they will be required for.
2.5.4Reports
Reports are the results of the manipulation of the data you have entered into the database.
Unlike forms, they cannot be edited. Reports are intended to be used to output data to
another device or application, i.e. printer, fax, Microsoft Word or Microsoft Excel.
2.5.5 Relationships
Relationships are the bonds you build between the tables. They join tables that have
associated elements. To do this there is a field in each table, which is linked to each other,
and have the same values.
2.5.6Queries
Queries are the means of manipulating the data to display in a form or a report. Queries
can sort, calculate, group, filter, join tables, update data, delete data, etc. Their power is
immense. The Microsoft Access database query language is SQL (Structured Query
Language). The need to know SQL is not required in the early stages of learning Access.
Microsoft Access writes the SQL for you, after you tell it what you want, in the Design
view of the queries window.
2.5.7Macros
Macros are an automatic way for Access to carry out a series of actions for the database.
Access gives you a selection of actions that are carried out in the order you enter. Macros
can open forms; run queries, change values of a field, run other Macros, etc. the list is
almost endless.
2.5.8Modules Modules are the basis of the programming language that supports
Microsoft Access, The module window is where you can write and store Visual Basic
for Applications (VBA). Advanced users of Microsoft Access tend to use VBA instead
of Macros.
Pledges Table
Contributors Form
which reveals information of interest to someone who matters within the project
community.
4.2 Testing Methodologies
1. Black Box Testing
It is the testing process in which tester can perform testing on
an application without having any internal structural knowledge of application. Usually
Test Engineers are involved in the black box testing.
Regression Testing.
Re-Testing.
Static Testing.
Dynamic Testing.
Alpha Testing.
Beta Testing.
Monkey Testing
Compatibility Testing.
Installation Testing.
Regression Testing: It is one of the best and important testing. Regression testing is
the process in which the functionality, which is already tested before, is once again tested
whenever some new change is added in order to check whether the existing functionality
remains same.
Re-Testing: It is the process in which testing is performed on some functionality
which is already tested before to make sure that the defects are reproducible and to rule
out the environments issues if at all any defects are there.
Static Testing: It is the testing, which is performed on an application when it is not
been executed.
Ex: GUI, Document Testing
Dynamic Testing: It is the testing which is performed on an application when it is
being executed.ex: Functional testing.
Alpha Testing: It is a type of user acceptance testing, which is conducted on an
application when it is just before released to the customer.
Beta-Testing: It is a type of UAT that is conducted on an application when it is
released to the customer, when deployed in to the real time environment and being
accessed by the real time users.
Monkey Testing: It is the process in which abnormal operations, beyond capacity
operations are done on the application to check the stability of it in spite of the users
abnormal behavior.
Compatibility testing: It is the testing process in which usually the products are tested
on the environments with different combinations of databases (application servers,
browsersetc) In order to check how far the product is compatible with all these
environments platform combination.
Installation Testing: It is the process of testing in which the tester try to install or try
to deploy the module into the corresponding environment by following the guidelines
produced in the deployment document and check whether the installation is successful or
not.
The system analyst used the following test data to check for errors from the
system:
Normal data
This is the correct and valid data that was input into the database. The system accepted
the data and updated the tables appropriately. The following is an example of normal data
entered without any error
text message displayed by the system:
Exceptional data
The system analyst used invalid data to test whether the system obeyed the syntax of the
program.
The following is an example of exceptional data used by the analyst:
Exceptional data from accommodation form. When an data that is not part of the
list in the record is entered, the system displays the following error message:
Unit
Functionality
System
Interface
Performance
Regression
Pilot
Integration
Acceptance
01/11/2014
System Date, if
applicable:
01/11/2014
Tester:
Test Case
Number:
TD_COD_CL02
Test Case
Description:
Results:
Pass
Fail
Incident Number, NA
if applicable:
INTRODUCTION
Requirement(s)
to be tested:
Want to check whether the project accept suitable value or not like it
must accept only integer value in contact number option etc.
Roles and
Divya Sharma and Mr. Manpreet Singh responsible for this test.
Responsibilities
Here Divya Sharma enters the value and Mr. Manpreet Singh check
:
the output of such value.
ENVIRONMENTAL NEEDS
Hardware:
Software:
Ms access 2007
TEST
All ms access forms have been tested under this test case regarding
the acceptance of the input and providence of the output.
Input
All mentioned things were required that appear on the screen like to
Specifications:
Expected
Results of
Case:
Output
Specifications:
GENERAL INFORMATION
Test Stage:
Unit
Functionality
System
Interface
Performance
Regression
Pilot
Integration
Acceptance
03/11/2014
System Date, if
applicable:
03/11/2014
Tester:
Test Case
Number:
TD_COD_CL01
Test Case
Description:
Results:
Pass
Fail
Incident Number, NA
if applicable:
INTRODUCTION
Requirement(s)
to be tested:
Want to check whether the all ms access forms provides better and
good resolution of output.
Roles and
Mr. Manpreet Singh and Vishal Shrimal responsible for this test.
Responsibilities
Here Vishal Shrimal runs all forms and Mr. Manpreet Singh check
:
the output of that form.
ENVIRONMENTAL NEEDS
Hardware:
Software:
MS ACCESS 2007
TEST
All MS ACCESS forms has been tested under this test case
regarding the output they provides.
Input
Specifications:
Expected
Results of
Case:
Output
Specifications:
Unit
Functionality
System
Interface
Performance
Regression
Pilot
Integration
Acceptance
27/10/2014
System Date, if
applicable:
27/10/2014
Tester:
Riddhima Babbar
Test Case
Number:
TD_COD_CL03
Test Case
Description:
Check all connectivity and data base validity and existence and
acceptance of table data.
Results:
Pass
Fail
Incident Number, NA
if applicable:
INTRODUCTION
Requirement(s)
to be tested:
Want to check whether the database and table used in the project are
similar and accept the value .
Roles and
Mr.Govind Bhilwara and Ms Riddhima Babbar are responsible for
Responsibilities this test.
:
Here Govind Bhilwara enters the value and Riddhima Babbar
checks the output of such value.
ENVIRONMENTAL NEEDS
Hardware:
Software:
MS ACCESS 2007.
TEST
All database connectivity code will be test under this test case.
Input
Specifications:
Give all details that appear on the screen and check that the data
flows rightly between project and database or not.
Expected
Results of
Case:
Output
Specifications:
We check that all data flows rightly between our system and
database or not by providing all data and as we expected there is no
exception will occur means our project will run smoothly with
database also.
5.1 Conclusion:
The efficiency of any system designed to suit an organization depends on cooperation
during the implementation stage and also flexibility of the system to adopt itself to the
organization. Donations Management System has been developed to overcome the
problems with existing manual system which causes lot of problems in tracking the
business activities with different people.
As evidence of the success of this system, all the data regarding users at different levels
are stored at server side through which the authorities can take decisions in time, and all
the transactions will be recorded in a well refined manner. The Donations Management
System will be best suited to any organization, which has sub location at different places.
Data Integrity is maintained by well-defined security in the database, so the results
coming out are live and accurate. In Total, quality, safety and user satisfaction are
improved greatly in the organization.
5.2 Limitations:
1. Database systems are complex, difficult, and time-consuming to design
2. Damage to database affects virtually all applications programs
3. Substantial hardware and software start-up costs
4. Initial training required for all programmers and users
5. Minimum hardware and software required.
6. As we have included many features and too much user handling, the expected
code could be complex and not easy to improve by another programmer.
7. The system will undergo system entropy hence an extra cost of updating will be
incurred to keep the system competitive in the ICT and BUSINESS world.
8. The customer service management system will incur an extra cost on the
electricity and internet bills due to computerization of the Donations Management
System.
9. The company will be required to train its employees on how to manage the system
hence the output capacity will reduce a bit during this period
1. In the future, the current system can be expanded by adding Contributors Head
where each Contributor head will handle each user separately.
2. More use of VBA will be used to make the convenient use of software by the user
and every information which requires interactivity
3. New feature can be used for password and authorization in the future.
4. The current system can also be implemented from the contributors perspective so
that contributors have the option for searching of campaign schedules.
5. In the future, more advanced technologies can be used in order to enhance the
current system scope which can be made fit for different organizations use.
5.4 Bibliography:
1. Davinder Singh Minhas, Drag and Drop MS access 2007, Sterling publishers pvt.
Ltd, 2007
2. Advanced database projects in Access 2007,Julian Mott, Hodder education, 2009
3. The complete reference, Microsoft office access 2007 Virginia Anderson
4. Pressman, R.S., Software Engineering: A Practitioners Approach, McGraw Hill
Int. S Student Ed., 6th Ed., 2005
5. Sommerville, I., Software Engineering, Pearson Education, 6th ed., 2001
6. Jalote, P., An Integrated Approach to Software Engineering, 2nd ed., Narosa, 1998
7. Behforooz, A. and F. Hudson, Fundamentals of Software Engineering, Oxford
University Press, 1996
Websites:
http://en.wikipedia.org/wiki/Microsoft_Access
https://www.housing.wisc.edu/docs/tlc_quicktip_access.pdf
www.simply-access.com/What-Is-Microsoft-Access.html
A-1
SCREEN SHOTS
Campaign Summary Report
2. Unpaid Pledges
Switchboard Manager
Forms output
1. Contributors
A-2 Coding
GLOBAL CODING
Option Compare Database
Option Explicit
Const conObjStateClosed = 0
Const conDesignView = 0
CODING OF FORMS
Option Compare Database
Option Explicit
Private Sub Detail_Click()
End Sub
Private Sub Form_Open(Cancel As Integer)
' Minimize the database window and initialize the form.
DoCmd.Hourglass False
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("Donation Campaign Setup")
If rst.RecordCount = 0 Then
rst.AddNew
rst.Update
MsgBox "Before using this application, you need to enter your campaign
information."
DoCmd.OpenForm "Campaign Information", , , , , acDialog
End If
rst.Close
dbs.Close
Form_Open_Exit:
Exit Sub
Form_Open_Err:
MsgBox Err.Description
Resume Form_Open_Exit
End Sub
End Sub
strSQL = strSQL & " WHERE [ItemNumber] > 0 AND [SwitchboardID]=" & Me!
[SwitchboardID]
strSQL = strSQL & " ORDER BY [ItemNumber];"
Set rst = dbs.OpenRecordset(strSQL)
' If there are no options for this Switchboard Page,
' display a message. Otherwise, fill the page with the items.
If (rst.EOF) Then
Me![OptionLabel1].Caption = "There are no items for this switchboard page"
Else
While (Not (rst.EOF))
Me("Option" & rst![ItemNumber]).Visible = True
Me("OptionLabel" & rst![ItemNumber]).Visible = True
Me("OptionLabel" & rst![ItemNumber]).Caption = rst![ItemText]
rst.MoveNext
Wend
End If
End Sub
Private Function HandleButtonClick(intBtn As Integer)
' This function is called when a button is clicked.
' If no item matches, report the error and exit the function.
If (rst.NoMatch) Then
MsgBox "There was an error reading the Switchboard Items table."
rst.Close
dbs.Close
Exit Function
End If
End Select
HandleButtonClick_Exit:
Exit Function
HandleButtonClick_Err:
' If the action was cancelled by the user for
' some reason, don't display an error message.
' Instead, resume on the next line.
If (Err = conErrDoCmdCancelled) Then
Resume Next
Else
MsgBox "There was an error executing the command.", vbCritical
Resume HandleButtonClick_Exit
End If
End Function