This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
This chapter compares and evaluates a selection of methodologies, in order to select the most appropriate working methods and tools for the development of the client's proposed system. Other research material was also considered, for example, looking at the different library systems that are out there to help establish specific functionality. An interview and observation will be conducted with Oxfordshire County Library service. However, the project is a real time software project; books have been considered the most over websites. Websites often have a large amount of information on the subject and not been referenced, for example, the information on website could be out dated, (Literature Review). Therefore, websites were carefully chosen. Human Computer Interaction was also been looked at as it is the most important part for the user to be able to interact with the system without having any problems.
There are quite a few methodologies that can be considered during this type of project. A research has been carried out to see which methodologies are most appropriate to the project and that needs the needs of client's requirements. Upon Avison and Fitzgerald , a methodology is following a series of steps and procedures for developing a new higher quality information system. Methodology will help by braking processes into phases and looking at tasks that are required to be performed at each phase, as well as helps avoid schedule delays. Avison and Fitzgerald , say's "A collection of procedures, techniques, tools and documentation aids which will help the systems developers in their efforts to implement a new information system". The following analysis has been conducted as to which methodology are most appropriate to the project.
System Development Life Cycle
The System Development Life Cycle (SDLC) is
The V Model
The Spiral Model
The Waterfall Model
A database is a collection of data that can be well organised so that the data can be retrieved quickly. There are four types of databases that can be used. A brief overview of different types is described below.
Hierarchical database systems are based on around one to many relationships. The data within the database is organised in a tree structure. The advantages of using a Hierarchical database are that it is more fast and simple to use with large databases. The disadvantage of using the Hierarchical database are that it is more complex to manage and maintained the system and it is very complex to implementation the database. This type of database will not be idle for the library to use as the library staff are not computer literate and it will be every hard to look after the system.
Network database systems are based on many to many relationships. Whereas the Hierarchical database is one to many. A network database uses pointers to indicate relationship. The pointers can be setup to and from more entity, making many to many relationship. The advantage of using a network database system is that it is quick to use with pointers and it can hold complex relationships. The disadvantage of using the network database is that the relationships have to be setup explicitly. Using this type of database in the library would actually benefit then as there can share data.
Flat File database systems are based on a single table. Which holds the data in a separate files and the table is not connected to anything else. The advantage of using a flat file databases system is that it is very easy to create and it is mostly used for storing phone numbers and addresses. The disadvantage of using the flat file databases system is that it can cause large amount of data duplicates. It also cannot search files across to other table and the storage space will increases allot. There will be difficult to updating and modifying data. This type of database will not be suitable for the library as it will cause many problems.
Relational database systems are made up with two or mare Flat File databases, which can be combined to create a relational database. In a relational database the tables are linked in a variety of ways and using a number of foreign keys. There are two main relationships that can be used in a relational database, which are: One-to-One and One-to-Many. The advantage of using a relational database is that it is easy to change structure of the database. It also is easy to add new tables and remove them. The disadvantage of using the relational database system is that it has restrictions in field lengths and it can be slow if too many tables are added. This type of database will be much suitable for the library to build but as the library will be having more the one system it would be best to have a network database platform, which can operate together.
Microsoft SQL Server
Microsoft SQL Server is powerful software developed by Microsoft Corporation, as already said by Otey[-], "implement robust database clustering and mirroring solution featuring practical management procedures". It is mostly used in medium and large sized businesses, as explained by Microsoft [-]. Microsoft SQL Server is too expensive to purchase for the company, as the Library is small and the company would like to keep expenses as lowest as possible. However, it is more advanced secure as it has,"built-in security and compliance capabilities", as explained by Microsoft [-].
Microsoft Access is a well know relational database system. It is normally comes other Microsoft Office packages. Microsoft Access is running on Windows operating system and needed to be installed on every machine to access it. Microsoft Access is a basic database is used for very small businesses and can be created very quickly. However it is inefficient when a large amount of records/data is stored on the database or a heavy task needs to be carried out. Also it cannot manage multiple accesses to its database well without causing deadlocks. This could cause by many users are accessing it same time and performing multiple tasks, as explained by Peter Lavin [-]. This will not be suitable for the library as there are more than two staff working at the same time. The advantage of Microsoft Access is that it can be used with Visual Basic to have more control over the application. It would not cost the Library too much to buy Microsoft Access as it is in a good price deal as it comes with few other software's, which will benefits the library. Having already looked at the problems that could rise in the database, it is not a good idea to use Microsoft Access, mainly because of considering multiple accesses. Therefore, it would be better to use a more robust database system, which will overcome these problems.
MySQL is an open source database management system (DBMS), and it can be run on many different platforms like Windows and Linux. MySQL support many different programming languages like Visual Basic, C++, PhP and C #. MySQL is much smaller in size and it is entirely independent and opened source compared to Microsoft SQL Server, oracle and Microsoft Access, according to Wikipedia , and it has grown in popularity over the past years developing more tools, for example allowing the support of mailing lists and dealing with transactions according to catalgimages.wiley.com [-].
MySQL will be a suitable choice and can handle the pressure and can functionally efficiently as the Library grows. The software will be free and it will save cost for the client where other two need to be purchased. The functionality on MySQL is the same on other two programs. Further development can be considered like creating a website in PhP, Java or in other server side programming language as MySQL support many of them, but Microsoft Access does not support that. Microsoft Access data is stored on a local machine and could be misused or stolen, where as MySQL has an extra tools and functions of security. MySQL can be installed on the server, where multi computers can assess the data at the same time.
Development Language Selection
C# programming language is most popular language and used for developing computer software's/programs including database connection to other database programs like MySQL and Oracle. It has been developed by Microsoft as part of .NET framework. .NET framework is a library of Microsoft object. C# can be installing on to many operating systems. Creating the new propose Library system software with C# would be benifishal
Peter Lavin, Upgrading your access application for a multi-user environment, http://www.aspfree.com/c/a/Microsoft%20Access/Upgrading-your-Access-Application-for-a-Multi-user-Environment/ [access; 01 March 2011]
Otey Michael (2009), Microsoft SQL Server 2008, High Availability with Clustering & database Mirroring. Osborne/McGraw-Hill