.NG - 96247.8850 Support System For Software Evaluation
.NG - 96247.8850 Support System For Software Evaluation
1
CHAPTER ONE
INTRODUCTION
1.0 Introduction
This chapter introduces the decision support system for software evaluation.
It is the first chapter in this research work and is specifically focused on the
theoretical background as well as the statement of the problem, aim and
objectives of the study, significance of the study, scope of the study,
organization of the research and finally the definition of terms. This will
bring clarity in regards to the general concept of this research project.
2
decision making processes in a large, computer-based DSS which is
sophisticated and analyze huge amount of information fast. It helps corporate
to increase market share, reduce costs, increase profitability and enhance
quality. The nature of problem itself plays the main role in a process of
decision making. A DSS is an interactive computer based information
system with an organized collection of models, people, procedures, software,
databases, telecommunication, and devices, which helps decision makers to
solve unstructured or semi-structured business problems. Adopting decision
support system to software evaluation guarantees accurate evaluation of the
software [3].
3
accomplished product, but these instruments are applied during the
development of a product. Indeed, most experts agree nowadays that the
development of usable software can only be done by a systematic
consideration of usability aspects within the life-cycle model. One prominent
part is the evaluation of prototypes with respect to usability aspects,
employing suitable evaluation techniques in order to find usability errors and
weaknesses of the software at an early stage. [1].
The technology used is Microsoft Access 2003 and Visual Basic 6.0. The
source code below can be used to save software valuation record to database
in Visual Basic 6.0
Private Sub Command1_Click()
Adodc3.Recordset.Update
MsgBox "SAVED"
End Sub
4
high expenditure activity that consumes a significant portion of companies’
capital budgets. The following are the problems faced:
Selecting the right solution is an exhausting process for companies.
Therefore, selecting a software package that meets the requirements
needs a full examination of many conflicting factors and it is a
difficult task.
Most times the software bought do not meet the needs of the
institution or organization despite the huge amount.
To avoid the problem of software ineffectiveness, this has led
researchers to investigate better ways of evaluating and selecting software
packages.
5
It utilizes a simple approach for evaluation.
The study will also serve as a useful reference material to other
researchers seeking for information concerning the subject.
Chapter three is concerned with the system analysis and design. It presents
the research methodology used in the development of the system, it analyzes
the present system to identify the problems and provides information on the
advantages and disadvantages of the proposed system. The system design is
also presented in this chapter.
6
Chapter five focuses on the summary, constraints of the study, conclusion
and recommendations are provided in this chapter based on the study carried
out.
7
CHAPTER TWO
REVIEW OF RELATED LITERATURE
2.0 Introduction
8
process to perform the selection and evaluation activities in a consistent,
repeatable manner.
How does an organization conduct the initial research into products that
might be candidates for use on their project? How is the initial selection
performed? Some organizations use an “intuitive approach” to select the
initial list of products. This approach uses an individual who has had past
experience with the product or who has “heard good things” about the
product. An inappropriate selection strategy for COTS products can lead to
adverse effects. It could result in a short list of COTS products that may not
be able to fulfill the required functionality; in addition, it might introduce
overhead costs in the system integration and maintenance phases [3]. One
successful method for selecting products is the use of a selection team. When
selecting a COTS component,1 the use of a team of technical experts—
systems/software engineers and several developers—is recommended. When
selecting a COTS-based system, however, the inclusion of business domain
experts and potential end users is recommended [4]. The use of a team
virtually eliminates a single-person perspective or bias and takes into
account the viewpoints and experiences of the evaluators in the selection and
evaluation process.
9
Intangible factors are not the traditional “quality” factors, but rather factors
that are programmatic decisions (i.e., decisions that can or will affect the
overall program during its life span) and that have an effect on the system
utilizing the software. Most of the decisions also depend on intangible
factors that are difficult to quantify. Some costs can be identified up-front,
but others—the ones that organizations need to worry about for the long term
—are hidden.
Risk is another element that should be part of the selection criteria. Many of
the risks associated with system management and operation are not in your
direct control. Each vendor that plays a role in the design, development,
acquisition, integration, deployment, maintenance, operation, or evolution of
part (or all) of your system affects the risks you face in your attempt to
survive cyber attacks, accidents, and subsystem failures. Some possible risk
factors that should be considered are listed below:
10
After a product or component has been selected, continuous risk
management should be applied for the life cycle of the system that uses it.
Continuous risk management is especially important if the product or
component is being used as part of a framework. Unlike other software-
selection decisions, the selection of a framework is a long-term decision—
possibly lasting 10–15 years [4]. After a final selection has been made, the
risks associated with the product or component should be fed back into the
risk management plan. One method for mitigating the risk is to perform
continual vendor-based risk evaluations. This type of evaluation focuses only
on the vendor or vendors supplying the third-party components. Continual
risk evaluation is especially important if the component is a critical part of
the system life cycle for a mission-critical system. This activity should also
be addressed as part of a risk management plan [4].
11
Complexity (user focus):
• Technical support (user manual; frequently asked questions; online
and off-line help).
• Collaborative tools if applicable (asynchronous – email, conferencing;
synchronous – chat, audio- conferencing, whiteboard, virtual
networking);
• Usability (seamless technology; degree of intuitiveness; ease of use;
navigation; consistency; stability; functionality)
Control:
• Secured access (password protection; encryption; firewall).
• Personalization.
• Privacy.
12
• Availability of support by the software supplier to the institution and
the users.
• Cost to the institution (i.e., local server support).
13
An example of the weighted score card is presented in Table 1. It may
be obvious from the evaluator scorecard results which software product
should be short listed. The preparation of a common comparison matrix,
consisting the results of each of the scorecards above, can be a good choice
for presentation of the total result in a table form.
Define criteria
Search for components
Shortlist candidates
Evaluate candidates
14
Analyze results and choose component
15
functions with support for model building and model-based reasoning. They
support framing, modeling, and problem solving. Typical application areas
of DSSs are management and planning in business, health care, the military,
and any area in which management will encounter complex decision
situations. Decision support systems are typically used for strategic and
tactical decisions faced by upper-level management decisions with a
reasonably low frequency and high potential consequences in which the time
taken for thinking through and modeling the problem pays generously in the
long run. There are three fundamental components of DSSs [3].
16
who are not computer-trained, DSSs need to be equipped with intuitive and
easy-to-use interfaces. These interfaces aid in model building, but also in
interaction with the model, such as gaining insight and recommendations
from it. The primary responsibility of a DGMS is to enhance the ability of
the system user to utilize and benefit from the DSS. In the remainder of this
article, we will use the broader term user interface rather than DGMS.
While a variety of DSSs exists, the above three components can be found in
many DSS architectures and play a prominent role in their structure.
Interaction among them is illustrated in Fig. 1. Essentially, the user interacts
with the DSS through the DGMS. This communicates with the DBMS and
MBMS, which screen the user and the user interface from the physical
details of the model base and database implementation.
While the quality and reliability of modeling tools and the internal
architectures of DSSs are important, the most crucial aspect of DSSs is, by
far, their user interface. Systems with user interfaces that are cumbersome or
unclear or that require unusual skills are rarely useful and accepted in
practice. The most important result of a session with a DSS is insight into the
17
decision problem. In addition, when the system is based on normative
principles, it can play a tutoring role; one might hope that users will learn the
domain model and how to reason with it over time, and improve their own
thinking. A good user interface to DSSs should support model construction
and model analysis, reasoning about the problem structure in addition to
numerical calculations and both choice and optimization of decision
variables. User interface is the vehicle for both model construction (or model
choice) and for investigating the results. Even if a system is based on a
theoretically sound reasoning scheme, its recommendations will be as good
as the model they are based on. Furthermore, even if the model is a very
good approximation of reality and its recommendations are correct, they will
not be followed if they are not understood. Without understanding, the users
may accept or reject a system's advice for the wrong reasons and the
combined decision-making performance may deteriorate even below unaided
performance . A good user interface should make the model on which the
system's reasoning is based transparent to the user. Modeling is rarely a one-
shot process, and good models are usually refined and enhanced as their
users gather practical experiences with the system recommendations. It is
important to strike a careful balance between precision and modeling efforts;
some parts of a model need to be very precise while others do not. A good
user interface should include tools for examining the model and identifying
its most sensitive parts, which can be subsequently elaborated on. Systems
employed in practice will need their models refined, and a good user
interface should make it easy to access, examine, and redefine its models [3].
18
2.7 Software Evaluation Attributes
Attributes to be considered for software evaluation are usually classified in
several groups. Quality characteristics of the software package such as
functionality, reliability, usability, efficiency, maintainability, and portability
have been used as evaluation criteria group in several studies. Among the
ISO/IEC standards related to software quality, ISO/IEC 9126-1 specifically
addresses quality model definition and its use as framework for software
evaluation. Criteria related to: (1) vendor, (2) hardware and software
requirements, and (3) cost and benefits of the software packages are
commonly used across many papers. Criteria related to quality of the
software are given in Tables 2.1, 2.2 and 2.3 respectively.
20
software.
Network configuration Configuration Network technology
needed to run the
software package e,g
LAN, WAN
21
common list is apparent. The exact meaning of a criterion is open to the
evaluator’s own interpretation. Sometimes the terminology used by author(s)
for a criterion in one literature is different than another author(s) for the
same criterion. This may lead to ambiguity and gives unclear picture to the
evaluator. To address this issue we provide generic lists of evaluation criteria
and their meaning, which can be used for evaluation of any type of the
software package. Although, functional criteria for software selection vary
from software to software, criteria related to cost, vendor and quality of the
software may be common and can be used for selection of any software
package. The standard list of evaluation criteria and their definition could
overcome some of the pitfalls in software evaluation and selection process.
There is need to develop a framework including a software selection
methodology, an evaluation technique, an evaluation criteria, and a system to
support evaluation and selection of any software package [6].
22
CHAPTER THREE
SYSTEM ANALYSIS AND DESIGN
3.0 Introduction
In this chapter, the system analysis and design is discussed. The source of
data methods of collection, the evaluation of the existing system and the
organizational structure of the system are presented.
23
3.2.2 Problems of the Existing System
The following problems were identified in the existing system:
- No proper record is kept of software evaluation.
- It is time consuming to manually determine the effectiveness of
software systems
24
administrator can register software to be evaluated, perform software
evaluation and view reports from the database.
View Database
<<uses>>
<<uses>>
<<uses>>
Register
software
Evaluate
User software
View Reports
25
3.3.1 Input Layout (Software Registration)
Registration Date
Name Of Software
Category
Developer(S)
Date Of Development
Licensed
OS Platform
Hardware REQ
Software REQ.
26
Input Layout (Software Evaluation)
Evaluation Date
Software Name
Cost
Reliability
User Manual
Installation
Keyboard Shortcuts
Ease of Usage
Response Time
TOTAL
AVERAGE
SAVE CLOSE
3.3.2 Algorithm
Step 1: Start
Step 2: Login
27
Step 3: If login is success goto step 4 else goto step 2
Step 4: Display main menu
Step 5: Input choice
Step 6: If choice is software registration goto step 7 else goto step 8
Step 7:Input registration details and save to database.
Step 8: If choice is software evaluation goto step 9 else goto step 12
Step 9: input evaluation details
Step 10: compute total
Step 11: compute average
Step 12: If choice is evaluation report goto step 13 else goto step 15
Step 13: Display evaluation database
Step 14: Query database by software name
Step 15: if choice is quit goto step 16 else goto step 5
Step 16: Stop
28
3.3.3 Program Flowchart
LOGIN
Start
Yes
29
MAIN MENU
NO
YES
Is choice software evaluation?
SE
NO
YES
Is choice Evaluation Report?
R
YES
Quit?
NO
End
30
SOFTWARE REGISTRATION
SR
SAVE TO DATABASE
YES Continue?
NO
31
SOFTWARE EVALUATION
SE
Save to database
YES Continue?
NO
32
REPORT
YES
Continue?
NO
33
3.3.4 Output Format
Output layout (Software Registration)
Registratio Name_of_S Category Developer Date_of_developm ………
n_Date oftware ent
34
CHAPTER FOUR
SYSTEM IMPLEMENTATION AND DOCUMENTATION
4.0Introduction
This chapter focuses on the system implementation. It presents the system
design diagram, choice of programming language, analysis of modules,
programming environment, implementation and software testing.
LOGIN
MAIN MENU
NEW FIND
NEW
SAVE SAVE
CLOSE
CLOSE PRINT
CLOSE
35
4.3 Analysis of Modules
The system is made up of four main modules as shown in the system flow
diagram. They are;
Software Registration: This module enables the registration of software for
evaluation
36
The software requirements are:
- Microsoft Visual Basic 6.0
- Microsoft Access 2003
4.5 Implementation
The system implementation method recommended and chosen by the system
developer is the parallel running so as to prevent data loss. In parallel
running, new system and the old system are used with extra staffs recruited
to run the new system but it is very expensive. Both systems continue to run
until the new system is working properly then the old one is discarded.
- Software Evaluation.
System Testing: In this phase all the modules are integrated and the system
with all its modules is tested to identify and remove errors that may arise as a
result of the integration.
37
CHAPTER FIVE
SUMMARY, CONCLUSION AND RECOMMENDATION
5.0 Introduction
This chapter presents the summary, conclusion, constraints of the study and
useful recommendations are offered based on the research study.
5.1 Summary
Many studies provide a preferred list of evaluation criteria for evaluation of
specific software package. The exact meaning of a criterion is open to the
evaluator’s own interpretation. Sometimes the terminology used by author(s)
for a criterion in one literature is different than another author(s) for the
same criterion. This may lead to ambiguity and gives unclear picture to the
evaluator. To address this issue we provide generic lists of evaluation criteria
and their meaning, which can be used for evaluation of any type of the
software package. Although, functional criteria for software selection vary
from software to software, criteria related to cost, vendor and quality of the
software may be common and can be used for selection of any software
package. The standard list of evaluation criteria and their definition could
overcome some of the pitfalls in software evaluation and selection process.
38
Finances: The high cost of transportation to different libraries as well as the
high cost of internet browsing stood as limitation of the study.
5.3 Conclusion
A decision support system for software evaluation is an automated system
that accepts the values of the criteria for evaluating software to evaluate the
effectiveness of the software. This information provided aids organizations
to decide on the effectiveness of the software. The average value presented
as the result reveals the capability of the software system. There is need to
develop a framework including a decision support software selection
methodology, an evaluation technique, an evaluation criteria, and a system to
support evaluation and selection of any software package.
5.4 Recommendations
The following recommendations are offered based on the study:
• More research should be encouraged in the area of software
evaluation
• Computer programmers should be contracted to develop software
evaluation systems.
• Organizations should evaluate software before they acquire it.
39
REFERENCES
40
[6] Bhargava, H. and Power, D. (2015). Decision support systems and web
technologies: A status report.
[7] Carvallo, J. P., Franch, X., and Quer, C. (2007). Determining criteria for
selecting software components: Lessons learned. IEEE Software,
24(3):84–94, May-June 2007.
41
APPENDIX A
SOURCE CODE
Private Sub MNUQUI_Click(Index As Integer)
End
End Sub
AB:
End Sub
43
APPENDIX B
OUTPUT
44
45
Fig Appendix B.2: Software Registration snapshot
46
47
Fig Appendix B.4:Software evaluation report snapshot
BY
SUBMITTED TO
48
NOVEMBER, 2015
CERTIFICATION
I hereby declare that the work presented herein was done by me, and not by a
third party. Should I be convicted of having cheated in this work, I shall
accept the verdict of Akwa Ibom State Polytechnic, Ikot Osurua, Ikot
Ekpene
49
……………………………. …………………………
EXTERNAL SUPERVISOR SIGNATURE/DATE
APPROVAL
This project report is approved for submission.
……………………………………….
MRS. MFREKE UMOH
50
DEDICATION
This project is dedicated to the almighty God, the Alpha and Omega who is
the source of all my knowledge and to my beloved parents Mr. and Mrs.
David John Udofia who taught me the steps of education.
51
ACKNOWLEDGEMENT
I offer my gratitude to God Almighty for his mercy for allowing me achieve
my dreams and also giving me the needed guidance and protection
throughout my studies in Akwa Ibom state polytechnic.
52
I also wish to recognize my Head of Department Mr. U. A. Obonguko and
all my lecturers and other staff of the department who guided and advise me
during my study in Akwa Ibom State polytechnic.
53
ABSTRACT
This research work focused on decision support system for software
evaluation. The concept of software evaluation evolved as a result of the
need for selecting effective amongst numerous software packages available
today. Most of the software marketed are not really able to solve the
problems they were designed for very well and this may bring about loss for
the user of the system. It is in view of the need to select the best software
that necessitates the study. Choosing the wrong software package can turn
out to be costly and adversely affect business processes. It is therefore
imperative to adopt the software evaluation techniques or methodologies to
grade and select the best software based on defined criteria for evaluation.
Use case modeling was adopted to represent the different components of the
system. The software development methodology used is the spiral model and
the programming language used is Visual BASIC 6.0.
54
TABLE OF CONTENTS
Title Page - - - - - - - - i
Certification- - - - - - - - - ii
Approval Page - - - - - - - iii
Dedication - - - - - - - - iv
Acknowledgment - - - - - - - - v-vi
Abstract - - - - - - - - vii
Table of Contents - - - - - - - - viii-x
List of Figures -- - - - - - - - xi
List of Tables - - - - - - - xii
55
1.7 Definition of Terms - - - - - - 6
56
CHAPTER FOUR: SYSTEM IMPLEMENTATION AND
DOCUMENTATION
4.0 Introduction - - - - - - - 34
4.1 System Design Diagram - - - - - - 34
4.2 Choice of Programming Language - - - 34
4.3 Analysis of Modules - - - - - 35
4.4 Programming Environment - - - - - 35
4.4.1 Hardware Requirements - - - - - 35
4.4.2 Software Requirements - - - - - 35-36
4.5 Implementation - - - - - - 36
4.6 Software Testing - - - - - - 36
57
LIST OF FIGURES
58
LIST OF TABLES
59