Professional Documents
Culture Documents
and Maintenance
Lecture 3
Evolution and Maintenance Models
1
Subject Code: SWE3053
Bachelor of Software Engineering (Hons)
Lecturer: Dr. Muhammed Basheer Jasser
Outline of the Lecture
2
3.1 General Idea
3.2 Reuse Oriented Model
3.3 The Staged Model for CSS
3.4 The Staged Model for FLOSS
3.5 Change Mini-Cycle Model
3.6 IEEE/EIA 1219 Maintenance Process
3.7 ISO/IEC 14764 Maintenance Process
3.8 Change Request Workflow
3.6/3.7 Software Maintenance Standard
3 IEEE and ISO have both addressed s/w maintenance processes.
ISO/IEC 14764 describes s/w maintenance as an iterative process for managing and
executing software maintenance activities. The activities are:
process implementation, problem and modification analysis, modification implementation,
maintenance review/acceptance, migration and retirement.
Each of these maintenance activity is made up of tasks. Each task describes a specific action
with inputs and outputs.
3.6 IEEE/EIA 1219 Maintenance Process
4 The standard focuses on a seven-phases:
Problem Identification.
Analysis.
Design.
Implementation.
System Test.
Acceptance Test.
Delivery.
The process is
viewed to have
two major
components:
(i) feasibility
analysis.
(ii) detailed
analysis.
• First, feasibility analysis is performed to: (i) determine the impact of the change; (ii)
investigate other possible solutions including prototyping; (iii) assess both short-term and
long-term costs; and (iv) determine the benefits of making the change.
• Second, detailed analysis identifies: (i) firm modification requirements; (ii) the software
components involved; (iii) an overall test strategy; and (iv) an implementation plan.
3.6 IEEE/EIA 1219 Maintenance Process
7 Figure 3.12 Design phase
In this phase tests are performed on the full system to ensure that the modified system complies
with the original requirements as well as the new modifications.
• In this phase, the changed system is released to customers for installation and operation.
• Included in this phase are the following activities: notify the user community, perform
installation and training, and develop an archival version of the system for backup.
3.7 ISO/IEC 14764 Maintenance Process
12
ISO/IEC 14764 is an international standard for software maintenance.
It describes maintenance using the same concepts as IEEE/EIA 1219 except that
they are depicted slightly differently.
Figure 3.17 ISO/IEC 14764 iterative • Support refers to the items that
maintenance process ©IEEE, 2004 support the maintenance activity.
3.7 ISO/IEC 14764 Maintenance Process (The Process Implementation activity)
14
The process implementation activity consists of three major tasks:
Make Maintenance plan.
Modification requests (MR/CR).
Configuration management.
Maintenance plan:
16 requests:
Modification
18 The problem and modification analysis activity is invoked after the software system
transitions from development stage to maintenance stage, and it is called iteratively
when the need for modification arises
The problem and modification analysis activity comprises five tasks:
Modification request analysis.
Verification.
Options.
Documentation.
Approval.
24
In this activity, maintainers:
(i) identify the items to be modified, and
(ii) execute a development process to actually implement the
modifications.
26
3.7 ISO/IEC 14764 Maintenance Process (The Migration activity)
27 Migration refers to the process of moving a software system from one technological
environment to a different one that is considered to be better
Migration is effected in two broad phases:
(i) identify the actions required to achieve migration, and
(ii) design and document the concrete steps to be executed to effect migration.
Migration standard: During the migration of a software product from an old to a new
operational environment, the maintainer must ensure that any additional software
products or data produced or modified adhere to standard ISO/IEC 12207
As a part of the standard tasks, the maintainer (i) identifies all the software elements or
data that were changed or added and (ii) ensures that the tasks were performed
according to standard ISO/IEC 12207
3.7 ISO/IEC 14764 Maintenance Process (The Migration activity)
Migration comprises tasks: (Migration standard, Migration plan, Notification of
30 intent, Implement operations and training, Notification of completion, Post-
operation review, Data archival.
The plan is developed in collaboration with the customers and it addresses the
following:
Requirements analysis and definition of migration
Development of migration tools
Conversion of software product and data
Execution of migration
Verification of migration
Support backward compatibility with the old execution environment
3.7 ISO/IEC 14764 Maintenance Process (The Migration activity)
31
3.7 ISO/IEC 14764 Maintenance Process (The Notification of Intent activity)
Migration comprises tasks: (Migration standard, Migration plan, Notification of
32 intent, Implement operations and training, Notification of completion, Post-
operation review, Data archival.
Implement operations and training : Once a software product has been improved
by modification and tested by the maintainer, it is installed in an operational
environment to run concurrently with the old system.
By running the old and the new system in parallel, users get an opportunity to become
familiar with the new system, so that transition from the old to the new system becomes
smoother. In addition, this will create an environment for the maintainer to compare
and understand the input/output relationships of the old and the new system.
During this period training should also be provided to the users. The steps listed in Table
3.7 can be performed by the maintainer in this step.
3.7 ISO/IEC 14764 Maintenance Process (The Implement operations and training activity)
34
3.7 ISO/IEC 14764 Maintenance Process (The Notification of completion activity)
Migration comprises tasks: (Migration standard, Migration plan, Notification of
35 intent, Implement operations and training, Notification of completion, Post-
operation review, Data archival.
Notification of completion: The maintainer notifies all the sites that the new system
will become operational and that the old system can be shut down and uninstalled,
after the completion of training and parallel operation of both the new and the old
system for an appropriate number of hours.
Essentially, the following task steps are performed by the maintainer:
1. Announce the migration.
2. Document the site-specific issues and make a plan to resolve them.
3. Archive the old system, including data and software.
4. Remove the old equipment.
3.7 ISO/IEC 14764 Maintenance Process (The Post-operation review activity)
Migration comprises tasks: (Migration standard, Migration plan, Notification of
36 intent, Implement operations and training, Notification of completion, Post-
operation review, Data archival.
The review reports are sent to the competent parties for information, guidance, and
further actions. The maintainer executes the following steps, as part of the task:
1. Analyze the results of running the two systems concurrently.
2. Identify potential risk areas.
3. Summarize the lessons learned.
4. Produce a report on impact analysis.
3.7 ISO/IEC 14764 Maintenance Process (The Data archival review activity)
Migration comprises tasks: (Migration standard, Migration plan, Notification of
37 intent, Implement operations and training, Notification of completion, Post-
operation review, Data archival.
Data archival: Data associated with the old environment are made accessible to
comply with the contractual requirements for data protection and audit.
The plan is developed in collaboration with the customers to address the following:
Transition to any new software system.
Withdrawal of partial or full support after a grace period.
Responsibility for any future contractual support.
Archiving the software system, including all the documentation.
Accessibility to archived data.
3.7 ISO/IEC 14764 Maintenance Process (The Retirement activity)- Retirement Plan
40
3.7 ISO/IEC 14764 Maintenance Process (The Retirement activity)
By running the new and the old system in parallel, users will get an opportunity to
become familiar with the new system so that transition from the old to the new system
becomes smoother.
In addition, this will create an environment for the maintainer to compare and
understand the input/output relationships between the new system and the old
system. In addition, training is provided to the users during this period.
3.7 ISO/IEC 14764 Maintenance Process (The Retirement activity)
Notification of completion: The maintainer notifies all the sites that the new system
will become operational and that the old system can be shut down.
The old system is generally shut down after the new system is in operation for a certain
length of time.
Data archival : Data associated or used with the old environment will be made
accessible according to contractual requirements involving data protection and
audit.