Lec 4 Software
Lec 4 Software
LECTURE 4
Software
Software is a set of programs, designed to perform a well-defined
function. A program is a sequence of instructions written to solve
a particular problem.
13
SOFTWARE INSTALLATION
■ Installation is the act of making the program ready for execution.
■ Most software programs require that you first install them on your computer
before using them. For example, if you buy Microsoft Office, you need to install it
on your computer before you can run any of the included programs such as
Word or Excel.
■ The act or the process of making these programs exist in the computer is what
is referred to us as software installation. You can install software from a CD or
DVD, an external hard drive, or from a networked computer. You can also install
a program or software update from a file downloaded from the Internet.
■ Classification of installation
I. Software installation
II. Hardware installation(can be internal or external)
TYPES OF SOFTWARE
INSTALLATION
■ Attended installation: It’s an installation process which usually
needs a user who attends it to make choices, such as accepting or
declining an end-user license agreement(EULA), specifying
preferences such as the installation location, supplying passwords or
assisting in product activation.
■ Unattended installation: Installation that is performed without user
interaction during its progress or with no user present at all, one of
the reasons to use this approach is to automate the installation of a
large number of systems. An unattended installation either does not
require the user to supply anything or has received all necessary
input prior to the start of installation.
TYPES OF SOFTWARE
INSTALLATION
■ Silent installation: Installation that does not display messages or
windows during its progress, "Silent installation" is not the same as
"unattended installation" . All silent installations are unattended but
not all unattended installations are silent. The reason behind a silent
installation may be convenience or subterfuge. Malware is almost
always installed silently.
■ Headless installation: Installation performed without using a
computer monitor connected. Another machine connects to the target
machine (for instance, via a local area network or serial port) and
takes over the display output.
TYPES OF SOFTWARE
INSTALLATION
■ Scheduled or automated installation: An installation process that
runs on a preset time or when a predefined condition transpires, as
opposed to an installation process that starts explicitly on a user's
command. . For example, a system administrator may want to install
a newer version of the used software. It will be installed only if the
software is not already in use.
Uninstalling Software
■ To uninstall a piece of software from your laptop, first open the Start menu
and select the Control Panel option. In the Control Panel window that
appears, double-click on the Add/Remove Programs icon. An Add/Remove
Programs Properties window will appear. If the software you wish to remove
appears in the list at the bottom of the window, click on the software you
wish to delete to select it, then left-click on the Add/Remove button. Follow
the prompts that appear on the screen to finish uninstalling the software.
■ If the software you wish to uninstall does not appear in the list at the bottom
of the Add/Remove Programs Properties window, open the Start menu and
select the Programs option. From the pop-up sub-menu that appears, select
the name of the software you wish to remove, and see if there's an uninstall
option available for that package. If so, click on the uninstall option and
follow the prompts to finish uninstalling the software.
■ Still other software packages require you to re-run the program's
setup/installation procedure from the original media, in order to uninstall the
software.
software maintenance
■ Software maintenance is the performance of those activities required
to keep a software system operational and responsive after it is
accepted and placed into production.
■ Software maintenance then, is the set of activities which result in
changes to the originally accepted (baseline) product set. These
changes consist of modifications created by correcting, inserting,
deleting, extending, and enhancing the baseline system. Generally,
these changes are made in order to keep the system functioning in an
evolving, expanding user and operational environment.
Categories of maintenance:
Software maintenance activities can be divided into three categories:
perfective, adaptive, and corrective. Many software managers consider
requirements specification changes and the addition of new capabilities to
be software maintenance.
The four maintenance categories are defined in the following manner:
Perfective maintenance : includes all changes, insertions, deletions,
modifications, extensions, and enhancements which are made to a system
to meet the evolving and/or expanding needs of the user.
Adaptive maintenance: consists of any effort which is initiated as a result of
changes in the environment in which a software system must operate.
Corrective maintenance: refers to changes necessitated by actual errors
(induced or residual "bugs") in a system.
Software Maintenance problems
Software Quality (poor program quality): A lack of attention to
software quality during the design and development phases generally
leads to excessive software maintenance costs. It should be clearly
understood during the design and development phases that the
maintainability of the system is directly affected by the quality of the
software
Documentation
One of the major problems in software maintenance can be summarized
in the single phrase - " a failure to communicate." The maintainer who
receives the assignment to perform maintenance on the system must
first understand what the program is doing, how it is doing it, and why.
This job is greatly simplified if the original requester, the designer, the
developer, and the previous maintainers have communicated all the
pertinent information about the system. This communication should
include design specifications, code comments, programmer notebooks,
and other documentation
Software Maintenance problems
Users
■ Users are often unable to concisely specify what they want from an
application system. The initial requirements definition and design
often lack the detailed specificity which would enable the developer to
create a system which accurately performs all of the functions the
user needs. Thus, an incomplete system is placed into production. The
maintainer must enhance the system using the initial, inadequate
specifications and the new, sometimes vague, sometimes conflicting,
often incomplete, change requests from the user
Software Maintenance problems
Personnel
■ A common and widespread complaint by maintenance personnel is
that software maintenance is considered to be unimportant,
unchallenging , unrewarding, uncreative work which is not
appreciated by the user. Software maintenance requires the efforts of
experienced, well-qualified, dedicated professionals. It should not be
solely the responsibility of the new or junior staff. With the
development of more multi-purpose, complex software systems, there
is a greater need for software maintainers who can readily understand
the entire system
Software Maintenance Models
27