You are on page 1of 53

DFC3043 SYSTEM ANALYSIS & DESIGN

CHAPTER 5
SYSTEM IMPLEMENTATION AND
SUPPORT
LEARNING OUTCOMES

5.1 Understand system development


5.2 Understand testing in a project
5.3 Explain system implementation
5.4 Understand systems support and security
5.1 Understand System Development
5.1.1 Differentiate system development tools:
a. Modeling
b. Prototyping
c. CASE Tools
5.1.2 Explain the coding process
5.1.1 Differentiate system development tools

Systems analyst must know how to use a variety of techniques,


such as Modelling, Prototyping, and Computer-Aided Systems
Engineering (CASE) tools.
Why:
To understanding business operations

To plan in a team environment, where input from users,


managers, and IT staff contributes to the system design

Modelling Prototyping CASE Tools


5.1.1 Differentiate system development tools

MODELING PROTOTYPING CASE TOOLS

Modeling produces a Prototyping tests system Computer-aided systems


engineering (CASE), also called
graphical representation of concepts and provides an computer-aided software
a concept or process that opportunity to examine engineering, is a technique that
systems developers can input, output, and user uses powerful software, called CASE
analyze, test, and modify. interfaces before final tools, to help systems analysts
develop and maintain information
decisions are made. systems.
A systems analyst can
describe and simplify an A prototype is an early CASE tools provide an overall
information system by using working version of an framework for systems
development and support a wide
a set of business, data, Information system. variety of design methodologies,
object, network, and including structured analysis and
process models. object-oriented analysis.
5.1.1 Differentiate system development tools

MODELING PROTOTYPING CASE TOOLS


5.1.1 Differentiate system development tools Modelling
Modeling produces a graphical representation of a concept or process that
systems developers can analyze, test, and modify.
A system analyst can describe and simplify an information system by using
a set of business, data, object, network, and process models.
Eg:
A business model/ requirements model, describes the information that
a system must provide.
A data model describes data structure and design.
An object model describes objects, which combine data and processes.
A network model describes the design and protocols of
telecommunications links.
A process model describes the logic that programmers use to write
code modules.
Although the models might appear to overlap, they actually work together
to describe the same environment from different points of view.
5.1.1 Differentiate system development tools Modelling

Reasons for Modeling Examples of Model Used in Design


Learning from the modeling process Screen layout
Reducing complexity by abstraction Report layout
Remembering all of the details System flowchart
Communicating with other development Database schema / Data
teams members Dictionary
Communicating with a variety of Network diagram
stakeholders
Documenting what was done for future
maintenance/enhancement
Examples of Models Used in Analysis Phase
Data flow diagram (DFD)
Entity-relationship diagram (ERD)
Decision Table
5.1.1 Differentiate system development tools Prototyping

Prototyping Purpose:
To tests system concepts and provides an opportunity to examine input,
output, and user interfaces before final decisions are made.
A prototype is an early working version of an information system.
Just as an aircraft manufacturer test a new design in a wind tunnel,
systems analysts construct and study information systems prototypes.
Advantage:
A prototype can serve as an initial model that is used as benchmark to
evaluate the finished system, or the prototype itself can develop into the
final version of the system.
Either way, prototyping speeds up the development process significantly.
Possible Disadvantage:
Important decisions might be made too early, before business or IT issues
are understood thoroughly.
A prototype based on careful fact finding and modelling techniques, however
can be an extremely valuable tool.
5.1.1 Differentiate system development tools CASE Tools
5.1.1 Differentiate system development tools CASE Tools
Computer-aided systems engineering (CASE), also called computer-aided software
engineering
What:
A technique that uses powerful software, called CASE Tools
CASE tools provide an over all framework for systems development and support a wide
variety of design methodologies, including structured analysis and object-oriented
analysis.
Reason: to help system analysts develop and maintain information systems.
How:
Because CASE tools make it easier to build an information system, they boost it
productivity and improved the quality of the finished product.
Traditional CASE tools system developers often use project management tools, such as
Microsoft Project, and special purpose charting tools, such as Microsoft Visio.
a system analysts can use Visio to create many different types of diagrams,
including block diagrams. Building plans, forms and charts, maps, network
diagrams, and organization charts.
Example of CASE software are:
Microsoft Visio
Rational Rose
Three leading CASE tool suppliers: Visible Systems Corporation, Telelogic Software, and
Rational Software
5.1.1 Differentiate system development tools CASE Tools

CASE Tool Examples: Visible Analyst


Visible Systems Corporation is an important player in the software development market
Also provides a full range of Help features, including the error message analysis screen
5.1.1 Differentiate system development tools CASE Tools

CASE Tool Examples: Rational Software


IBM offers many systems development and modelling products, including a
powerful tool called Rational System Architect
Stresses modelling and collaboration, and is a suite of tools that can align
processes, information, and technologies
SYSTEM DEVELOPMENT
5.1 2 CODING PROCESS

Coding is the process of turning program logic


into specific instructions that the computer
system can execute.
Working from a specific design, a programmer
uses a programming language to transform
program logic into code statements.
5.2 Understand testing in a project

5.2.1 Explain the importance of software quality assurance


5.2.2 Differentiate the types of software testing:
- Unit testing
- Integration testing
- System testing
5.2.3 Differentiate between program, system, operations and
user documentation
5.2.1 Explain the importance of software quality assurance.

Introduction:
The system design specification serves as a blueprint for constructing
the new system
The initial task is application development
Before a changeover can occur, the system must be tested and
documented carefully, users must be trained, and existing data must be
converted
A formal evaluation of the results takes place as part of a final report to
management
5.2.1 Explain the importance of software quality assurance.

Software Engineering
Capability Maturity Model (CMM)
Capability Maturity Model
Integration (CMMI)
Process improvement
CMMI tracks an organization's
processes, using five maturity layers
5.2.1 Explain the importance of software quality assurance.

International Organization for Standardization (ISO)


Many firms seek assurance that software systems will meet rigid
quality standards
ISO 90003:2004
ISO requires a specific development plan
5.2.2 Differentiate the types of software testing

Three types of software


testing
Unit Testing
Integration Testing
System Testing
You should regard thorough
testing as a cost-effective
means of providing a quality
product

19
5.2.2 Differentiate the types of software testing

Unit Testing:
Unit testing involves individually testing unit of code separately to make
sure that it works on its own, independent of the other units.
Eg: Testing a function; whether loop or statement in a program is working
properly or not than this is called as unit testing
Integration Testing:
Test the modules to ensure whether they are integrating properly or not
by combining the modules and tested as a group.
Eg: Tester have to test the keyboard of a computer than it is a unit testing
but when tester have to combine the keyboard and mouse of a computer
together to see its working or not than it is the integration testing.
It is prerequisite that for performing integration testing a system must be
unit tested before.
5.2.2 Differentiate the types of software testing

System Testing:
Tester test the complete system as a whole to check whether the system is
properly working or vice versa as per the requirements or not. Testers
always have to concentrate on both functional and non-functional testing
like performance, load, stress, security and recovery testing
In summary: in system testing the testers test the complete system as a
whole.
Eg: Test the whole functionality and non functionality of the system
interactions between all module in Laundry Management System as one
single system.
It is prerequisite that for performing system testing a system must be unit
tested and integration tested before.
5.2.3 Differentiate between program, system,
operations, and user documentation.

Program Documentation
System Documentation
Operations Documentation
User Documentation
Systems analysts usually are responsible for preparing
documentation to help users learn the system

22
5.2.3 Differentiate between program, system,
operations, and user documentation.

Program documentation describes the inputs, outputs, and


processing logic for all program modules.

System documentation describes the systems


functions and how they are implemented.
System documentation includes data dictionary
entries, data flow diagrams, object models, screen
layouts, source documents, and the systems request
that initiated the project.
5.2.3 Differentiate between program, system,
operations, and user documentation.
Operations documentation contains all the information needed for
processing and distributing online and printed output. Typical examples of
operations documentation includes the following information:

Program, systems analyst, programmer, and system identification


Scheduling information for printed output, such as report run
frequency and deadlines
Input files and where they originate; and output files and destinations
E-mail and report distribution lists
Special forms required, including online forms
Error and informational messages to operators and restart procedures
Special instructions, such as security requirements

Operations documentation should be clear, concise, and available online if


possible.
5.2.3 Differentiate between program, system,
operations, and user documentation.

What is User Documentation?


User documentation consists of
instructions and information to users who
will interact with the system and includes
user manuals, Help screens, and tutorials.
Programmers or systems analysts usually
create program documentation and system
documentation.
5.2.3 Differentiate between program, system,
operations, and user documentation.

User Documentation
Effective online documentation is
an important productivity tool
Written documentation material
also is valuable

26
5.3 Explain System Implementation

5.3.1 List the main steps in system implementation


5.3.2 Explain system installation and evaluation
5.3.3 Outline system installation and evaluation checklist
5.3 Explain system implementation.
Management Approval

After system testing is complete, developer team need to


present the results to management
If system testing produced no technical, economical, or
operational problems, management determines a schedule for
system installation and evaluation

28
5.3.1 List the main steps in system implementation.

The new system now is ready to go to work. Now, you will carry out the
remaining steps in systems implementation:
1. Prepare a separate operational and test environment

2. Provide training for users, managers, and IT staff

3. Perform data conversion and system changeover

4. Carry out a post-implementation evaluation of the system

5. Present a final report to management

29
5.3.2 System Installation And Evaluation

1. Operational and test environment


The environment for the actual system operation is called the
operational environment or production environment.
The environment that analysts and programmers use to
develop and maintain programs is called the test
environment.
A separate test environment is necessary to maintain system
security and integrity and protect the operational
environment.
5.3.2 System Installation And Evaluation

2. Provide training for users, managers, and IT staff


Training Plan - it is essential to provide the right training for the right people at the
right time, specific training topics, identify the objectives, and determine how the
company will provide training. The main choices are to obtain training from vendors,
outside training firms, or use IT staff and other in-house resources.

Vendor Training - Many hardware and software vendors offer training programs free or at a
nominal cost for the products they sell. The training usually is conducted at the vendors site
by experienced trainers who provide valuable hands-on experience. Vendor training often
gives the best return on your training dollars because it is focused on products that the
vendor developed. Many vendors offer Web-based training options, including Webinars,
podcasts, and tutorials.

In-house Training - The IT staff and user departments often share responsibility for
developing and conducting training programs for internally developed software. If your
organization has a help desk, the staff might be able to handle internally user training.
5.3.2 System Installation And Evaluation

3. Data Conversion
Data conversion is an important part of the system installation process. During data conversion,
existing data is loaded into the new system.
Data Conversion Strategy - When a new system replaces an existing system, you should automate
the data conversion process, if possible.
The old system might be capable of exporting data in an acceptable format for the new system or
in a standard format. If a standard format is not available, you must develop a program to extract
the data and convert it to an acceptable format.
5.3.2 System Installation And Evaluation

3. System Changeover
System changeover is the process of putting the new information
system online and retiring the old system.
Changeover can be rapid or slow, depending on the method. The
four changeover methods are :
1. direct cutover
2. parallel operation
3. pilot operation
4. phased operation
System Changeover

34
System Changeover

Direct Cutover
Involves more risk than other
changeover methods
Companies often choose the direct
cutover method for implementing
commercial software packages
Cyclical information systems
usually are converted using the
direct cutover method at the
beginning of a quarter, calendar
year, or fiscal year

35
System Changeover

Parallel Operation
Easier to verify that the new system is
working properly under parallel operation
than under direct cutover
Running both systems might place a burden
on the operating environment and cause
processing delay
Is not practical if the old and new systems are
incompatible technically
Also is inappropriate when the two systems
perform different functions
36
System Changeover

Pilot Operation
The group that uses the new system first is
called the pilot site
The old system continues to operate for
the entire organization
After the system proves successful at the
pilot site, it is implemented in the rest of
the organization, usually using the direct
cutover method
Is a combination of parallel operation and
direct cutover methods

37
System Changeover

Phased Operation
You give a part of the system to all users
The risk of errors or failures is limited to the
implemented module only
Is less expensive than full parallel operation
Is not possible, however, if the system cannot
be separated easily into logical modules or
segments

38
System Changeover summary
risk vs cost

39
5.3.2 System Installation And Evaluation

4. Post-implementation Evaluation
A post-implementation evaluation assesses the overall quality of the information system.
The evaluation verifies that the new system meets specified requirements, complies with
user objectives, and produces the anticipated benefits.

5. Final Report to Management


The final report to management marks the end of systems development work. Your report
should include the following:
Final versions of all system documentation
Planned modifications and enhancements to the system that have been identified
Recap of all systems development costs and schedules
Comparison of actual costs and schedules to the original estimates
Post-implementation evaluation, if it has been performed
Data Conversion

Data Conversion Security and Controls


The developer team must ensure that all system control measures are in
place and operational to protect data from unauthorized access and to
help prevent erroneous input
Some errors will occur
It is essential that the new system be loaded with accurate, error-free
data

41
5.4 Understand Systems Support and Security
5.4.1 Explain the system support and security phase
5.4.2 Identify user support:
User training
Help desk
5.4.3 Explain various types of maintenance:
Corrective maintenance
Adaptive maintenance
Perfective maintenance
Preventive maintenance
5.4.4 Identify tools for system maintenance
5.4.5 Explain the system security and backup
5.4.6 Identify three elements of system security
5.4.1 Explain the system support and security phase

Systems support and security is the final phase in the systems development
life cycle.
Managing systems support and security involves three main concerns:
1.user expectations

2.system performance

3.security requirements
5.4.2 Identify user support:
Help Desks
User Training To make data more accessible and to empower users,
many IT departments create help desks.
New employees must be trained on the
companys information systems.
A help desk is a centralized resource staffed by IT
The main objective is to show users how professionals who provide users with the support they
the system can help them perform their need to do their jobs.
jobs. A help desk has three main objectives:
The training could include online support 1.Show people how to use system resources more
via e-mail, a special Web site, a revision effectively
to the user guide, a training manual 2.Provide answers to technical or operational questions
supplement, or formal training sessions. 3.Make users more productive by teaching them how to
meet their own information needs

A help desk often is called an information center (IC)


because it is the first place users turn when they need
information or assistance.
5.4.3 Explain various types of maintenance:
What is system maintenance?
System maintenance is the process of refining the system to
Corrective Maintenance make sure it continues to meet business needs.
Corrective maintenance diagnoses and corrects errors in an operational system.
To avoid introducing new problems, all maintenance work requires careful analysis
before making changes.
Adaptive Maintenance
Adaptive maintenance adds enhancements to an operational system and makes
the system easier to use.
Perfective Maintenance
Perfective maintenance involves changing an operational system to make it more
efficient, reliable, or maintainable. Requests for corrective and adaptive
maintenance normally come from users, while the IT department usually
initiates perfective maintenance.
Preventive Maintenance
To avoid problems, preventive maintenance requires analysis of areas where
trouble is likely to occur. Like perfective maintenance, the IT department normally
initiates preventive maintenance. Preventive maintenance often results in
increased user satisfaction, and decreased downtime.
5.4.4 Identify tools for system maintenance
Many CASE tools include system evaluation and maintenance features, including the following
examples:
Performance monitor that provides data on program execution times
Program analyzer that scans source code, provides data element cross-reference
information, and helps evaluate the impact of a program change
Interactive debugging analyzer that locates the source of a programming error
Reengineering tools
Automated documentation
Network activity monitor
Workload forecasting tool
5.4.5 Explain the system security and backup
BACKUP AND RECOVERY
Every system must provide for data backup and recovery.
Backup refers to copying data at prescribed intervals, or continuously.
Recovery involves restoring the data and restarting the system after an interruption.
An overall backup and recovery plan that prepares for a potential disaster is called a
disaster recovery plan.

BACKUP TYPES
Backups can be full, differential, incremental, or continuous.
Backup Policies
The cornerstone of business data protection is a backup policy, which contains
detailed
instructions and procedures. An effective backup policy can help a firm continue
5.4.5 Explain the system security and backup
BACKUP TYPES
Backups can be full, differential, incremental, or continuous.

Backup Policies
The cornerstone of business data protection is a backup policy, which contains detailed
instructions and procedures.
An effective backup policy can help a firm continue business operations and survive a
catastrophe.
The backup policy should specify backup media, backup types, and retention periods.
5.4.5 Explain the system security and backup

Backup Types

Very Famous!

49
5.4.5 Explain the system security and backup
To provide system security, you must consider six separate but interrelated
levels:
physical security,
network security,
application security,
file security,
user security, and
procedural security.

Like the chain shown in Figure 12-26, system security is only as strong as the
weakest link.
5.4.6 Identify three elements of system security

Security is a vital part of every computer


system
System Security Concepts, CIA triangle:
Very Famous!
Integrity
Availability
Security policy / Confidentiality
Also known as:
3 Elements of System Security

3 Elements of System Security

51
5.4.6 Identify three elements of system security

System Security Elements


The CIA triangle in Figure 12-20 shows the three main
elements of system security: confidentiality, integrity,
and availability.
Confidentiality protects information from
unauthorized disclosure and safeguards privacy.
Integrity prevents unauthorized users from creating,
modifying, or deleting information.
Availability ensures that authorized users have timely
and reliable access to necessary information.
SUMMARY
The systems implementation phase consists of application development, testing, installation,
and evaluation of the new system
In addition to system documentation, analysts and technical writers also prepare operations
documentation and user documentation
During the installation process, you establish an operational, or production, environment for
the new information system that is completely separate from the test environment.
Everyone who interacts with the new information system should receive training appropriate
to his or her role and skills.
Data conversion often is necessary when installing a new information system. When a new
system replaces a computerized system, you should automate the data conversion process if
possible.
System changeover is the process of putting the new system into operation.
A post-implementation evaluation assesses and reports on the quality of the new system and
the work done by the project team.
The final report to management includes the final system documentation, describes any
future system enhancements that already have been identified, and details the project costs.
The report represents the end of the development effort and the beginning of the new
systems operational life.

You might also like