Software Updates, Deployment &amp Co

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Software updates, deployment & Co.

Answer each of the following questions. You are allowed to use the internet and use
external sources. Sources need to be cited correctly. You are allowed to discuss
some of the answers with your peers, however answers need to be written
individually.

Syllabus skills studied:


1.1.14 Describe strategies for managing releases and updates.
1.2.8 Describe the purpose of prototypes to demonstrate the proposed system to the
client.
1.2.9 Discuss the importance of iteration during the design process.

Slides for these topics can be found at: https://ib.compscihub.net/paper-1/topic-1-1 and

1. At the core of topic 1 is the software development life cycle:


Describe the 6 steps of the software development life cycle [6]
https://www.youtube.com/watch?v=SaCYkPD4_K0

2. As part of developing software prototypes are an essential aspect of the process:


2.1. Define what a prototype is [2]
2.2. Identify three ways to deliver prototypes of a software [3]
2.3. Describe the purpose of prototypes to demonstrate the proposed system to
the client. [3]
2.4. Discuss why using prototypes when developing software might be useful [3]
2.5. Outline one situation in which using a prototype would not be relevant [2]

3. Before we move on with the following questions we need to define a few terms:
3.1. Define the term product release [1]
3.2. Define the term upgrade [1]
3.3. Define the term update [1]
3.4. Define the term patch [1]

4. Now that we defined these key terms we need to differentiate between manual
updates and automatic updates:
4.1. Define the term manual updates [1]
4.2. Define the term automatic updates [1]
4.3. Identify one systems that uses manual updates [1]
4.4. Identify one systems that uses automatic updates [1]
4.5. Evaluate between manual updates and automatic updates of a software [4]
5. The 3 different management types for releasing updates of a software on the
syllabus are:
- Continuous delivery
- Agile
- DevOps

5.1. Agile:
https://www.youtube.com/watch?v=vYI7-UD9tEQ
https://www.youtube.com/watch?v=Z9QbYZh1YXY

5.1.1. Define what agile is ? [2]


5.1.2. Describe the five steps undertaken in an agile sprint [5]
5.1.3. Which agile principles can be found in our way to work on the Internal
Assessment ? [2]
5.1.4. Which agile principles are not found in our way to work on the Internal
Assessment ? [2]
5.1.5. Outline 2 advantages of agile for releasing updates of a software [2]
5.1.6. Outline 2 drawbacks of agile for releasing updates of a software [2]

5.2. Devops:
5.2.1. Define what devops is [3]
https://www.youtube.com/watch?v=sig5RKKofS8
5.2.2. Outline 2 advantages of devops for releasing updates of a software [2]
5.2.3. Outline 2 drawbacks of devops for releasing updates of a software [2]

5.3. Continuous integration/Continuous deployment:


5.3.1. Describe the 8 steps undertaken in CI/CD of software [5]
https://www.youtube.com/watch?v=42UP1fxi2SY
5.3.2. Outline 2 advantages of CI/CD for releasing updates of a software [2]
5.3.3. Outline 2 drawbacks of CI/CD for releasing updates of a software [2]

6. Related to choosing a management strategy for managing releases we are can also
choose between several deployment strategies:
6.1. Which deployment strategies are shown in this video ? Can you find any
similarities with installation processes ? [5]
https://www.youtube.com/watch?v=AWVTKBUnoIg

7. A key term that appears several times throughout the previous question is the notion
of iteration.
7.1. Define the term iteration [1]
7.2. Discuss the importance of iteration during the design process. [3]

Important note:
For next week’s test review the syllabus topics that we covered in the last weeks:
● 1.1.2 Describe the need for change management
● 1.1.3 Outline compatibility issues resulting from situations including legacy systems
or business mergers.
● 1.1.4 Compare the implementation of systems using a client’s hardware with hosting
systems remotely
● 1.1.5 Evaluate alternative installation processes
● 1.1.6 Discuss problems that may arise as a part of data migration
● 1.1.8 Describe the importance of user documentation.
● 1.1.9 Evaluate different methods of providing user documentation.
● 1.1.10 Evaluate different methods of delivering user training.

As well as the syllabus topics that we covered last year:


● 1.1.1 Identify the context for which a new system is planned.
● 1.2.4 Identify the relevant stakeholders when planning a new system.
● 1.2.5 Describe methods of obtaining requirements from stakeholders.
● 1.2.6 Describe appropriate techniques for gathering the information needed to arrive
at a workable solution.
● 1.2.7 Construct suitable representations to illustrate system requirements.
● 1.1.7 Suggest various types of testing.
● 1.2.10 Explain the possible consequences of failing to involve the end-user in the
design process.
● 1.2.11 Discuss the social and ethical issues associated with the introduction of new
IT systems.
● 1.2.12 Define the term usability.
● 1.2.13 Identify a range of usability problems with commonly used digital devices.
● 1.2.14 Identify methods that can be used to improve the accessibility of systems.
● 1.2.15 Identify a range of usability problems that can occur in a system.

FYI The syllabus topics that we haven’t covered yet and that will cover in january are the
following :
● 1.1.11 Identify a range of causes of data loss.
● 1.1.12 Outline the consequences of data loss in a specified situation.
● 1.1.13 Describe a range of methods that can be used to prevent data loss.
● 1.2.1 Define the terms: hardware, software, peripheral, network, human resources.
● 1.2.2 Describe the roles that a computer can take in a networked world.
● 1.2.3 Discuss the social and ethical issues associated with a networked world.
● 1.2.11 Discuss the social and ethical issues associated with the introduction of new
IT systems.
● 1.2.16 Discuss the moral, ethical, social, economic and environmental implications of
the interaction between humans and machines.
● 4.1.14 Identify the parts of a solution that could be implemented concurrently.
● 4.1.15 Describe how concurrent processing can be used to solve a problem.
● 4.1.16 Evaluate the decision to use concurrent processing in solving a problem.
● D.3.10 Discuss the ethical and moral obligations of programmers.

After that we will begin our revision process until your final exams !

You might also like