A research methodology for ETD systems
This chapter discusses the research methodology for this research project. A number of approaches are implemented in this research project in order to develop guidelines for the proposed Configurable ETD system. Figure 3.1 shows the flow of research methodology of this project.
1. Data Gathering and Analysis
- Conduct Literature Review
- Review and compare on existing system
- Identify problems and weakness on current systems
2. Requirement Analysis & Design
- Conduct Brainstorming session
- Design Flowchart
- Design Use Case Diagrams
3. System Implementation & Testing
4. User Evaluation
Figure 3.1: Research Methodology Flow
3.1 RESEARCH METHODOLOGY DESCRIPTION
The main research methodology flow follows the steps mentioned in figure 3.1 closely as a guideline for this research project.
3.1.1 Data Gathering and Analysis
Theoretically, this research is based on previous research works and studies, which covers and focuses on all the aspect ETD systems. The concept of ETD and its framework are studied and analyzed to suit the development of the of an ETD system. Furthermore, all the ideas in ETD related materials such as journals, proceedings, newsletters, articles and conference papers have been extracted and analyzed.
Standards and procedures are specifically identified from the current ETD frameworks. Only relevant standards and procedures are identified, gathered and interpreted to fit in the implementation of a new system.
22.214.171.124 Conduct Literature Review
Some subjects related to the history and benefits of implementing a Configurable ETD system and are initially reviewed. The review is focuses widely on the existing systems to manage ETDs, the criteria involved in developing a suitable ETD system to implement. The current standards, protocols and guidelines to abide by as well as comparisons are made between two of the most widely used ETD systems are also reviewed.
All the information above is collected using on-line search via the Internet specifically on the:
Online databases namely :
Association for Computing Machinery (ACM) Digital library at http://portal.acm.org/dl.cfm. The appropriate published journals, proceedings and newsletter, are reviewed.
Institute of Electrical and Electronic Engineers (IEEE) Online publication at http://ieeexplore.ieee.org/Xplore/. The appropriate published journals, proceedings, conference papers and IEEE magazines, are reviewed.
SAGE Journals Online at http://online.sagepub.com to search and browse for Journals.
SpringerLink at http://www.springerlink.com/home/main.mpx provides a wide range of journals, publications, books and reference works.
ETD resources pages from universities and individual websites and articles.
A ETD resource page which is www.theses.org where it contains links to other ETDs.
Online reference thesis of Degree of Software Engineering, Master of Computer Science and Doctorate of Computer Science from other universities.
126.96.36.199 Review and Compare on Existing System
There are many existing ETD systems out in the market, be it off-the-shelf or strictly customized for a certain organization or even open-source systems. Each and every system has their own advantages and specialties catering to their domain and requirements. The existing ETD systems that were taken into account to study the benefits was MIT's DSpace, Viginia Tech's EDT-db, ProQuest GNU EPrints. These existing systems were studied and reviewed to understand their workflow and functions.
Identify Problems & Weakness on Current Systems
The existing ETD systems were reviewed and compared to uncover their shortcomings, disadvantages and inability to adhere to the requirements of this project. The main focus was given to the configurable features of these systems.
3.1.2 Requirement Analysis & Design
In software engineering practice, the primary aspect is the necessity to understand what the system is supposed to do. There are many methods and ways to capture requirements such as handing out surveys forms, conducting brainstorming sessions with the persons involved, interviews, discussions and so on. For this research project, a brainstorming session with graduate students, lecturers and librarians was performed to gather the initial requirements. After the requirements are discussed and reviewed, a flowchart depicting the overall flow of the proposed system was drawn and discussed together with the working user group to get their feedback and input.
188.8.131.52 Capturing Functional Requirements via Use Case Diagrams.
One convenient way of deciding the functional requirements for a system is to identify its use cases. Use cases are used during the analysis phase of a project to identify and screen a system's functionality. This model also serves as the core for all other development work. Use cases partition the system into a set of logical, minimally related pieces, each of which describes some ways in which the system will function. There are several advantages of viewing a system in terms of its use cases. The reasons are as follows:
Since there are few connections from one use case to another, the use case can be examined separately. It could be understood without having to know all the details of the larger system. Particularly, a user can understand the proposed functionality without having to learn about the functionality of other use cases.
The use cases can be used as the basis for estimating how much time and effort will be needed to design and code the system.
Since use cases can be used to identify the requirements of a system and can be examined separately, it has been decided that use cases will be used to capture the system requirement of this automated tool. For each module of the system, the use cases will be converted into a list of requirements for that module to be implemented successfully.
3.1.3 System Design and Implementation
The design phase is concerned with portraying how the system should perform its task in order to meet the system requirement. In this research project, the design is divided into two parts of an iterative process. Conceptual design enlightens the user on what the system will perform whilst the technical design is a translation from the conceptual design, but it provides a more detailed description in assisting a system developer to understand the actual hardware and programming language needed to solve the problem.
In this research project, the conceptual design gives attention to the system functions whereas the technical design expresses the form the system will take including the hardware and software aspects.
System implementation will elaborate the constructed design and translate it into the form that can be used on a computer system. The configurable ETD system development was programmed and coded during the implementation and unit testing. Prototyping was executed and the source code was amended to guarantee all the user requirements are met. Minor modules were created for each function that is necessary. Each step of the structured module should be completed before moving on to the next step.
184.108.40.206 User Evaluation Testing
After the implementation and unit testing were completed, all the modules and prototypes developed were integrated together. System testing was carried out to make sure there were no errors or fault. The modules were then tested again as a combined system. Testing is conducted by the working group which consist of the group of people involved in the initial requirement stage. The will perform validation of the implementation, to show if it complies with the original requirements, specifications and design.