![]() |
subject > process > maintenance > refactoring |
![]() ![]() | ||||
refactoring | ||||
subject | fact |
refactoring | has definition Changing part of the design; performed as part of reengineering | ![]() |
is part of reengineering | ![]() | |
is a subtopic of 11.2 - Software Process Models | ![]() | |
is a kind of maintenance | ![]() | |
is a kind of software engineering | ![]() | |
maintenance | is part of software engineering | ![]() |
software engineering | has challenge accurately forecasting how much time it will take either to develop a system, or to make a specific set of changes | ![]() |
has definition from the Canadian Standards Association The systematic activities involved in the design, implementation and testing of software to optimize its production and support | ![]() | |
has definition from the IEEE (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1) | ![]() | |
has goal solving customers' problems | ![]() | |
has part ensuring that maintenance and evolution of software is done in a systematic way | ![]() | |
has part evolution | ![]() | |
has part maintenance | ![]() | |
has part managing software projects | ![]() | |
has part programming | ![]() | |
has part programming | ![]() | |
has part project management | ![]() | |
involves applying well-understood techniques in an organized and disciplined way | ![]() | |
involves the translation of higher-level designs into particular programming languages | ![]() | |
is / labour-intensive | ![]() | |
is highly iterative | ![]() | |
is undergoing development in its technology and techniques | ![]() | |
is normally organized into software projects | ![]() | |
sometimes consists of developing completely new software | ![]() | |
uses resources such as the time and money of the stakeholders, and the CPU-time and memory of computers | ![]() | |
usually consists of modifying software that has been already written - this is because software is normally continually changed over a period of years until it becomes obsolete | ![]() | |
process | see also process^2 | ![]() |
Next maintenance: adaptive maintenance Up: maintenance, software engineering Previous maintenance: reengineering