Ch. 3: Software Life Cycle: From Planning to Replacement Flashcards

1
Q

Please describe the phases of a software lifecycle.

A
  1. Planning: Activities before the start of a software project
  2. Development: Activities between the start of the project and the deployment of the finished system
  3. Operation: Start-up and operation of the system in the target environment
  4. Maintenance: Maintenance and evolution after deployment
  5. Shutdown: Activities with the aim of taking the system out of operation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Please describe four typical activities of the planning phase.

A
  • Determination of needs: Identifying the demand and the reasons for a new software system
  • Make-or-buy decision: Check and decide whether a system should be bought or built from scratch
  • Time and resource planning: Creation of the first project plan, including more concrete time and resource planning.
  • Procurement: Award of the contract, i.e., to external service providers or internal IT departments.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

After the need for a new software system has been identified, it must be decided whether …

A

… software solutions are already available that cover the need (e.g., content management systems, e-mail systems, word processing).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Please explain three reasons for the need for a new software system (determination of needs).

A
  • Replacement of existing legacy systems: IT systems are subject to aging and therefore only have a limited duration. Depending on the lifetime and the frequency of adjustment, the maintenance costs are more expensive in relation to the benefit achieved, so it makes more sense to replace an existing system with a new system.
  • Business demand: Companies develop competitive advantages by highly specialized and specially developed software systems. The company’s IT must therefore react quickly to new business requirements and support the business departments with suitable systems. If business requirements cannot be covered by existing systems, new software systems must be provided.
  • Technological evolution: Changing technical conditions also lead to a need for new software systems.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Please explain the term “make-or-buy” decision. What impact does this decision have on the software lifecycle?

A

After the need for a new software system has been identified, it must be decided whether software solutions are already available that cover the need, whether there are standard products that can be customized to company-specific requirements, or whether new software has to be developed. This is called a make-or-buy decision. Depending on how relevant the required software is for the company’s business activities and how serious the possible consequences of a wrong decision are, preliminary studies, test installations, or initial application prototypes are created and tried out as part of a make-or-buy decision. If a suitable system is available on the market and is purchased, the “development” phase is omitted in the software lifecycle and the “maintenance” phase is much less pronounced.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Please name the typical activities of the development phase.

A

Requirements engineering, specification, architecture, implementation, and quality assurance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Please describe the differences between the activities “requirements engineering” and “implementation” (development phase).

A

Requirements engineering: Detailed business requirements the system has to meet.
Implementation: Construction of the system by programming the source code.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Which IT management activities can be supported by classifying software systems in their current phase of the software lifecycle?

A

Based on the current phase in the lifecycle, IT management can get an overview of the current status of its system landscape and, based on this, draw up personnel, resource, and investment planning. Furthermore, certain activities and methods of software engineering can be derived by determining the current phase in the lifecycle.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Please describe the typical activities of the “operation” phase.

A
  • Provision of the operational environment, which means that the department responsible for operation must provide the appropriate infrastructure, for example in a data center.
  • Integration, which means that the new system must be connected to existing systems using the technical interfaces provided by the developers.
  • Provisioning, which means after the integration has been completed, all technical interfaces of existing systems must be converted to the new system. To ensure availability and security, the new application must also be connected to technical monitoring systems. In addition, IT security must include the new application in the list of applications to be monitored.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the conflicting goals between development and operation?

A

In contrast to development, which wants to quickly add functions to software systems, long-term stability must be ensured during operation. This results in a conflict of objectives between development and operation: On the one hand, you have to react quickly to business requirements, on the other hand, the system should run reliably and safely.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

During operational environment provisioning in the operation phase what happens?

A

Work on the program code is stopped and the system is used intensively by its users. The more people that have access to a system via the internet, the greater the risk of system attacks or fraud. No data should be lost in the event of a hardware failure or the occurrence of a software error.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Please name three quality requirements that must be ensured by operations.

A

Security, availability, scalability.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Please name typical elements of the IT infrastructure that are required for the operation of software systems.

A
  • Hardware systems (rack server),
  • Software systems (operating systems, monitoring systems, virtualization systems)
  • Networks (ethernet, WiFi, 5G)
  • Storage systems (databases, backup systems)
  • Security systems (firewall, virus scanner, cryptographic systems)
  • Power supply
  • Air conditioning
  • Connection to external networks (internet)
  • User administration and assignment of access rights
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What happens during integration in the operation phase?

A

After development, enterprise software systems must be deployed in the operational environment. In addition to being installed in that environment, the system must be integrated into the application landscape. This means that it must be connected to existing systems using the technical interfaces provided by the developers. The new system is only connected to other systems in the operational environment after all tests have been completed, so that real data in operational systems are not accidentally changed during development.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is provisioning during operations in a software system?

A

After the integration is complete, a new system can be put into operation. At this point, all technical interfaces of existing systems must be converted to the new system. To ensure availability and security, the new application must also be connected to technical monitoring systems that continuously provide management with information about resource consumption (central processing unit [CPU], main memory, data storage, and network access). In addition, IT security must include the new application in the list of monitored applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Please describe the typical activities of the maintenance phase.

A
  • Upkeep and evolution activities: Upkeep refers to the corrective adjustment of software systems, which mainly deals with the elimination of detected errors. If a software system is to be expanded with technical functions or if technical functions have to be changed, these are activities for the evolution of the system.
  • Cross-Cutting Activities: After the initial provisioning of a software system, the phases of maintenance and operation alternate in relatively short cycles. In the release plans, dates are given for each application at which an update of the application will be made available. These plans help with the cooperation of business departments (which have change requests), application development (which implement the change requests), and IT operations (which bring the changed application into productive operation).
17
Q

Please explain briefly why software systems must definitely be changed even after they have been provisioned for the first time.

A

Enterprise information systems are not free of errors when they are delivered. Despite the quality assurance measures, it is to be expected that there will be residual errors in the system that must be corrected in the course of maintenance work.

18
Q

Please name a document for coordinating the departments involved in maintenance tasks.

A

Release plan.

19
Q

Please name three reasons for shutting down existing applications.

A
  • Replacement of existing legacy systems with new systems
  • Consolidation or standardization of applications when merging IT organizations
  • Giving up business areas or outsourcing activities from the company.
20
Q

Please explain the typical activities of the shutdown phase.

A
  • Removal: Since systems within an application landscape are connected to one another via technical interfaces, all dependencies of the application to be switched off must be identified and resolved.
  • Data migration: If data is stored in the legacy system, it might be migrated as part of the shutdown. This means that the data in the old system must be transferred to another system for further use. One challenge when migrating data is finding an appropriate mapping of the old data schema to the new data schema. Another challenge is the amount of data to be migrated.
  • Contract termination: The infrastructure required for the legacy system must be analyzed to determine whether term-based licenses and usage rights have been acquired.
  • Retraining: IT management must ensure that employees responsible for the legacy applications find other tasks and continue their employment, taking retraining into account.
21
Q

What are the risks of removing legacy systems from the application landscape?

A
  • If the documentation is incomplete or outdated, dependencies can only be identified by reverse engineering or trial deactivation.
  • Lack of knowledge about old technologies, as the knowledge carriers of the old technologies may have already left the company.
  • When migrating critical systems, there must be no errors when transferring several million contract data—this number is quite common with health or life insurance companies.